1 (**************************************************************************)
4 (* ||A|| A project by Andrea Asperti *)
6 (* ||I|| Developers: *)
7 (* ||T|| The HELM team. *)
8 (* ||A|| http://helm.cs.unibo.it *)
10 (* \ / This file is distributed under the terms of the *)
11 (* v GNU General Public License Version 2 *)
13 (**************************************************************************)
15 (* This file was automatically generated: do not edit *********************)
19 (* $Id: Cauchy_CReals.v,v 1.5 2004/04/23 10:01:04 lcf Exp $ *)
21 include "algebra/Cauchy_COF.ma".
23 include "reals/CReals.ma".
29 (*#* * The Real Number Structure
31 We will now apply our Cauchy sequence construction to an archimedean ordered field in order to obtain a model of the real numbers.
35 We start by showing how to inject the rational numbers in the field of Cauchy sequences; this embedding preserves the algebraic operations.
37 %\begin{convention}% Let [F] be an ordered field.
41 alias id "F" = "cic:/CoRN/reals/Cauchy_CReals/R_CReals/F.var".
44 Notation "'R_COrdField''" := (R_COrdField F).
47 inline procedural "cic:/CoRN/reals/Cauchy_CReals/inject_Q.con".
49 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_eq.con".
51 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_plus.con".
53 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_min.con".
55 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_lt.con".
57 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_ap.con".
59 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_cancel_eq.con".
61 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_cancel_less.con".
63 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_le.con".
65 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_cancel_leEq.con".
67 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_cancel_AbsSmall.con".
69 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_One.con".
71 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_nring'.con".
73 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_nring.con".
75 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_mult.con".
81 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_div_three.con".
84 Transparent R_COrdField.
87 inline procedural "cic:/CoRN/reals/Cauchy_CReals/ing_n.con".
89 inline procedural "cic:/CoRN/reals/Cauchy_CReals/expand_Q_R.con".
91 inline procedural "cic:/CoRN/reals/Cauchy_CReals/conv_modulus.con".
93 inline procedural "cic:/CoRN/reals/Cauchy_CReals/R_CReals/T.con" "R_CReals__".
95 (*#* We now assume our original field is archimedean and prove that the
96 resulting one is, too.
99 alias id "F_is_archemaedian" = "cic:/CoRN/reals/Cauchy_CReals/R_CReals/F_is_archemaedian.var".
101 inline procedural "cic:/CoRN/reals/Cauchy_CReals/R_is_archemaedian.con".
105 inline procedural "cic:/CoRN/reals/Cauchy_CReals/R_CReals/PT.con" "R_CReals__".
109 inline procedural "cic:/CoRN/reals/Cauchy_CReals/modulus_property.con".
111 inline procedural "cic:/CoRN/reals/Cauchy_CReals/modulus_property_2.con".
113 inline procedural "cic:/CoRN/reals/Cauchy_CReals/expand_Q_R_2.con".
115 inline procedural "cic:/CoRN/reals/Cauchy_CReals/CS_seq_diagonal.con".
117 (*#* ** Cauchy Completeness
118 We can also define a limit operator.
121 inline procedural "cic:/CoRN/reals/Cauchy_CReals/Q_dense_in_R.con".
123 inline procedural "cic:/CoRN/reals/Cauchy_CReals/LimR_CauchySeq.con".
125 inline procedural "cic:/CoRN/reals/Cauchy_CReals/R_is_complete.con".
127 inline procedural "cic:/CoRN/reals/Cauchy_CReals/R_is_CReals.con".
129 inline procedural "cic:/CoRN/reals/Cauchy_CReals/R_as_CReals.con".