| # bits1 = # bitsand(bits1, bits), # bits = # bits1 ⊦ bits1 = [], bits2 + bits1 = [], bits2 = [], bits3 + bits = [], bits3 = [], lastn(# bits1, bitsand(bits, bits1)) = bitsand(bits1, bits), bits1.first |
⊦ n = # bits → lastn(n, bits) = bits
# bits1 ≠ # bitsand(bits, bits1), # bits1 = # bitsand(bits1, bits), # bits = # bits1 ⊦ bits1 = [], bits2 + bits1 = [], bits2 = [], bits3 + bits = [], bits3 = [], lastn(# bits1, bitsand(bits, bits1)) = bitsand(bits1, bits), bits1.first
# bits1 = # bitsand(bits, bits1), # bits1 = # bitsand(bits1, bits), # bits = # bits1 ⊦ bits1 = [], bits2 + bits1 = [], bits2 = [], bits3 + bits = [], bits3 = [], bitsand(bits, bits1) = bitsand(bits1, bits), bits1.first
Used terms: bitsand(bits, bits1), # bits1