Results 1  10
of
62
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
Conformant planning via heuristic forward search: A new approach
, 2006
"... Conformant planning is the task of generating plans given uncertainty about the initial state and action effects, and without any sensing capabilities during plan execution. The plan should be successful regardless of which particular initial world we start from. It is well known that conformant pla ..."
Abstract

Cited by 80 (10 self)
 Add to MetaCart
Conformant planning is the task of generating plans given uncertainty about the initial state and action effects, and without any sensing capabilities during plan execution. The plan should be successful regardless of which particular initial world we start from. It is well known that conformant planning can be transformed into a search problem in belief space, the space whose elements are sets of possible worlds. We introduce a new representation of that search space, replacing the need to store sets of possible worlds with a need to reason about the effects of action sequences. The reasoning is done by implication tests on propositional formulas in conjunctive normal form (CNF) that capture the action sequence semantics. Based on this approach, we extend the classical heuristic forwardsearch planning system FF to the conformant setting. The key to this extension is an appropriate extension of the relaxation that underlies FF’s heuristic function, and of FF’s machinery for solving relaxed planning problems: the extended machinery includes a stronger form of the CNF implication tests that we use to reason about the effects of action sequences. Our experimental evaluation shows the resulting planning system to be superior to the stateoftheart conformant planners MBP, KACMBP, and GPT in a variety of benchmark domains.
Revision Programming
 THEORETICAL COMPUTER SCIENCE
, 1994
"... In this paper we introduce revision programming  a logicbased framework for describing constraints on databases and providing a computational mechanism to enforce them. Revision programming captures those constraints that can be stated in terms of the membership (presence or absence) of items (re ..."
Abstract

Cited by 36 (1 self)
 Add to MetaCart
In this paper we introduce revision programming  a logicbased framework for describing constraints on databases and providing a computational mechanism to enforce them. Revision programming captures those constraints that can be stated in terms of the membership (presence or absence) of items (records) in a database. Each such constraint is represented by a revision rule ff / ff 1 ; : : : ; ff k , where ff and all ff i are of the form in(a) and out(b). Collections of revision rules form revision programs. Similarly as logic programs, revision programs admit both declarative and imperative (procedural) interpretations. In our paper, we introduce a semantics that reflects both interpretations. Given a revision program, this semantics assigns to any database B a collection (possibly empty) of Pjustified revisions of B. The paper contains a thorough study of revision programming. We exhibit several fundamental properties of revision programming. We study the relationship of revision programming to logic programming. We investigate complexity of reasoning with revision programs as well as algorithms to compute P justified revisions. Most importantly from the practical database perspective, we identify two classes of revision programs, safe and stratified, with a desirable property that they determine for each initial database a unique revision.
Answer Set Planning under Action Costs
 Journal of Artificial Intelligence Research
, 2002
"... Recently, planning based on answer set programming has been proposed as an approach towards realizing declarative planning systems. In this paper, we present the language K extends the declarative planning language K by action costs. K provides the notion of admissible and optimal plans, whi ..."
Abstract

Cited by 36 (6 self)
 Add to MetaCart
Recently, planning based on answer set programming has been proposed as an approach towards realizing declarative planning systems. In this paper, we present the language K extends the declarative planning language K by action costs. K provides the notion of admissible and optimal plans, which are plans whose overall action costs are within a given limit resp.
Semantical Characterizations and Complexity of Equivalences in Answer Set Programming
 ACM TRANSACTIONS ON COMPUTATIONAL LOGIC
, 2007
"... In recent research on nonmonotonic logic programming, repeatedly strong equivalence of logic programs P and Q has been considered, which holds if the programs P ∪ R and Q ∪ R have the same answer sets for any other program R. This property strengthens the equivalence of P and Q with respect to answe ..."
Abstract

Cited by 28 (12 self)
 Add to MetaCart
In recent research on nonmonotonic logic programming, repeatedly strong equivalence of logic programs P and Q has been considered, which holds if the programs P ∪ R and Q ∪ R have the same answer sets for any other program R. This property strengthens the equivalence of P and Q with respect to answer sets (which is the particular case for R =∅), and has its applications in program optimization, verification, and modular logic programming. In this article, we consider more liberal notions of strong equivalence, in which the actual form of R may be syntactically restricted. On the one hand, we consider uniform equivalence where R is a set of facts, rather than a set of rules. This notion, which is wellknown in the area of deductive databases, is particularly useful for assessing whether programs P and Q are equivalent as components of a logic program which is modularly structured. On the other hand, we consider relativized notions of equivalence where R ranges over rules over a fixed alphabet, and thus generalize our results to relativized notions of strong and uniform equivalence. For all these notions, we consider disjunctive logic programs in the propositional (ground) case as well as some restricted classes, providing semantical characterizations and analyzing the computational complexity. Our results, which naturally extend to answer set semantics for programs with strong negation, complement the results on strong
Probabilistic Reasoning about Actions in Nonmonotonic Causal Theories
 In Proceedings UAI2003
, 2003
"... We present the language PC+ for probabilistic reasoning about actions, which is a generalization of the action language C+ that allows to deal with probabilistic as well as nondeterministic effects of actions. We define a formal semantics of PC+ in terms of probabilistic transitions between se ..."
Abstract

Cited by 14 (6 self)
 Add to MetaCart
We present the language PC+ for probabilistic reasoning about actions, which is a generalization of the action language C+ that allows to deal with probabilistic as well as nondeterministic effects of actions. We define a formal semantics of PC+ in terms of probabilistic transitions between sets of states. Using a concept of a history and its belief state, we then show how several important problems in reasoning about actions can be concisely formulated in our formalism.
Towards automated integration of guess and check programs in answer set programming: a metainterpreter and applications. Theory and Practice of Logic Programming 6
"... Abstract. Answer set programming (ASP) with disjunction offers a powerful tool for declaratively representing and solving hard problems. Many NPcomplete problems can be encoded in the answer set semantics of logic programs in a very concise and intuitive way, where the encoding reflects the typical ..."
Abstract

Cited by 14 (3 self)
 Add to MetaCart
Abstract. Answer set programming (ASP) with disjunction offers a powerful tool for declaratively representing and solving hard problems. Many NPcomplete problems can be encoded in the answer set semantics of logic programs in a very concise and intuitive way, where the encoding reflects the typical “guess and check ” nature of NP problems: The property is encoded in a way such that polynomial size certificates for it correspond to stable models of a program. However, the problemsolving capacity of full disjunctive logic programs (DLPs) is beyond NP, and captures a class of problems at the second level of the polynomial hierarchy. While these problems also have a clear “guess and check ” structure, finding an encoding in a DLP reflecting this structure may sometimes be a nonobvious task, in particular if the “check ” itself is a coNPcomplete problem; usually, such problems are solved by interleaving separate guess and check programs, where the check is expressed by inconsistency of the check program. In this paper, we present general transformations of headcycle free (extended) disjunctive logic programs into stratified and positive (extended) disjunctive logic programs based on metainterpretation techniques. The answer sets of the original and the transformed program are in simple correspondence, and, moreover, inconsistency of the original program is indicated by a designated answer set of the transformed program. Our transformations facilitate the integration of separate “guess ” and “check”
Updating action domain descriptions
 in Proc. IJCAI
, 2005
"... How can an intelligent agent update her knowledge base about an action domain, relative to some conditions (possibly obtained from earlier observations)? We study this question in a formal framework for reasoning about actions and change, in which the meaning of an action domain description can be r ..."
Abstract

Cited by 13 (4 self)
 Add to MetaCart
How can an intelligent agent update her knowledge base about an action domain, relative to some conditions (possibly obtained from earlier observations)? We study this question in a formal framework for reasoning about actions and change, in which the meaning of an action domain description can be represented by a directed graph whose nodes correspond to states and whose edges correspond to action occurrences. We define the update of an action domain description in this framework, and show among other results that a solution to this problem can be obtained by a divideandconquer approach in some cases. We also introduce methods to compute a solution and an approximate solution to this problem, and analyze the computational complexity of these problems. Finally, we discuss techniques to improve the quality of solutions. 1