Skip to main content

Needed reductions with context-sensitive rewriting

  • Term Rewriting
  • Conference paper
  • First Online:
Algebraic and Logic Programming (ALP 1997, HOA 1997)

Abstract

Computing with functional programs involves reduction of terms to normal form. When considering non-terminating programs, this is achieved by using some special, normalizing strategy which obtains the normal form whenever it exists. Context-sensitive rewriting can improve termination and also avoid useless reductions by imposing fixed, syntactic restrictions on the replacements. In this paper, we analyze the efficiency of context-sensitive computations with respect to the notion of needed reduction. As context-sensitive rewriting is complete in performing reductions to a root-stable form, we base our investigation on Middeldorp's theory of root-necessary reductions which is a generalization of Huet and Lévy's theory of (sequential) needed reductions to reductions leading to root-stable form both in sequential and parallel executions.

This work has been partially supported by CICYT under grant TIC 95-0433-C03-03.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Antoy and A. Middeldorp. A Sequential Reduction Strategy. Theoretical Computer Science, 165(1):75–95, 1996.

    Google Scholar 

  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. I. Durand and A. Middeldorp. Decidable Call by Need Computations in Term Rewriting (Extended Abstract). In Proc. of CADE'97, LNCS to appear.

    Google Scholar 

  4. G. Huet and J.J. Lévy. Computations in orthogonal term rewriting systems I, II. In J.L. Lassez and G. Plotkin, editors, Computational logic: essays in honour of J. Alan Robinson, pages 395–414 and 415–443. The MIT Press, Cambridge, MA, 1991.

    Google Scholar 

  5. R. Kennaway. A Conflict Between Call-By-Need Computation and Parallelism. In Proc. of Workshop on Conditional and Typed Rewriting Systems, CTRS'94, LNCS 968:247–261, Springer-Verlag, Berlin, 1994.

    Google Scholar 

  6. J.W. Klop. Term Rewriting Systems. In S. Abramsky, D.M. Gabbay and T.S.E. Maibaum. Handbook of Logic in Computer Science, volume 3, pages 1–116. Oxford University Press, 1992.

    Google Scholar 

  7. J.W. Klop and A. Middeldorp. Sequentiality in Orthogonal Term Rewriting Systems. Journal of Symbolic Computation 12:161–195, 1991.

    Google Scholar 

  8. S. Lucas. Context-sensitive computations in functional and functional logic programs. Journal of Functional and Logic Programming, 1997, to appear.

    Google Scholar 

  9. 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 

  10. S. Lucas. Transformations for Efficient Evaluations in Functional Programming. In H. Glasser and H. Kuchen, editors, Proc. of 9th International Symposium on Programming Languages, Implementations, Logics, and Programs, PLILP'97, LNCS to appear.

    Google Scholar 

  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. A. Middeldorp. Call by Need Computations to Root-Stable Form. In Conference Record of the 24th ACM Symposium on Principles of Programming Languages, pages 94–105, 1997.

    Google Scholar 

  13. M.J. O'Donnell. Computing in Systems Described by Equations. LNCS 58, Springer-Verlag, Berlin, 1977.

    Google Scholar 

  14. R.C. Sekar and I.V. Ramakrishnan. Programming in Equational Logic: Beyond Strong Sequentiality. Information and Computation 104:78–109, 1993.

    Google Scholar 

  15. C. Reade. Elements of Functional Programming. Addison-Wesley Publishing Company, 1993.

    Google Scholar 

  16. H. Zantema. Termination of Context-Sensitive Rewriting. In H. Comon, editor, Proc. of 8th International Conference on Rewriting Techniques and Applications, RTA'97, LNCS 1232:172–186, Springer-Verlag, Berlin, 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michael Hanus Jan Heering Karl Meinke

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lucas, S. (1997). Needed reductions with context-sensitive rewriting. In: Hanus, M., Heering, J., Meinke, K. (eds) Algebraic and Logic Programming. ALP HOA 1997 1997. Lecture Notes in Computer Science, vol 1298. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0027007

Download citation

  • DOI: https://doi.org/10.1007/BFb0027007

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63459-1

  • Online ISBN: 978-3-540-69555-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics