| # bits0 = # fillsgn(# bits0, sgn(true ' + bits0)), 1 + # sgn(true ' + bits0) < # bits1 + # bits0, # sgn(true ' + bits0) < # bits0, # sgn(true ' + bits0) < # bits1 + # bits0, true ∈ bits1 ⊦ fillsgn(# bits0, sgn(true ' + bits0)) = bits0, bits0 = [], bits1 = [], bits1 + bits0 = [], false ∈ bits1 |
bits ≠ [], bits.first ↔ boolvar ⊦ sgn(boolvar ' + bits) = sgn(bits)
¬(bits0 ≠ [] ∧ (bits0.first ↔ true)), # bits0 = # fillsgn(# bits0, sgn(true ' + bits0)), 1 + # sgn(true ' + bits0) < # bits1 + # bits0, # sgn(true ' + bits0) < # bits0, # sgn(true ' + bits0) < # bits1 + # bits0, true ∈ bits1 ⊦ fillsgn(# bits0, sgn(true ' + bits0)) = bits0, bits0 = [], bits1 = [], bits1 + bits0 = [], false ∈ bits1
bits0 ≠ [] ∧ (bits0.first ↔ true), # bits0 = # fillsgn(# bits0, sgn(bits0)), 1 + # sgn(bits0) < # bits1 + # bits0, # sgn(bits0) < # bits0, # sgn(bits0) < # bits1 + # bits0, true ∈ bits1 ⊦ fillsgn(# bits0, sgn(bits0)) = bits0, bits0 = [], bits1 = [], bits1 + bits0 = [], false ∈ bits1
Used terms: bits0, true