| n = # fillsgn(n, sgn(bits)), # sgn(bits) < # bits, # sgn(bits) < n, n < # bits, # sgn(bits) + 1 < # bits ⊦ fillsgn(n, sgn(bits)) = lastn(n, bits), bits = [], n = # bits |
n ≤ # bits ⊦ ∃ bits0, bits1. bits = bits0 + bits1 ∧ # bits1 = n
∃ bits0, bits1. bits = bits0 + bits1 ∧ # bits1 = n, n = # fillsgn(n, sgn(bits)), # sgn(bits) < # bits, # sgn(bits) < n, n < # bits, # sgn(bits) + 1 < # bits ⊦ fillsgn(n, sgn(bits)) = lastn(n, bits), bits = [], n = # bits
Used simplifier rules: ⊦ ¬ m ≤ n ↔ n < m;% ⊦ m < n → ¬ n < m; Used terms: n, bits