Advertisement

General Bindings and Alpha-Equivalence in Nominal Isabelle

  • Christian Urban
  • Cezary Kaliszyk
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6602)

Abstract

Nominal Isabelle is a definitional extension of the Isabelle/HOL theorem prover. It provides a proving infrastructure for reasoning about programming language calculi involving named bound variables (as opposed to de-Bruijn indices). In this paper we present an extension of Nominal Isabelle for dealing with general bindings, that means term-constructors where multiple variables are bound at once. Such general bindings are ubiquitous in programming language research and only very poorly supported with single binders, such as lambda-abstractions. Our extension includes new definitions of α-equivalence and establishes automatically the reasoning infrastructure for α-equated terms. We also prove strong induction principles that have the usual variable convention already built in.

Keywords

Free Atom Proof Obligation Binding Function Induction Principle General Binding 
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.

References

  1. 1.
    Altenkirch, T., Danielsson, N.A., Löh, A., Oury, N.: PiSigma: Dependent Types Without the Sugar. In: Blume, M., Kobayashi, N., Vidal, G. (eds.) FLOPS 2010. LNCS, vol. 6009, pp. 40–55. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  2. 2.
    Bengtson, J., Parrow, J.: Psi-Calculi in Isabelle. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) TPHOLs 2009. LNCS, vol. 5674, pp. 99–114. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  3. 3.
    Charguéraud, A.: The Locally Nameless Representation. To appear in J. of Automated ReasoningGoogle Scholar
  4. 4.
    Cheney, J.: Scrap your Nameplate (Functional Pearl). In: Proc. of the 10th ICFP Conference, pp. 180–191 (2005)Google Scholar
  5. 5.
    Cheney, J.: Toward a General Theory of Names: Binding and Scope. In: Proc. of the 3rd MERLIN Workshop, pp. 33–40 (2005)Google Scholar
  6. 6.
    Homeier, P.: A Design Structure for Higher Order Quotients. In: Hurd, J., Melham, T. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 130–146. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Huffman, B., Urban, C.: Proof Pearl: 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. To appear in the Proc. of the 26th ACM Symposium on Applied Computing (2011)Google Scholar
  9. 9.
    Lee, D.K., Crary, K., Harper, R.: Towards a Mechanized Metatheory of Standard ML. In: Proc. of the 34th POPL Symposium, pp. 173–184 (2007)Google Scholar
  10. 10.
    Naraschewski, W., Nipkow, T.: Type Inference Verified: Algorithm W in Isabelle/HOL. J. of Automated Reasoning 23, 299–318 (1999)MathSciNetCrossRefMATHGoogle Scholar
  11. 11.
    Pitts, A.: Notes on the Restriction Monad for Nominal Sets and Cpos. Unpublished notes for an invited talk given at CTCS (2004)Google Scholar
  12. 12.
    Pitts, A.M.: Nominal Logic, A First Order Theory of Names and Binding. Information and Computation 183, 165–193 (2003)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Pottier, F.: An Overview of Cαml. In: ACM Workshop on ML. ENTCS, vol. 148, pp. 27–52 (2006)Google Scholar
  14. 14.
    Sato, M., Pollack, R.: External and Internal Syntax of the Lambda-Calculus. J. of Symbolic Computation 45, 598–616 (2010)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    Sewell, P.: A Binding Bestiary. Unpublished notesGoogle Scholar
  16. 16.
    Sewell, P., Nardelli, F.Z., Owens, S., Peskine, G., Ridge, T., Sarkar, S., Strniša, R.: OTT: Effective Tool Support for the Working Semanticist. J. of Functional Programming 20(1), 70–122 (2010)CrossRefMATHGoogle Scholar
  17. 17.
    Tobin-Hochstadt, S., Felleisen, M.: The Design and Implementation of Typed Scheme. In: Proc. of the 35rd POPL Symposium, pp. 395–406 (2008)Google Scholar
  18. 18.
    Urban, C., Cheney, J., Berghofer, S.: Mechanizing the Metatheory of LF. In: Proc. of the 23rd LICS Symposium, pp. 45–56 (2008)Google Scholar
  19. 19.
    Urban, C., Nipkow, T.: Nominal Verification of Algorithm W. In: Huet, G., Lévy, J.-J., Plotkin, G. (eds.) From Semantics to Computer Science. Essays in Honour of Gilles Kahn, pp. 363–382. Cambridge University Press, Cambridge (2009)CrossRefGoogle Scholar
  20. 20.
    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
  21. 21.
    Urban, C., Zhu, B.: Revisiting Cut-Elimination: One Difficult Proof is Really a Proof. In: Voronkov, A. (ed.) RTA 2008. LNCS, vol. 5117, pp. 409–424. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Christian Urban
    • 1
  • Cezary Kaliszyk
    • 1
  1. 1.TU MunichGermany

Personalised recommendations