| ¬ n < # a0 ', a ∈ x0, n < # x0, pos(a, x0) < n, pos(a, x0) + 1 < # x0, ∀ a1, n0. a1 ∈ x0 ∧ n0 + 1 < # x0 → (x0 \ a1 ')[n0] = (n0 < pos(a1, x0) ⊃ x0[n0];x0[n0 + 1]) ⊦ n = 0, (x0 \ a ')[n - # a0 '] = x0[n], x0 = [], a0 ∈ x0, dups(x0) |
a ∈ x0, n < # x0, pos(a, x0) < n, pos(a, x0) + 1 < # x0, ∀ a1, n0. a1 ∈ x0 ∧ n0 + 1 < # x0 → (x0 \ a1 ')[n0] = (n0 < pos(a1, x0) ⊃ x0[n0];x0[n0 + 1]) ⊦ x0 = [], n = 0, (x0 \ a ')[n - 1] = x0[n], a0 ∈ x0, dups(x0)
Used simplifier rules: one-01: ⊦ m < 1 ↔ m = 0; from specification nat-basic1%len-02: ⊦ # a ' = 0 +1; from specification list