Skip to main content

A Locally Nameless Representation for a Natural Semantics for Lazy Evaluation

  • Conference paper

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

Abstract

We propose a locally nameless representation for Launchbury’s natural semantics for lazy evaluation. Names are reserved for free variables, while bound variable names are replaced by indices. This avoids the use of α-conversion and Barendregt’s variable convention, and facilitates proof formalization. Our definition includes the management of multi-binders to represent simultaneous recursive local declarations. We use cofinite quantification to express the semantic rules that require the introduction of fresh names, but we show that existential rules are admissible too. Moreover, we prove that the choice of names during the evaluation of a term is irrelevant as long as they are fresh enough.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   54.99
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   72.00
Price excludes VAT (Canada)
  • 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aydemir, B.E., Charguéraud, A., Pierce, B.C., Pollack, R., Weirich, S.: Engineering formal metatheory. In: ACM Symposium on Principles of Programming Languages, POPL 2008, pp. 3–15. ACM Press (2008)

    Google Scholar 

  2. Baker-Finch, C., King, D., Trinder, P.W.: An operational semantics for parallel lazy evaluation. In: ACM-SIGPLAN International Conference on Functional Programming (ICFP 2000), pp. 162–173. ACM Press (2000)

    Google Scholar 

  3. Barendregt, H.P.: The Lambda Calculus: Its Syntax and Semantics. Studies in Logic and the Foundations of Mathematics, vol. 103. North-Holland (1984)

    Google Scholar 

  4. Bertot, Y.: Coq in a hurry. CoRR, abs/cs/0603118 (2006)

    Google Scholar 

  5. Charguéraud, A.: The locally nameless representation. Journal of Automated Reasoning, 1–46 (2011)

    Google Scholar 

  6. de Bruijn, N.G.: Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem. Indagationes Mathematicae 75(5), 381–392 (1972)

    CrossRef  MATH  Google Scholar 

  7. Launchbury, J.: A natural semantics for lazy evaluation. In: ACM Symposium on Principles of Programming Languages, POPL 1993, pp. 144–154. ACM Press (1993)

    Google Scholar 

  8. Nakata, K., Hasegawa, M.: Small-step and big-step semantics for call-by-need. CoRR, abs/0907.4640 (2009)

    Google Scholar 

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

    CrossRef  MATH  Google Scholar 

  10. Pitts, A.M.: Nominal logic, a first order theory of names and binding. Information and Computation 186(2), 165–193 (2003)

    CrossRef  MathSciNet  MATH  Google Scholar 

  11. Sánchez-Gil, L., Hidalgo-Herrero, M., Ortega-Mallén, Y.: An Operational Semantics for Distributed Lazy Evaluation. In: Trends in Functional Programming, vol. 10, pp. 65–80. Intellect (2010)

    Google Scholar 

  12. Sánchez-Gil, L., Hidalgo-Herrero, M., Ortega-Mallén, Y.: A locally nameless representation for a natural semantics for lazy evaluation. Technical Report 01/12, Dpt. Sistemas Informáticos y Computación. Universidad Complutense de Madrid (2012), http://maude.sip.ucm.es/eden-semantics/

  13. Sestoft, P.: Deriving a lazy abstract machine. Journal of Functional Programming 7(3), 231–264 (1997)

    CrossRef  MathSciNet  MATH  Google Scholar 

  14. Urban, C.: Nominal techniques in Isabelle/HOL. Journal of Automatic Reasoning 40(4), 327–356 (2008)

    CrossRef  MathSciNet  MATH  Google Scholar 

  15. Urban, C., Berghofer, S., Norrish, M.: Barendregt’s Variable Convention in Rule Inductions. In: Pfenning, F. (ed.) CADE 2007. LNCS (LNAI), vol. 4603, pp. 35–50. Springer, Heidelberg (2007)

    CrossRef  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)

    CrossRef  Google Scholar 

  17. van Eekelen, M., de Mol, M.: Reflections on Type Theory, λ-calculus, and the Mind. Essays dedicated to Henk Barendregt on the Occasion of his 60th Birthday, chapter Proving Lazy Folklore with Mixed Lazy/Strict Semantics, pp. 87–101. Radboud University Nijmegen (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sánchez-Gil, L., Hidalgo-Herrero, M., Ortega-Mallén, Y. (2012). A Locally Nameless Representation for a Natural Semantics for Lazy Evaluation. In: Roychoudhury, A., D’Souza, M. (eds) Theoretical Aspects of Computing – ICTAC 2012. ICTAC 2012. Lecture Notes in Computer Science, vol 7521. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32943-2_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-32943-2_8

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)