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