| # bits0 < # bits1 ⊦ bits1 = [], bits0 = [], bits2 + bits1 = [], bits1 = lastn(# bits1, fillsgn(# bits1, mklist(false, # bits0))), true ∈ bits1, bits0.first |
⊦ n = # bits → lastn(n, bits) = bits
# bits1 ≠ # fillsgn(# bits1, mklist(false, # bits0)), # bits0 < # bits1 ⊦ bits1 = [], bits0 = [], bits2 + bits1 = [], bits1 = lastn(# bits1, fillsgn(# bits1, mklist(false, # bits0))), true ∈ bits1, bits0.first
# bits1 = # fillsgn(# bits1, mklist(false, # bits0)), # bits0 < # bits1 ⊦ bits1 = [], bits0 = [], bits2 + bits1 = [], bits1 = fillsgn(# bits1, mklist(false, # bits0)), true ∈ bits1, bits0.first
Used terms: fillsgn(# bits1, mklist(false, # bits0)), # bits1