A Monadic, Functional Implementation of Real Numbers
Russell O'Connor
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 reasonably efficient for computation, and still simple enough to easily verify its correctness.
Create a lesson
Related papers
A Multilevel Interacting Particle System Method for the estimation of Failure Probabilities
Rubén Aylwin, José Pinto
Enforcing Dirichlet Boundary Conditions in Operator Learning
Andrew M. Stuart, Margaret Trautner
QH-GEM: Quantum-Hydrodynamic Generative Modeling
Harbir Antil, Alex Kaltenbach, Sarswati Shah
Bochner Stability for B-stable DIRK Schemes
Anthony E. Ramirez, Abner J. Salgado
A multi-class kinetic traffic flow model: discrete-velocity formulation and diffusively-corrected macroscopic limits
Carmen Mezquita-Nieto, Paola Goatin, Axel Klar
Primal-dual methods and acceleration for Morozov and equality constrained regularization
Diana-Elena Mirciu, Martin Benning, Elena Resmerita