| x0 ⊑ y.rest + z, ∀ y, z. x0 ⊑ y + z → x0 ⊑ y ∨ (∃ x1. x0 = y + x1 ∧ x1 ⊑ z) ⊦ y = [], y + z = [], y.first ' + x0 ⊑ y, ∃ x. y.first ' + x0 = y + x ∧ x ⊑ z |
y = a + y0, x0 ⊑ y0 + z, ∀ y, z. x0 ⊑ y + z → x0 ⊑ y ∨ (∃ x1. x0 = y + x1 ∧ x1 ⊑ z) ⊦ y = [], y + z = [], a ' + x0 ⊑ y, ∃ x. a ' + x0 = y + x ∧ x ⊑ z
Used simplifier rules: x ≠ [] ⊦ a = x.first ∧ y = x.rest ↔ x = a + y; (elim) Used terms: y, a, y0