| x ⊒ y + z, ∀ x0, y, z. # x0 < # x → x0 ⊒ y + z → x0 ⊒ z ∨ (∃ x1. x1 + z = x0 ∧ x1 ⊒ y) ⊦ x ⊒ z, ∃ x0. x0 + z = x ∧ x0 ⊒ y |
⊦ x ≠ [] ∧ y ≠ [] → (x ⊒ y ↔ x.last = y.last ∧ x.butlast ⊒ y.butlast)
x ≠ [] ∧ y + z ≠ [], x.last = (y + z).last ∧ x.butlast ⊒ (y + z).butlast, ∀ x0, y, z. # x0 < # x → x0 ⊒ y + z → x0 ⊒ z ∨ (∃ x1. x1 + z = x0 ∧ x1 ⊒ y) ⊦ x ⊒ z, ∃ x0. x0 + z = x ∧ x0 ⊒ y
Used simplifier rules: postfix-empty: ⊦ [] ⊒ x;%postfix-empty-03: ⊦ x ⊒ [] ↔ x = [];%app-02-ant: ⊦ ¬ x + y ≠ [] ↔ x = [] ∧ y = []; from specification list%a: ⊦ (x + y) + z = x + y + z; from specification list%Nil: ⊦ [] + x = x; from specification list Used terms: y + z, x