| ⊦ ¬ # bits1 < # bits0, bits1 = [], bits2 + bits1 = [], bits0 = [], bits1 = lastn(# bits1, fillsgn(# bits1, bitsand(bits2 + bits1, bits0))), true ∈ bits1, ¬ # bits1 < # bits0 ∧ ¬ bits0.first, ¬ # bits1 < # bits0 ∧ bits0.first |
# bits1 < # bits0 ⊦ bits1 = lastn(# bits1, fillsgn(# bits1, bitsand(bits2 + bits1, bits0))), bits0 = [], bits2 + bits1 = [], bits1 = [], true ∈ bits1
Used simplifier rules: ⊦ # bits = 0 ↔ bits = [];% ⊦ m < n → n ≠ 0; (forward)