| ~256 < i ∧ i < ~128, i→n(j) < #(i2b(~1) ' + i2b(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 - 1) >> 8 * (abs(j) - 1) = bytes2int(firstn(#(i2b(~1) ' + i2b(i) ') - i→n(j), i2b(~1) ' + i2b(i) ')), i % 256 = 0 |
i→n(j) < 2, i < ~128, ~256 < i, ~256 ≤ 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))) ⊦ (i / 256 - 1) >> 8 * (abs(j) - 1) = bytes2int(firstn(2 - i→n(j), i2b(~1) ' + i2b(i) ')), j = 0, i % 256 = 0
Used simplifier rules: ⊦ m < n → n ≠ 0; (forward)% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ # by ' = 0 +1;% ⊦ #(bytes + bytes0) = # bytes + # bytes0;