| ordered≤(a ' + x1), ordered≤(x0), x0 ≠ [] → ¬ x0.head < (a ' + x1).last, ∀ x. ordered≤(x) ∧ (x1 ≠ [] ∧ x ≠ [] → ¬ x.head < x1.last) → ordered≤(x1 + x) ⊦ ordered≤((a ' + x1) + x0) |
x0 = [], ordered≤(x0), ordered≤(a ' + x1), x0 ≠ [] → ¬ x0.head < (a ' + x1).last, ∀ x. ordered≤(x) ∧ (x1 ≠ [] ∧ x ≠ [] → ¬ x.head < x1.last) → ordered≤(x1 + x) ⊦ ordered≤((a ' + x1) + x0)
x0 = a0 + y, ordered≤(x0), ordered≤(a ' + x1), x0 ≠ [] → ¬ a0 < (a ' + x1).last, ∀ x. ordered≤(x) ∧ (x1 ≠ [] ∧ x ≠ [] → ¬ x.head < x1.last) → ordered≤(x1 + x) ⊦ x0 = [], ordered≤((a ' + x1) + x0)
Used simplifier rules: x ≠ [] ⊦ a = x.head ∧ y = x.tail ↔ x = a + y; (elim) Used terms: x0, a0, y