| n ≤ # x0, ∀ n, y. n < # x0 → (x0 + y)[n] = x0[n] ∨ x0 = [] ⊦ ((a ' + x0) + y)[n] = (a ' + x0)[n] |
⊦ x ≠ [] ∧ n ≠ 0 → x[n] = x.rest[n - 1]
(a ' + x0) + y ≠ [] ∧ n ≠ 0, n ≤ # x0, ∀ n, y. n < # x0 → (x0 + y)[n] = x0[n] ∨ x0 = [] ⊦ ((a ' + x0) + y).rest[n - 1] = (a ' + x0)[n]
Used simplifier rules: get-zero-01: ⊦ (a ' + x)[0] = a;%e-01: ⊦ a ' + x ≠ []; from specification list%a: ⊦ (x + y) + z = x + y + z; from specification list Used terms: n, (a ' + x0) + y