Section strong.
Variable P : nat -> Prop.
Hypothesis PH : forall n, (forall m, m < n -> P m) -> P n.
induction n; simpl; intuition; apply PH; intuition.
elimtype False; omega.
Qed.
intros; eapply strong'; eauto.
Qed.
End strong.
induction n as [n] using strong; simpl; intuition.
destruct n as [|n]; simpl in *; intuition.
discriminate.
destruct n as [|n]; simpl in *; intuition.
do 2 f_equal.
replace (div2 n + S (div2 n + 0)) with (S (div2 n + (div2 n + 0))); auto.
Qed.

Theorem div2_even : forall n,
mod2 n = false
-> n = 2 * div2 n.