| bits0.first, ∀ bits1, boolvar. sgn(bits0 + bits1) = sgn((¬ boolvar)' + bits1) ∨ boolvar ∈ bits0 ⊦ sgn((false ' + bits0) + bits1) = sgn(false ' + bits1), bits0 = [], true ∈ bits0 |
Used simplifier rules: sgn-base-02: ⊦ sgn(false ' + true ' + bits) = false ' + true ' + bits;% ⊦ boolvar + bits = boolvar ' + bits;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ boolvar ' + bits ≠ [];%⊦ ¬ boolvar ∈ boolvar0 ' + bits ↔ ¬(boolvar ↔ boolvar0) ∧ ¬ boolvar ∈ bits;%bits ≠ [] ⊦ (boolvar ↔ bits.first) ∧ bits0 = bits.rest ↔ bits = boolvar + bits0; (elim) Used terms: bits0, boolvar0, bits