| 1 < # bytes * 8, 16 + 1 < # bytes * 8, 0 ≤ 2 ^ n→i(# bytes * 8 - 1) + bytes2int(bytes), bytes2int(bytes) < 2 ^ n→i(# bytes * 8 - 1), # bytes ≤ 2, 0 ≤ bytes2int(bytes), 65536 ≤ bytes2int(bytes), 0 < bytes2int(bytes) ⊦ bytes = [] |
17 < # bytes * 8, 0 < bytes2int(bytes), 65536 ≤ bytes2int(bytes), 0 ≤ bytes2int(bytes), # bytes ≤ 2, bytes2int(bytes) < 2 ^ n→i(# bytes * 8 - 1), 0 ≤ 2 ^ n→i(# bytes * 8 - 1) + bytes2int(bytes) ⊦ # bytes * 8 = 1, bytes = []
Used simplifier rules: ⊦ m < n → n ≠ 0; (forward)% ⊦ m * n = n * m;% ⊦ m0 * m * n = (m0 * m) * n;% ⊦ # bytes = 0 ↔ bytes = [];% ⊦ m0 * m = 0 ↔ m0 = 0 ∨ m = 0;% ⊦ 1 < m ↔ ¬(m = 0 ∨ m = 1);