| 0 ≤ 2 ^ n→i(# bytes * 8 - 1) + bytes2int(bytes), # bytes ≤ 2, bytes2int(bytes) < 0, bytes2int(bytes) ≤ ~65537, bytes2int(bytes) < 2 ^ n→i(# bytes * 8 - 1) ⊦ bytes = [], (bytes2int(bytes) + 1) % 65536 = 1 + bytes2int(bytes) |
0 ≤ 2 ^ n→i(# bytes * 8 - 1) + bytes2int(bytes), # bytes ≤ 2, bytes2int(bytes) < 0, bytes2int(bytes) ≤ ~65537, bytes2int(bytes) < 2 ^ n→i(# bytes * 8 - 1) ⊦ 0 ≤ 2 ^ n→i(2 * 8 - 1) + bytes2int(bytes), bytes = [], (bytes2int(bytes) + 1) % 65536 = 1 + bytes2int(bytes)
Used simplifier rules: ⊦ (* j) ≤ i0 + (* j0) ↔ j - j0 ≤ i0;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + j = j + i;% ⊦ i ≤ j ∧ j < j0 → i < j0; (forward)% ⊦ j ≤ j0 ∧ j0 ≤ j1 → j ≤ j1; (forward) Used formulas: 0 ≤ 2 ^ n→i(2 * 8 - 1) + bytes2int(bytes)