| ¬(¬ false ∧ bitsor(sgn(boolvar1 ' + bits0), bits3) ≠ []), bits2int(bitsor(sgn(boolvar1 ' + bits0), bits3)) = bits2int(bitsor(boolvar1 ' + bits0, bits3)), (¬ boolvar1) ∈ bits0, ∀ bits, bits1. # bits1 < #(bits3 + false ') → true → bits ≠ [] ∧ bits1 ≠ [] → bits2int(bitsor(sgn(bits), bits1)) = bits2int(bitsor(bits, bits1)) ⊦ bitsor(boolvar1 ' + bits0, bits3) = [], bits3 = [], bits2int(bitsor(sgn(boolvar1 ' + bits0), bits3) + false ') = bits2int(bitsor(boolvar1 ' + bits0, bits3)) * 2 |
bitsor(sgn(boolvar1 ' + bits0), bits3) = [], bits2int([]) = bits2int(bitsor(boolvar1 ' + bits0, bits3)), (¬ boolvar1) ∈ bits0, ∀ bits, bits1. # bits1 < #(bits3 + false ') → true → bits ≠ [] ∧ bits1 ≠ [] → bits2int(bitsor(sgn(bits), bits1)) = bits2int(bitsor(bits, bits1)) ⊦ bits3 = [], bitsor(boolvar1 ' + bits0, bits3) = [], bits2int([]) = 0
Used simplifier rules: ⊦ i * j = j * i;% ⊦ i * j * j0 = (i * j) * j0;% ⊦ 2 * i = 0 ↔ i = 0;% ⊦ bits2int(false ') = 0;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ [] + bits = bits;