Proof fun n Hn P HO HS => nat_ind P HO HS n Hn.
(****************)
(** * Ordering  *)
(****************)
Definition le (n m : nat) : Prop :=
forall P : nat -> Prop, P n -> (forall p : nat, P p -> P (S p)) -> P m.
(** This relation is reflexive and transitive, and closed under the successor function.  Notice that these lemmas do not rely on the well-formedness assumption: *)

Lemma le_trans : forall n1 n2 n3 : nat, le n1 n2 -> le n2 n3 -> le n1 n3.
Proof fun n1 n2 n3 H1 H2 P Hn1 HS => H2 P (H1 P Hn1 HS) HS.