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