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