| rev(x) + y = a ' + y0, rev(x) = a0 ' + y1, a0 ∈ x, a ∈ x ∨ a ∈ y ⊦ x = [], y0 = y1 + y |
Used simplifier rules: rev-app: ⊦ rev(x + y) = rev(y) + rev(x);%rev-one: ⊦ rev(a ') = a ';%list freely generated by [], +;;% ⊦ a + x = a ' + x; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ a ' + x ≠ []; (s)% ⊦ a ∈ x + y ↔ a ∈ x ∨ a ∈ y; (s)% ⊦ a ∈ b ' ↔ a = b; (s)%in-14: ⊦ a ' + x = y → a ∈ y; (forward) from specification list%in-15: ⊦ x + a ' = y → a ∈ y; (forward) from specification list% ⊦ a ' + x = b ' + y ↔ a = b ∧ x = y; (ws)