(* Contribution to the Coq Library   V6.3 (July 1999)                    *)
(****************************************************************************)
(*                 The Calculus of Inductive Constructions                  *)
(*                                                                          *)
(*                                Projet Coq                                *)
(*                                                                          *)
(*                     INRIA                        ENS-CNRS                *)
(*              Rocquencourt                        Lyon                    *)
(*                                                                          *)
(*                                Coq V5.10                                 *)
(*                              Nov 25th 1994                               *)
(*                                                                          *)
(****************************************************************************)
(*                            Nat_complements.v                             *)
(****************************************************************************)
simple destruct n; auto with arith.
Qed.
intros; elim n; simpl in |- *.
auto with arith.
intros; rewrite H; elim mult_n_Sm; auto with arith.
Qed.
unfold mult in |- *; auto with arith.
Qed.
intros; simpl in |- *; elim (plus_comm m (y * m + (y + m))).
rewrite (plus_assoc m (y * m) (y + m)); auto with arith.
Qed.
simple induction 1; intros; elim minus_Sn_m; auto with arith.
Qed.

(***************)
Lemma minus_n_Sm : forall n m : nat, m < n -> pred (n - m) = n - S m.