| i / 256 >> 8 * abs(abs(j) - 1) = bytes2int(firstn(# int2bytes(i / 256) - i→n(abs(j) - 1), int2bytes(i / 256))), 0 < i, i→n(j) ≤ # int2bytes(i / 256), 255 < i, 0 ≤ i, ∀ 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 >> 8 * (abs(j) - 1) = bytes2int(firstn((# int2bytes(i / 256) - i→n(j)) + 1, int2bytes(i / 256) + i2b(i % 256) ')), j = 0 |
⊦ ¬ j < 0 → abs(j) = j
¬ abs(j) - 1 < 0, i / 256 >> 8 * (abs(j) - 1) = bytes2int(firstn(# int2bytes(i / 256) - i→n(abs(j) - 1), int2bytes(i / 256))), 0 < i, i→n(j) ≤ # int2bytes(i / 256), 255 < i, 0 ≤ i, ∀ 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 >> 8 * (abs(j) - 1) = bytes2int(firstn((# int2bytes(i / 256) - i→n(j)) + 1, int2bytes(i / 256) + i2b(i % 256) ')), j = 0
Used simplifier rules: ⊦ i < 0 → abs(i) = ~ i;% ⊦ ~(i - 1) = ~ i + 1;% ⊦ i + ~ j = i - j;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + j = j + i;% ⊦ abs(i) - 1 < 0 ↔ i = 0; Used terms: abs(j) - 1