From fa0e44d143e0170958b834d669f75c2fb5b65c4c Mon Sep 17 00:00:00 2001 From: herbelin Date: Fri, 13 Jun 2003 09:29:56 +0000 Subject: Deplacement d'un lemme sur nat de ZArith vers Arith git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@4146 85f007b7-540e-0410-9357-904b9bb8a0f7 --- theories/Arith/Mult.v | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'theories/Arith') diff --git a/theories/Arith/Mult.v b/theories/Arith/Mult.v index 761979db3f..14dd98dacb 100755 --- a/theories/Arith/Mult.v +++ b/theories/Arith/Mult.v @@ -129,6 +129,17 @@ Rewrite mult_sym. Replace (mult n (S p)) with (mult (S p) n); Auto with arith. Qed. +Theorem lt_mult_left : + (x,y,z:nat) (lt x y) -> (lt (mult (S z) x) (mult (S z) y)). +Proof. +Intros x y z H;Elim z; [ + Simpl; Do 2 Rewrite <- plus_n_O; Assumption +| Simpl; Intros n H1; Apply lt_trans with m:=(plus y (plus x (mult n x))); [ + Rewrite (plus_sym x (plus x (mult n x))); + Rewrite (plus_sym y (plus x (mult n x))); Apply lt_reg_l; Assumption + | Apply lt_reg_l;Assumption ]]. +Qed. + Lemma mult_le_conv_1 : (m,n,p:nat) (le (mult (S m) n) (mult (S m) p)) -> (le n p). Proof. Intros. Elim (le_or_lt n p). Trivial. -- cgit v1.2.3