Section Ensembles_finis. Definition FFInj (n:nat) (f:nat->nat) := forall x y, x y f(x)=f(y) -> x=y. Definition FFMono (n:nat) (f:nat->nat) := forall x y, x y f(x) FFInj n f. Proof. (* TODO *) Qed. Theorem mono_domain : forall n f, FFMono (S n) f -> exists x, x<=n /\ f(x) >= n. Proof. (* TODO *) Qed. End Ensembles_finis. Section ExoPair. Inductive pair : nat -> Prop := | pair_0 : pair 0 | pair_s2 : forall x, pair x -> pair (S (S x)). Check pair_ind. Inductive impair : nat -> Prop := (* ... *) Lemma spi : forall x, pair x -> impair (S x). Proof. (* ... *) Qed. Lemma sip : forall x, impair x -> pair (S x). Proof. (* ... *) Qed. Lemma poui : forall x, pair x \/ impair x. Proof. (* ... *) Qed. End ExoPair.