| int2bytes(i1 / 256) = i2b(0) ' + by ' + bytes0, i2b(0) ∈ int2bytes(i1 / 256), i1 < 0, i1 < ~383, 0 ≤ b2i(by), i1 / 256 < 256 + i1, ∀ bytes, by, i0. i→n(i0) < i→n(i1 + 255) → int2bytes(i0) = i2b(0) ' + by ' + bytes ∧ 0 ≤ b2i(by) ∧ i2b(0) ∈ int2bytes(i0) → false ⊦ |
i1 = i * 256 + j ∧ j ≤ 0 ∧ abs(j) < 256 ∧ i ≤ 0 ∧ 0 < 256, int2bytes(i) = i2b(0) ' + by ' + bytes0, i2b(0) ∈ int2bytes(i), i1 < 0, i1 < ~383, 0 ≤ b2i(by), i < 256 + i1, ∀ bytes, by, i0. i→n(i0) < i→n(i1 + 255) → int2bytes(i0) = i2b(0) ' + by ' + bytes ∧ 0 ≤ b2i(by) ∧ i2b(0) ∈ int2bytes(i0) → false ⊦
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: i1, 256, i, j