| i1 + 255 < 0, int2bytes(i1 / 256) = i2b(0) ' + bytes0, i1 < 0, i1 < ~383, i2b(0) ∈ int2bytes(i1 / 256), (0 - i1 + 255) + i1 / 256 ≤ 0, ∀ bytes, i0. i→n(i0) < i→n(i1 + 255) → int2bytes(i0) = i2b(0) ' + bytes ∧ i0 < 0 ∧ i2b(0) ∈ int2bytes(i0) → false ⊦ |
int2bytes(i1 / 256) = i2b(0) ' + bytes0, i1 < ~255, i1 < 0, i1 < ~383, i2b(0) ∈ int2bytes(i1 / 256), i1 / 256 ≤ 255 + i1, ∀ bytes, i0. i→n(i0) < i→n(i1 + 255) → int2bytes(i0) = i2b(0) ' + bytes ∧ i0 < 0 ∧ i2b(0) ∈ int2bytes(i0) → false ⊦
Used simplifier rules: ⊦ i - j ≤ i0 ↔ i ≤ j + i0;% ⊦ i + ~ j = i - j;% ⊦ 0 - i = ~ i;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + (* j) < (* j0) ↔ i < j0 - j;