Advertisement

An Operational Account of Call-by-Value Minimal and Classical λ-Calculus in “Natural Deduction” Form

  • Hugo Herbelin
  • Stéphane Zimmermann
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5608)

Abstract

We give a decomposition of the equational theory of call-by-value λ-calculus into a confluent rewrite system made of three independent subsystems that refines Moggi’s computational calculus:
  • the purely operational system essentially contains Plotkin’s β v rule and is necessary and sufficient for the evaluation of closed terms;

  • the structural system contains commutation rules that are necessary and sufficient for the reduction of all “computational” redexes of a term, in a sense that we define;

  • the observational system contains rules that have no proper computational content but are necessary to characterize the valid observational equations on finite normal forms.

We extend this analysis to the case of λ-calculus with control and provide with the first presentation as a confluent rewrite system of Sabry-Felleisen and Hofmann’s equational theory of λ-calculus with control.

Incidentally, we give an alternative definition of standardization in call-by-value λ-calculus that, unlike Plotkin’s original definition, prolongs weak head reduction in an unambiguous way.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Plotkin, G.D.: Call-by-name, call-by-value and the lambda-calculus. Theor. Comput. Sci. 1, 125–159 (1975)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Moggi, E.: Computational lambda-calculus and monads. Technical Report ECS-LFCS-88-66, Edinburgh Univ. (1988)Google Scholar
  3. 3.
    Sabry, A., Felleisen, M.: Reasoning about programs in continuation-passing style. Lisp and Symbolic Computation 6(3-4), 289–360 (1993)CrossRefGoogle Scholar
  4. 4.
    Hofmann, M.: Sound and complete axiomatisations of call-by-value control operators. Mathematical Structures in Computer Science 5(4), 461–482 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Dezani-Ciancaglini, M., Giovannetti, E.: From Böhm’s theorem to observational equivalences: an informal account. Electr. Notes Theor. Comput. Sci. 50(2) (2001)Google Scholar
  6. 6.
    Curien, P.L., Herbelin, H.: The duality of computation. In: Proceedings of ICFP 2000. SIGPLAN Notices, vol. 35(9), pp. 233–243. ACM, New York (2000)Google Scholar
  7. 7.
    Herbelin, H.: C’est maintenant qu’on calcule: au cœur de la dualité. Habilitation thesis, University Paris 11 (December 2005)Google Scholar
  8. 8.
    Gentzen, G.: Untersuchungen über das logische Schließen. Mathematische Zeitschrift 39, 176–210,405–431 (1935); English Translation in The Collected Works of Gerhard Gentzen, Szabo, M. E. (ed.), pp. 68–131Google Scholar
  9. 9.
    Parigot, M.: Lambda-mu-calculus: An algorithmic interpretation of classical natural deduction. In: Voronkov, A. (ed.) LPAR 1992. LNCS, vol. 624, pp. 190–201. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  10. 10.
    Regnier, L.: Une équivalence sur les lambda-termes. Theor. Comput. Sci. 126(2), 281–292 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Sabry, A., Wadler, P.: A reflection on call-by-value. ACM Trans. Program. Lang. Syst. 19(6), 916–941 (1997)CrossRefzbMATHGoogle Scholar
  12. 12.
    Ariola, Z.M., Herbelin, H.: Control reduction theories: the benefit of structural substitution. Journal of Functional Programming 18(3), 373–419 (2008); with a historical note by Matthias FelleisenMathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    David, R., Py, W.: Lambda-mu-calculus and Böhm’s theorem. J. Symb. Log. 66(1), 407–413 (2001)CrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Hugo Herbelin
    • 1
  • Stéphane Zimmermann
    • 2
  1. 1.INRIAFrance
  2. 2.PPS, University Paris 7France

Personalised recommendations