Results 1 - 10
of
79
The Stable Model Semantics For Logic Programming
, 1988
"... We propose a new declarative semantics for logic programs with negation. Its formulation is quite simple; at the same time, it is more general than the iterated fixed point semantics for stratied programs, and is applicable to some useful programs that are not stratified. ..."
Abstract
-
Cited by 1263 (49 self)
- Add to MetaCart
We propose a new declarative semantics for logic programs with negation. Its formulation is quite simple; at the same time, it is more general than the iterated fixed point semantics for stratied programs, and is applicable to some useful programs that are not stratified.
Classical Negation in Logic Programs and Disjunctive Databases
- New Generation Computing
, 1991
"... An important limitation of traditional logic programming as a knowledge representation tool, in comparison with classical logic, is that logic programming does not allow us to deal directly with incomplete information. In order to overcome this limitation, we extend the class of general logic progra ..."
Abstract
-
Cited by 689 (59 self)
- Add to MetaCart
An important limitation of traditional logic programming as a knowledge representation tool, in comparison with classical logic, is that logic programming does not allow us to deal directly with incomplete information. In order to overcome this limitation, we extend the class of general logic programs by including classical negation, in addition to negation-as-failure. The semantics of such extended programs is based on the method of stable models. The concept of a disjunctive database can be extended in a similar way. We show that some facts of commonsense knowledge can be represented by logic programs and disjunctive databases more easily when classical negation is available. Computationally, classical negation can be eliminated from extended programs by a simple preprocessor. Extended programs are identical to a special case of default theories in the sense of Reiter. 1 Introduction An important limitation of traditional logic programming as a knowledge representation tool, in comp...
Representing Action and Change by Logic Programs
- Journal of Logic Programming
, 1993
"... We represent properties of actions in a logic programming language that uses both classical negation and negation as failure. The method is applicable to temporal projection problems with incomplete information, as well as to reasoning about the past. It is proved to be sound relative to a semantics ..."
Abstract
-
Cited by 355 (22 self)
- Add to MetaCart
We represent properties of actions in a logic programming language that uses both classical negation and negation as failure. The method is applicable to temporal projection problems with incomplete information, as well as to reasoning about the past. It is proved to be sound relative to a semantics of action based on states and transition functions. 1 Introduction This paper extends the work of Eshghi and Kowalski [6], Evans [7] and Apt and Bezem [1] on representing properties of actions in logic programming languages with negation as failure. Our goal is to overcome some of the limitations of the earlier work. The existing formalizations of action in logic programming are adequate for only the simplest kind of temporal reasoning---"temporal projection." In a temporal projection problem, we are given a description of the initial state of the world, and use properties of actions to determine what the world will look like after a series of actions is performed. Moreover, the existing ...
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...
Extending and Implementing the Stable Model Semantics
, 2002
"... A novel logic program like language, weight constraint rules, is developed for answer set programming purposes. It generalizes normal logic programs by allowing weight constraints in place of literals to represent, e.g., cardinality and resource constraints and by providing optimization capabilities ..."
Abstract
-
Cited by 255 (5 self)
- Add to MetaCart
A novel logic program like language, weight constraint rules, is developed for answer set programming purposes. It generalizes normal logic programs by allowing weight constraints in place of literals to represent, e.g., cardinality and resource constraints and by providing optimization capabilities. A declarative semantics is developed which extends the stable model semantics of normal programs. The computational complexity of the language is shown to be similar to that of normal programs under the stable model semantics. A simple embedding of general weight constraint rules to a small subclass of the language called basic constraint rules is devised. An implementation of the language, the smodels system, is developed based on this embedding. It uses a two level architecture consisting of a front-end and a kernel language implementation. The front-end allows restricted use of variables and functions and compiles general weight constraint rules to basic constraint rules. A major part of the work is the development of an ecient search procedure for computing stable models for this kernel language. The procedure is compared with and empirically tested against satis ability checkers and an implementation of the stable model semantics. It offers a competitive implementation of the stable model semantics for normal programs and attractive performance for problems where the new types of rules provide a compact representation.
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
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.

