Results 1 - 10
of
106
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.
GSAT and Dynamic Backtracking
- Journal of Artificial Intelligence Research
, 1994
"... There has been substantial recent interest in two new families of search techniques. One family consists of nonsystematic methods such as gsat; the other contains systematic approaches that use a polynomial amount of justification information to prune the search space. This paper introduces a new te ..."
Abstract
-
Cited by 323 (14 self)
- Add to MetaCart
There has been substantial recent interest in two new families of search techniques. One family consists of nonsystematic methods such as gsat; the other contains systematic approaches that use a polynomial amount of justification information to prune the search space. This paper introduces a new technique that combines these two approaches. The algorithm allows substantial freedom of movement in the search space but enough information is retained to ensure the systematicity of the resulting analysis. Bounds are given for the size of the justification database and conditions are presented that guarantee that this database will be polynomial in the size of the problem in question. 1 INTRODUCTION The past few years have seen rapid progress in the development of algorithms for solving constraintsatisfaction problems, or csps. Csps arise naturally in subfields of AI from planning to vision, and examples include propositional theorem proving, map coloring and scheduling problems. The probl...
Splitting a Logic Program
- Principles of Knowledge Representation
, 1994
"... In many cases, a logic program can be divided into two parts, so that one of them, the \bottom " part, does not refer to the predicates de ned in the \top " part. The \bottom " rules can be used then for the evaluation of the predicates that they de ne, and the computed values can be ..."
Abstract
-
Cited by 229 (15 self)
- Add to MetaCart
In many cases, a logic program can be divided into two parts, so that one of them, the \bottom " part, does not refer to the predicates de ned in the \top " part. The \bottom " rules can be used then for the evaluation of the predicates that they de ne, and the computed values can be used to simplify the \top " de nitions. We discuss this idea of splitting a program in the context of the answer set semantics. The main theorem shows how computing the answer sets for a program can be simpli ed when the program is split into parts. The programs covered by the theorem may use both negation as failure and classical negation, and their rules may have disjunctive heads. The usefulness of the concept of splitting for the investigation of answer sets is illustrated by several applications. First, we show that a conservative extension theorem by Gelfond and Przymusinska and a theorem on the closed world assumption by Gelfond and Lifschitz are easy consequences of the splitting theorem. Second, (locally) strati ed programs are shown to have a simple characterization in terms of splitting. The existence and uniqueness of an answer set for such a program can be easily derived from this characterization. Third, we relate the idea of splitting to the notion of order-consistency. 1
Tabled Evaluation with Delaying for General Logic Programs
, 1996
"... SLD resolution with negation as finite failure (SLDNF) reflects the procedural interpretation of predicate calculus as a programming language and forms the computational basis for Prolog systems. Despite its advantages for stack-based memory management, SLDNF is often not appropriate for query evalu ..."
Abstract
-
Cited by 226 (26 self)
- Add to MetaCart
SLD resolution with negation as finite failure (SLDNF) reflects the procedural interpretation of predicate calculus as a programming language and forms the computational basis for Prolog systems. Despite its advantages for stack-based memory management, SLDNF is often not appropriate for query evaluation for three reasons: a) it may not terminate due to infinite positive recursion; b) it may not terminate due to infinite recursion through negation; c) it may repeatedly evaluate the same literal in a rule body, leading to unacceptable performance. We address three problems fir a goal-oriented query evaluation of general logic programs by presenting tabled evaluation with delaying (SLG resolution).
Logic Programming and Negation: A Survey
- JOURNAL OF LOGIC PROGRAMMING
, 1994
"... We survey here various approaches which were proposed to incorporate negation in logic programs. We concentrate on the proof-theoretic and model-theoretic issues and the relationships between them. ..."
Abstract
-
Cited by 216 (8 self)
- Add to MetaCart
We survey here various approaches which were proposed to incorporate negation in logic programs. We concentrate on the proof-theoretic and model-theoretic issues and the relationships between them.
Logic Programming and Knowledge Representation
- Journal of Logic Programming
, 1994
"... In this paper, we review recent work aimed at the application of declarative logic programming to knowledge representation in artificial intelligence. We consider exten- sions of the language of definite logic programs by classical (strong) negation, disjunc- tion, and some modal operators and sh ..."
Abstract
-
Cited by 202 (19 self)
- Add to MetaCart
In this paper, we review recent work aimed at the application of declarative logic programming to knowledge representation in artificial intelligence. We consider exten- sions of the language of definite logic programs by classical (strong) negation, disjunc- tion, and some modal operators and show how each of the added features extends the representational power of the language.
The Alternating Fixpoint of Logic Programs with Negation
, 1995
"... The alternating fixpoint of a logic program with negation is defined constructively. The underlying idea is monotonically to build up a set of negative conclusions until the least fixpoint is reached, using a transformation related to the one that defines stable models. From a fixed set of negative ..."
Abstract
-
Cited by 189 (2 self)
- Add to MetaCart
The alternating fixpoint of a logic program with negation is defined constructively. The underlying idea is monotonically to build up a set of negative conclusions until the least fixpoint is reached, using a transformation related to the one that defines stable models. From a fixed set of negative conclusions, the positive conclusions follow (without deriving any further negative ones), by traditional Horn clause semantics. The union of positive and negative conclusions is called the alternating xpoint partial model. The name "alternating" was chosen because the transformation runs in two passes; the first pass transforms an underestimate of the set of negative conclusions into an (intermediate) overestimate; the second pass transforms the overestimate into a new underestimate; the composition of the two passes is monotonic. The principal contributions of this work are (1) that the alternating fixpoint partial model is identical to the well-founded partial model, and (2) that alternating xpoint logic is at least as expressive as xpoint logic on all structures. Also, on finite structures, fixpoint logic is as expressive as alternating fixpoint logic.
Stable Semantics for Disjunctive Programs
- New Generation Computing
, 1991
"... We introduce the stable model semantics for disjunctive logic programs and deductive databases, which generalizes the stable model semantics, defined earlier for normal (i.e., non-disjunctive) programs. Depending on whether only total (2-valued) or all partial (3-valued) models are used we obtain th ..."
Abstract
-
Cited by 149 (2 self)
- Add to MetaCart
We introduce the stable model semantics for disjunctive logic programs and deductive databases, which generalizes the stable model semantics, defined earlier for normal (i.e., non-disjunctive) programs. Depending on whether only total (2-valued) or all partial (3-valued) models are used we obtain the disjunctive stable semantics or the partial disjunctive stable semantics, respectively. The proposed semantics are shown to have the following properties: ffl For normal programs, the disjunctive (respectively, partial disjunctive) stable semantics coincides with the stable (respectively, partial stable) semantics. ffl For normal programs, the partial disjunctive stable semantics also coincides with the well-founded semantics. ffl For locally stratified disjunctive programs both (total and partial) disjunctive stable semantics coincide with the perfect model semantics. ffl The partial disjunctive stable semantics can be generalized to the class of all disjunctive logic programs. ffl B...
Every Logic Program Has a Natural Stratification And an Iterated Least Fixed Point Model (Extended Abstract)
, 1989
"... 1 Introduction The perfect model semantics [ABW88, VG89b, Prz88a, Prz89b] provides an attractive alternative to the traditionally used semantics of logic programs based on Clark's completion of the program [Cla78, Llo84, Fit85, Kun87]. Perfect models are minimal models of the program, which can be ..."
Abstract
-
Cited by 129 (12 self)
- Add to MetaCart
1 Introduction The perfect model semantics [ABW88, VG89b, Prz88a, Prz89b] provides an attractive alternative to the traditionally used semantics of logic programs based on Clark's completion of the program [Cla78, Llo84, Fit85, Kun87]. Perfect models are minimal models of the program, which can be equivalently described as iterated least fixed points of natural operators [ABW88, VG89b], as iterated least models of the program [ABW88, VG89b] or as preferred models with respect to a natural priority relation [Prz88a, Prz89b]. As a result, the perfect model semantics is not only very intuitive, but it also has been proven equivalent to suitable forms of all four major formalizations of non-monotonic reasoning in AI (see [Prz88b]) and is used in existing database [Zan88] and truth maintenance systems. Additionally, the perfect model semantics eliminates some serious drawbacks of Clark's semantics [Prz89b] and admits a natural sound and complete procedural mechanism, called SLSresolution [...

