| # bits % 8 = 0, # bits < n * 8, # bits ≤ 8 * (n - 1), # bits2bytes(bits) < n, bits.first ⊦ n * 8 = # bits, bits = [], mklist(i2b(~1), n - # bits2bytes(bits)) = bits2bytes(mklist(true, n * 8 - # bits)) |
⊦ # bits % 8 = 0 ∧ bits ≠ [] → # bits2bytes(bits) = # bits / 8
# bits % 8 = 0 ∧ bits ≠ [], # bits % 8 = 0, # bits < n * 8, # bits ≤ 8 * (n - 1), # bits / 8 < n, bits.first ⊦ n * 8 = # bits, bits = [], mklist(i2b(~1), n - # bits / 8) = bits2bytes(mklist(true, n * 8 - # bits))
Used terms: bits