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