| n ≤ # sgn(boolvar ' + bits0), ∀ n0. ¬ # sgn(bits0) < n0 → lastn(n0, sgn(bits0)) = lastn(n0, bits0) ⊦ lastn(n, sgn(boolvar ' + bits0)) = lastn(n, boolvar ' + bits0), bits0.first ↔ boolvar, bits0 = [] |
bits0 = boolvar0 + bits, n ≤ # sgn(boolvar ' + bits0), ∀ n0. ¬ # sgn(bits0) < n0 → lastn(n0, sgn(bits0)) = lastn(n0, bits0) ⊦ lastn(n, sgn(boolvar ' + bits0)) = lastn(n, boolvar ' + bits0), boolvar0 ↔ boolvar, bits0 = []
Used simplifier rules: bits ≠ [] ⊦ (boolvar ↔ bits.first) ∧ bits0 = bits.rest ↔ bits = boolvar + bits0; (elim) Used terms: bits0, boolvar0, bits