Abstract
Solving equations in equational Horn-clause theories is a programming paradigm that combines logic programming and functional programming in a clean manner. Languages like Eqlog, Slog and Rite, express programs as conditional rewrite rules and goals as equations to be solved. Procedures for completion of conditional equational theories, in a manner akin to that of Knuth and Bendix for unconditional theories, also require methods for solving equations appearing in conditions. Rewrite-based logic-programming uses (conditional) narrowing to solve equational goals. Recently a different, topdown equation solving procedure was proposed for unconditional rewrite systems. In this paper, we express equational goal solving using conditional rules. Some refinements are described: the notion of operator derivability is used to prune useless paths in the search tree and our use of oriented goals eliminates some redundant paths leading to non-normalized solutions. Our goal-directed method can also be extended to handle conditional systems.
This research was supported in part by the National Science Foundation under Grant DCR 85-13417.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
[Bosco,etal.-87] Bosco, P. G., Giovanetti, E., and Moiso, C. “Refined strategies for semantic unification” Proceedings of International Joint Conference on Theory and Practice of Software Development, Pisa, Italy (March 1987), pp. 276–290. (Available as Vol. 250, Lecture Notes in Computer Science, Springer, Berlin.)
Dershowitz, N., and Plaisted, D. A. “Logic programming cum applicative programming”. Proceedings of the 1985 Symposium on Logic Programming, Boston, MA (July 1985), pp. 54–66.
Dershowitz, N., and Plaisted, D. A. “Equational programming”. In: Machine Intelligence 11 (J. E. Hayes, D. Michie, and J. Richards, eds.), Oxford Press, Oxford, pp. 21–56, in press.
Fay, M. “First-order unification in an equational theory”. Proceedings of the Fourth Workshop on Automated Deduction, Austin, TX (February 1979), pp. 161–167.
Fribourg, L. “Slog: A logic programming language interpreter based on clausal superposition and rewriting”. Proceedings of the 1985 Symposium on Logic Programming, Boston, MA (July 1985), pp. 172–184.
Goguen, J. A., and Meseguer, J. “Eqlog: Equality, types and generic modules for logic programming”. In Logic Programming: Functions, relations and equations (D. DeGroot and G. Lindstrom, eds.), Prentice-Hall, Englewood Cliffs, NJ, pp. 295–363, 1986.
Hullot, J. M. “Canonical forms and unification”. Proceedings of the Fifth Conference on Automated Deduction, Les Arcs, France (July 1980), pp. 318–334.
Josephson, N. A., and Dershowitz, N. “An implementation of narrowing: The Rite way”. Proceedings of the Third IEEE Symposium on Logic Programming, Salt Lake City, UT (September 1986), pp. 187–197. (Revised version to appear in Journal of Logic Programming.)
Kaplan, S. “Simplifying conditional term rewriting systems: Unification, termination and confluence”, Journal of Symbolic Computation, to appear.
[Kapur,etal.-86] Kapur, D., Sivakumar, G. and Zhang, H., “RRL: A Rewrite rule laboratory”. 8th Intl. Conference on Automated Deduction, Oxford, England (July 1986). (Available as Vol. 230, Lecture Notes in Computer Science, Springer, Berlin.)
[Martelli,etal.-86] Martelli, A., Moiso, C. and Rossi, G. F. “An algorithm for unification in Equational Theories”. Proceedings of the Third IEEE Symposium on Logic Programming, Salt Lake City, UT (September 1986), pp. 180–186.
Padawitz, P. “Strategy-controlled reduction and narrowing”. Proceedings of the Second International Conference on Rewriting Techniques and Applications, Bordeaux, France (May 1987), pp. 242–255.
Reddy, U. S. “Narrowing as the operational semantics of functional languages”. Proceedings of the 1985 Symposium on Logic Programming, Boston, MA (July 1985), pp. 138–151.
Réty, P. “Improving basic narrowing techniques”. Proceedings of the Second International Conference on Rewriting Techniques and Applications, Bordeaux, France (May 1987), pp. 228–241. (Available as Vol. 256, Lecture Notes in Computer Science, Springer, Berlin.)
[Rety,etal.-85] Réty, P., Kirchner, C., Kirchner, H., and Lescanne, P. “Narrower: A new algorithm for unification and its application to logic programming”. Proceedings of the First International Conference on Rewriting Techniques and Applications, Dijon, France (May 1985), pp. 141–157. (Available as Vol. 202, Lecture Notes in Computer Science, Springer, Berlin [September 1985].)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1988 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dershowitz, N., Sivakumar, G. (1988). Solving goals in equational languages. In: Kaplan, S., Jouannaud, J.P. (eds) Conditional Term Rewriting Systems. CTRS 1987. Lecture Notes in Computer Science, vol 308. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-19242-5_4
Download citation
DOI: https://doi.org/10.1007/3-540-19242-5_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-19242-8
Online ISBN: 978-3-540-39166-1
eBook Packages: Springer Book Archive