| ⊦ bits = [], bits2int(bitsor(bits, true ' + bits2) + bits1) = bits2int(true ' + bits1), false ∈ bits |
⊦ ¬ false ∈ bits ∧ bits0.first ∧ # bits ≤ # bits0 ∧ bits ≠ [] ∧ bits0 ≠ [] → bitsor(bits, bits0) = bits
¬(¬ false ∈ bits ∧ (true ' + bits2).first ∧ # bits ≤ #(true ' + bits2) ∧ bits ≠ [] ∧ true ' + bits2 ≠ []) ⊦ bits = [], bits2int(bitsor(bits, true ' + bits2) + bits1) = bits2int(true ' + bits1), false ∈ bits
Used simplifier rules: ⊦ ¬ false ∈ bits ∧ bits ≠ [] → bits2int(bits + bits0) = bits2int(true ' + bits0);% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ boolvar ' + bits ≠ []; Used terms: true ' + bits2, bits