Skip to main content

Reasoning about Constants in Nominal Isabelle or How to Formalize the Second Fixed Point Theorem

  • Conference paper
Certified Programs and Proofs (CPP 2011)

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

Included in the following conference series:

  • 666 Accesses

Abstract

Nominal Isabelle is a framework for reasoning about programming languages with named bound variables (as opposed to de Bruijn indices). It is a definitional extension of the HOL object logic of the Isabelle theorem prover. Nominal Isabelle supports the definition of term languages of calculi with bindings, functions on the terms of these calculi and provides mechanisms that automatically rename binders. Functions defined in Nominal Isabelle can be defined with assumptions: The binders can be assumed fresh for any arguments of the functions. Defining functions is often one of the more complicated part of reasoning with Nominal Isabelle, and together with analysing freshness is the part that differs most from paper proofs. In this paper we show how to define terms from λ-calculus and reason about them without having to carry around the freshness conditions. As a case study we formalize the second fixed point theorem of the λ-calculus.

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. Barendregt, H.P.: The Lambda Calculus: Its Syntax and Semantics. Studies in Logic and the Foundations of Mathematics, vol. 103. Elsevier (2001)

    Google Scholar 

  2. Bengtson, J., Johansson, M., Parrow, J., Victor, B.: Psi-calculi: a framework for mobile processes with nominal data and logic. Logical Methods in Computer Science 7(1) (2011)

    Google Scholar 

  3. Bengtson, J., Parrow, J.: Formalising the pi-calculus using nominal logic. Logical Methods in Computer Science 5(2) (2008)

    Google Scholar 

  4. Blanchette, J.C., Böhme, S., Paulson, L.C.: Extending sledgehammer with smt solvers. Automated Deduction (2011) (accepted)

    Google Scholar 

  5. Böhm, C., Piperno, A., Guerrini, S.: Lambda-definition of function(al)s by normal forms. In: Sannella, D. (ed.) ESOP 1994. LNCS, vol. 788, pp. 135–149. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  6. Hankin, C.: Lambda Calculi: A Guide for Computer Scientists. Graduate Texts in Computer Science, vol. 3. Clarendon Press (1993)

    Google Scholar 

  7. Huffman, B., Urban, C.: A New Foundation for Nominal Isabelle. In: Kaufmann, M., Paulson, L.C. (eds.) ITP 2010. LNCS, vol. 6172, pp. 35–50. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  8. Kaliszyk, C., Urban, C.: Quotients revisited for Isabelle/HOL. In: Chu, W.C., Wong, W.E., Palakal, M.J., Hung, C.-C. (eds.) Proc. of the 26th ACM Symposium on Applied Computing (SAC 2011), pp. 1639–1644. ACM (2011)

    Google Scholar 

  9. Minamide, Y., Okuma, K.: Verifying CPS transformations in Isabelle/HOL. In: Proc. of the Workshop on Mechanized reasoning about languages with variable binding (MERLIN 2003). ACM (2003)

    Google Scholar 

  10. Norrish, M.: Mechanising λ-calculus using a classical first order theory of terms with permutations. Higher-Order and Symbolic Computation 19, 169–195 (2006)

    Article  MATH  Google Scholar 

  11. Norrish, M.: Mechanised Computability Theory. In: van Eekelen, M., Geuvers, H., Schmaltz, J., Wiedijk, F. (eds.) ITP 2011. LNCS, vol. 6898, pp. 297–311. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  12. Pitts, A.M.: Nominal Logic, A First Order Theory of Names and Binding. Information and Computation 183, 165–193 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  13. Urban, C., Tasson, C.: Nominal Techniques in Isabelle/HOL. In: Nieuwenhuis, R. (ed.) CADE 2005. LNCS (LNAI), vol. 3632, pp. 38–53. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  14. Urban, C., Berghofer, S.: A Recursion Combinator for Nominal Datatypes Implemented in Isabelle/HOL. In: Furbach, U., Shankar, N. (eds.) IJCAR 2006. LNCS (LNAI), vol. 4130, pp. 498–512. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  15. Urban, C., Cheney, J., Berghofer, S.: Mechanizing the Metatheory of LF. In: Proc. of the 23rd LICS Symposium, pp. 45–56 (2008)

    Google Scholar 

  16. Urban, C., Kaliszyk, C.: General Bindings and Alpha-Equivalence in Nominal Isabelle. In: Barthe, G. (ed.) ESOP 2011. LNCS, vol. 6602, pp. 480–500. Springer, Heidelberg (2011)

    Chapter  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

Kaliszyk, C., Barendregt, H. (2011). Reasoning about Constants in Nominal Isabelle or How to Formalize the Second Fixed Point Theorem. In: Jouannaud, JP., Shao, Z. (eds) Certified Programs and Proofs. CPP 2011. Lecture Notes in Computer Science, vol 7086. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25379-9_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-25379-9_9

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-25378-2

  • Online ISBN: 978-3-642-25379-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics