| max(a0 ' + y) = (a0 ' + y).last, (a0 ' + y).last < a, ordered≤(a0 ' + y) ⊦ a = (a0 ' + y).last, a0 < a |
Used simplifier rules: max-base: ⊦ max(a ') = a;%max-rec: ⊦ x ≠ [] → max(a ' + x) = (max(x) < a ⊃ a;max(x));%a: ⊦ (x + y) + z = x + y + z; from specification list%l-02: ⊦ x ≠ [] → (a ' + x).last = x.last; from specification list-last%lel: ⊦ a < b ∧ a = c → c < b; (forward) from specification oelem%transitivity: ⊦ a < b ∧ b < c → a < c; (forward) from specification oelem%nll: ⊦ ¬ b < a ∧ b < c → a < c; (forward) from specification oelem%irreflexivity: ⊦ ¬ a < a; from specification oelem%nnn: ⊦ ¬ c < b ∧ ¬ a < c → ¬ a < b; (forward) from specification oelem%app: ⊦ x + [] = x; from specification list%l: ⊦ a '.last = a; from specification list-last Used formulas: y = []