Context-sensitive computations in confluent programs

  • Salvador Lucas
λ-Calculus and Rewriting
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1140)


Context-sensitive rewriting is a refined form of rewriting which explores a smaller reduction space by imposing some fixed restrictions on the replacements. Any Term Rewriting System (TRS) can be given a context-sensitive rewrite relation. In this paper, we formulate conditions to guarantee the confluence of this relation. Moreover, for a confluent TRS, we are able to give sufficient conditions to ensure that the (eventually obtained) computed value of a given expression can be reached by using context-sensitive rewriting, thus leading to more efficient and still complete computations.


confluence functional programming term rewriting systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    N. Dershowitz. Termination of rewriting. Journal on Symbolic Computation 3:69–115, 1987.Google Scholar
  2. 2.
    N. Dershowitz and J.P. Jouannaud. Rewrite Systems. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics, pages 243–320. Elsevier, Amsterdam and The MIT Press, Cambridge, MA, 1990.Google Scholar
  3. 3.
    H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification. Volume 6 of EATCS Monographs on Theoretical Computer Science. Springer-Verlag, Berlin, 1985.Google Scholar
  4. 4.
    D.P. Friedman and D.S. Wise. CONS should not evaluate its arguments. In S. Michaelson and R. Milner, editors, Automata, Languages and Programming, pages 257–284, Edinburgh University Press, 1976.Google Scholar
  5. 5.
    G. Huet. Confluent reductions: abstract properties and applications to term rewriting systems. Journal of the ACM 27:797–821, 1980.Google Scholar
  6. 6.
    G. Huet and J.J. Lévy. Computations in orthogonal term rewriting systems. In J.L. Lassez and G. Plotkin, editors, Computational logic: essays in honour of J. Alan Robinson, MIT Press, Cambridge, MA, 1991.Google Scholar
  7. 7.
    J.F.Th. Kamperman and H.R. Walters. Lazy Rewriting and Eager Machinery. In J. Hsiang, editor, Proc. of the 6th International Conference on Rewriting Techniques and Applications, RTA '95, LNCS 914:147–162, Springer-Verlag, Berlin, 1995.Google Scholar
  8. 8.
    R. Lalement. Computation as Logic. Masson-Prentice Hall International, 1993.Google Scholar
  9. 9.
    S. Lucas. Fundamentals of context-sensitive rewriting. In M. Bartosek, J. Staudek and J. Wiedermann, editors, Proc. of XXII Seminar on Current Trends in Theory and Practice of Informatics, SOFSEM'95, LNCS 1012:405–412, Springer-Verlag, Berlin, 1995.Google Scholar
  10. 10.
    S. Lucas. Termination of context-sensitive rewriting by rewriting. In F. Meyer auf der Heide and B. Monien, editors, Proc. of 23rd. International Colloquium on Automata, Languages and Programming, ICALP'96, LNCS 1099:122–133, Springer-Verlag, Berlin, 1996.Google Scholar
  11. 11.
    L. Maranget. Optimal Derivations in Weak Lambda-calculi and in Orthogonal Term Rewriting Systems In Conference Record of the 18th ACM Symposium on Principles of Programming Languages, pages 255–269, ACM Press, 1990.Google Scholar
  12. 12.
    A. Mycroft. The theory and practice of transforming call-by-need into call-by-value. In Proc. of the fourth International Symposium on Programming, LNCS 83:269–281, Springer-Verlag, Berlin, 1980.Google Scholar
  13. 13.
    M.H.A. Newman. On theories with a combinatorial definition of ‘equivalence'. Ann. Math., 43:223–243, 1942.Google Scholar
  14. 14.
    C. Reade. Elements of Functional Programming. Addison-Wesley Publishing Company, 1987.Google Scholar
  15. 15.
    J.E. Stoy. Denotational semantics: the Scott-Strachey approach to programming language theory. The MIT Press, Cambridge MA, 1977.Google Scholar
  16. 16.
    J. Vuillemin Correct and optimal implementation of recursion in a simple programming language. JCSS 9(3):332–354, 1974.Google Scholar
  17. 17.
    P. Wadler. Strictness Analysis on Non-Flat Domains (by Abstract Interpretation over Finite Domains). In S. Abramsky and C. Hankin, editors, Abstract Interpretation of Declarative Languages, Ellis Horwood Ltd., John Wiley and sons, pages 266–275, 1987.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Salvador Lucas
    • 1
  1. 1.Departamento de Sistemas Informáticos y ComputaciónUniversidad Politécnica de ValenciaValenciaSpain

Personalised recommendations