Hostname: page-component-6766d58669-76mfw Total loading time: 0 Render date: 2026-05-20T10:49:24.035Z Has data issue: false hasContentIssue false

A monadic, functional implementation of real numbers

Published online by Cambridge University Press:  01 February 2007

RUSSELL ÓCONNOR*
Affiliation:
Institute for Computing and Information Science, Faculty of Science, Radboud UniversityNijmegen Email: r.oconnor@cs.ru.nl

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 (Bishop and Bridges 1985) of regular sequences is generalised to what I call regular functions, which form the completion of any metric space. Using the monad operations, continuous functions on length spaces (which are 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 verify its correctness easily.

Information

Type
Paper
Copyright
Copyright © Cambridge University Press 2007

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable