| false ' + bits0 ≠ [] ∧ bits1 = false ', ∀ bits0, bits, bits2. # bits2 < # bits1 → true → bits2 = [] ∨ sgn(bitsand(bits + false ' + bits0, bits2)) = sgn(bitsand(false ' + bits0, bits2)) ∨ true ∈ bits ⊦ sgn(bitsand(bits + false ' + bits0, bits1)) = sgn(false '), bits1 = [], bits1 = true ', true ∈ bits, bits0 ≠ [] ∧ # bits1 ≠ 1 |
∀ bits0, bits, bits2. # bits2 < # false ' → true → bits2 = [] ∨ sgn(bitsand(bits + false ' + bits0, bits2)) = sgn(bitsand(false ' + bits0, bits2)) ∨ true ∈ bits ⊦ sgn(bitsand(bits + false ' + bits0, false ')) = false ', true ∈ bits
Used simplifier rules: ⊦ # boolvar ' = 0 +1;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ boolvar ' + bits ≠ [];% ⊦ boolvar ' = boolvar0 ' ↔ boolvar ↔ boolvar0;% ⊦ boolvar ' ≠ [];% ⊦ sgn(boolvar ') = boolvar ';