| x -1l a = mklist(a, n0), a ∈ x ⊦ x = a ' + mklist(a, n0), x.first = a, x = [] |
Used simplifier rules: c: ⊦ a + x = a ' + x; from specification list%del1-n: ⊦ a ≠ b → (b ' + x) -1l a = b ' + (x -1l a); from specification list-del%a: ⊦ (x + y) + z = x + y + z; from specification list%e-01: ⊦ a ' + x ≠ []; from specification list%in-01: ⊦ a ≠ b → (a ∈ b ' + x ↔ a ∈ x); from specification list%in-14: ⊦ a ' + x = y → a ∈ y; (forward) from specification list%mk-elem: ⊦ a ∈ mklist(b, n) → a = b; (forward) from specification list-last%x ≠ [] ⊦ a = x.first ∧ y = x.rest ↔ x = a + y; (elim) Used terms: x, a0, y