Skip to main content

An optimal narrowing strategy for general canonical systems

  • Applications to Logic Programming, Normalization Strategies and Unification
  • Conference paper
  • First Online:

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

Abstract

Narrowing is a universal unification procedure for equational theories defined by a canonical term rewriting system. In its original form it is extremely inefficient. Therefore, many optimizations have been proposed during the last years. In this paper, we introduce a new narrowing strategy, called LSE narrowing. LSE narrowing is complete for arbitrary canonical systems. It is optimal in the sense that two different LSE narrowing derivations cannot generate the same narrowing substitution.

The first author's work was supported by the German Ministry for Research and Technology (BMFT) under grant ITS 9103. The second author's work was supported by the Centre National de Recherche Scientifique (CNRS), departement Science pour l'Ingenieur. The third author's work was supported by the Deutsche Forschungsgemeinschaft as part of the SFB 314 (project S2).

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. P. G. Bosco, E. Giovannetti, and C. Moiso. Narrowing vs. SLD-Resolution. Theoretical Computer Science, 59:3–23, 1988.

    Article  Google Scholar 

  2. A. Bockmayr. Narrowing with inductively defined functions. Technical Report 25/86, Fakultät für Informatik, Univ. Karlsruhe, 1986.

    Google Scholar 

  3. A. Bockmayr. Narrowing with built-in theories. In First Int. Workshop Algebraic and Logic Programming, Gauβig. Springer, LNCS 343, 1988.

    Google Scholar 

  4. J. Darlington and Y. Guo. Narrowing and unification in functional programming — an evaluation mechanism for absolute set abstraction. In Proc. Rewriting Techniques and Applications, Chapel Hill. Springer, LNCS 355, 1989.

    Google Scholar 

  5. R. Echahed. On completeness of narrowing strategies. In Proc. CAAP88, Nancy. Springer, LNCS 299, 1988.

    Google Scholar 

  6. M. Fay. First-order unification in an equational theory. In 4th Workshop on Automated Deduction, Austin, Texas, 1979.

    Google Scholar 

  7. L. Fribourg. Handling function definitions through innermost superposition and rewriting. In Proc. Rewriting Techniques and Applications, Dijon. Springer, LNCS 202, 1985.

    Google Scholar 

  8. A. Herold. Narrowing techniques applied to idempotent unification. SEKI-Report SR-86-16, Univ. Kaiserslautern, 1986.

    Google Scholar 

  9. G. Huet and D. C. Oppen. Equations and rewrite rules, A survey. In R. V. Book, editor, Formal Language Theory. Academic Press, 1980.

    Google Scholar 

  10. S. Hölldobler. Foundations of Equational Logic Programming. Springer, LNCS 353, 1989.

    Google Scholar 

  11. J. M. Hullot. Canonical forms and unification. In Proc. 5th Conference on Automated Deduction, Les Arcs. Springer, LNCS 87, 1980.

    Google Scholar 

  12. S. Krischer and A. Bockmayr. Detecting redundant narrowing derivations by the LSE-SL reducibility test. In Proc. Rewriting Techniques and Applications, Como. Springer, LNCS 488, 1991.

    Google Scholar 

  13. S. Krischer. Vergleich und Bewertung von Narrowing-Strategien. Diplomarbeit, Fakultät für Informatik, Univ. Karlsruhe, 1990.

    Google Scholar 

  14. W. Nutt, P. Réty, and G. Smolka. Basic narrowing revisited. Journal of Symbolic Computation, 7:295–317, 1989.

    Google Scholar 

  15. P. Padawitz. Computing in Horn Clause Theories, volume 16 of EATCS Monograph. Springer, 1988.

    Google Scholar 

  16. P. Réty. Improving basic narrowing techniques. In Proc. Rewriting Techniques and Applications, Bordeaux. Springer, LNCS 256, 1987.

    Google Scholar 

  17. P. Réty. Méthodes d'Unification par Surréduction. PhD thesis, Univ. Nancy, 1988.

    Google Scholar 

  18. P. Réty, C. Kirchner, H. Kirchner, and P. Lescanne. NARROWER: a new algorithm for unification and its application to logic programming. In Proc. Rewriting Techniques and Applications, Dijon. Springer, LNCS 202, 1985.

    Google Scholar 

  19. A. Werner. Termersetzung und Narrowing mit geordneten Sorten. Diplomarbeit, Fakultät für Informatik, Univ. Karlsruhe, 1991.

    Google Scholar 

  20. J. You. Solving equations in an equational language. In First Int. Workshop Algebraic and Logic Programming, Gaußig. Springer, LNGS 343, 1988.

    Google Scholar 

  21. J. You. Unification modulo an equality theory for equational logic programming. J. Comp. Syst. Sc., 42:54–75, 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michaël Rusinowitch Jean-Luc Rémy

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bockmayr, A., Krischer, S., Werner, A. (1993). An optimal narrowing strategy for general canonical systems. In: Rusinowitch, M., Rémy, JL. (eds) Conditional Term Rewriting Systems. CTRS 1992. Lecture Notes in Computer Science, vol 656. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56393-8_39

Download citation

  • DOI: https://doi.org/10.1007/3-540-56393-8_39

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56393-8

  • Online ISBN: 978-3-540-47549-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics