Results 1 - 10
of
70
Constraint Logic Programming: A Survey
"... Constraint Logic Programming (CLP) is a merger of two declarative paradigms: constraint solving and logic programming. Although a relatively new field, CLP has progressed in several quite different directions. In particular, the early fundamental concepts have been adapted to better serve in differe ..."
Abstract
-
Cited by 705 (20 self)
- Add to MetaCart
Constraint Logic Programming (CLP) is a merger of two declarative paradigms: constraint solving and logic programming. Although a relatively new field, CLP has progressed in several quite different directions. In particular, the early fundamental concepts have been adapted to better serve in different areas of applications. In this survey of CLP, a primary goal is to give a systematic description of the major trends in terms of common fundamental concepts. The three main parts cover the theory, implementation issues, and programming for applications.
Equational Problems and Disunification
- Journal of Symbolic Computation
, 1989
"... Roughly speaking, an equational problem is a first order formula whose only predicate symbol is =. We propose some rules for the transformation of equational problems and study their correctness in various models. Then, we give completeness results with respect to some “simple ” problems called solv ..."
Abstract
-
Cited by 94 (9 self)
- Add to MetaCart
Roughly speaking, an equational problem is a first order formula whose only predicate symbol is =. We propose some rules for the transformation of equational problems and study their correctness in various models. Then, we give completeness results with respect to some “simple ” problems called solved forms. Such completeness results still hold when adding some control which moreover ensures termination. The termination proofs are given for a “weak ” control and thus hold for the (large) class of algorithms obtained by restricting the scope of the rules. Finally, it must be noted that a by-product of our method is a decision procedure for the validity in the Herbrand Universe of any
Records for Logic Programming
- Journal of Logic Programming
, 1994
"... CFT is a new constraint system providing records as logical data structure for constraint (logic) programming. It can be seen as a generalization of the rational tree system employed in Prolog II, where finer-grained constraints are used, and where subtrees are identified by keywords rather than by ..."
Abstract
-
Cited by 94 (17 self)
- Add to MetaCart
CFT is a new constraint system providing records as logical data structure for constraint (logic) programming. It can be seen as a generalization of the rational tree system employed in Prolog II, where finer-grained constraints are used, and where subtrees are identified by keywords rather than by position. CFT is defined by a first-order structure consisting of so-called feature trees. Feature trees generalize the ordinary trees corresponding to first-order terms by having their edges labeled with field names called features. The mathematical semantics given by the feature tree structure is complemented with a logical semantics given by five axiom schemes, which we conjecture to comprise a complete axiomatization of the feature tree structure. We present a decision method for CFT, which decides entailment / disentailment between possibly existentially quantified constraints. Since CFT satisfies the independence property, our decision method can also be employed for checking the sat...
A Feature Logic with Subsorts
- LILOG Report 33, IWBS, IBM Deutschland
, 1992
"... This paper presents a set description logic with subsorts, feature selection (the inverse of unary function application), agreement, intersection, union and complement. We define a model theoretic open world semantics and show that sorted feature structures constitute a canonical model, that is, ..."
Abstract
-
Cited by 69 (4 self)
- Add to MetaCart
This paper presents a set description logic with subsorts, feature selection (the inverse of unary function application), agreement, intersection, union and complement. We define a model theoretic open world semantics and show that sorted feature structures constitute a canonical model, that is, without loss of generality subsumption and consistency of set descriptions can be considered with respect to feature structures only. We show that deciding consistency of set descriptions is an NP-complete problem. To appear in: J. Wedekind and C. Rohrer (eds.), Unification in Grammar. The MIT Press, 1992 This text is a minor revision of LILOG Report 33, May 1988, IBM Deutschland, IWBS, Postfach 800880, 7000 Stuttgart 80, Germany. The research reported here has been done while the author was with IBM Deutschland. The author's article [23] is a more recent work on feature logics. 1 1 Introduction This paper presents a set description logic that generalizes and integrates formalisms...
A Feature-based Constraint System for Logic Programming with Entailment
, 1992
"... This paper presents the constraint system FT, which we feel is an intriguing alternative to Herbrand both theoretically and practically. As does Herbrand, FT provides a universal data structure based on trees. However, the trees of FT (called feature trees) are more general than the trees of Herbran ..."
Abstract
-
Cited by 68 (20 self)
- Add to MetaCart
This paper presents the constraint system FT, which we feel is an intriguing alternative to Herbrand both theoretically and practically. As does Herbrand, FT provides a universal data structure based on trees. However, the trees of FT (called feature trees) are more general than the trees of Herbrand (called constructor trees), and the constraints of FT are finer grained and of different expressivity. The basic notion of FT are functional attributes called features, which provide for record-like descriptions of data avoiding the overspecification intrinsic in Herbrand's constructor-based descriptions. The feature tree structure fixes an algebraic semantics for FT. We will also establish a logical semantics, which is given by three axiom schemes fixing the first-order theory FT. FT is a constraint system for logic programming, providing a test for unsatisfiability, and a test for entailment between constraints, which is needed for advanced control mechanisms. The two major technical con...
Disunification: a Survey
- Computational Logic: Essays in Honor of Alan
, 1991
"... Solving an equation in an algebra of terms is known as unification. Solving more complex formulas combining equations and involving in particular negation is called disunification. With such a broad definition, many works fall into the scope of disunification. The goal of this paper is to survey the ..."
Abstract
-
Cited by 52 (9 self)
- Add to MetaCart
Solving an equation in an algebra of terms is known as unification. Solving more complex formulas combining equations and involving in particular negation is called disunification. With such a broad definition, many works fall into the scope of disunification. The goal of this paper is to survey these works and bring them together in a same framework. R'esum'e On appelle habituellement (algorithme d') unification un algorithme de r'esolution d'une 'equation dans une alg`ebre de termes. La r'esolution de formules plus complexes, comportant en particulier des n'egations, est appel'ee ici disunification. Avec une d'efinition aussi 'etendue, de nombreux travaux peuvent etre consid'er'es comme portant sur la disunification. L'objet de cet article de synth`ese est de rassembler tous ces travaux dans un meme formalisme. Laboratoire de Recherche en Informatique, Bat. 490, Universit'e de Paris-Sud, 91405 ORSAY cedex, France. E-mail: comon@lri.lri.fr i Contents 1 Syntax 5 1.1 Basic Defini...
A Logic Programming View of CLP
- International Conference on Logic Programming
, 1993
"... We address the problem of lifting definitions, results, and even proofs for the theory of logic programming, so that they apply to constraint logic programming (CLP). We attempt to systematize this lifting, where it is possible, and delineate where it is not possible. We show that the Independence o ..."
Abstract
-
Cited by 44 (9 self)
- Add to MetaCart
We address the problem of lifting definitions, results, and even proofs for the theory of logic programming, so that they apply to constraint logic programming (CLP). We attempt to systematize this lifting, where it is possible, and delineate where it is not possible. We show that the Independence of Negated Constraints property of constraint domains is fundamental to several different aspects of constraint logic programming. This is a principal cause for the inability to lift some traditional logic programming results to constraint logic programming. 1 Introduction We address the problem of lifting definitions, results, and even proofs for the theory of logic programming, so that they apply to constraint logic programming (CLP). (In viewing the theory of constraint logic programming as lifted from the theory of logic programming, we are taking a logic programming view of CLP.) Several papers have dealt with this problem for specific results, mostly inspired by the CLP Scheme [10, 11...
Nondeterministic Lisp as a Substrate for Constraint Logic Programming
- in proceedings of AAAI-93
, 1993
"... We have implemented a comprehensive constraintbased programming language as an extension to Common Lisp. This constraint package provides a unified framework for solving both numeric and non-numeric systems of constraints using a combination of local propagation techniques including binding propaga ..."
Abstract
-
Cited by 40 (3 self)
- Add to MetaCart
We have implemented a comprehensive constraintbased programming language as an extension to Common Lisp. This constraint package provides a unified framework for solving both numeric and non-numeric systems of constraints using a combination of local propagation techniques including binding propagation, Boolean constraint propagation, generalized forward checking, propagation of bounds, and unification. The backtracking facility of the nondeterministic dialect of Common Lisp used to implement this constraint package acts as a general fallback constraint solving method mitigating the incompleteness of local propagation. Introduction Recent years have seen significant interest in constraint logic programming languages. Numerous implementations of such languages have been described in the literature, notably clp(!) (Jaffar and Lassez 1987) and CHiP (Van Hentenryck 1989). The point of departure leading to these systems is the observation that the unification operation at the core of lo...
Finite-Tree Analysis for Constraint Logic-Based Languages: The Complete Unabridged Version
, 2001
"... Logic languages based on the theory of rational, possibly infinite, trees have much appeal in that rational trees allow for faster unification (due to the safe omission of the occurs-check) and increased expressivity (cyclic terms can provide very efficient representations of grammars and other usef ..."
Abstract
-
Cited by 34 (16 self)
- Add to MetaCart
Logic languages based on the theory of rational, possibly infinite, trees have much appeal in that rational trees allow for faster unification (due to the safe omission of the occurs-check) and increased expressivity (cyclic terms can provide very efficient representations of grammars and other useful objects). Unfortunately, the use of infinite rational trees has problems. For instance, many of the built-in and library predicates are ill-defined for such trees and need to be supplemented by run-time checks whose cost may be significant. Moreover, some widely-used program analysis and manipulation techniques are correct only for those parts of programs working over finite trees. It is thus important to obtain, automatically, a knowledge of the program variables (the finite variables) that, at the program points of interest, will always be bound to finite terms. For these reasons, we propose here a new dataflow analysis, based on abstract interpretation, that captures such information. We present a parametric domain where a simple component for recording finite variables is coupled, in the style of the open product construction of Cortesi et al., with a generic domain (the parameter of the construction) providing sharing information. The sharing domain is abstractly specified so as to guarantee the correctness of the combined domain and the generality of the approach. This finite-tree analysis domain is further enhanced by coupling it with a domain of Boolean functions, called finite-tree dependencies, that precisely captures how the finiteness of some variables influences the finiteness of other variables. We also summarize our experimental results showing how finite-tree analysis, enhanced with finite-tree dependencies, is a practical means of obtaining precise finitenes...
Equational Formulae with Membership Constraints
- Information and Computation
, 1994
"... We propose a set of transformation rules for first order formulae whose atoms are either equations between terms or "membership constraints" t 2 i. i can be interpreted as a regular tree language (i is called a sort in the algebraic specification community) or as a tree language in any class of lang ..."
Abstract
-
Cited by 30 (3 self)
- Add to MetaCart
We propose a set of transformation rules for first order formulae whose atoms are either equations between terms or "membership constraints" t 2 i. i can be interpreted as a regular tree language (i is called a sort in the algebraic specification community) or as a tree language in any class of languages which satisfies some adequate closure and decidability properties. This set of rules is proved to be correct, terminating and complete. This provides a quantifier elimination procedure: for every regular tree language L, the first order theory of some structure defining L is decidable. This extends the results of Mal'cev (1971), Maher (1988), Comon and Lescanne (1989). We also show how to apply our results to automatic inductive proofs in equational theories. Introduction To unify two terms s and t means to turn the equation s = t into an equivalent solved form which is either ? (this means that s = t has no solution, or, in other words, that s and t are not unifiable) or else a form...

