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.