2,654 research outputs found
Relating Weight Constraint and Aggregate Programs: Semantics and Representation
Weight constraint and aggregate programs are among the most widely used logic
programs with constraints. In this paper, we relate the semantics of these two
classes of programs, namely the stable model semantics for weight constraint
programs and the answer set semantics based on conditional satisfaction for
aggregate programs. Both classes of programs are instances of logic programs
with constraints, and in particular, the answer set semantics for aggregate
programs can be applied to weight constraint programs. We show that the two
semantics are closely related. First, we show that for a broad class of weight
constraint programs, called strongly satisfiable programs, the two semantics
coincide. When they disagree, a stable model admitted by the stable model
semantics may be circularly justified. We show that the gap between the two
semantics can be closed by transforming a weight constraint program to a
strongly satisfiable one, so that no circular models may be generated under the
current implementation of the stable model semantics. We further demonstrate
the close relationship between the two semantics by formulating a
transformation from weight constraint programs to logic programs with nested
expressions which preserves the answer set semantics. Our study on the
semantics leads to an investigation of a methodological issue, namely the
possibility of compact representation of aggregate programs by weight
constraint programs. We show that almost all standard aggregates can be encoded
by weight constraints compactly. This makes it possible to compute the answer
sets of aggregate programs using the ASP solvers for weight constraint
programs. This approach is compared experimentally with the ones where
aggregates are handled more explicitly, which show that the weight constraint
encoding of aggregates enables a competitive approach to answer set computation
for aggregate programs.Comment: To appear in Theory and Practice of Logic Programming (TPLP), 2011.
30 page
Ultimate approximations in nonmonotonic knowledge representation systems
We study fixpoints of operators on lattices. To this end we introduce the
notion of an approximation of an operator. We order approximations by means of
a precision ordering. We show that each lattice operator O has a unique most
precise or ultimate approximation. We demonstrate that fixpoints of this
ultimate approximation provide useful insights into fixpoints of the operator
O.
We apply our theory to logic programming and introduce the ultimate
Kripke-Kleene, well-founded and stable semantics. We show that the ultimate
Kripke-Kleene and well-founded semantics are more precise then their standard
counterparts We argue that ultimate semantics for logic programming have
attractive epistemological properties and that, while in general they are
computationally more complex than the standard semantics, for many classes of
theories, their complexity is no worse.Comment: This paper was published in Principles of Knowledge Representation
and Reasoning, Proceedings of the Eighth International Conference (KR2002
Answer Sets for Logic Programs with Arbitrary Abstract Constraint Atoms
In this paper, we present two alternative approaches to defining answer sets
for logic programs with arbitrary types of abstract constraint atoms (c-atoms).
These approaches generalize the fixpoint-based and the level mapping based
answer set semantics of normal logic programs to the case of logic programs
with arbitrary types of c-atoms. The results are four different answer set
definitions which are equivalent when applied to normal logic programs. The
standard fixpoint-based semantics of logic programs is generalized in two
directions, called answer set by reduct and answer set by complement. These
definitions, which differ from each other in the treatment of
negation-as-failure (naf) atoms, make use of an immediate consequence operator
to perform answer set checking, whose definition relies on the notion of
conditional satisfaction of c-atoms w.r.t. a pair of interpretations. The other
two definitions, called strongly and weakly well-supported models, are
generalizations of the notion of well-supported models of normal logic programs
to the case of programs with c-atoms. As for the case of fixpoint-based
semantics, the difference between these two definitions is rooted in the
treatment of naf atoms. We prove that answer sets by reduct (resp. by
complement) are equivalent to weakly (resp. strongly) well-supported models of
a program, thus generalizing the theorem on the correspondence between stable
models and well-supported models of a normal logic program to the class of
programs with c-atoms. We show that the newly defined semantics coincide with
previously introduced semantics for logic programs with monotone c-atoms, and
they extend the original answer set semantics of normal logic programs. We also
study some properties of answer sets of programs with c-atoms, and relate our
definitions to several semantics for logic programs with aggregates presented
in the literature
Logic Programming Applications: What Are the Abstractions and Implementations?
This article presents an overview of applications of logic programming,
classifying them based on the abstractions and implementations of logic
languages that support the applications. The three key abstractions are join,
recursion, and constraint. Their essential implementations are for-loops, fixed
points, and backtracking, respectively. The corresponding kinds of applications
are database queries, inductive analysis, and combinatorial search,
respectively. We also discuss language extensions and programming paradigms,
summarize example application problems by application areas, and touch on
example systems that support variants of the abstractions with different
implementations
Rewriting recursive aggregates in answer set programming: back to monotonicity
Aggregation functions are widely used in answer set programming for representing and reasoning on knowledge involving sets of objects collectively. Current implementations simplify the structure of programs in order to optimize the overall performance. In particular, aggregates are rewritten into simpler forms known as monotone aggregates. Since the evaluation of normal programs with monotone aggregates is in general on a lower complexity level than the evaluation of normal programs with arbitrary aggregates, any faithful translation function must introduce disjunction in rule heads in some cases. However, no function of this kind is known. The paper closes this gap by introducing a polynomial, faithful, and modular translation for rewriting common aggregation functions into the simpler form accepted by current solvers. A prototype system allows for experimenting with arbitrary recursive aggregates, which are also supported in the recent version 4.5 of the grounder gringo, using the methods presented in this paper
- …