| m ≤ # x0, ∀ m, a, n. m < # x0 → x0[m, a][n] = x0[n] ∨ m = n ⊦ (a0 ' + x0)[m, a][n] = (a0 ' + x0)[n], m = n, m ≠ 0 ∧ a0 ' + x0 ≠ [] |
∀ m, a, n. m < # x0 → x0[m, a][n] = x0[n] ∨ m = n ⊦ a0 ' + x0 = [], 0 = n, (a ' + x0)[n] = (a0 ' + x0)[n]
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 ' ≠ []; (s)% ⊦ x + y = [] ↔ x = [] ∧ y = []; (as)