| 0 < 256 ∧ i + 1 ≤ 0 ∧ j0 - 1 ≤ 0 ∧ abs(j0 - 1) < 256, 1 + i * 256 + (j0 - 1) = i * 256 + j0, s2i(sho) = (i * 256 + (j0 - 1)) * 256, i * 256 + (j0 - 1) < 0, ~256 ≤ i * 256 + (j0 - 1), abs(j0) < 256, i * 256 + (j0 - 1) < ~1, j0 ≤ 0, i ≤ 0 ⊦ 255 + j0 = j0 - 1 |
s2i(sho) = 256 * (i * 256 + j0 - 1), j0 ≤ 0, abs(j0 - 1) < 256, ~255 ≤ i * 256 + j0, abs(j0) < 256, i < 0, i * 256 + j0 < 0 ⊦
Used simplifier rules: ⊦ j < i ∧ i ≤ 0 → j < 0; (forward)% ⊦ i < 0 ∧ 0 ≤ j → i ≤ j;% ⊦ i ≤ j - i0 ↔ i + i0 ≤ j;% ⊦ i < 1 ↔ i ≤ 0;% ⊦ i - j < i0 ↔ i < j + i0;%j0 ≠ 0, j ≤ j0 ⊦ i ≤ (* j) → i ≤ (* j0);% ⊦ i - j ≤ i0 ↔ i ≤ j + i0;% ⊦ i ≤ ~1 ↔ i < 0;% ⊦ i + (* j) ≤ (* j0) ↔ i ≤ j0 - j;% ⊦ i = i + j ↔ j = 0;% ⊦ i - j = i0 ↔ i = i0 + j;% ⊦ i + (j - i0) = i + j - i0;% ⊦ i + j = i + i0 ↔ j = i0;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + (j - i) = j;% ⊦ i * j = j * i;