| # bits = 8 * m + n0, n0 < 8, # bits ≤ 8 * m + 8, # bits2bytes(bits) ≤ m ⊦ bits = [], n0 = 0, fix(m + 1, bits2bytes(bits)) = bits2bytes(mklist(bits.first, 8 * m + 8 - # bits) + bits) |
⊦ # bits % 8 ≠ 0 → # bits2bytes(bits) = # bits / 8 + 1
¬ # bits % 8 ≠ 0, # bits = 8 * m + n0, n0 < 8, # bits ≤ 8 * m + 8, # bits2bytes(bits) ≤ m ⊦ bits = [], n0 = 0, fix(m + 1, bits2bytes(bits)) = bits2bytes(mklist(bits.first, 8 * m + 8 - # bits) + bits)
# bits % 8 ≠ 0, # bits = 8 * m + n0, n0 < 8, # bits ≤ 8 * m + 8, # bits / 8 + 1 ≤ m ⊦ bits = [], n0 = 0, fix(m + 1, bits2bytes(bits)) = bits2bytes(mklist(bits.first, 8 * m + 8 - # bits) + bits)
Used terms: bits