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