| # bits = n0 * 8, n0 < n, n0 + 1 < n, 8 ≤ (n - n0) * 8 ⊦ bits = [], n = n0, mklist(i2b(0), n - n0) = i2b(0) ' + bits2bytes(mklist(false, (n - n0) * 8 - 8)), bits.first, ((n - n0) * 8 - 8) % 8 = 0 ∧ n - n0 ≠ 1 |
⊦ m ≠ 0 → m * n - n = (m - 1) * n
n - n0 ≠ 0, # bits = n0 * 8, n0 < n, n0 + 1 < n, 8 ≤ (n - n0) * 8 ⊦ bits = [], n = n0, mklist(i2b(0), n - n0) = i2b(0) ' + bits2bytes(mklist(false, (n - n0 - 1) * 8)), bits.first, ((n - n0 - 1) * 8) % 8 = 0 ∧ n - n0 ≠ 1
Used simplifier rules: ⊦ n < m → m - n ≠ 0; Used terms: 8, n - n0