+
+inductive cmp_cases (n,m:nat) : CProp ≝
+ | cmp_lt : n < m → cmp_cases n m
+ | cmp_eq : n = m → cmp_cases n m
+ | cmp_gt : m < n → cmp_cases n m.
+
+lemma cmp_nat: ∀n,m.cmp_cases n m.
+intros; generalize in match (nat_compare_to_Prop n m);
+cases (nat_compare n m); intros;
+[constructor 1|constructor 2|constructor 3] assumption;
+qed.