Abstract
Conditional Equational Programming is an elegant way to uniformly integrate important features of functional and logic programming. Efficient methods for equation solving are thus of great importance. In this paper, we formulate, and prove sound and complete, an equation solving procedure based on transformation rules. This method achieves a top-down, goal-directed strategy based on decomposition and restructuring, while preserving the advantages of both basic narrowing and normal narrowing. Another new feature, introduced in this paper, is the extension of equation solving to theories with defined functions that are associative and commutative, without using the costly AC-unification operation. This method has been implemented within SUTRA, a theorem proving and equational programming environment based on rewrite techniques and completion.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
R. Barbuti, Marco Bellia, Giorgio Levi, and M. Martelli. LEAF: a language which integrates logic, equations and functions. In D. DeGroot and G. Lindstrom, editors, Logic Programming: Functions, Relations, and Equations, pages 201–238, Prentice-Hall, Englewood Cliffs, NJ, 1986.
Marco Bellia and Giorgio Levi. The relation between logic and functional languages: a survey. J. of Logic Programming, 3(3):217–236, October 1986.
Nachum Dershowitz and Jean-Pierre Jouannaud. Rewrite systems. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, chapter 6, North-Holland, Amsterdam, 1990. To appear; available as Rapport 478, LRI, Univ. Paris-Sud, France.
Doug DeGroot and G. Lindstrom, editors. Logic Programming: Functions, Relations, and Equations. Prentice-Hall, Englewood Cliffs, NJ, 1986.
Nachum Dershowitz, Mitsuhiro Okada, and G. Sivakumar. Confluence of conditional rewrite systems. In S. Kaplan and J.-P. Jouannaud, editors, Proceedings of the First International Workshop on Conditional Term Rewriting Systems, pages 31–44, Orsay, France, July 1987, Vol. 308 of Lecture Notes in Computer Science, Springer, Berlin (1988).
Nachum Dershowitz, Mitsunhiro Okada, and G. Sivakumar. Canonical conditional rewrite systems. In Proceedings of the Ninth Conference on Automated Deduction, pages 538–549, Argonne, IL, May 1988. Vol. 310 of Lecture Notes in Computer Science, Springer, Berlin.
Nachum Dershowitz and David A. Plaisted. Equational programming. In J. E. Hayes, D. Michie, and J. Richards, editors, Machine Intelligence 11: The logic and acquisition of knowledge, chapter 2, pages 21–56, Oxford Press, Oxford, 1988.
Nachum Dershowitz and G. Sivakumar. Goal-directed equation solving. In Proceedings of the Seventh National Conference on Artificial Intelligence, pages 166–170, St. Paul, MN, August 1988.
M. Fay. First-order unification in an equational theory. In Proceedings of the Fourth Workshop on Automated Deduction, pages 161–167, Austin, TX, February 1979.
Jean-Marie Hullot. Canonical forms and unification. In R. Kowalski, editor, Proceedings of the Fifth International Conference on Automated Deduction, pages 318–334, Les Arcs, France, July 1980. Vol. 87 of Lecture Notes in Computer Science, Springer, Berlin.
Jean H. Gallier and Wayne Snyder. Complete Sets of Transformations for General E-Unification. In Theoretical Computer Science 67 (1989) pages 203–260, North-Holland.
A. Martelli, G. F. Rossi, and C. Moiso. Lazy unification algorithms for canonical rewrite systems. In H. Ait-Kaci and M. Nivat, editors, Resolution of Equations in Algebraic Structures, pages 245–274, Academic Press, New York, 1989.
Werner Nutt, Pierre Réty and Gert Smolka. Basic Narrowing Revisited. In J. of Symbolic Computation, (1989) Vol. 7, pages 295–317.
Uday S. Reddy. On the relationship between logic and functional languages. In D. DeGroot and G. Lindstrom, editors, Logic Programming: Functions, Relations, and Equations, pages 3–36, Prentice-Hall, Englewood Cliffs, NJ, 1986.
Pierre Réty. Improving basic narrowing techniques. In P. Lescanne, editor, Proceedings of the Second International Conference on Rewriting Techniques and Applications, pages 228–241, Bordeaux, France, May 1987. Vol. 256 of Lecture Notes in Computer Science, Springer, Berlin.
G. Sivakumar. Proofs and Computations in Conditional Equational Theories. PhD thesis, Department of Computer Science, University of Illinois, Urbana, IL, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dershowitz, N., Mitra, S., Sivakumar, G. (1990). Equation solving in conditional AC-theories. In: Kirchner, H., Wechler, W. (eds) Algebraic and Logic Programming. ALP 1990. Lecture Notes in Computer Science, vol 463. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53162-9_46
Download citation
DOI: https://doi.org/10.1007/3-540-53162-9_46
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53162-3
Online ISBN: 978-3-540-46738-0
eBook Packages: Springer Book Archive