An optimal narrowing strategy for general canonical systems

  • Alexander Bockmayr
  • Stefan Krischer
  • Andreas Werner
Applications to Logic Programming, Normalization Strategies and Unification
Part of the Lecture Notes in Computer Science book series (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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [BGM88]
    P. G. Bosco, E. Giovannetti, and C. Moiso. Narrowing vs. SLD-Resolution. Theoretical Computer Science, 59:3–23, 1988.CrossRefGoogle Scholar
  2. [Boc86]
    A. Bockmayr. Narrowing with inductively defined functions. Technical Report 25/86, Fakultät für Informatik, Univ. Karlsruhe, 1986.Google Scholar
  3. [Boc88]
    A. Bockmayr. Narrowing with built-in theories. In First Int. Workshop Algebraic and Logic Programming, Gauβig. Springer, LNCS 343, 1988.Google Scholar
  4. [DG89]
    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. [Ech88]
    R. Echahed. On completeness of narrowing strategies. In Proc. CAAP88, Nancy. Springer, LNCS 299, 1988.Google Scholar
  6. [Fay79]
    M. Fay. First-order unification in an equational theory. In 4th Workshop on Automated Deduction, Austin, Texas, 1979.Google Scholar
  7. [Fri85]
    L. Fribourg. Handling function definitions through innermost superposition and rewriting. In Proc. Rewriting Techniques and Applications, Dijon. Springer, LNCS 202, 1985.Google Scholar
  8. [Her86]
    A. Herold. Narrowing techniques applied to idempotent unification. SEKI-Report SR-86-16, Univ. Kaiserslautern, 1986.Google Scholar
  9. [HO80]
    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. [Hö189]
    S. Hölldobler. Foundations of Equational Logic Programming. Springer, LNCS 353, 1989.Google Scholar
  11. [Hul80]
    J. M. Hullot. Canonical forms and unification. In Proc. 5th Conference on Automated Deduction, Les Arcs. Springer, LNCS 87, 1980.Google Scholar
  12. [KB91]
    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. [Kri90]
    S. Krischer. Vergleich und Bewertung von Narrowing-Strategien. Diplomarbeit, Fakultät für Informatik, Univ. Karlsruhe, 1990.Google Scholar
  14. [NRS89]
    W. Nutt, P. Réty, and G. Smolka. Basic narrowing revisited. Journal of Symbolic Computation, 7:295–317, 1989.Google Scholar
  15. [Pad88]
    P. Padawitz. Computing in Horn Clause Theories, volume 16 of EATCS Monograph. Springer, 1988.Google Scholar
  16. [Rét87]
    P. Réty. Improving basic narrowing techniques. In Proc. Rewriting Techniques and Applications, Bordeaux. Springer, LNCS 256, 1987.Google Scholar
  17. [Rét88]
    P. Réty. Méthodes d'Unification par Surréduction. PhD thesis, Univ. Nancy, 1988.Google Scholar
  18. [RKKL85]
    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. [Wer91]
    A. Werner. Termersetzung und Narrowing mit geordneten Sorten. Diplomarbeit, Fakultät für Informatik, Univ. Karlsruhe, 1991.Google Scholar
  20. [You88]
    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. [You91]
    J. You. Unification modulo an equality theory for equational logic programming. J. Comp. Syst. Sc., 42:54–75, 1991.Google Scholar

Copyright information

© Springer-Verlag 1993

Authors and Affiliations

  • Alexander Bockmayr
    • 1
  • Stefan Krischer
    • 2
  • Andreas Werner
    • 3
  1. 1.MPI InformatikSaarbrücken
  2. 2.CRIN & INRIA-LorraineVandœuvre-lès-Nancy
  3. 3.SFB 314Univ. KarlsruheKarlsruhe 1

Personalised recommendations