From 8ea702c49cc0d6941dd3652ea8a5511fe3c31224 Mon Sep 17 00:00:00 2001 From: desmettr Date: Fri, 12 Jul 2002 12:11:16 +0000 Subject: Quelques resultats supplementaires sur les suites convergentes git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@2862 85f007b7-540e-0410-9357-904b9bb8a0f7 --- theories/Reals/Cv_prop.v | 224 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 theories/Reals/Cv_prop.v diff --git a/theories/Reals/Cv_prop.v b/theories/Reals/Cv_prop.v new file mode 100644 index 0000000000..197bd42bab --- /dev/null +++ b/theories/Reals/Cv_prop.v @@ -0,0 +1,224 @@ +(***********************************************************************) +(* v * The Coq Proof Assistant / The Coq Development Team *) +(* R;l1,l2:R) (Un_cv Un l1) -> (Un_cv Un l2) -> l1==l2. +Intros Un l1 l2; Unfold Un_cv; Unfold R_dist; Intros. +Apply cond_eq. +Intros; Cut ``0R;l1,l2:R) (Un_cv An l1) -> (Un_cv Bn l2) -> (Un_cv [i:nat]``(An i)+(Bn i)`` ``l1+l2``). +Unfold Un_cv; Unfold R_dist; Intros. +Cut ``0``(Rabsolu ((Rabsolu a)-(Rabsolu b))) <= (Rabsolu (a-b))``. +Intros; Case (total_order_T (Rabsolu a) (Rabsolu b)); Intro. +Elim s; Intro. +Rewrite <- (Rabsolu_Ropp ``(Rabsolu a)-(Rabsolu b)``); Rewrite <- (Rabsolu_Ropp ``a-b``); Do 2 Rewrite Ropp_distr2. +Apply H; Left; Assumption. +Rewrite b0; Unfold Rminus; Rewrite Rplus_Ropp_r; Rewrite Rabsolu_R0; Apply Rabsolu_pos. +Apply H; Left; Assumption. +Intros; Replace ``(Rabsolu ((Rabsolu a)-(Rabsolu b)))`` with ``(Rabsolu a)-(Rabsolu b)``. +Apply Rabsolu_triang_inv. +Rewrite (Rabsolu_right ``(Rabsolu a)-(Rabsolu b)``); [Reflexivity | Apply Rle_sym1; Apply Rle_anti_compatibility with (Rabsolu b); Rewrite Rplus_Or; Replace ``(Rabsolu b)+((Rabsolu a)-(Rabsolu b))`` with (Rabsolu a); [Assumption | Ring]]. +Qed. + +(* Lien convergence / convergence absolue *) +Lemma cv_cvabs : (Un:nat->R;l:R) (Un_cv Un l) -> (Un_cv [i:nat](Rabsolu (Un i)) (Rabsolu l)). +Unfold Un_cv; Unfold R_dist; Intros. +Elim (H eps H0); Intros. +Exists x; Intros. +Apply Rle_lt_trans with ``(Rabsolu ((Un n)-l))``. +Apply Rabsolu_triang_inv2. +Apply H1; Assumption. +Qed. + +(* Toute suite convergente est de Cauchy *) +Lemma CV_Cauchy : (Un:nat->R) (sigTT R [l:R](Un_cv Un l)) -> (Cauchy_crit Un). +Intros; Elim X; Intros. +Unfold Cauchy_crit; Intros. +Unfold Un_cv in p; Unfold R_dist in p. +Cut ``0R) (sigTT R [l:R](Un_cv Un l)) -> (EXT l:R | ``0R;l1,l2:R) (Un_cv An l1) -> (Un_cv Bn l2) -> (Un_cv [i:nat]``(An i)*(Bn i)`` ``l1*l2``). +Intros. +Cut (sigTT R [l:R](Un_cv An l)). +Intro. +Assert H1 := (maj_by_pos An X). +Elim H1; Intros M H2. +Elim H2; Intros. +Unfold Un_cv; Unfold R_dist; Intros. +Cut ``0R;l1,l2:R) (Un_cv An l1) -> (Un_cv Bn l2) -> (Un_cv [i:nat]``(An i)-(Bn i)`` ``l1-l2``). +Intros. +Replace [i:nat]``(An i)-(Bn i)`` with [i:nat]``(An i)+((opp_sui Bn) i)``. +Unfold Rminus; Apply CV_plus. +Assumption. +Apply CV_opp; Assumption. +Unfold Rminus opp_sui; Reflexivity. +Qed. + -- cgit v1.2.3