| 0 ≤ b2i(int2bytes(i).rest.first) → bytes2int(i2b(~1) ' + int2bytes(i).rest.first ' + int2bytes(i).rest.rest) < ~(2 ^ (8 * (n→i(# int2bytes(i).rest.rest) + 1) - 1)), int2bytes(i).first = i2b(~1), ¬ b2i(int2bytes(i).rest.first) < 0 → 0 ≤ 2 ^ ((n→i(# int2bytes(i).rest.rest) + 1) * 8) + bytes2int(i2b(~1) ' + int2bytes(i).rest.first ' + int2bytes(i).rest.rest) ⊦ # int2bytes(i) ≤ n ↔ ¬ 2 ^ (8 * n→i(n) - 1) + i < 0 |
int2bytes(i).first = i2b(~1), ¬ b2i(int2bytes(i).rest.first) < 0 → 0 ≤ 2 ^ ((n→i(# int2bytes(i).rest.rest) + 1) * 8) + bytes2int(i2b(~1) ' + int2bytes(i).rest.first ' + int2bytes(i).rest.rest), ¬ b2i(int2bytes(i).rest.first) < 0 → bytes2int(i2b(~1) ' + int2bytes(i).rest.first ' + int2bytes(i).rest.rest) + 2 ^ (8 * (n→i(# int2bytes(i).rest.rest) + 1) - 1) < 0 ⊦ # int2bytes(i) ≤ n ↔ ¬ 2 ^ (8 * n→i(n) - 1) + i < 0
Used simplifier rules: ⊦ i < ~ j ↔ i + j < 0;% ⊦ ¬ i ≤ j ↔ j < i;