| ¬ 0 ≤ bits2int(bytes2bits(bytes0)) ↔ b2i(bytes0.first) < 0 ⊦ bits2int(byte2bits(by) + bytes2bits(bytes0)) < 0 ↔ ¬ 0 ≤ b2i(by), bytes0 = [] |
⊦ bits ≠ [] → (bits2int(bits) < 0 ↔ bits.first)
byte2bits(by) + bytes2bits(bytes0) ≠ [], ¬ 0 ≤ bits2int(bytes2bits(bytes0)) ↔ b2i(bytes0.first) < 0 ⊦ (byte2bits(by) + bytes2bits(bytes0)).first ↔ ¬ 0 ≤ b2i(by), bytes0 = []
Used simplifier rules: byte2bits-empty: ⊦ byte2bits(by) ≠ [];% ⊦ ¬ bits + bits0 ≠ [] ↔ bits = [] ∧ bits0 = [];% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1; Used terms: byte2bits(by) + bytes2bits(bytes0)