| int2bytes(i) + i2b(i % 256) ' = i2b(~1) ' + by ' + bytes, i / 256 = i + 1, i2b(i % 256) ∈ bytes, b2i(by) < 0, i < ~256, i < 0, ∀ bytes, by, i0. i→n(i0) < i→n(i) → true → b2i(by) < 0 → int2bytes(i0) ≠ i2b(~1) ' + by ' + bytes ⊦ i % 256 = 0, bytes = [], ¬ i2b(~1) ∈ int2bytes(i) ∧ i2b(~1) ≠ i2b(i % 256) |
i = i1 * 256 + j ∧ j ≤ 0 ∧ abs(j) < 256 ∧ i1 ≤ 0 ∧ 0 < 256, int2bytes(i) + i2b(j) ' = i2b(~1) ' + by ' + bytes, i1 = i + 1, i2b(j) ∈ bytes, b2i(by) < 0, i < ~256, i < 0, ∀ bytes, by, i0. i→n(i0) < i→n(i) → true → b2i(by) < 0 → int2bytes(i0) ≠ i2b(~1) ' + by ' + bytes ⊦ j = 0, bytes = [], ¬ i2b(~1) ∈ int2bytes(i) ∧ i2b(~1) ≠ i2b(j)
Used simplifier rules: ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i < j → (¬ ¬ j ≤ i ↔ false);%⊦ 0 < j ∧ i < 0 → ( i0 = i / j ∧ j0 = i % j ↔ i = i0 * j + j0 ∧ j0 ≤ 0 ∧ abs(j0) < j ∧ i0 ≤ 0); (elim) Used terms: i, 256, i1, j