Skip to main content

Optimization by non-deterministic, lazy rewriting

  • Regular Papers
  • Conference paper
  • First Online:
Rewriting Techniques and Applications (RTA 1989)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 355))

Included in the following conference series:

Abstract

Given a set S and a condition C we address the problem of determining which members of S satisfy C. One useful approach is to set up the generation of S as a tree, where each node represents a subset of S. If from the information available at a node, we can determine that no members of the subset it represents satisfy C, then the subtree rooted at it can be pruned, i.e. its generation suppressed. Thus, large subsets of S can be quickly eliminated from consideration. We show how such a tree can be simulated by interpretation of non-deterministic rewrite rules, and its pruning simulated by lazy evaluation.

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

  • Barbuti, R., Bellia, M., Levi, G. [1986]. LEAF: A language which integrates logic, equations, and functions. In Logic programming: functions, relations and equations (eds.) D. DeGroot, G. Lindstrom, Prentice Hall, N.J.

    Google Scholar 

  • Bruynooghe, M., Pereira, L.M. [1984]. Deduction revision by intelligent backtracking. In, Chang, J.-H., Despain, A.M. [1984]. Semi-intelligent backtracking of Prolog based on a static data dependency analysis. Proceedings of IEEE symposium on logic programming, Boston, MA.

    Google Scholar 

  • Clark, K.L., McCabe F. [1979]. Programmer's guide to IC-Prolog. CCD Report 79/7, London: Imperial College, University of London.

    Google Scholar 

  • Dincbas, M., Simonis, H., van Hentenryck, P. [1988]. Solving a cutting-stock problem in constraint logic programming. Proceedings of fifth international conference and symposium on logic programming, eds. R. Kowalski, K. Bowen, MIT Press, Cambridge, MA.

    Google Scholar 

  • Garey, M.R., Johnson, D.S. [1979]. Computers and intractability. A guide to the theory of NP-completeness. W.H. Freeman & Co. New York, N.Y.

    Google Scholar 

  • Huet, G., Levy, J.-J. [1979]. Call by need computations in non-ambiguous linear term rewriting systems. IRIA technical report 359.

    Google Scholar 

  • Kahn, G., MacQueen, D. [1977]. Coroutines and Networks of Parallel Processes. Information Processing-77, North-Holland, Amsterdam.

    Google Scholar 

  • Knuth, D.E., Bendix, P.B. [1970]. Simple word problems in universal algebras. Computational problems in abstract algebra, ed. J. Leech, Pergamon Press.

    Google Scholar 

  • Kumar, V., Lin, Y.-J. [1988]. A data-dependency-based intelligent backtracking scheme for Prolog. Journal of Logic Programming, vol. 5, No. 2, June.

    Google Scholar 

  • Lloyd, J. [1984]. Foundations of logic programming. Springer Verlag, New York.

    Google Scholar 

  • Narain, S. [1986]. A Technique for Doing Lazy Evaluation in Logic. Journal of Logic Programming, vol. 3, no. 3, October.

    Google Scholar 

  • Narain, S. [1988]. LOG(F): An optimal combination of logic programming, rewriting and lazy evaluation. Ph.D. Thesis, Department of Computer Science, University of California, Los Angeles.

    Google Scholar 

  • O'Donnell, M.J. [1985]. Equational logic as a programming language. MIT Press, Cambridge, MA.

    Google Scholar 

  • Polya, G. [1973]. How to solve it. Princeton university press. Princeton, NJ.

    Google Scholar 

  • Sterling, L., Shapiro, E. [1986]. The art of Prolog. MIT Press, Cambridge, MA.

    Google Scholar 

  • Subrahmanyam, P.A. and You J.-H. [1984]. Conceptual Basis and Evaluation Strategies for Integrating Functional and Logic Programming. Proceedings of IEEE Logic Programming Symposium, Atlantic City, N.J.

    Google Scholar 

  • van Hentenryck, P., Dincbas, M. [1987]. Foward checking in logic programming. Proceedings of fourth international conference on logic programming. ed. J.-L. Lassez, MIT Press, Camberidge, MA.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Nachum Dershowitz

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Narain, S. (1989). Optimization by non-deterministic, lazy rewriting. In: Dershowitz, N. (eds) Rewriting Techniques and Applications. RTA 1989. Lecture Notes in Computer Science, vol 355. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-51081-8_117

Download citation

  • DOI: https://doi.org/10.1007/3-540-51081-8_117

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51081-9

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics