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