Combining first order algebraic rewriting systems, recursion and extensional lambda calculi

  • Roberto Di Cosmo
  • Delia Kesner
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 820)


It is well known that confluence and strong normalization are preserved when combining left-linear algebraic rewriting systems with the simply typed lambda calculus. It is equally well known that confluence fails when adding either the usual extensional rule for η, or recursion together with the usual contraction rule for surjective pairing.

We show that confluence and normalization are modular properties for the combination of left-linear algebraic rewriting systems with typed lambda calculi enriched with expansive extensional rules for η and surjective pairing. For that, we use a translation technique allowing to simulate expansions without expansion rules. We also show that confluence is maintained in a modular way when adding fixpoints. This result is also obtained by a simple translation technique allowing to simulate bounded recursion with β reduction.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [Aka93]
    Yohji Akama. On mints' reductions for ccc-calculus. In Typed Lambda Calculus and Applications, number 664 in LNCS, pages 1–12. Springer Verlag, 1993.Google Scholar
  2. [BT88]
    Val Breazu-Tannen. Combining algebra and higher order types. In IEEE, editor, Proceedings of the Symposium on Logic in Computer Science (LICS), pages 82–90, July 1988.Google Scholar
  3. [BTG92]
    Val Breazu-Tannen and Jean Gallier. Polymorphic rewiting preserves algebraic confluence. Information and Computation, 1992. To appear.Google Scholar
  4. [Cub92]
    Djordje Cubric. On free ccc. Distributed on the types mailing list, 1992.Google Scholar
  5. [DCK93]
    Roberto Di Cosmo and Delia Kesner. A confluent reduction for the extensional typed λ-calculus with pairs, sums, recursion and terminal object. In Andrzej Lingas, editor, Intern. Conf. on Automata, Languages and Programming (ICALP), volume 700 of Lecture Notes in Computer Science, pages 645–656. Springer-Verlag, 1993.Google Scholar
  6. [DCK94]
    Roberto Di Cosmo and Delia Kesner. Simulating expansions without expansions. Mathematical Structures in Computer Science, 1994. A preliminary version is available as Technical Report LIENS-93-11/INRIA 1911.Google Scholar
  7. [Dou93]
    Daniel J. Dougherty. Some lambda calculi with categorical sums and products. In Proc. of the Fifth International Conference on Rewriting Techniques and Applications (RTA), 1993.Google Scholar
  8. [HM90]
    Brian Howard and John Mitchell. Operational and axiomatic semantics of pcf. In Proceedings of the LISP and Functional Programming Conference, pages 298–306. ACM, 1990.Google Scholar
  9. [JG92]
    Colin Barry Jay and Neil Ghani. The virtues of eta-expansion. Technical Report ECS-LFCS-92-243, LFCS, 1992. University of Edimburgh.Google Scholar
  10. [JO91]
    Jean-Pierre Jouannaud and Mitsuhiro Okada. A computation model for executable higher-order algebraic specification languages. In Proceedings, Sixth Annual IEEE Symposium on Logic in Computer Science, pages 350–361, Amsterdam, The Netherlands, July 15–18 1991. IEEE Computer Society Press.Google Scholar
  11. [Kes93]
    Delia Kesner. La définition de fonctions par cas à l'aide de motifs dans des langages applicatifs. Thèse de doctorat, Université de Paris XI, Orsay, december 1993. To appear.Google Scholar
  12. [Klo80]
    Jan Wilhelm Klop. Combinatory reduction systems. Mathematical Center Tracts, 27, 1980.Google Scholar
  13. [Lév76]
    Jean-Jaques Lévy. An algebraic interpretation of the λβκ-calculus and a labelled λ-calculus. Theoretical Computer Science, 2:97–114, 1976.Google Scholar
  14. [Min77]
    Gregory Mints. Closed categories and the theory of proofs. Zapiski Nauchnykh Seminarov Leningradskogo Otdeleniya Matematicheskogo Instituta im. V.A. Steklova AN SSSR, 68:83–114, 1977.Google Scholar
  15. [Nes89]
    Dan Nesmith. An application of Klop's counterexample to a higher-order rewrite system. Draft Paper, 1989.Google Scholar
  16. [PV87]
    Axel Poigné and Josef Voss. On the implementation of abstract data types by programming language constructs. Journal of Computer and System Science, 34(2–3):340–376, April/June 1987.Google Scholar

Copyright information

© Springer-Verlag 1994

Authors and Affiliations

  • Roberto Di Cosmo
    • 1
  • Delia Kesner
    • 2
  1. 1.DMI-LIENS (CNRS URA 1347) Ecole Normale SupérieureParisFrance
  2. 2.CNRS and LRI - Bât 490Université de Paris-SudOrsay CedexFrance

Personalised recommendations