Skip to main content

Extracting a Normalization Algorithm in Isabelle/HOL

  • Conference paper
Book cover Types for Proofs and Programs (TYPES 2004)

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

Included in the following conference series:

  • 461 Accesses

Abstract

We present a formalization of a constructive proof of weak normalization for the simply-typed λ-calculus in the theorem prover Isabelle/HOL, and show how a program can be extracted from it. Unlike many other proofs of weak normalization based on Tait’s strong computability predicates, which require a logic supporting strong eliminations and can give rise to dependent types in the extracted program, our formalization requires only relatively simple proof principles. Thus, the program obtained from this proof is typable in simply-typed higher-order logic as implemented in Isabelle/HOL, and a proof of its correctness can automatically be derived within the system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Altenkirch, T.: Constructions, Inductive Types and Strong Normalization. PhD thesis, University of Edinburgh (November 1993)

    Google Scholar 

  2. Altenkirch, T.: A formalization of the strong normalization proof for System F in LEGO. In: Bezem, M., Groote, J.F. (eds.) TLCA 1993. LNCS, vol. 664, pp. 13–28. Springer, Heidelberg (1993)

    Chapter  Google Scholar 

  3. Aydemir, B.E., Bohannon, A., Fairbairn, M., Foster, J.N., Pierce, B.C., Sewell, P., Vytiniotis, D., Washburn, G., Weirich, S., Zdancewic, S.: Mechanized Metatheory for the Masses: The poplmark Challenge. In: Hurd, J., Melham, T. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 50–65. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  4. Barras, B.: Auto-validation d’un système de preuves avec familles inductives. Thèse de doctorat, Université Paris 7 (November 1999)

    Google Scholar 

  5. Barras, B., Werner, B.: Coq in Coq. To appear in Journal of Automated Reasoning

    Google Scholar 

  6. Barras, B., et al.: The Coq proof assistant reference manual – version 7.2. Technical Report 0255, INRIA (February 2002)

    Google Scholar 

  7. 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. (eds.) Automated Deduction – A Basis for Applications. Systems and Implementation Techniques of Applied Logic Series, vol. II, pp. 41–71. Kluwer Academic Publishers, Dordrecht (1998)

    Google Scholar 

  8. Berger, U.: Program extraction from normalization proofs. In: Bezem, M., Groote, J.F. (eds.) TLCA 1993. LNCS, vol. 664, pp. 91–106. Springer, Heidelberg (1993)

    Chapter  Google Scholar 

  9. Berghofer, S.: Program Extraction in simply-typed Higher Order Logic. In: Geuvers, H., Wiedijk, F. (eds.) TYPES 2002. LNCS, vol. 2646, pp. 21–38. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  10. Berghofer, S.: Proofs, Programs and Executable Specifications in Higher Order Logic. PhD thesis, Institut für Informatik, TU München (2003)

    Google Scholar 

  11. Coquand, C.: From semantics to rules: A machine assisted analysis. In: Meinke, K., Börger, E., Gurevich, Y. (eds.) CSL 1993. LNCS, vol. 832, pp. 91–105. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  12. Joachimski, F., Matthes, R.: Short proofs of normalization for the simply-typed λ-calculus, permutative conversions and Gödel’s T. Archive for Mathematical Logic 42(1), 59–87 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  13. Luo, Z., Pollack, R.: The LEGO proof development system: A user’s manual. Technical Report ECS-LFCS-92-211, University of Edinburgh (May 1992)

    Google Scholar 

  14. Nipkow, T.: More Church-Rosser proofs (in Isabelle/HOL). Journal of Automated Reasoning 26, 51–66 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  15. Nipkow, T.: Structured Proofs in Isar/HOL. In: Geuvers, H., Wiedijk, F. (eds.) TYPES 2002. LNCS, vol. 2646, pp. 259–278. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  16. Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL — A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  17. Pollack, R.: The Theory of LEGO: A Proof Checker for the Extended Calculus of Constructions. PhD thesis, University of Edinburgh (1994)

    Google Scholar 

  18. Tait, W.W.: Intensional interpretations of functionals of finite type I. Journal of Symbolic Logic 32(2), 198–212 (1967)

    Article  MATH  MathSciNet  Google Scholar 

  19. Wenzel, M.: Isabelle/Isar — a versatile environment for human-readable formal proof documents. PhD thesis, Institut für Informatik, TU München (2002), http://tumb1.biblio.tu-muenchen.de/publ/diss/in/2002/wenzel.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Berghofer, S. (2006). Extracting a Normalization Algorithm in Isabelle/HOL. In: Filliâtre, JC., Paulin-Mohring, C., Werner, B. (eds) Types for Proofs and Programs. TYPES 2004. Lecture Notes in Computer Science, vol 3839. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11617990_4

Download citation

  • DOI: https://doi.org/10.1007/11617990_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-31428-8

  • Online ISBN: 978-3-540-31429-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics