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