| 0 ≤ b2i(by0), ∀ bytes0. # bytes0 < #(i2b(0) + by0 + bytes) → true → bytes0 = [] ∨ fix(# bytes0, int2bytes(bytes2int(bytes0))) = bytes0 ⊦ ¬ b2i(int2bytes(bytes2int(by0 ' + bytes)).first) < 0, fix(2 + # bytes, int2bytes(bytes2int(by0 ' + bytes))) = i2b(0) ' + by0 ' + bytes |
Used simplifier rules: bytes2bytes-first-neg: ⊦ b2i(int2bytes(bytes2int(by ' + bytes)).first) < 0 ↔ b2i(by) < 0;% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ i ≤ j → (¬ ¬ j < i ↔ false);