| a0 ' + x0 ≠ [] ∧ (a0 ' + x0).rest ≠ [], x0 -1l a = a2 ' + y, a2 ∈ x0 -1l a, (a0 ' + x0).first < (a0 ' + x0).rest.first ∧ ordered<((a0 ' + x0).rest), a2 ∈ x0, ordered<(x0 -1l a) ⊦ x0 -1l a = [], a = a0, a0 < a2 |
x0 -1l a = a2 ' + y, a2 ∈ x0, ordered<(x0 -1l a), a2 ∈ x0 -1l a, a0 < x0.first, ordered<(x0), a2 < x0.first ⊦ a = a0, x0 = [], x0 = a ', a0 < a2
Used simplifier rules: nll: ⊦ ¬ b < a ∧ b < c → a < c; (forward) from specification oelem%c-08: ⊦ (a ' + x).first = a; from specification list%del1-empty: ⊦ x ≠ [] → (x -1l a = [] ↔ x = a '); from specification list-del%e-01: ⊦ a ' + x ≠ []; from specification list%a: ⊦ (x + y) + z = x + y + z; from specification list%c-07: ⊦ (a ' + x).rest = x; from specification list