| ⊦ bits0 = [], bits2uint((false ' + bitsinvert(bits1))+1) + bits2int(bits0 + true ' + bits1) = 0, false ∈ bits0, bits0.first |
Used simplifier rules: bits2int-pos: ⊦ bits2int(false ' + bits) = bits2uint(bits);% ⊦ boolvar + bits = boolvar ' + bits;% ⊦ boolvar ' + bits ≠ [];% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;%⊦ ¬ boolvar ∈ boolvar0 ' + bits ↔ ¬(boolvar ↔ boolvar0) ∧ ¬ boolvar ∈ bits;%bits ≠ [] ⊦ (boolvar ↔ bits.first) ∧ bits0 = bits.rest ↔ bits = boolvar + bits0; (elim) Used terms: bits0, boolvar, bits