| 0 < i, 0 ≤ i, 127 < i, i % 256 ≤ 127, i % 256 < i ⊦ b2i(i2b(~ i)) = b2i(i2b(~(i % 256))) |
⊦ i < 0 ∧ ~128 ≤ i % 256 → b2i(i2b(i)) = i % 256
~ i < 0 ∧ ~128 ≤ ~ i % 256, 0 < i, 0 ≤ i, 127 < i, i % 256 ≤ 127, i % 256 < i ⊦ ~ i % 256 = b2i(i2b(~(i % 256)))
Used simplifier rules: byte-equal: ⊦ b2i(byi) = b2i(byj) ↔ byi = byj;%num-i2b-equal: ~128 ≤ i, i ≤ 127, ~128 ≤ j, j ≤ 127 ⊦ i2b((* i)) = i2b((* j)) ↔ i = j;% ⊦ ~ i < 0 ↔ 0 < i;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i ≤ j → (j ≤ i ↔ i = j);%j ≠ 0 ⊦ ~ i % j = ~(i % j);% ⊦ i ≤ ~ j ↔ i + j ≤ 0;%i < 0 ⊦ (* i) + j = j - ~ i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + j = j + i;% ⊦ i - j ≤ i0 ↔ i ≤ j + i0;%j0 ≠ 0, j ≤ j0 ⊦ i ≤ (* j) → i ≤ (* j0); Used terms: ~ i