| ordered<(a0 ' + x0), ∀ a1. ordered<(x0 -1l a1) ⊦ a0 ' + (x0 -1l a) = [], (a0 ' + (x0 -1l a)).tail = [], a = a0, (a0 ' + (x0 -1l a)).head < (a0 ' + (x0 -1l a)).tail.head ∧ ordered<((a0 ' + (x0 -1l a)).tail) |
ordered<(a0 ' + x0), ∀ a1. ordered<(x0 -1l a1) ⊦ x0 -1l a = [], a = a0, a0 < (x0 -1l a).head ∧ ordered<(x0 -1l a)
Used simplifier rules: ⊦ (a ' + x).head = a; (s)% ⊦ a ' + x ≠ []; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ (a ' + x).tail = x; (s)