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_S : forall n m : nat, le n m -> le n (S m).
Proof fun n m H P Hn HS => HS m (H P Hn HS).