Limits of real numbers in the binary signed digit representation
-
Published:2022-08-19
Issue:
Volume:Volume 18, Issue 3
Page:
-
ISSN:1860-5974
-
Container-title:Logical Methods in Computer Science
-
language:en
-
Short-container-title:
Author:
Wiesnet Franziskus,Köpp Nils
Abstract
We extract verified algorithms for exact real number computation from
constructive proofs. To this end we use a coinductive representation of reals
as streams of binary signed digits. The main objective of this paper is the
formalisation of a constructive proof that real numbers are closed with respect
to limits. All the proofs of the main theorem and the first application are
implemented in the Minlog proof system and the extracted terms are further
translated into Haskell. We compare two approaches. The first approach is a
direct proof. In the second approach we make use of the representation of reals
by a Cauchy-sequence of rationals. Utilizing translations between the two
represenation and using the completeness of the Cauchy-reals, the proof is very
short. In both cases we use Minlog's program extraction mechanism to
automatically extract a formally verified program that transforms a converging
sequence of reals, i.e.~a sequence of streams of binary signed digits together
with a modulus of convergence, into the binary signed digit representation of
its limit. The correctness of the extracted terms follows directly from the
soundness theorem of program extraction. As a first application we use the
extracted algorithms together with Heron's method to construct an algorithm
that computes square roots with respect to the binary signed digit
representation. In a second application we use the convergence theorem to show
that the signed digit representation of real numbers is closed under
multiplication.
Publisher
Centre pour la Communication Scientifique Directe (CCSD)
Subject
General Computer Science,Theoretical Computer Science