A New Perspective on Stable Models∗ Paolo Ferraris1, Joohyung Lee2 and Vladimir Lifschitz1 1Department of Computer Sciences 2Dept. of Computer Science and Engineering University of Texas at Austin Arizona State University 1 University Station C0500 South Mill Avenue 574 Austin, TX 78705 Tempe, AZ 85281 {otto,vl}@cs.utexas.edu [email protected]

Abstract are considered “stable models”; it turns out that the only sta- ble model of (3) is The definition of a stable model has provided a declarative semantics for programs with {p(a),q(b),r(a)}. (4) negation as failure and has led to the development In spite of this difference between the two definitions, there of . In this paper we pro- is often a close relationship between the completion of a pro- pose a new definition of that concept, which covers gram and its stable models. For instance, in every model many constructs used in answer set programming of (2) (in the sense of first-order ) that satisfies the unique (including disjunctive rules, choice rules and con- names assumption a = b, the elements of set (4) are true, and ditional literals) and, unlike the original definition, all other ground atoms are false. refers neither to grounding nor to fixpoints. Rather, Practical needs of answer set programming (ASP) have it is based on a syntactic transformation, which led to the invention of several declarative programming con- turns a logic program into a formula of second- structs that are not used in Prolog. Clark’s completion seman- order logic that is similar to the formula familiar tics is not applicable to these constructs, at least directly. For from the definition of circumscription. instance, the last rule of the program p(a), 1 Introduction p(b), (5) {q(x):p(x)} Two widely used definitions of the semantics of logic programs—in terms of program completion [Clark, 1978] is a “choice rule” containing a “conditional literal” [Simons and in terms of stable models [Gelfond and Lifschitz, et al., 2002]. Intuitively, this rule says: for any x such that 1988]—look very different from each other. The former treats p(x), choose arbitrarily whether or not to include q(x) in the a logic program as shorthand for its completion, which is a stable model. The semantics of programs with choice rules, first-order formula. For instance, the program like the original , is defined in terms of p(a), grounding and a fixpoint condition. For instance, grounding turns the last line of (5) into the ground choice rule q(b), (1) r(x) ← p(x), not q(x) {q(a),q(b)}. is shorthand for As it turns out, program (5) has 4 stable models: ∀x(p(x) ↔ x = a) ∧∀x(q(x) ↔ x = b) {p(a),p(b)}, ∧∀x(r(x) ↔ (p(x) ∧¬q(x))). (2) {p(a),p(b),q(a)}, {p(a),p(b),q(b)}, (6) On the other hand, according to the stable model seman- {p(a),p(b),q(a),q(b)}. tics, (1) is shorthand for the set of the ground instances of its rules: In this paper we propose a new definition of a stable model, p(a), which covers many constructs used in ASP (including dis- q(b), junctive rules, choice rules, cardinality constraints and condi- (3) r(a) ← p(a), not q(a), tional literals) and refers neither to grounding nor to fixpoints. r(b) ← p(b), not q(b). Rather, like the definition of program completion, the new definition of a stable model is based on a transformation that The definition of a stable model describes a fixpoint construc- turns the given logic program into a formula of classical logic. tion that determines which sets of atomic formulas from (3) To be precise, the result of this transformation is a second- ∗The first and third authors were partially supported by the Na- order formula, which looks similar to the formula famil- tional Science Foundation under Grant IIS-0412907. The second iar from the definition of circumscription [McCarthy, 1980; author was partially supported by DTO AQUAINT. 1986] in the form adopted in [Lifschitz, 1994].

IJCAI-07 372 The new definition and examples of its use are discussed order sentences of special kinds.3 in Section 2 below. In Section 3 we relate our definition To rewrite a “traditional” program, such as (1), as a first- to a theorem from [Lin, 1991], to the encoding of proposi- order sentence, we tional logic programs by quantified Boolean formulas due to • replace every comma by ∧ and every not by ¬ , Pearce, Tompits and Woltran [2001],1 and to recent research • ← on first-order equilibrium logic [Pearce and Valverde, 2004; turn every rule Head Body into a formula by rewrit- → 2005]. A theorem about strong equivalence, illustrating the ing it as the implication Body Head,and nature of the ongoing work on reformulating the theory of • form the conjunction of the universal closures of these stable models on the basis of the new definition, is stated in formulas. Section 4. Finally, in Section 5 we propose a way to gener- For instance, we think of (1) as alternative notation for the alize the concept of program completion that is similar to the sentence new definition of a stable model. Our treatment of stable models may be of interest for three p(a) ∧ q(b) ∧∀x((p(x) ∧¬q(x)) → r(x)). (7) reasons. First, it provides a new perspective on the place ¬F F →⊥ of stable models within the field of nonmonotonic reason- We are going to treat as shorthand for , so that the ing. We can distinguish between “translational” nonmono- last conjunctive term can be further expanded into tonic formalisms, such as program completion and circum- ∀x((p(x) ∧ (q(x) →⊥)) → r(x)). scription, and “fixpoint” formalisms— [Reiter, 1980]2 and autoepistemic logic [Moore, 1985]. In the past, In the spirit of [Ferraris and Lifschitz, 2005b], (5) is under- stable models were seen as part of the “fixpoint tradition.” stood as In fact, the invention of stable models was an outgrowth of p(a) ∧ p(b) ∧∀x(p(x) → (q(x) ∨¬q(x))). earlier work on the relationship between (8) and autoepistemic logic [Gelfond, 1987]; the first journal pa- Since the last conjunctive term is logically valid, the class per on answer sets [Gelfond and Lifschitz, 1991] emphasized of models of formula (8) would not change if we dropped their relation to default logic. The remarkable similarity be- that term; but the class of its stable models, as defined below, tween the new definition of a stable model and the definition would be affected. In this sense, the last conjunctive term is of circumscription is rather curious from this point of view. essential. Second, we expect that the new definition of stable mod- Finally, here is an example of turning a cardinality con- els will provide a unified framework for useful answer set straint [Simons et al., 2002] into a first-order formula. The programming constructs defined and implemented by sev- rule eral different research groups, such as choice rules, cardinal- p ← 10 {q(x):r(x)} 20 ity constraints and conditional literals (Helsinki University of corresponds to the sentence Technology), disjunctive rules and aggregates [Faber et al., 2004] (Vienna University of Technology and University of (∃10x(q(x) ∧ r(x)) ∧¬∃21x(q(x) ∧ r(x))) → p, (9) Calabria), and ASET-Prolog constructs [Gelfond, 2002, Sec- tion 5.2] (Texas Tech University). where ∃nxF (x) is understood as an abbreviation for ⎛ ⎞ Finally, we hope that this definition of a stable model will   serve as a basis for a new approach to proving program cor- ∃x ···x ⎝ F (x ) ∧ x = x ⎠ . rectness in ASP, which will be more straightforward than 1 n i i j 1≤i≤n 1≤i

IJCAI-07 373 and p ≤ q stands for • (F → G)∗ =(F ∗ → G∗) ∧ (F → G); ∀x(p(x) → q(x)), • (QxF )∗ = QxF ∗,whereQ ∈{∀, ∃}. F → F ∗(u) where x is a tuple of distinct object variables. If p and q are Note that the operator replaces each predicate tuples p1,...,pn and q1,...,qn of predicate constants then constant with the corresponding predicate variable, and that p = q stands for the conjunction it commutes with all propositional connectives except impli- cation and with both quantifiers. If, in the definition of this p1 = q1 ∧···∧pn = qn, operator, we drop the second conjunctive term in the clause for implication, then F ∗(u) will turn into the formula F (u) and p ≤ q for referred to in the definition of circumscription. That con- p1 ≤ q1 ∧···∧pn ≤ qn. junctive term is the only difference between the definitions p < q p ≤ q ∧¬(p = q) of CIRC and SM. Finally, is an abbreviation for . A model of F is stable if it satisfies SM[F ]. In second-order logic, we will apply the same notation to tuples of predicate variables. Example 1 If F is (10) then F ∗(u, v) is F [F ] Given a first-order sentence ,byCIRC we denote the u(a) ∧∀x((u(x) → v(x)) ∧ (p(x) → q(x))) second-order sentence F ∧¬∃u((u < p) ∧ F (u)), and SM[F ] is where p stands for the list of all predicate constants occur- p(a) ∧∀x(p(x) → q(x)) ring in F , u is a list of distinct predicate variables of the same ∧¬∃uv(((u, v) < (p, q)) ∧ u(a) ∧∀x((u(x) → v(x)) length, and F (u) is the formula obtained from F by substitut- ∧(p(x) → q(x)))). ing the variables u for the constants p. Intuitively, the second conjunctive term of CIRC[F ] expresses that the extents of the It is clear that this formula is equivalent to (11), and conse- predicates p are minimal subject to condition F . quently to (12). For example, if F is In logic programming notation, (10) can be written as p(a), p(a) ∧∀x(p(x) → q(x)) (10) q(x) ← p(x). then CIRC[F ] is The completion of this program p(a) ∧∀x(p(x) → q(x)) ∧¬∃uv(((u, v) < (p, q)) ∧ u(a) ∧∀x(u(x) → v(x))). ∀x(p(x) ↔ x = a) ∧∀x(q(x) ↔ p(x)) (11) is equivalent to (12) as well. In this example, all three Using methods for eliminating second-order quantifiers dis- transformations—SM, CIRC and completion—produce es- cussed in [Lifschitz, 1994] and [Doherty et al., 1997], we can sentially the same result. simplify (11) and convert it into F ∀x(p(x) ↔ x = a) ∧∀x(q(x) ↔ x = a). (12) Example 2 If is (13) then, as in the previous example, it is clear that SM[F ] is equivalent to CIRC[F ]. Consequently, the There are cases when CIRC[F ] is not equivalent to any stable models of (13) can be characterized by the condition first-order formula, as, for instance, when F is stated at the end of the previous section: p is represented by a, f(a),f(f(a)),... p(a) ∧∀x(p(x) → p(f(x))). the set of the values of the terms . (13) In logic programming notation, (13) can be written as [F ] In this example, a model of CIRC is any interpreta- p(a), p tion that represents as the set of the values of the terms p(f(x)) ← p(x). (14) a, f(a),f(f(a)),.... The completion of this program 2.3 Stable Models Given a first-order sentence F ,bySM[F ] we denote the ∀x(p(x) ↔ (x = a ∨∃y(x = f(y) ∧ p(y))) second-order sentence is weaker than SM[F ]: some (non-Herbrand4) models of the F ∧¬∃u((u < p) ∧ F ∗(u)), completion of (14) are not stable. where p stands for the list of all predicate constants It is easy to see that the operator SM produces essentially p1,...,pn occurring in F , u is a list of n distinct predicate the same result as CIRC whenever it is applied to a for- ∗ variables u1,...,un,andF (u) is defined recursively: mula corresponding to a set of Horn rules, as in the examples • p (t ,...,t )∗ = u (t ,...,t ) i 1 m i 1 m ; 4An Herbrand interpretation of a signature σ containing at least ∗ • (t1 =t2) =(t1 =t2); one object constant is an interpretation such that (i) its universe is the σ •⊥∗ = ⊥; set of all ground terms of , and (ii) every ground term represents itself. Clearly, an Herbrand interpretation can be characterized by ∗ ∗ ∗ • (F G) = F G ,where ∈{∧, ∨}; the set of ground atoms to which it assigns the value true.

IJCAI-07 374 above.5 But if negation in the bodies of rules is allowed then convert this formula into the completion (2) of program (1). this may be no longer the case, as we will see Section 2.4. We conclude that in this case the stable models of the program What we can say, on the other hand, about this more gen- are identical to the models of its completion. eral case is that stable Herbrand models of the corresponding We can further conclude that there is a unique Herbrand formula exactly correspond to the stable models of the pro- stable model in this case, and that it corresponds to the set (4) gram in the sense of the original definition from [Gelfond and of ground atoms. This fact follows also from Proposition 1. Lifschitz, 1988]: Example 4 If F is formula (8), corresponding to logic pro- Proposition 1 Let σ be a signature containing at least one gram (5), then a similar calculation converts SM[F ] into object constant, and Π a finite set of rules of the form p(a) ∧ p(b) ∧∀x(p(x) → (q(x) ∨¬q(x))) A0 ← A1,...,Am, not Am+1,...,not An, (15) ∧¬∃uv(((u, v) < (p, q)) ∧ u(a) ∧ u(b) ∧∀x(u(x) → (v(x) ∨¬q(x)))). where A0,...,An are atomic formulas of σ not containing X σ equality. For any set of ground terms of , the following After the elimination of second-order quantifiers, this formula conditions are equivalent: becomes • X Π is a stable model of in the sense of the 1988 defini- ∀x(p(x) ↔ (x = a ∨ x = b)) tion; ∧∀x(q(x) → (x = a ∨ x = b)). • the Herbrand interpretation of σ that makes the elements of X true and all other ground atoms false is a stable The stable models of (5) can be characterized as the interpre- model of the formula corresponding to Π. tations that (i) represent p by the set of values of a and b,and (ii) represent q by a subset of that set. Consequently, (8) has 4 This theorem shows that the new definition of a stable Herbrand stable models, and they correspond to sets (6). model, restricted to the “traditional” syntax, is a generaliza- We call a formula negative if every occurrence of every tion of the 1988 definition to non-Herbrand models. In Sec- predicate constant in this formula belongs to the antecedent tion 3.1 we will see that our definition generalizes also the of an implication. Clearly any formula of the form ¬F is definition proposed in [Ferraris, 2005] andusedin[Ferraris negative, because this expression is shorthand for F →⊥ and Lifschitz, 2005a; Ferraris et al., 2006]. (Section 2.1). Proposition 2 can be generalized to arbitrary 2.4 Further Examples negative formulas. Proposition 2 below allows us to simplify the application of the operator SM to formulas containing negation. In its state- 3 Relation to Earlier Work ment, p is the list of predicate constants occurring in F ,andu 3.1 Propositional Case p is a list of distinct predicate variables of the same length as . In the propositional case, the operator SM turns into the Proposition 2 If a formula F begins with ¬ then the formula encoding of formulas of equilibrium logic by quantified Boolean formulas proposed in [Pearce et al., 2001] and re- u ≤ p → (F ∗(u) ↔ F ) viewed in [Ferraris et al., 2006, Appendix B].Inviewofthe is logically valid. Pearce-Tompits-Woltran theorem, as restated in that review, it follows that in the propositional case our definition of a stable Example 3 Let F be formula (7), corresponding to logic model is equivalent to the definition of a stable model (answer program (1). Then SM[F ] is set) proposed in [Ferraris, 2005] andreviewedin[Ferraris et al., 2006, Appendix A]. p(a) ∧ q(b) ∧∀x((p(x) ∧¬q(x)) → r(x)) ∧¬∃uvw(((u, v, w) < (p, q, r)) ∧ u(a) ∧ v(b) 3.2 Lin’s Transformation ∧∀x(((u(x) ∧ (¬q(x))∗) → w(x)) Theorem 5 from [Lin, 1991] relates stable models of “tradi- ∧((p(x) ∧¬q(x)) → r(x)))). tional programs” (as in Proposition 1 above) to circumscrip- It is clear that the implication in the last line can be dropped. tion. It involves a syntactic transformation that can be de- Furthermore, since the subformula (u, v, w) < (p, q, r) con- scribed as a sequence of three steps. First, each rule is turned tains the conjunctive term v ≤ q, from Proposition 2 we can into a formula that may contain new predicate constants— ∗ p p conclude that (¬q(x)) can be equivalently replaced here by “doubles” of the predicate constants occurring in the rule. ¬q(x). Consequently, SM[F ] can be rewritten as Second, the new predicate constants are circumscribed in par- allel. Third, the result is conjoined with the equivalences p(a) ∧ q(b) ∧∀x((p(x) ∧¬q(x)) → r(x)) p = p. We will show that this idea is applicable to arbitrary ∧¬∃uvw(((u, v, w) < (p, q, r)) ∧ u(a) ∧ v(b) first-order sentences, and that the result of this transformation ∧∀x((u(x) ∧¬q(x)) → w(x))). is closely related to the operator SM. Using the methods for eliminating second-order quantifiers To do this, we need parallel circumscription of a slightly described at the end of [Lifschitz, 1994, Section 3.3], we can more general kind than defined in Section 2.2. In the defi- nition of circumscription, there is no need to assume that p 5This assertion remains true if we allow the heads of rules to be stands for the list of all predicate constants occurring in F ; disjunctions of atomic formulas. p may include only some of these constants. The result of

IJCAI-07 375 If If circumscribing the predicate constants p in a first-order sen- • I |= t1 = t2 if t1 = t2 ; F [F ; p] F tence will be denoted by CIRC . For instance, if • I |= ⊥; is (10) then CIRC[F ; q] is • I |= F ∧ G if I |= F and I |= G; similarly for ∨; p(a) ∧∀x(p(x) → q(x)) ∧¬∃v((v

IJCAI-07 376 are logically valid; the right-hand sides of the two equiva- Proposition 6 Formula PSM[F ] is equivalent to  lences are classically equivalent to each other. F ∧ ¬∃xi(p (xi) ∧ G (xi)), For our proof of the “only if” part of Proposition 5 it is not i i essential that the definition of strong equivalence allows the 1≤i≤n i signature of H to be larger than the signature of F and G.It where Gi(x ) stands for follows that F is strongly equivalent to G whenever F ∧ H F ∗(p ,...,p ,λyi(p (yi) ∧ yi = xi),p ,...,p ) G ∧ H H 1 i−1 i i+1 n has the same stable models as for all sentences of xi yi 7 the same signature as F and G. and , are disjoint tuples of distinct variables. For instance, if F is p(a) ∧ p(b) then F ∗(u) is u(a) ∧ u(b), Relations between logic programs with variables, some- ∗ what similar to strong equivalence as defined above but more so that F (λy(p(y) ∧ y = x)) is limited in scope, are discussed in [Pearce and Valverde, 2005, p(a) ∧ a = x ∧ p(b) ∧ b = x, Section 7] and [Eiter et al., 2006]. and PSM[F ] is p(a) ∧ p(b) ∧¬∃x(p(x) ∧ p(a) ∧ a = x ∧ p(b) ∧ b = x). 5 A New Perspective on Program Completion This formula can be simplified: 5.1 Pointwise Stable Models p(a) ∧ p(b) ∧¬∃x(p(x) ∧ a = x ∧ b = x). As observed in [Lee and Lin, 2006], program comple- [F ] tion is similar in some ways to the concept of pointwise In this example, PSM is obviously equivalent to the F circumscription—the modification of McCarthy’s original completion of : definition that was proposed in [Lifschitz, 1987]. Accord- ∀x(p(x) ↔ (x = a ∨ x = b)). p ing to either definition, circumscribing a predicate constant This fact is an instance of the general theorem stated below. makes the extent of p “minimal,” but minimality is under- stood in different versions differently. According to the origi- 5.2 Relation to Program Completion nal definition of circumscription, to make the extent of a pred- Lloyd and Topor [1984] noted that the process of completing icate smaller means to replace it by a proper subset. In the a program can be extended in an obvious way to rules of a pointwise version, to make the extent of a predicate smaller more general form than allowed in [Clark, 1978]. It is essen- means to decrement it by a single point. The pointwise min- tial that the head of a rule be an atom, but the body can be an imality condition is, generally, weaker than minimality ac- arbitrary first-order formula. cording to McCarthy; similarly, program completion is gen- Proposition 7 below refers to completion in this more gen- erally weaker than the stability condition. eral sense, but it does introduce a restriction on the syntactic In this section, we define a weakened, “pointwise” version form of the bodies of rules. The rules we consider in this of the operator SM that can be viewed as a generalization of section have the form program completion to arbitrary first-order formulas. p (t0) ← p (t1) ∧···∧p (tm) ∧ N, p q k 0 1 m (16) If and are predicate constants of the same arity then i 1 where t are tuples of terms and N is a negative formula (see p

IJCAI-07 377 5.3 Tight Formulas 6Conclusion Franc¸ois Fages [1991] showed that if a logic program satisfies The definition of a stable model proposed in this paper is ap- a certain syntactic condition, which is now called “tightness,” plicable both to rules covered by the original 1988 definition then its stable models can be characterized as the models of and to rules of several more general kinds used in answer set its completion. This theorem and its generalizations (see [Er- programming. Instead of grounding and fixpoints, it refers to dem and Lifschitz, 2003]) play an important role in answer a translation into classical logic, and is in this sense close to set programming. the definitions of program completion and circumscription. Consider, for instance, logic programs consisting of rules The relationship between the original definition of a stable of form (16). According to the definition of a tight program, model and the definition proposed here can be compared with to decide whether such a program is tight we should look at the relationship between two definitions of a causal theory— its “predicate dependency graph.” The vertices of this graph the original definition introduced in [McCain and Turner, are the predicate constants occurring in the program, and its 1997] and its generalization proposed in [Lifschitz, 1997]. edges lead from p0 to p1,...,pm for the rules (16) that the The original definition uses a fixpoint construction; the gen- program consists of. The program is called tight if its predi- eralization is based on a translation into classical logic. cate dependency graph is acyclic. Another definition of a stable model for first-order order Proposition 8 below extends Fages’s theorem to the general sentences is given independently by Lin and Zhou [2007]. It framework introduced in this note. To define the predicate de- refers to grounding, but in other ways it is similar to ours. pendency graph for an arbitrary first-order sentence, we need Extending main results of the theory of stable models to the a few auxiliary definitions. general framework described above is a topic of future work. Recall that an occurrence of a subformula or a predicate constant in a formula F is positive if the number of impli- Acknowledgements F cations in containing that occurrence in the antecedent is We are grateful to Pedro Cabalar, Martin Gebser and Hudson 0 8 even;itisstrictly positive if that number is . In (7), for in- Turner for useful comments on this paper. stance, both occurrences of q are positive, but only the first is strictly positive. The key idea of our definition of the predi- References cate dependency graph for an arbitrary formula F is to con- centrate on the implications G → H that have strictly positive [Clark, 1978] Keith Clark. Negation as failure. In Herve occurrences in F ; such implications generalize the concept of Gallaire and Jack Minker, editors, Logic and Data Bases, a rule in traditional logic programs. pages 293–322. Plenum Press, New York, 1978. We say that a predicate constant p depends on a predicate [Doherty et al., 1997] Patrick Doherty, Witold Łukaszewicz, constant q in an implication G → H if and Andrzey Szałas. Computing circumscription revisited: • p has a strictly positive occurrence in H,and A reduction algorithm. Journal of Automated Reasoning, 18(3):297–336, 1997. • q has a positive occurrence in G that does not belong to [ ] any occurrence of a negative formula in G. Eiter et al., 2006 Thomas Eiter, Michael Fink, Hans Tom- pits, Patrick Traxler, and Stefan Woltran. Replacements The predicate dependency graph of a formula F is the di- in non-ground answer-set programming. In Proceedings rected graph such that of International Conference on Principles of Knowledge • its vertices are the predicate constants occurring in F , Representation and Reasoning (KR), 2006. and [Erdem and Lifschitz, 2003] Esra Erdem and Vladimir Lif- • it has an edge from a vertex p to a vertex q if p depends schitz. Tight logic programs. Theory and Practice of Logic on q in an implication that has a strictly positive occur- Programming, 3:499–518, 2003. rence in F . [Faber et al., 2004] Wolfgang Faber, Nicola Leone, and For instance, the predicate dependency graph of formula (7) Gerard Pfeifer. Recursive aggregates in disjunctive has three vertices p, q, r and one edge, from r to q.Thisis logic programs: Semantics and complexity. In Pro- the same graph as the one given by the more special definition ceedings of European Conference on in Arti- ficial Intelligence (JELIA), 2004. Revised version: reviewed above applied to the “logic programming represen- http://www.wfaber.com/research/papers/ tation” (1) of formula (7). jelia2004.pdf Just as in the special case above, we say that a formula F . is tight if its predicate dependency graph is acyclic. For in- [Fages, 1991] Franc¸ois Fages. A fixpoint semantics for gen- stance, formulas (7)–(10) are tight; formula (13) is not tight, eral logic programs compared with the well–supported because its predicate dependency graph is a self-loop. and stable model semantics. New Generation Computing, 9:425–443, 1991. Proposition 8 For any tight sentence F , PSM[F ] is equiva- lent to SM[F ]. [Ferraris and Lifschitz, 2005a] Paolo Ferraris and Vladimir Lifschitz. Mathematical foundations of answer set pro- 8Note that we apply the term “negative” to formulas, and the gramming. In We Will Show Them! Essays in Honour of terms “positive” and “strictly positive” to occurrences of subformu- Dov Gabbay, pages 615–664. King’s College Publications, las and predicate constants in a formula. 2005.

IJCAI-07 378 [Ferraris and Lifschitz, 2005b] Paolo Ferraris and Vladimir [Lin, 1991] Fangzhen Lin. A Study of Nonmonotonic Rea- Lifschitz. Weight constraints as nested expressions. The- soning. PhD thesis, Stanford University, 1991. ory and Practice of Logic Programming, 5:45–74, 2005. [Lin, 2002] Fangzhen Lin. Reducing strong equivalence of [Ferraris et al., 2006] Paolo Ferraris, Joohyung Lee, and logic programs to entailment in classical propositional Vladimir Lifschitz. A generalization of the Lin-Zhao the- logic. In Proceedings of International Conference on Prin- orem. Annals of Mathematics and Artificial Intelligence, ciples of Knowledge Representation and Reasoning (KR), 2006. To appear. pages 170–176, 2002. [Ferraris, 2005] Paolo Ferraris. Answer sets for proposi- [Lloyd, 1984] John Lloyd. Foundations of Logic Program- tional theories. In Proceedings of International Confer- ming. Springer-Verlag, 1984. ence on Logic Programming and Nonmonotonic Reason- [McCain and Turner, 1997] Norman McCain and Hudson ing (LPNMR), pages 119–131, 2005. Turner. Causal theories of action and change. In Pro- [Gelfond and Lifschitz, 1988] Michael Gelfond and ceedings of National Conference on Artificial Intelligence Vladimir Lifschitz. The stable model semantics for (AAAI), pages 460–465, 1997. logic programming. In Robert Kowalski and Kenneth [ ] Bowen, editors, Proceedings of International Logic Pro- McCarthy, 1980 John McCarthy. Circumscription—a form gramming Conference and Symposium, pages 1070–1080, of non-monotonic reasoning. Artificial Intelligence, 1988. 13:27–39,171–172, 1980. [ ] [Gelfond and Lifschitz, 1991] Michael Gelfond and McCarthy, 1986 John McCarthy. Applications of circum- Vladimir Lifschitz. Classical negation in logic pro- scription to formalizing common sense knowledge. Artifi- grams and disjunctive databases. New Generation cial Intelligence, 26(3):89–116, 1986. Computing, 9:365–385, 1991. [Moore, 1985] Robert Moore. Semantical considerations on [Gelfond, 1987] Michael Gelfond. On stratified autoepis- nonmonotonic logic. Artificial Intelligence, 25(1):75–94, temic theories. In Proceedings of National Conference on 1985. Artificial Intelligence (AAAI), pages 207–211, 1987. [Pearce and Valverde, 2004] David Pearce and Agustin [Gelfond, 2002] Michael Gelfond. Representing knowl- Valverde. Towards a first order equilibrium logic for edge in A-Prolog. Lecture Notes in Computer Science, nonmonotonic reasoning. In Proceedings of European 2408:413–451, 2002. Conference on Logics in Artificial Intelligence (JELIA), pages 147–160, 2004. [Lee and Lin, 2006] Joohyung Lee and Fangzhen Lin. Loop formulas for circumscription. Artificial Intelligence, [Pearce and Valverde, 2005] David Pearce and Agustin 170(2):160–185, 2006. Valverde. A first order nonmonotonic extension of constructive logic. Studia Logica, 80:323–348, 2005. [Lifschitz et al., 2001] Vladimir Lifschitz, David Pearce, and Agustin Valverde. Strongly equivalent logic programs. [Pearce et al., 2001] David Pearce, Hans Tompits, and Ste- ACM Transactions on Computational Logic, 2:526–541, fan Woltran. Encodings for equilibrium logic and logic 2001. programs with nested expressions. In Proceedings of [Lifschitz, 1985] Vladimir Lifschitz. Computing circum- Portuguese Conference on Artificial Intelligence (EPIA), scription. In Proceedings of International Joint Confer- pages 306–320, 2001. ence on Artificial Intelligence (IJCAI), pages 121–127, [Pearce, 1997] David Pearce. A new logical characteri- 1985. zation of stable models and answer sets. In J¨urgen [Lifschitz, 1987] Vladimir Lifschitz. Pointwise circumscrip- Dix, Luis Pereira, and Teodor Przymusinski, editors, tion. In Matthew Ginsberg, editor, Readings in nonmono- Non-Monotonic Extensions of Logic Programming (Lec- tonic reasoning, pages 179–193. Morgan Kaufmann, San ture Notes in Artificial Intelligence 1216), pages 57–70. Mateo, CA, 1987. Springer-Verlag, 1997. [Lifschitz, 1990] Vladimir Lifschitz. On open defaults. In [Reiter, 1980] Raymond Reiter. A logic for default reason- John Lloyd, editor, Computational Logic: Symposium ing. Artificial Intelligence, 13:81–132, 1980. Proceedings, pages 80–95. Springer, 1990. [Reiter, 1982] Raymond Reiter. Circumscription implies [Lifschitz, 1994] Vladimir Lifschitz. Circumscription. In predicate completion (sometimes). In Proceedings of D.M. Gabbay, C.J. Hogger, and J.A. Robinson, editors, International Joint Conference on Artificial Intelligence The Handbook of Logic in AI and Logic Programming, (IJCAI), pages 418–420, 1982. volume 3, pages 298–352. Oxford University Press, 1994. [Simons et al., 2002] Patrik Simons, Ilkka Niemel¨a, and [Lifschitz, 1997] Vladimir Lifschitz. On the logic of causal Timo Soininen. Extending and implementing the stable explanation. Artificial Intelligence, 96:451–465, 1997. model semantics. Artificial Intelligence, 138:181–234, 2002. [Lin and Zhou, 2007] Fangzhen Lin and Yi Zhou. From an- swer set logic programming to circumscription via logic of GK. In Proceedings of International Joint Conference on Artificial Intelligence (IJCAI), 2007. This volume.

IJCAI-07 379