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

  • Cezary Kaliszyk
  • Henk Barendregt
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7086)


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.


Point Theorem Proof Obligation Lambda Calculus Closed Term Nominal Logic 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 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. 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. 3.
    Bengtson, J., Parrow, J.: Formalising the pi-calculus using nominal logic. Logical Methods in Computer Science 5(2) (2008)Google Scholar
  4. 4.
    Blanchette, J.C., Böhme, S., Paulson, L.C.: Extending sledgehammer with smt solvers. Automated Deduction (2011) (accepted)Google Scholar
  5. 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)CrossRefGoogle Scholar
  6. 6.
    Hankin, C.: Lambda Calculi: A Guide for Computer Scientists. Graduate Texts in Computer Science, vol. 3. Clarendon Press (1993)Google Scholar
  7. 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)CrossRefGoogle Scholar
  8. 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. 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. 10.
    Norrish, M.: Mechanising λ-calculus using a classical first order theory of terms with permutations. Higher-Order and Symbolic Computation 19, 169–195 (2006)CrossRefzbMATHGoogle Scholar
  11. 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)CrossRefGoogle Scholar
  12. 12.
    Pitts, A.M.: Nominal Logic, A First Order Theory of Names and Binding. Information and Computation 183, 165–193 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 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)CrossRefGoogle Scholar
  14. 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)CrossRefGoogle Scholar
  15. 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. 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)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Cezary Kaliszyk
    • 1
  • Henk Barendregt
    • 2
  1. 1.University of TsukubaJapan
  2. 2.Radboud University NijmegenNetherlands

Personalised recommendations