| bits1.first, # bits1 ≤ # bits0 ⊦ bits1 = [], bitsand(bits + bits0, bits1) = bits + bitsand(bits0, bits1) |
bits1 = boolvar + bits2, boolvar, # bits1 ≤ # bits0 ⊦ bits1 = [], bitsand(bits + bits0, bits1) = bits + bitsand(bits0, bits1)
Used simplifier rules: bits ≠ [] ⊦ (boolvar ↔ bits.first) ∧ bits0 = bits.rest ↔ bits = boolvar + bits0; (elim) Used terms: bits1, boolvar, bits2