Skip to main content

Minlog - A Tool for Program Extraction Supporting Algebras and Coalgebras

  • Conference paper

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 6859)

Abstract

Minlog is an interactive system which implements proof-theoretic methods and applies them to verification and program extraction. We give an overview of Minlog and demonstrate how it can be used to exploit the computational content in (co)algebraic proofs and to develop correct and efficient programs. We illustrate this by means of two examples: one about parsing, the other about exact real numbers in signed digit representation.

Keywords

  • Classical Proof
  • Program Extraction
  • Initial Algebra
  • Balance String
  • Interactive Proof System

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-642-22944-2_29
  • Chapter length: 7 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   74.99
Price excludes VAT (USA)
  • ISBN: 978-3-642-22944-2
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   99.00
Price excludes VAT (USA)

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agda: http://wiki.portal.chalmers.se/agda/

  2. Berger, U., Berghofer, S., Letouzey, P., Schwichtenberg, H.: Program extraction from normalization proofs. Studia Logica 82, 27–51 (2006)

    MathSciNet  CrossRef  Google Scholar 

  3. Benl, H., Berger, U., Schwichtenberg, H., Seisenberger, M., Zuber, W.: Proof theory at work: Program development in the Minlog system. In: Bibel, W., Schmitt, P.H. (eds.) Automated Deduction. Applied Logic Series, vol. II, pp. 41–71. Kluwer, Dordrecht (1998)

    Google Scholar 

  4. Berger, U., Buchholz, W., Schwichtenberg, H.: Refined program extraction from classical proofs. APAL 114, 3–25 (2002)

    MathSciNet  MATH  Google Scholar 

  5. Berger, U.: From coinductive proofs to exact real arithmetic. In: Grädel, E., Kahle, R. (eds.) CSL 2009. LNCS, vol. 5771, pp. 132–146. Springer, Heidelberg (2009)

    CrossRef  Google Scholar 

  6. Berger, U., Eberl, M., Schwichtenberg, H.: Term rewriting for normalization by evaluation. Information and Computation 183, 19–42 (2003)

    MathSciNet  MATH  CrossRef  Google Scholar 

  7. Berger, U., Hou, T.: Coinduction for exact real number computation. Theory of Computing Systems 43, 394–409 (2008)

    MathSciNet  MATH  CrossRef  Google Scholar 

  8. Berger, U., Schwichtenberg, H.: An inverse of the evaluation functional for typed λ-calculus. In: Vemuri, R. (ed.) Proceedings 6’th Symposium on Logic in Computer Science, LICS 1991, pp. 203–211. IEEE Computer Society Press, Los Alamitos (1991)

    Google Scholar 

  9. Bauer, A., Stone, C.A.: RZ: A tool for bringing constructive and computable mathematics closer to programming practice. In: Cooper, S.B., Löwe, B., Sorbi, A. (eds.) CiE 2007. LNCS, vol. 4497, pp. 28–42. Springer, Heidelberg (2007)

    CrossRef  Google Scholar 

  10. Berger, U., Seisenberger, M.: Proofs, programs, processes. In: Ferreira, F., Löwe, B., Mayordomo, E., Mendes Gomes, L. (eds.) CiE 2010. LNCS, vol. 6158, pp. 39–48. Springer, Heidelberg (2010)

    CrossRef  Google Scholar 

  11. Ciaffaglione, A., Di Gianantonio, P.: A certified, corecursive implementation of exact real numbers. Theor. Comp. Sci. 351, 39–51 (2006)

    MATH  CrossRef  Google Scholar 

  12. Chuang, C.M.: Extraction of Programs for Exact Real Number Computation Using Agda. PhD thesis. Swansea University, Wales (2011)

    Google Scholar 

  13. The Coq Proof Assistant, http://coq.inria.fr/

  14. Crosilla, L., Seisenberger, M., Schwichtenberg, H.: A Tutorial for Minlog, Version 5.0 (2011)

    Google Scholar 

  15. Geuvers, H., Niqui, M., Spitters, B., Wiedijk, F.: Constructive analysis, types and exact real numbers. Math. Struct. Comp. Sci. 17(1), 3–36 (2007)

    MathSciNet  MATH  CrossRef  Google Scholar 

  16. Isabelle, http://isabelle.in.tum.de/

  17. Kreisel, G.: Interpretation of analysis by means of constructive functionals of finite types. Constructivity in Mathematics, 101–128 (1959)

    Google Scholar 

  18. Letouzey, P.: A New Extraction for Coq. In: Geuvers, H., Wiedijk, F. (eds.) TYPES 2002. LNCS, vol. 2646, pp. 200–219. Springer, Heidelberg (2003)

    CrossRef  Google Scholar 

  19. Miller, D.: A logic programming language with lambda–abstraction, function variables and simple unification. Jour. Logic Comput. 2(4), 497–536 (1991)

    CrossRef  Google Scholar 

  20. The Minlog System, http://www.minlog-system.de

  21. Marcial-Romero, J.R., Escardo, M.H.: Semantics of a sequential language for exact real-number computation. Theor. Comp. Sci. 379(1-2), 120–141 (2007)

    MathSciNet  MATH  CrossRef  Google Scholar 

  22. Schwichtenberg, H.: Proof search in minimal logic. In: Buchberger, B., Campbell, J.A. (eds.) AISC 2004. LNCS (LNAI), vol. 3249, pp. 15–25. Springer, Heidelberg (2004)

    CrossRef  Google Scholar 

  23. Schwichtenberg, H., Wainer, S.S.: Proofs and Computations. Perspectives in Logic. Assoc. Symb. Logic, Cambridge Univ. Press (to appear, 2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Berger, U., Miyamoto, K., Schwichtenberg, H., Seisenberger, M. (2011). Minlog - A Tool for Program Extraction Supporting Algebras and Coalgebras. In: Corradini, A., Klin, B., Cîrstea, C. (eds) Algebra and Coalgebra in Computer Science. CALCO 2011. Lecture Notes in Computer Science, vol 6859. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22944-2_29

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-22944-2_29

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-22943-5

  • Online ISBN: 978-3-642-22944-2

  • eBook Packages: Computer ScienceComputer Science (R0)