| ∀ z, y, y0. # x0 = # z ∧ x0 + y = z + y0 → x0 = z ∧ y = y0, #(a + x0) = # z, (a + x0) + y = z + y0 ⊦ a + x0 = z ∧ y = y0 |
(a ' + x0) + y = z + y0, # x0 + 1 = # z, ∀ z, y, y0. # x0 = # z ∧ x0 + y = z + y0 → x0 = z ∧ y = y0, a ∈ z ∨ a ∈ y0 ⊦ a ' + x0 = z ∧ y = y0
Used simplifier rules: c: ⊦ a + x = a ' + x;%len-05: ⊦ #(a ' + x) = (# x)+1;%a: ⊦ (x + y) + z = x + y + z;%in-14: ⊦ a ' + x = y → a ∈ y;%in-append: ⊦ a ∈ x + y ↔ ¬ ¬(a ∈ x ∨ a ∈ y);%succ: ⊦ m +1 = m + 1; from specification nat-basic2