Abstract
The problem of unifying pairs of terms with respect to an equational theory ε (as well as detecting the inconsistency of a system of equations) is in general undecidable. We propose a static analysis which allows to detect inconsistent sets of equations. The method consists of building an abstract narrower for equational theories and executing the sets of equations to be detected for inconsistency in the approximated narrower. The accuracy of this method is enhanced by some simple loop-checking technique. We show that our method can also be actively used for pruning the search tree of an incremental equational constraint solver. Our method results to well relate and integrate with other methods in the literature.
This work has been partially supported by CICYT under grant TIC-92-0793
Preview
Unable to display preview. Download preview PDF.
References
G. Aguzzi and M.C. Verri. On the termination of a unification procedure. In A. Bertoni, C. Böhm, and P. Miglioli, editors, Proc. of the Third Italian Conference on Theoretical Computer Science, pages 59–70, 1989.
H. AÏt-Kaci, P. Lincoln, and R. Nasr. Le Fun: Logic, equations, and Functions. In Proc. Second IEEE Symp. on Logic In Computer Science, pages 17–23. IEEE Computer Society Press, 1987.
M. Alpuente and M. Falaschi. Narrowing as an Incremental Constraint Satisfaction Algorithm. In J. Maluszyński and M. Wirsing, editors, Proc. of PLILP'91, volume 528 of Lecture Notes in Computer Science, pages 111–122. Springer-Verlag, Berlin, 1991.
M. Alpuente, M. Falaschi, and F. Manzo. Analyses of Inconsistency for Lazy Equational CLP. Technical report, Dipartimento di Informatica, Università di Pisa, 1992.
K. R. Apt. Introduction to Logic Programming. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics. Elsevier, Amsterdam and The MIT Press, Cambridge, Mass., 1990.
H.J. Bürckert. Lazy E-unification — a method to delay alternative solutions. Technical report, Université de Nancy, France, 1987.
J. Chabin and P. Réty. Narrowing directed by a graph of terms. In G. Goos and J. Hartmanis, editors, Proc. of RTA'91, volume 488 of Lecture Notes in Computer Science, pages 112–123. Springer-Verlag, Berlin, 1991.
M. Codish, M. Falaschi, and K. Marriott. Suspension Analysis for Concurrent Logic Programs. In K. Furukawa, editor, Proc. Eighth Int'l Conf. on Logic Programming, pages 331–345. The MIT Press, Cambridge, Mass., 1991.
P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc. Fourth ACM Symp. Principles of Programming Languages, pages 238–252, 1977.
M. Dincbas and P. van Hentenryck. Extended Unification Algorithms for the Integration of Functional Programming into Logic Programming. Journal of Logic Programming, 4:197–227, 1987.
N. Dershowitz and G. Sivakumar. Solving Goals in Equational Languages. In S. Kaplan and J. Joaunnaud, editors, Proc. First Int'l Workshop on Conditional Term Rewriting, volume 308 of Lecture Notes in Computer Science, pages 45–55. Springer-Verlag, Berlin, 1987.
L. Fribourg. Slog: a logic programming language interpreter based on clausal superposition and rewriting. In Proc. Second IEEE Int'l Symp. on Logic Programming, pages 172–185. IEEE, 1985.
J.H. Gallier and S. Raatz. Extending SLD-resolution to equational Horn clauses using E-unification. Journal of Logic Programming, 6:3–43, 1989.
P. Van Hentenryck. Incremental Constraint Satisfaction in logic programming. In D. H. D. Warren and P. Szeredi, editors, Proc. Seventh Int'l Conf. on Logic Programming, pages 189–202. The MIT Press, Cambridge, Mass., 1990.
P. Van Hentenryck and Y. Deville. Operational Semantics of Constraint Logic Programming over Finite Domains. In J. Maluszyński and M. Wirsing, editors, Proc. of PLILP'91, volume 528 of Lecture Notes in Computer Science, pages 395–406. Springer-Verlag, Berlin, 1991.
S. Hölldobler. Foundations of Equational Logic Programming, volume 353 of Lecture Notes in Artificial Intelligence. Springer-Verlag, Berlin, 1989.
H. Hussman. Unification in conditional-equational theories. Technical report, Fakultät für Mathematik und Informatik, Universität Passau, 1986.
J. Jaffar and J.-L. Lassez. Constraint Logic Programming. In Proc. Fourteenth Annual ACM Symp. on Principles of Programming Languages, pages 111–119. ACM, 1987.
J. Jaffar, J.-L. Lassez, and M.J. Maher. A logic programming language scheme. In D. de Groot and G. Lindstrom, editors, Logic Programming, Functions, Relations and Equations, pages 441–468. Prentice Hall, Englewood Cliffs, NJ, 1986.
S. Kaplan. Fair conditional term rewriting systems: unification, termination and confluence. In H.-J. Kreowski, editor, Recent Trends in Data Type Specification, volume 116 of Informatik-Fachberichte, pages 136–155. Springer-Verlag, Berlin, 1986.
J.W. Klop. Term rewriting systems. In S. Abramsky, D. Gabbay, and T. Maibaum, editors, Handbook of Logic in Computer Science, I. Oxford University Press, 1991.
J.-L. Lassez, M. J. Maher, and K. Marriott. Unification Revisited. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 587–625. Morgan Kaufmann. Los Altos, Ca., 1988.
K. Marriott and H. Sondergaard. Semantics-based Dataflow Analysis of Logic Programs. In G. Ritter, editor, Information Processing 89. North-Holland, 1989.
A. Middeldorp and E. Hamoen. Counterexamples to completeness results for basic narrowing. To appear in Proc. Third Int'l Conf. on Algebraic and Logic Programming, 1992.
P. Réty, C. Kirchner, H. Kirchner, and P. Lescanne. NARROWER: A new algorithm for unification and its applications to logic programming. In Proc. of RTA '85, volume 202 of Lecture Notes in Computer Science, pages 141–157. Springer-Verlag, Berlin, 1985.
J.H. Siekmann. Unification Theory. Journal of Symbolic Computation, 7:207–274, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Alpuente, M., Falaschi, M., Manzo, F. (1992). Analyses of inconsistency for incremental equational logic programming. In: Bruynooghe, M., Wirsing, M. (eds) Programming Language Implementation and Logic Programming. PLILP 1992. Lecture Notes in Computer Science, vol 631. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55844-6_153
Download citation
DOI: https://doi.org/10.1007/3-540-55844-6_153
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55844-6
Online ISBN: 978-3-540-47297-1
eBook Packages: Springer Book Archive