apply lt_S_n.
apply lt_trans with m; try assumption.
apply lt_n_Sn.
Qed.
(********************************************************************)
(*      max                                                         *)
Fixpoint max (n m : nat) {struct n} : nat :=
match n with
| O => m
| S p => match m with
| O => S p
| S q => S (max p q)
end
end.

Lemma le_n_max1 : forall n m : nat, n <= max n m.
intros n; elim n; clear n.