| 1 ≤ abs(j) ∧ 0 ≤ 1, (i / 256 - 1) >> 8 * abs(abs(j) - 1) = bytes2int(firstn(# int2bytes(i / 256 - 1) - (i→n(abs(j)) - i→n(1)), int2bytes(i / 256 - 1))), i < 0, i < ~256, i→n(j) ≤ # int2bytes(i / 256 - 1), ∀ i, j0. i→n(j0) < i→n(j) → i→n(j0) < # int2bytes(i) → i >> 8 * abs(j0) = bytes2int(firstn(# int2bytes(i) - i→n(j0), int2bytes(i))) ⊦ i % 256 = 0, j = 0, (i / 256 - 1) >> 8 * (abs(j) - 1) = bytes2int(firstn((# int2bytes(i / 256 - 1) - i→n(j)) + 1, int2bytes(i / 256 - 1) + i2b(i % 256) ')) |
(i / 256 - 1) >> 8 * (abs(j) - 1) = bytes2int(firstn(# int2bytes(i / 256 - 1) - (i→n(j) - 1), int2bytes(i / 256 - 1))), i < 0, i < ~256, i→n(j) ≤ # int2bytes(i / 256 - 1), ∀ i, j0. i→n(j0) < i→n(j) → i→n(j0) < # int2bytes(i) → i >> 8 * abs(j0) = bytes2int(firstn(# int2bytes(i) - i→n(j0), int2bytes(i))) ⊦ i % 256 = 0, j = 0, (i / 256 - 1) >> 8 * (abs(j) - 1) = bytes2int(firstn((# int2bytes(i / 256 - 1) - i→n(j)) + 1, int2bytes(i / 256 - 1) + i2b(i % 256) '))
Used simplifier rules: ⊦ 0 < abs(i) ↔ i ≠ 0;% ⊦ 1 ≤ i ↔ 0 < i;% ⊦ i→n(abs(i)) = i→n(i);% ⊦ j ≤ i → abs(i - j) = i - j;