Results 1  10
of
192
The DLV System for Knowledge Representation and Reasoning
 ACM Transactions on Computational Logic
, 2002
"... Disjunctive Logic Programming (DLP) is an advanced formalism for knowledge representation and reasoning, which is very expressive in a precise mathematical sense: it allows to express every property of finite structures that is decidable in the complexity class ΣP 2 (NPNP). Thus, under widely believ ..."
Abstract

Cited by 320 (78 self)
 Add to MetaCart
Disjunctive Logic Programming (DLP) is an advanced formalism for knowledge representation and reasoning, which is very expressive in a precise mathematical sense: it allows to express every property of finite structures that is decidable in the complexity class ΣP 2 (NPNP). Thus, under widely believed assumptions, DLP is strictly more expressive than normal (disjunctionfree) logic programming, whose expressiveness is limited to properties decidable in NP. Importantly, apart from enlarging the class of applications which can be encoded in the language, disjunction often allows for representing problems of lower complexity in a simpler and more natural fashion. This paper presents the DLV system, which is widely considered the stateoftheart implementation of disjunctive logic programming, and addresses several aspects. As for problem solving, we provide a formal definition of its kernel language, functionfree disjunctive logic programs (also known as disjunctive datalog), extended by weak constraints, which are a powerful tool to express optimization problems. We then illustrate the usage of DLV as a tool for knowledge representation and reasoning, describing a new declarative programming methodology which allows one to encode complex problems (up to ∆P 3complete problems) in a declarative fashion. On the foundational side, we provide a detailed analysis of the computational complexity of the language of
Complexity and Expressive Power of Logic Programming
, 1997
"... This paper surveys various complexity results on different forms of logic programming. The main focus is on decidable forms of logic programming, in particular, propositional logic programming and datalog, but we also mention general logic programming with function symbols. Next to classical results ..."
Abstract

Cited by 281 (57 self)
 Add to MetaCart
This paper surveys various complexity results on different forms of logic programming. The main focus is on decidable forms of logic programming, in particular, propositional logic programming and datalog, but we also mention general logic programming with function symbols. Next to classical results on plain logic programming (pure Horn clause programs), more recent results on various important extensions of logic programming are surveyed. These include logic programming with different forms of negation, disjunctive logic programming, logic programming with equality, and constraint logic programming. The complexity of the unification problem is also addressed.
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 267 (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 orderconsistency. 1
Logic Programming and Knowledge Representation  the AProlog perspective
 Artificial Intelligence
, 2002
"... In this paper we give a short introduction to logic programming approach to knowledge representation and reasoning. The intention is to help the reader to develop a 'feel' for the field's history and some of its recent developments. The discussion is mainly limited to logic programs under the answer ..."
Abstract

Cited by 87 (0 self)
 Add to MetaCart
In this paper we give a short introduction to logic programming approach to knowledge representation and reasoning. The intention is to help the reader to develop a 'feel' for the field's history and some of its recent developments. The discussion is mainly limited to logic programs under the answer set semantics. For understanding of approaches to logic programming build on wellfounded semantics, general theories of argumentation, abductive reasoning, etc., the reader is referred to other publications.
A Logic Programming System for Nonmonotonic Reasoning
 Journal of Automated Reasoning
, 1995
"... The evolution of Logic Programming semantics has included the introduction of a new explicit form of negation, beside the older implicit (or default) negation typical of Logic Programming. The richer language has been shown adequate for a spate of knowledge representation and reasoning forms. Th ..."
Abstract

Cited by 84 (43 self)
 Add to MetaCart
The evolution of Logic Programming semantics has included the introduction of a new explicit form of negation, beside the older implicit (or default) negation typical of Logic Programming. The richer language has been shown adequate for a spate of knowledge representation and reasoning forms. The widespread use of such extended programs requires the definition of a correct topdown querying mechanism, much as for Prolog wrt. normal programs. One purpose of this paper is to present and exploit a SLDNFlike derivation procedure, SLX, for programs with explicit negation under well founded semantics (WFSX) and prove its soundness and completeness. (Its soundness wrt. the answersets semantics is also shown.) Our choice of WFSX as the base semantics is justified by the structural properties it enjoys, which are paramount for topdown query evaluation. Of course, introducing explicit negation requires dealing with contradiction. Consequently, we allow for contradiction to appear,...
Disjunctive Stable Models: Unfounded Sets, Fixpoint Semantics, and Computation
 Information and Computation
, 1997
"... Disjunctive logic programs have become a powerful tool in knowledge representation and commonsense reasoning. This paper focuses on stable model semantics, currently the most widely acknowledged semantics for disjunctive logic programs. After presenting a new notion of unfounded sets for disjunct ..."
Abstract

Cited by 75 (17 self)
 Add to MetaCart
Disjunctive logic programs have become a powerful tool in knowledge representation and commonsense reasoning. This paper focuses on stable model semantics, currently the most widely acknowledged semantics for disjunctive logic programs. After presenting a new notion of unfounded sets for disjunctive logic programs, we provide two declarative characterizations of stable models in terms of unfounded sets. One shows that the set of stable models coincides with the family of unfoundedfree models (i.e., a model is stable iff it contains no unfounded atoms). The other proves that stable models can be defined equivalently by a property of their false literals, as a model is stable iff the set of its false literals coincides with its greatest unfounded set. We then generalize the wellfounded WP operator to disjunctive logic programs, give a fixpoint semantics for disjunctive stable models and present an algorithm for computing the stable models of functionfree programs. The algor...
A Classification Theory of Semantics of Normal Logic Programs: II. Weak Properties
 FUNDAMENTA INFORMATICAE
, 1995
"... Our aim in this article is to supplement the set of strong properties introduced in the preceding article ([Dix94]) with a set of weak principles in order to characterize semantics of logic programs. In [Dix94] we introduced our point of view: we observed that all semantics induce in a natural way a ..."
Abstract

Cited by 56 (0 self)
 Add to MetaCart
Our aim in this article is to supplement the set of strong properties introduced in the preceding article ([Dix94]) with a set of weak principles in order to characterize semantics of logic programs. In [Dix94] we introduced our point of view: we observed that all semantics induce in a natural way a sceptical nonmonotonic entailment relation SEM scept . We ask for the properties of these sceptical relations and use them to describe all possible semantics. We collect in this paper serious shortcomings of some semantics proposed recently. Their strange behaviour led us to formulate in a natural way certain principles to avoid these problems. We argue that any wellbehaved semantics should satisfy these principles. The main results state that our list of weak principles is complete in the following sense: any wellbehavedsemantics is an extension of the wellfounded semantics WFS and coincides for stratified programs with Apt, Blair, and Walker's supported model M supp P . We also...
Logic and Databases: a 20 Year Retrospective
, 1996
"... . At a workshop held in Toulouse, France in 1977, Gallaire, Minker and Nicolas stated that logic and databases was a field in its own right (see [131]). This was the first time that this designation was made. The impetus for this started approximately twenty years ago in 1976 when I visited Gallaire ..."
Abstract

Cited by 55 (1 self)
 Add to MetaCart
. At a workshop held in Toulouse, France in 1977, Gallaire, Minker and Nicolas stated that logic and databases was a field in its own right (see [131]). This was the first time that this designation was made. The impetus for this started approximately twenty years ago in 1976 when I visited Gallaire and Nicolas in Toulouse, France, which culminated in a workshop held in Toulouse, France in 1977. It is appropriate, then to provide an assessment as to what has been achieved in the twenty years since the field started as a distinct discipline. In this retrospective I shall review developments that have taken place in the field, assess the contributions that have been made, consider the status of implementations of deductive databases and discuss the future of work in this area. 1 Introduction As described in [234], the use of logic and deduction in databases started in the late 1960s. Prominent among the developments was the work by Levien and Maron [202, 203, 199, 200, 201] and Kuhns [1...
Alma0: An Imperative Language that Supports Declarative Programming
, 1998
"... Architecture The Alma Abstract Architecture (AAA) is the virtual architecture used during the intermediate code generation phase of the Alma0 compiler. The AAA combines the features of the abstract machines for imperative languages and for logic programming languages. The compiler compiles the Al ..."
Abstract

Cited by 54 (11 self)
 Add to MetaCart
Architecture The Alma Abstract Architecture (AAA) is the virtual architecture used during the intermediate code generation phase of the Alma0 compiler. The AAA combines the features of the abstract machines for imperative languages and for logic programming languages. The compiler compiles the Alma0 programs into AAA programs. In a second phase the AAA instructions are translated into C statements. As the Alma0 language itself, the AAA aims to combine the best of both worlds; elements were taken from virtual machines used to compile imperative languages (in particular the RISC architecture described in Wirth [1996, pp. 5559], and from the WAM machine used to compile a logical language (see AitKaci [1991]). Still, the AAA resembles most the virtual machines used in the compilation of imperative languages. The additions made to provide for the extensions of the Alma0 language are the failure handling instructions ONFAIL, FAIL, 40 \Delta Krzysztof R. Apt et al the log ...