| int2bits(b2i(by0)) ≠ [], ∀ bytes1. # bytes1 < #((by0 + bytes) + by ') → bytes2bits(bytes1) ≠ [] → bytes1 = [] ∨ b2i(bytes1.first) = 0 ∨ b2i(bytes1.first) = ~1 ∨ bits2bytes(sgn(bytes2bits(bytes1))) = bytes1 ⊦ b2i(by0) = 0, b2i(by0) = ~1, bits2bytes(sgn((fillsgn(8, int2bits(b2i(by0))) + bytes2bits(bytes)) + byte2bits(by))) = (by0 ' + bytes) + by ', (true ∈ int2bits(b2i(by0)) ∨ true ∈ bytes2bits(bytes)) ∧ (false ∈ fillsgn(8, int2bits(b2i(by0))) ∨ false ∈ bytes2bits(bytes)) |
∀ bytes1. # bytes1 < #((by0 + bytes) + by ') → bytes2bits(bytes1) ≠ [] → bytes1 = [] ∨ b2i(bytes1.first) = 0 ∨ b2i(bytes1.first) = ~1 ∨ bits2bytes(sgn(bytes2bits(bytes1))) = bytes1 ⊦ b2i(by0) = 0, b2i(by0) = ~1, bits2bytes(sgn((fillsgn(8, int2bits(b2i(by0))) + bytes2bits(bytes)) + byte2bits(by))) = (by0 ' + bytes) + by ', false ∈ fillsgn(8, int2bits(b2i(by0))), false ∈ bytes2bits(bytes)
Used simplifier rules: ⊦ true ∈ int2bits(j) ↔ j ≠ 0;% ⊦ int2bits(j) ≠ [];