| bits0 = boolvar0 + bits, bitsinvert(sgn(bits0)) = sgn(bitsinvert(bits0)) ⊦ bitsinvert(sgn(boolvar ' + bits0)) = sgn((¬ boolvar)' + bitsinvert(bits0)), boolvar0 ↔ boolvar, bits0 = [] |
bitsinvert(sgn(boolvar0 ' + bits)) = sgn((¬ boolvar0)' + bitsinvert(bits)) ⊦ boolvar0 ↔ boolvar, bitsinvert(sgn(boolvar ' + boolvar0 ' + bits)) = sgn((¬ boolvar)' + (¬ boolvar0)' + bitsinvert(bits))
Used simplifier rules: inv-append: ⊦ bitsinvert(bits + bits0) = bitsinvert(bits) + bitsinvert(bits0);%inv-one: ⊦ bitsinvert(boolvar ') = (¬ boolvar)';% ⊦ boolvar ' + bits ≠ [];% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ boolvar + bits = boolvar ' + bits;