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