| n0 + 1 < # x, ∀ x. n0 < # x → x[n0, x[n0]] = x ∨ x = [] ⊦ x = [], x[n0 + 1, x.rest[n0]] = x |
x = a + y, n0 + 1 < # x, ∀ x. n0 < # x → x[n0, x[n0]] = x ∨ x = [] ⊦ x = [], x[n0 + 1, y[n0]] = x
Used simplifier rules: x ≠ [] ⊦ a = x.first ∧ y = x.rest ↔ x = a + y; (elim) Used terms: x, a, y