| bytes0 = [] ∨ (bits2int(bytes2bits(bytes0)) < 0 ↔ ¬ 0 ≤ b2i(bytes0.first)) ⊦ by + bytes0 = [], bits2int(bytes2bits(by + bytes0)) < 0 ↔ ¬ 0 ≤ b2i((by + bytes0).first) |
¬ 0 ≤ bits2int(bytes2bits(bytes0)) ↔ b2i(bytes0.first) < 0 ⊦ bits2int(byte2bits(by) + bytes2bits(bytes0)) < 0 ↔ ¬ 0 ≤ b2i(by), bytes0 = []
Used simplifier rules: bytes2bits-rec: ⊦ bytes2bits(by ' + bytes) = byte2bits(by) + bytes2bits(bytes);%bytes2bits-empty: ⊦ bytes2bits([]) = [];%byte2bits-value: ⊦ bits2int(byte2bits(by)) = b2i(by);% ⊦ i < j → (¬ ¬ j ≤ i ↔ false);% ⊦ i ≤ j → (¬ ¬ j < i ↔ false);% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ bits + [] = bits;% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ (by ' + bytes).first = by;% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ by ' + bytes ≠ [];% ⊦ by + bytes = by ' + bytes;