| ∀ by, bytes0. # bytes0 < # bytes → true → (b2i(int2bytes(bytes2int(by ' + bytes0)).first) < 0 ↔ ¬ 0 ≤ b2i(by)) ⊦ bytes = [], b2i(int2bytes(bytes2int(by ' + bytes)).first) < 0 ↔ ¬ 0 ≤ b2i(by) |
bytes ≠ [], b2i(bytes.first) ≠ 0, b2i(bytes.first) ≠ ~1 ⊦ int2bytes(bytes2int(bytes)) = bytes
¬(by ' + bytes ≠ [] ∧ b2i((by ' + bytes).first) ≠ 0 ∧ b2i((by ' + bytes).first) ≠ ~1), ∀ by, bytes0. # bytes0 < # bytes → true → (b2i(int2bytes(bytes2int(by ' + bytes0)).first) < 0 ↔ ¬ 0 ≤ b2i(by)) ⊦ bytes = [], b2i(int2bytes(bytes2int(by ' + bytes)).first) < 0 ↔ ¬ 0 ≤ b2i(by)
Used simplifier rules: ⊦ (by ' + bytes).first = by;% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ i ≤ j → (¬ ¬ j < i ↔ false);% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i < j → (¬ ¬ j ≤ i ↔ false); Used terms: by ' + bytes