| ⊦ bits2bytes(bits) = bits2bytes(mklist(bits.first, 8 - # bits % 8) + bits), # bits % 8 = 0, bits = [] |
⊦ # bits % 8 = 0 ∧ 8 < # bits → bits2bytes(bits) = bits2bytes(firstn(8, bits)) + bits2bytes(restn(8, bits))
¬(#(mklist(bits.first, 8 - # bits % 8) + bits) % 8 = 0 ∧ 8 < #(mklist(bits.first, 8 - # bits % 8) + bits)) ⊦ bits2bytes(bits) = bits2bytes(mklist(bits.first, 8 - # bits % 8) + bits), # bits % 8 = 0, bits = []
#(mklist(bits.first, 8 - # bits % 8) + bits) % 8 = 0 ∧ 8 < #(mklist(bits.first, 8 - # bits % 8) + bits) ⊦ bits2bytes(bits) = bits2bytes(firstn(8, mklist(bits.first, 8 - # bits % 8) + bits)) + bits2bytes(restn(8, mklist(bits.first, 8 - # bits % 8) + bits)), # bits % 8 = 0, bits = []
Used terms: mklist(bits.first, 8 - # bits % 8) + bits