Skip to main content Accesibility Help

Program extraction in exact real arithmetic


The importance of an abstract approach to a computation theory over general data types has been stressed by Tucker in many of his papers. Berger and Seisenberger recently elaborated the idea for extraction out of proofs involving (only) abstract reals. They considered a proof involving coinduction of the proposition that any two reals in [−1, 1] have their average in the same interval, and informally extract a Haskell program from this proof, which works with stream representations of reals. Here we formalize the proof, and machine extract its computational content using the Minlog proof assistant. This required an extension of this system to also take coinduction into account.

Hide All

Kenji Miyamoto is supported by the Marie Curie Initial Training Network in Mathematical Logic – MALOA – from Mathematical Logic to Applications, PITN-GA-2009-238381

Hide All
Agda. (2013) Available at
Berger, U. (1993) Program extraction from normalization proofs. In: Bezem, M. and Groote, J. (eds.) Typed Lambda Calculi and Applications. Springer Verlag Lecture Notes in Computer Science 664 91106.
Berger, U. (2009) From coinductive proofs to exact real arithmetic. In: Grädel, E. and Kahle, R. (eds.) Computer Science Logic. Springer Verlag Lecture Notes in Computer Science 5771 132146.
Berger, U., Eberl, M. and Schwichtenberg, H. (2003) Term rewriting for normalization by evaluation. Information and Computation 183 1942.
Berger, U. and Seisenberger, M. (2010) Proofs, programs, processes. In: Ferreira, F. et al. (eds.) Proceedings CiE 2010. Springer Verlag Lecture Notes Computer Science 6158 3948.
Berger, U. and Seisenberger, M. (2012) Proofs, programs, processes. Theory of Computing 51 313329.
Berghofer, S. (2003) Proofs, Programs and Executable Specifications in Higher Order Logic, Ph.D. thesis, Institut für Informatik, TU München.
Chuang, C. M. (2011) Extraction of Programs for Exact Real Number Computation Using Agda, Ph.D. thesis, Swansea University, Wales, UK.
Ciaffaglione, A. and Gianantonio, P. D. (2006) A certified, corecursive implementation of exact real numbers. Theoretical Computer Science 351 3951.
Coq Development Team (2009) The Coq Proof Assistant Reference Manual – Version 8.2. Inria.
Kohlenbach, U. (2008) Applied Proof Theory: Proof Interpretations and Their Use in Mathematics, Springer Verlag, Berlin, Heidelberg.
Kreisel, G. (1959) Interpretation of analysis by means of constructive functionals of finite types. In: Heyting, A. (ed.) Constructivity in Mathematics. North-Holland, Amsterdam, 101128.
Letouzey, P. (2003) A new extraction for coq. In: Geuvers, H. and Wiedijk, F. (eds.) Types for Proofs and Programs, Second International Workshop, TYPES 2002. Springer Verlag Lecture Notes in Computer Science 2646 200219.
O'Connor, R. (2009) Incompleteness & Completeness. Formalizing Logic and Analysis in Type Theory, Ph.D. thesis, Nijmegen University.
Plume, D. (1998) A Calculator for Exact Real Number Computation, Ph.D. thesis, University of Edinburgh.
Schwichtenberg, H. (2006) Minlog. In: Wiedijk, F. (ed.) The Seventeen Provers of the World. Springer Verlag Lecture Notes in Artificial Intelligence 3600 151157.
Schwichtenberg, H. (2008) Realizability interpretation of proofs in constructive analysis. Theory of Computing Systems 43 (3) 583602.
Schwichtenberg, H. and Wainer, S. S. (2012) Proofs and Computations. Perspectives in Logic. Cambridge University Press.
Tucker, J. V. and Zucker, J. I. (1992) Theory of computation over stream algebras, and its applications. In: Havel, I. M. and Koubek, V. (eds.) Mathematical Foundations of Computer Science. Springer Verlag Lecture Notes in Computer Science 629 6280.
Wiedmer, E. (1977) Exaktes Rechnen mit reellen Zahlen und anderen unendlichen Objekten, Ph.D. thesis, ETH Zürich.
Wiedmer, E. (1980) Computing with infinite objects. Theoretical Computer Science 10 133155.
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Mathematical Structures in Computer Science
  • ISSN: 0960-1295
  • EISSN: 1469-8072
  • URL: /core/journals/mathematical-structures-in-computer-science
Please enter your name
Please enter a valid email address
Who would you like to send this to? *


Full text views

Total number of HTML views: 0
Total number of PDF views: 0 *
Loading metrics...

Abstract views

Total abstract views: 0 *
Loading metrics...

* Views captured on Cambridge Core between <date>. This data will be updated every 24 hours.

Usage data cannot currently be displayed