A Monadic, Functional Implementation of Real Numbers
Russell O'Connor

TL;DR
This paper presents a monadic, functional approach to implementing constructive real numbers in proof assistants, enabling verified large-scale real number computations with a focus on correctness and efficiency.
Contribution
It introduces a novel monadic framework for real number computation using regular functions, generalizing regular sequences, with a prototype Haskell implementation.
Findings
Provides a monadic construction for real numbers in proof assistants.
Enables verified, large-scale real number computations.
Offers a simple, verifiable, and reasonably efficient real number library.
Abstract
Large scale real number computation is an essential ingredient in several modern mathematical proofs. Because such lengthy computations cannot be verified by hand, some mathematicians want to use software proof assistants to verify the correctness of these proofs. This paper develops a new implementation of the constructive real numbers and elementary functions for such proofs by using the monad properties of the completion operation on metric spaces. Bishop and Bridges's notion of regular sequences is generalized to, what I call, regular functions which form the completion of any metric space. Using the monad operations, continuous functions on length spaces (a common subclass of metric spaces) are created by lifting continuous functions on the original space. A prototype Haskell implementation has been created. I believe that this approach yields a real number library that is…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
