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