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