| ¬(¬ false ∈ bits ∧ # bits0 ≤ # bits ∧ bits0.first ∧ bits0 ≠ []), n = # fillsgn(n, bits), mklist(true, # bits) = bits, true ∈ bits, # bits < n ⊦ bits = [], bits0 = [], lastn(n, fillsgn(n, bits0)) = lastn(n, fillsgn(n, bitsand(bits, bits0))) |
n = # fillsgn(n, bits), mklist(true, # bits) = bits, true ∈ bits, # bits < n ⊦ bits = [], bits0 = [], lastn(n, fillsgn(n, bits0)) = lastn(n, fillsgn(n, bitsand(bits, bits0))), ¬ false ∈ bits ∧ ¬ # bits < # bits0 ∧ bits0.first
Used simplifier rules: ⊦ ¬ m ≤ n ↔ n < m;