The semantics of constraint logic programs
1998, Journal of Logic Programming
Abstract
The Constraint Logic Programming (CLP) Scheme was introduced by Jaar and Lassez. The scheme gave a formal framework, based on constraints, for the basic operational, logical and algebraic semantics of an extended class of logic programs. This paper presents for the ®rst time the semantic foundations of CLP in a self-contained and complete package. The main contributions are threefold. First, we extend the original conference paper by presenting de®nitions and basic semantic constructs from ®rst principles, giving new and complete proofs for the main lemmas. Importantly, we clarify which theorems depend on conditions such as solution compactness, satisfaction completeness and independence of constraints. Second, we generalize the original results to allow for incompleteness of the constraint solver. This is important since almost all CLP systems use an incomplete solver. Third, we give conditions on the (possibly incomplete) solver which ensure that the operational semantics is con¯uent, that is, has independence of literal scheduling. Ó 1998 Elsevier Science Inc. All rights reserved.
References (24)
- K.R. Apt, M.H. van Emden, Contributions to the theory of logic programming, Journal of the ACM 29 (3) (1982) 841±862.
- K.L. Clark, Negation as failure, in: H. Gallaire, J. Minker (Eds.), Logic and Databases, Plenum Press, New York, 1978, pp. 293±322.
- A. Colmerauer, Prolog-II Manuel de Reference at Modele Theorique, Groupe Intelligence Arti®celle, Universite d'Aix-Marseille II, 1982.
- M.H. van Emden, R.A. Kowalski, The semantics of predicate logic as a programming language, Journal of the ACM 23 (4) (1976) 733±742.
- M. Falaschi, G. Levi, M. Martelli, C. Palamidessi, Declarative modeling of the operational behavior of logic languages, Theoretical Computer Science 69 (3) (1989) 289±318.
- M. Gabbrielli, G. Levi, Modeling answer constraints in constraint logic programs, in: Proceedings of the Eighth International Conference on Logic Programming, 1991, pp. 238±252.
- J. Jaar, J.-L. Lassez, Constraint logic programming, Technical Report 86/73, Department of Computer Science, Monash University, 1986.
- J. Jaar, J.-L. Lassez, Constraint logic programming, in: Proceedings of the 14th Annual ACM Symposium, Principles of Programming Languages, 1987, pp. 111±119.
- J. Jaar, J.-L. Lassez, J.W. Lloyd, Completeness of the negation as failure rule, in: Proceedings of IJCAI-83, 1983, pp. 500±506.
- J. Jaar, J.-L. Lassez, M.J. Maher, A theory of complete logic programs with equality, The Journal of Logic Programming 3 (1984) 211±223.
- J. Jaar, M. Maher, Constraint logic programming: A survey, Journal of Logic Programming 19/20 (1994) 503±581.
- J. Jaar, S. Michaylov, P. Stuckey, R. Yap, The gv R language and system, ACM Transactions on Programming Languages 14 (3) (1992) 339±395.
- J. Jaar, P. Stuckey, Semantics of in®nite tree logic programming, Theoretical Computer Science 46 (1986) 141±158.
- J. Jaar, P. Stuckey, Canonical logic programs, Journal of Logic Programming 3 (1986) 143±155.
- A. Tarski, A lattice-theoretical ®xpoint theorem and its applications, Paci®c Journal of Mathematics 5 (1955) 285±309.
- J.-L. Lassez, M.J. Maher, Closures and fairness in the semantics of programming logic, Theoretical Computer Science 29 (1984) 167±184.
- J.W. Lloyd, Foundations of Logic Programming, 2nd ed., Springer, Berlin, 1987.
- M. Maher, Logic semantics for a class of committed-choice programs, in: Proceedings of the Fourth International Conference on Logic Programming, MIT Press, Cambridge, MA, 1987, pp. 858±876.
- A. Mal'cev, Axiomatizable classes of locally free algebras of various types, in: The Metamathematics of Algebraic Systems: Collected Papers 1936±1967, ch. 23, 1971, pp. 262±281.
- K. Marriott, P. Stuckey, Programming with Constraints: An Introduction, MIT Press, Cambridge, MA, 1998.
- E. Mendelson, Introduction to Mathematical Logic, Wadsworth and Brooks, 3rd ed., 1987.
- J.R. Shoen®eld, Mathematical Logic, Addison±Wesley, Reading, MA, 1967.
- M. Wallace, A computable semantics for general logic programs, Journal of Logic Programming 6 (1989) 269±297.
- D.A. Wolfram, M.J. Maher, J.-L. Lassez, A uni®ed treatment of resolution strategies for logic programs, in: Proceedings of the Second International Conference on Logic Programming, Uppsala, 1984, pp. 263±276.