11.3.1 Construction of Cauchy reals
The construction of the Cauchy reals as a higher inductive type is a bit more subtle than that of the free algebraic structures considered in \autorefsec:free-algebras. We intend to include a βtake the limitβ constructor whose input is a Cauchy sequence of reals, but the notion of βCauchy sequence of realsβ depends on having some way to measure the βdistanceβ between real numbers. In general, of course, the distance between two real numbers will be another real number, leading to a potentially problematic circularity.
However, what we actually need for the notion of Cauchy sequence of reals is not the general notion of βdistanceβ, but a way to say that βthe distance between two real numbers is less than β for any . This can be represented by a family of binary relations, which we will denote . The intended meaning of is , but since we do not have notions of subtraction, absolute value, or inequality available yet (we are only just defining , after all), we will have to define these relations at the same time as we define itself. And since is a type family indexed by two copies of , we cannot do this with an ordinary mutual (higher) inductive definition; instead we have to use a higher inductive-inductive definition.
Recall from \autorefsec:generalizations that the ordinary notion of inductive-inductive definition allows us to define a type and a type family indexed by it by simultaneous induction. Of course, the βhigherβ version of this allows both the type and the family to have path constructors as well as point constructors. We will not attempt to formulate any general theory of higher inductive-inductive definitions, but hopefully the description we will give of and will make the idea transparent.
Remark 11.3.1.
We might also consider a higher inductive-recursive definition, in which is defined using the recursion principle of , simultaneously with the inductive definition of . We choose the inductive-inductive route instead for two reasons. Firstly, higher inductive-recursive definitions seem to be more difficult to justify in homotopical semantics. Secondly, and more importantly, the inductive-inductive definition yields a more powerful induction principle, which we will need in order to develop even the basic theory of Cauchy reals.
Finally, as we did for the discussion of Cauchy completeness of the Dedekind reals in \autorefsec:RD-cauchy-complete, we will work with Cauchy approximations (\autorefdefn:cauchy-approximation) instead of Cauchy sequences. Of course, our Cauchy approximations will now consist of Cauchy reals, rather than Dedekind reals or rational numbers.
Definition 11.3.2.
Let and the relation be the following higher inductive-inductive type family. The type of Cauchy reals is generated by the following constructors:
-
β’
rational points: for any there is a real .
- β’
-
β’
paths: for such that
(11.3.3) then there is a path .
Simultaneously, the type family is generated by the following constructors. Here and denote rational numbers; , , and denote positive rationals; and denote Cauchy reals; and and denote Cauchy approximations:
-
β’
for any , if , then ,
-
β’
for any , if , then ,
-
β’
for any , if , then ,
-
β’
for any , if , then ,
-
β’
for any , if , then (propositional truncation).
The first constructor of says that any rational number can be regarded as a real number. The second says that from any Cauchy approximation to a real number, we can obtain a new real number called its βlimitβ. And the third expresses the idea that if two Cauchy approximations coincide, then their limits are equal.
The first four constructors of specify when two rational numbers are close, when a rational is close to a limit, and when two limits are close. In the case of two rational numbers, this is just the usual notion of -closeness for rational numbers, whereas the other cases can be derived by noting that each approximant is supposed to be within of the limit .
We remind ourselves of proof-relevance: a real number obtained from is represented not just by a Cauchy approximation , but also a proof ofΒ (11.3.2), so we should technically have written instead of just . A similar observation also applies to andΒ (11.3.3), but we shall write just instead of . These abuses of notation are mitigated by the fact that we are omitting mere propositions and information that is readily guessed. Likewise, the last constructor of justifies our leaving the other four nameless.
We are immediately able to populate with many real numbers. For suppose is a traditional Cauchy sequence of rational numbers, and let be its modulus of convergence. Then is a Cauchy approximation, using the first constructor of to produce the necessary witness. Thus, is a real number. Various famous real numbers , , , β¦ are all limits of such Cauchy sequences of rationals.
Title | 11.3.1 Construction of Cauchy reals |
---|---|
\metatable |