| ¬(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 = # 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.first
Used simplifier rules: ⊦ m + n = n + m;