| m ≤ # x0, ∀ m, a. m < # x0 → a ∈ x0[m, a] ⊦ a ∈ (a0 ' + x0)[m, a] |
⊦ n ≠ 0 ∧ x ≠ [] → x[n, a] = x.head ' + x.tail[n -1, a]
m ≤ # x0, ∀ m, a. m < # x0 → a ∈ x0[m, a] ⊦ a0 ' + x0 = [], m = 0, a ∈ (a0 ' + x0).head ' + (a0 ' + x0).tail[m -1, a]
Used simplifier rules: put-zero: ⊦ (b ' + x)[0, a] = a + x;% ⊦ 0 ≤ m; (s)% ⊦ a + x = a ' + x; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ a ∈ b ' + x ↔ ¬(a ≠ b ∧ ¬ a ∈ x); (ss)% ⊦ x + y = [] ↔ x = [] ∧ y = []; (as)% ⊦ a ' ≠ []; (s) Used terms: a, m, a0 ' + x0