Journal of Artificial Intelligence Research 31 (2008) 205–216 Submitted 10/07; published 01/08 Sound and Complete Inference Rules for SE-Consequence Ka-Shu Wong KSWONG @ CSE . UNSW. EDU . AU University of New South Wales and National ICT Australia Sydney, NSW 2052, Australia Abstract The notion of strong equivalence on logic programs with answer set semantics gives rise to a consequence relation on logic program rules, called SE-consequence. We present a sound and complete set of inference rules for SE-consequence on disjunctive logic programs. 1. Introduction In recent years there has been much research on various notions of equivalence between two logic programs. In particular, the notion of strong equivalence of logic programs with answer set semantics (Lifschitz, Pearce, & Valverde, 2001; Turner, 2001, 2003; Cabalar, 2002; Lin, 2002) has received much attention. We say that two logic programs P and Q are strongly equivalent iff for any set of rules R, P ∪ R and Q ∪ R have the same answer sets. Recent work in this area (Eiter, Fink, Tompits, & Woltran, 2004; Turner, 2003; Osorio, Navarro, & Arrazola, 2001) has focused on the simplification of logic programs under strong equivalence. This has resulted in a number of logic program transformation rules which preserve strong equivalence. In these transformations, logic program rules are identified which can be removed while maintaining strong equivalence with the original program. In this paper we look at a different but related aspect of strong equivalence. The notion of strong equivalence on logic programs gives rise to a consequence relation |=s on logic program rules, called SE-consequence (Eiter et al., 2004), which can be defined by saying that a rule r is a consequence of a logic program P iff P and P ∪ r are strongly equivalent1 . This consequence relation is useful in testing for strong equivalence, as well as in identifying redundant rules for logic program simplification. In this paper, we present a set of inference rules on logic program rules and show that they are sound and complete for SE-consequence. Our set of inference rules consists of adaptations of several well-known logic program simplification rules, together with a new rule which we call SHYP. The main contribution of this paper is the new inference rule S-HYP and a completeness result. The completeness proof makes use of the construction used in the reduction of strong equivalence testing to classical logic by Lin (2002), and applies to it a restricted form of resolution called lock resolution by Boyer (1971). 1. Eiter et al. (2004) uses a different definition of SE-consequence based on Turner’s SE-models (Turner, 2001, 2003). The equivalence of the two definitions is proved in Section 3. c 2008 AI Access Foundation. All rights reserved. W ONG 2. Definitions We deal with propositional disjunctive logic programs with negation-as-failure, where each rule is of the form a1 ; a2 ; · · · ; ak ← b1 , b2 , · · · , bm , not c1 , not c2 , · · · , not cn . where a1 , · · · , ak , b1 , · · · , bm and c1 , · · · , cn are from a set A of atoms, We assume that the set of atoms A is fixed. Given a rule r in this form, we denote H(r) = {a1 , · · · , ak } (head of r), B + (r) = {b1 , · · · , bm } (positive part of r), and B − (r) = {c1 , · · · , cn } (negative part of r). We ignore the order of atoms within a rule; therefore, a rule can be considered as a triple of atom sets. As an abbreviation, when we include atom sets in a rule, it means that the atoms in the set are in the corresponding part of the rule. In particular, if X = {x1 , · · · , xk }, then not X in the body of a rule is an abbreviation for not x1 , · · · , not xk . Applied to the rule r from above, if A = H(r), B = B + (r) and C = B − (r), then the rule can be abbreviated as A ← B, not C. For a set X of atoms and a logic program P , we use the notation X |= P to mean that X is a model of P in the classical sense: For each r ∈ P , if B + (r) ⊆ X and B − (r) ∩ X = ∅, then H(r) ∩ X is non-empty. We say that X is a minimal model of P if X is minimal by set inclusion among all the models of P , i.e. X |= P and there is no X such that X ⊂ X and X |= P . The Gelfond-Lifschitz reduct (1988) P X of a program P with respect to a set of atoms X is defined by P X = {H(r) ← B + (r) | r ∈ P and X ∩ B − (r) = ∅}. We say that X is an answer set of P if X is a minimal model of P X . 3. Strong Equivalence The notion of strong equivalence (Lifschitz et al., 2001) describes the property that two programs remain equivalent regardless of what additional rules are added, and is defined as follows: Definition 1. Logic programs P and Q are strongly equivalent, iff for all sets R of rules, the programs P ∪ R and Q ∪ R have the same answer sets. Lifschitz et al. (2001) showed that strong equivalence can be reduced to equivalence in the logic of here-and-there. Based on this result, Turner (2003) gave the following definition of SE-models, which characterises strong equivalence in the sense that two programs are strongly equivalent iff they have the same SE-models: Definition 2. Let P be a logic program, and let X, Y ⊆ A be sets of atoms. We say the pair (X, Y ) is a SE-model of P , written (X, Y ) |= P , if X ⊆ Y , Y |= P and X |= P Y . For a set M of SE-models, we write M |= P to mean (X, Y ) |= P for all (X, Y ) ∈ M . Let Ms (P ) denote the set of all SE-models of P . SE-models have the property that a pair (X, Y ) is a SE-model of P iff it is a SE-model of every rule r ∈ P . This implies Ms (P ∪ Q) = Ms (P ) ∩ Ms (Q). The notion of strong equivalence gives rise to a consequence relation on logic program rules, called SE-consequence and denoted by |=s . SE-consequence is defined by: 206 S OUND AND C OMPLETE I NFERENCE RULES FOR SE-C ONSEQUENCE Definition 3. Let P, Q be logic programs, and r be a logic program rule. We say P |=s r iff Ms (P ) |= r, i.e. every (X, Y ) ∈ Ms (P ) is a SE-model of r. Furthermore, we write P |=s Q iff P |=s r for every r ∈ Q. There is an equivalent definition of SE-consequence which does not make use of SE-models: Proposition 1. Let P be a logic program and r be a logic program rule. Then P |=s r iff P and P ∪ {r} are strongly equivalent. Proof. P and P ∪ {r} are strongly equivalent iff Ms (P ) = Ms (P ∪ {r}) (= Ms (P ) ∩ Ms (r)). This holds iff Ms (P ) ⊆ Ms (r), i.e. every (X, Y ) ∈ Ms (P ) is a SE-model of r. The relation |=s has the properties of a consequence relation: Proposition 2. Let P, Q be logic programs, and r be a logic program rule. • If r ∈ P , then P |=s r • If P ⊆ Q and P |=s r then Q |=s r • If P |=s r and Q |=s P then Q |=s r The proofs follow easily from the fact that P |=s Q iff Ms (P ) ⊆ Ms (Q). There exist binary resolution-style calculi for the logic of here-and-there (also known as Gödel’s 3-valued logic). However, Example 1 suggests that this cannot be applied to SE-consequence, seemingly because it takes one outside the logic fragment corresponding to disjunctive logic programs. This is supported by the fact that the construction in Section 6.1 may produce clauses which do not correspond to logic program rules. This is currently being investigated. 4. Inference Rules for Strong Equivalence The consequence relation s is defined by the following rules of inference: (TAUT) x ← x. (NONMIN) (WGPPE) (CONTRA) ← x, not x. A ← B, not C. A; X ← B, Y, not C, not Z. A1 ← B1 , x, not C1 . A2 ; x ← B2 , not C2 . A1 ; A2 ← B1 , B2 , not C1 , not C2 . A1 ← B1 , not x1 , not C1 . .. . An ← Bn , not xn , not Cn . A ← x1 , · · · , xn , not C. (S-HYP) A1 ; · · · ; An ← B1 , · · · , Bn , not C1 , · · · , not Cn , not A, not C. 207 W ONG Many of these rules are well-known: tautological rules (TAUT), contradiction (CONTRA), nonminimal rules (NONMIN), and weak partial evaluation (WGPPE) (also called partial deduction, Sakama & Seki, 1997). These have been shown to be strong equivalence preserving (Brass & Dix, 1999; Osorio et al., 2001; Eiter et al., 2004). The new rule S-HYP can be thought of as a form of hyper-resolution. To our knowledge it has not been considered before in the literature. Instead of S-HYP, one might expect a more general rule S-HYP+ which allows additional positive atoms B in the final rule: A1 ← B1 , not x1 , not C1 . .. . An ← Bn , not xn , not Cn . A ← x1 , · · · , xn , B, not C. (S-HYP+) A1 ; · · · ; An ← B, B1 , · · · , Bn , not C1 , · · · , not Cn , not A, not C. However, it can be shown that replacing S-HYP with S-HYP+ does not change the consequence relation: Proposition 3. Let be a consequence relation satisfying CONTRA. Then S-HYP and S-HYP+ are interchangeable. Proof. Since S-HYP+ is a more general form of S-HYP, it suffices to show that S-HYP+ can be simulated using S-HYP and CONTRA. Suppose we have A1 ← B1 , not x1 , not C1 . .. . An ← Bn , not xn , not Cn . A ← x1 , · · · , xn , b1 , · · · , bk , not C. For each bi , CONTRA gives us ← bi , not bi . By using S-HYP on these rules, plus the above, we get A1 ; · · · ; An ← B1 , · · · , Bn , b1 , · · · , bk , not C1 , · · · , not Cn , not A, not C. This is the result of applying S-HYP+ to our initial set of rules. Example 1. We now consider the possibility of using only binary inference rules on the logic program P : r1 : a ← not x. r2 : a ← not y. ← x, y. r3 : The following rule is an SE-consequence of P , and can be derived using S-HYP on r1 , r2 and r3 : s: a←. Now suppose we restrict ourselves to binary inference rules by replacing S-HYP with the binary variant of S-HYP+. Applying S-HYP+ to r1 and r3 gives: r4 : a ← y. 208 S OUND AND C OMPLETE I NFERENCE RULES FOR SE-C ONSEQUENCE and then using S-HYP+ on r2 and r4 gives: t: a ← not a. We observe that t is weaker than s. This suggests that it may not be possible to derive s using only binary inference rules. However, it is still an open question as to whether n-ary rules are indeed required. Observe that the rule CONTRA can be replaced by s-implication (S-IMP) (Wang & Zhou, 2005): Proposition 4. Let be a consequence relation satisfying TAUT and WGPPE. Then CONTRA can be replaced by the following inference rule: (S-IMP) A; X ← B, not C. A ← B, not C, not X. Proof. (S-IMP ⇒ CONTRA) The rule ← x, not x. can be formed by applying TAUT followed by S-IMP. (CONTRA ⇒ S-IMP) Suppose we have the rule A; x ← B, not C. By applying CONTRA to get ← x, not x. followed by WGPPE on these two rules, we get A ← B, not C, not x. By repeating these steps we can derive new rules by moving any set of atoms from the head to the negative part of the rule. We note that S-IMP is a special case of the solution of the 1-1-0 problem of Lin and Chen (2007). In addition, WGPPE as well as the binary variant of S-HYP+ are contained in the solution to Lin and Chen’s 2-1-0 problem. It can be shown that the inference rules presented above are sound and complete for SEconsequence: Theorem 1. P |=s r iff P s r. Proof (Soundness). Here we prove soundness only for the inference rule S-HYP, as the soundness of the other rules are already known. The proof proceeds by contradiction. Assume the rule is not sound. Then there is a program P A1 ← B1 , not x1 , not C1 . .. . An ← Bn , not xn , not Cn . A ← x1 , · · · , xn , not C. and a rule r A1 ; · · · ; An ← B1 , · · · , Bn , not C1 , · · · , not Cn , not A, not C. 209 W ONG for which P s r but P |=s r. This means Ms (P ) ⊆ Ms (r), so P has a SE-model (X, Y ) which is not a SE-model of r. (X, Y ) not being a SE-model of r means either Y |= r or X |= rY . We can exclude the first case since it is clear that r is a classical consequence of P . Therefore assume X |= rY . For each 1 ≤ i ≤ n we have Ai ∩X = ∅, Bi ⊆ X, and Ci ∩Y = ∅. Furthermore we have A∩Y = C∩Y = ∅. But (X, Y ) is a SE-model of P , hence X |= P Y . For each 1 ≤ i ≤ n, we have the following rule in P : Ai ← Bi , not xi , not Ci . Since Ai ∩ X = ∅, the body must not hold, or the rule must be eliminated in the reduct. But we know Bi ⊆ X and Ci ∩ Y = ∅. Therefore we must have xi ∈ Y so that the rule is eliminated in the reduct. We have A ∩ Y = C ∩ Y = ∅ and x1 , · · · , xn ∈ Y , so Y is not a classical model of A ← x1 , · · · , xn , not C. and hence Y |= P , which contradicts (X, Y ) being a SE-model of P . 5. Some Background for the Completeness Proof In this section we introduce two results which will be used in the completeness proof. 5.1 Lin’s Construction Lin (2002) presented a method of reducing strong equivalence to equivalence in classical logic. Given a logic program, this construction produces a set of clauses such that two logic programs are strongly equivalent iff the two sets of clauses are equivalent in classical logic. Let {x1 , · · · , xn } be the set of atoms. In the construction, each atom xi is represented by two propositional letters xi and xi . The logic program P consists of a set of rules of the following form: a1 ; a2 ; · · · ; ak ← b1 , b2 , · · · , bm , not c1 , not c2 , · · · , not cn . For each such rule r, we construct two clauses γ(r) and γ (r): γ(r) := a1 ∨ · · · ∨ ak ∨ ¬b1 ∨ · · · ∨ ¬bm ∨ c1 ∨ · · · ∨ cn γ (r) := a1 ∨ · · · ∨ ak ∨ ¬b1 ∨ · · · ∨ ¬bm ∨ c1 ∨ · · · ∨ cn Let Γ(P ) := {γ(r) | r ∈ P } and Γ (P ) := {γ (r) | r ∈ P }. Furthermore for each atom xi we add the clause ¬xi ∨ xi . Let Δ denote the set of all such clauses. Lin’s result showed that P and Q are strongly equivalent iff (Γ(P ) ∪ Γ (P ) ∪ Δ) ≡ (Γ(Q) ∪ Γ (Q) ∪ Δ) An immediate corollary of this result is: Proposition 5. P |=s r iff (Γ(P ) ∪ Γ (P ) ∪ Δ) |= γ(r) ∧ γ (r) Observe that given a clause α, we can find a corresponding rule r such that γ(r) = α if and only if there are no literals of the form ¬x in α. 210 S OUND AND C OMPLETE I NFERENCE RULES FOR SE-C ONSEQUENCE 5.2 Boyer’s Lock Resolution Resolution is the following inference rule: given two clauses x ∨ C1 and ¬x ∨ C2 , derive the clause C1 ∨ C2 . We say that x and ¬x are the literals resolved on, and the clause C1 ∨ C2 is the resolvent. It is well-known that resolution is refutation-complete, that is, if a set of clauses is unsatisfiable, then the empty clause can be derived using resolution. Definition 4. A deduction of the clause C from a set S of clauses is a sequence of clauses C1 , · · · , Cn such that Cn = C and each Ci is either a clause in S or a resolvent of clauses preceding Ci . If such a deduction exists, we say that C can be derived from S. Lock resolution is a restricted form of resolution introduced by Boyer (1971). A numeric label is given to each literal in each clause. Resolution is permitted only on literals with the lowest valued label in their clause. Note that in a clause there can be more than one literal with the same label: if there are many literals with the lowest valued label, then resolution on any of them is allowed. Literals in the resolvent inherit their labels from the parent clauses. If a literal in the resolvent has two possible labels, the lower value is used. A deduction which follows these restrictions is called a lock deduction. Example 2. Consider the following clauses: C1 : a(1) ∨ b(2) C2 : ¬a(2) ∨ b(3) C3 : ¬b(1) ∨ c(2) We can resolve C1 and C2 on a(1) and ¬a(2) to form the following clause: b(2) Note that b is labelled 2 in C1 and 3 in C2 , so the lower value is used. However we cannot resolve C2 and C3 on b(3) and ¬b(1) since 3 is not the minimum label in C2 . Boyer showed that lock resolution is refutation-complete. 6. The Completeness Proof Proof of Theorem 1 (Completeness). To prove completeness, we need to show that P |=s r implies P s r. We do this by showing the existence of a lock deduction of γ(r ) where r is a subset of r (in the sense that H(r ) ⊆ H(r), B + (r ) ⊆ B + (r), and B − (r ) ⊆ B − (r)) from which we can construct a deduction of r from P using the inference rules. 6.1 Lock Deduction of γ(r ) from Γ(P ) ∪ Γ (P ) ∪ Δ From Proposition 5 we know that γ(r) is a logical consequence of (Γ(P ) ∪ Γ (P ) ∪ Δ). Ideally, we want a lock deduction of γ(r) from Γ(P ) ∪ Γ (P ) ∪ Δ. However, this may not be possible as resolution is only refutation-complete. But in fact we can show that a lock deduction of γ(r ) does exist for some r , provided that r does not contain the same atom in its head and positive body. We do this by first obtaining a lock deduction D of the empty clause from Γ(P ) ∪ Γ (P ) ∪ Δ and the negation of γ(r). We then modify this to form the deduction D of γ(r ) from Γ(P ) ∪ Γ (P ) ∪ Δ, in such a way that the restrictions of lock deduction are preserved. 211 W ONG We label the literals in Γ(P ) ∪ Γ (P ) ∪ Δ with either 1 or 0: if the literal is of the form ¬x , we give it the label 0, otherwise we give it the label 1. For example, γ(a ← b, not c) becomes a(1) ∨ ¬b(1) ∨ c(1) and γ (a ← b, not c) becomes a(1) ∨ ¬b(0) ∨ c(1) Let r be the rule a1 ; a2 ; · · · ; ak ← b1 , b2 , · · · , bm , not c1 , not c2 , · · · , not cn . Then γ(r) is a1 ∨ · · · ∨ ak ∨ ¬b1 ∨ · · · ∨ ¬bm ∨ c1 ∨ · · · ∨ cn Negating γ(r) gives us the following set of clauses, which we will call N (r): ¬a1 , · · · , ¬ak , b1 , · · · , bm , ¬c1 , · · · , ¬cn We label these clauses in the same way as above. Note that γ(r) contain only literals with label 1, while N (r) is a set of single-literal clauses, where some of them may also have label 0. Since γ(r) is a consequence of (Γ(P ) ∪ Γ (P ) ∪ Δ), adding the negation of γ(r) makes it unsatisfiable. Therefore there is a lock deduction D of the empty clause from Γ(P ) ∪ Γ (P ) ∪ Δ plus N (r). In the next step, we construct a new lock deduction D which does not contain any clauses from N (r). Let C1 , · · · , Cn be the clauses in D . We construct inductively the clauses C1 , · · · , Cn : • Ci is not a resolvent. In this case we set Ci := Ci . Note that if Ci is from N (r), it will be removed in the next step of the construction. • Ci is a resolvent of Cj and Ck on the literals x and ¬x, where neither Cj or Ck is from N (r). We set Ci to be the resolvent of Cj and Ck on x and ¬x. • Ci is a resolvent of Cj and Ck , one of which is from N (r). Without loss of generality, assume Cj is from N (r). In this case we set Ci := Ck . To complete the construction, we remove every Ci which is from N (r) and is not a resolvent. The remaining clauses form the deduction D. Note that it is not possible for Ci to be a resolvent of two clauses from N (r). This is because r does not contain the same atom in both its head and positive body, and hence N (r) cannot contain a pair of complementary literals. Note also that the final clause Cn is never removed, since Cn is the empty clause, which is not in N (r). Example 3. Suppose P is the program consisting of the single rule a ← b. and r is the rule ← b, not a. Then Γ(P ) ∪ Γ (P ) ∪ Δ consists of the clauses a(1) ∨ ¬b(1) a(1) ∨ ¬b(0) ¬a(1) ∨ a(1) 212 ¬b(1) ∨ b(1) S OUND AND C OMPLETE I NFERENCE RULES FOR SE-C ONSEQUENCE γ(r) is ¬b(1) ∨ a(1) (after labelling). The negation of γ(r), denoted N (r), consists of the clauses b(1) ¬a(0) Here is an example of a lock deduction D for the empty clause from Γ(P ) ∪ Γ (P ) ∪ Δ ∪ N (r): (1) (2) (3) (4) (5) (6) (7) b(1) ¬b(1) ∨ b(1) b(1) a(1) ∨ ¬b(0) a(1) ¬a(0) ⊥ from N (r) from Δ resolvent of (1), (2) from Γ (P ) resolvent of (3), (4) from N(r) resolvent of (5), (6) The construction produces the following sequence of clauses: (1)∗ (2) (3) (4) (5) (6)∗ (7) b(1) ¬b(1) ∨ b(1) ¬b(1) ∨ b(1) a(1) ∨ ¬b(0) a(1) ∨ ¬b(1) ¬a(0) a(1) ∨ ¬b(1) from Δ from Δ—copy of (2) from Γ (P ) resolvent of (3), (4) resolvent of (3), (4)—copy of (5) The clauses marked with ∗ are removed, and the resulting deduction D is formed by the remaining clauses. By construction, D is a deduction. We need to show that D satisfies the restrictions of lock deduction. In addition, we show that each clause Ci in D consists of Ci with zero or more literals from γ(r) added, i.e. Ci = Ci ∨ αi where αi is a disjunction of zero or more literals from γ(r). The proof is by induction. • Ci is not a resolvent. In this case Ci is the same as Ci . • Ci is a resolvent of clauses Cj and Ck on the literals x and ¬x, with neither being from N (r). Then Ci is the resolvent of Cj and Ck on the literals x and ¬x. By induction, Cj = Cj ∨ αj and Ck = Ck ∨ αk . If x does not occur in αj and αk , then Ci = Ci ∨ αj ∨ αk . Otherwise Ci = Ci ∨ αi where αi contains the literals in αj ∨ αk except possibly for x or ¬x. In both cases, Ci consists of Ci plus zero or more literals from γ(r). This resolution step satisfies the restriction of lock deduction because the added literals are all labelled 1, which is the highest label value that we use. Thus if x has the lowest label value in Cj and ¬x in Ck , the same must hold for x in Cj and ¬x in Ck . • Ci is a resolvent of clauses Cj and Ck , and Cj is from N (r). Since each clause in N (r) is the negation of a literal found in γ(r) (note they might carry different labels), there must be some literal α in γ(r) such that Cj = ¬α and Ck = Ci ∨ α. The construction of Ci gives us Ci = Ck , and by induction Ck = Ck ∨ αk . Therefore Ci = Ci ∨ α ∨ αk . 213 W ONG We have shown that D is a lock deduction, and that each clause Ci in D consists of Ci with zero or more literals from γ(r) added. Recall that the final clause in D is the empty clause. Therefore the final clause in D is a clause which contains some subset of the literals of γ(r), and hence D is a lock deduction for some γ(r ) where r is a subset of r. 6.2 Existence of a Deduction of r from P Suppose we have a lock deduction of γ(r) from Γ(P ) ∪ Γ (P ) ∪ Δ with the labelling described above. We prove by induction that P s r. BASE C ASE γ(r) is either in Γ(P ) or Γ (P ) or Δ. • γ(r) is in Γ(P ). Then r ∈ P , therefore P s r. • γ(r) is in Γ (P ). This means γ(r) = γ (s) for some s ∈ P . B + (s) must be empty since there can be no literals of the form ¬x in γ(r). Hence we can write s as a1 ; · · · ; ak ← not c1 , · · · not cn . and r is ← not a1 , · · · , not ak , not c1 , · · · not cn . Since s ← ai , not ai , we can “move” atoms from the head to the negative part using WGPPE. Therefore P s r. • γ(r) is in Δ. In this case r is ← x, not x. for some atom x, and s r by applying CONTRA. I NDUCTION S TEP γ(r) is the resolvent of clauses α and β. The literal resolved on is either a and ¬a or a and ¬a for some atom a. Assume without loss of generality that the positive literal is in α and the negative literal is in β. • a in α and ¬a in β is the literal resolved on. Since there is no literal of the form ¬x in the resolvent, there cannot be any literal of that form in α or β. Therefore we can find logic program rules s and t such that α = γ(s) and β = γ(t). The inference rule WGPPE gives us s, t s r and P s s, t by induction. Therefore P s r. • a in α and ¬a in β is the literal resolved on. Because ¬a is in β, there is no logic program rule t such that β = γ(t). However, we can find a logic program rule s such that α = γ(s), because of the lock resolution property: a is labelled 1 so there can be no literal of the form ¬x , which is labelled 0, in α. 214 S OUND AND C OMPLETE I NFERENCE RULES FOR SE-C ONSEQUENCE If β is a resolvent, then the literal resolved on must be of the form x and ¬x , with ¬a being from the parent clause that contains ¬x . Again, this is because of the lock resolution property: the presence of ¬a in that clause prevents resolution on any literal that is not labelled 0. Let β2 be the parent clause containing ¬x , and let α2 be the other parent clause. Now α2 only contains literals labelled 1, so we can find a logic program rule s2 such that α2 = γ(s2 ). By repeating this, we form a chain of resolvents α1 (= α), α2 , · · · , αn and β1 (= β), β2 , · · · , βn . Each βi is the resolvent of αi+1 and βi+1 on the literal ai in αi+1 and ¬ai in βi+1 . There is a logic program rule si corresponding to each αi such that γ(si ) = αi . We extend this chain as far as possible, until βn is not a resolvent. βn contains literals of the form ¬x , so it can only come from Γ (P ). Therefore there is a t ∈ P such that γ (t) = βn . Observe that t is the rule X ← a1 , · · · , an , not Y. for some sets of atoms X, Y . There cannot be additional positive atoms in the body, because they correspond to literals of the form ¬x in βn , and there are no such literals remaining the result of this chain of resolution steps, which is γ(r). The inference rule S-HYP gives us s1 , · · · , sn , t s r Now P s s1 , · · · , sn by induction, and P s t because t ∈ P . Therefore P s r. 6.3 The Final Step We have shown that if P |=s r, then we can find r which is a “subset” of r such that P s r , apart from some special cases. The final step of the proof is given by applying NONMIN, which allows us the deduction r s r when r is a “subset” of r. The special case where r contains the same atom in its head and positive body is handled by observing that r can be produced using the rules TAUT followed by NONMIN, which shows s r. Therefore P |=s r implies P s r. 7. Conclusion In this paper we presented a sound and complete set of inference rules for SE-consequence on disjunctive logic programs, consisting of a number of well-known logic program transformation rules, TAUT, CONTRA, NONMIN, and WGPPE, plus a new rule which we call S-HYP. We proved that this set of rules is complete for SE-consequence by using a reduction of logic programs to propositional clauses on which we apply a restricted form of resolution. This result leads to a syntactic definition of the closure operator for logic programs under strong equivalence. Future work involves applying this to construct logic program update operators that respect strong equivalence, as well as finding similar results for other notions of equivalence on logic programs. Acknowledgments We thank the anonymous reviewers for their many helpful suggestions which we used in revising the paper. This work was partially supported by a scholarship from National ICT Australia. NICTA 215 W ONG is funded by the Australian Government’s Backing Australia’s Ability initiative, in part through the Australian Research Council. References Boyer, R. (1971). Locking: A Restriction of Resolution. Ph.D. thesis, University of Texas, Austin. Brass, S., & Dix, J. (1999). Semantics of (disjunctive) logic programs based on partial evaluation. Journal of Logic Programming, 38(3), 167–213. Cabalar, P. (2002). A three-valued characterization for strong equivalence of logic programs. In Proceedings of the 18th National Conference on Artificial Intelligence (AAAI-2002), pp. 106– 111. Eiter, T., Fink, M., Tompits, H., & Woltran, S. (2004). Simplifying logic programs under uniform and strong equivalence. In Proceedings of the 7th International Conference on Logic Programming and Nonmonotonic Reasoning, pp. 87–99. Gelfond, M., & Lifschitz, V. (1988). The stable model semantics for logic programming. In Proceedings of the 5th International Conference on Logic Programming, pp. 1070–1080. Lifschitz, V., Pearce, D., & Valverde, A. (2001). Strongly equivalent logic programs. Computational Logic, 2(4), 526–541. Lin, F. (2002). Reducing strong equivalence of logic programs to entailment in classical propositional logic. In Proceedings of the 8th International Conference on Principles of Knowledge Representation and Reasoning, pp. 170–176. Lin, F., & Chen, Y. (2007). Discovering classes of strongly equivalent logic programs. Journal of Artificial Intelligence Research, 28, 431–451. Osorio, M., Navarro, J. A., & Arrazola, J. (2001). Equivalence in answer set programming. In Proceedings of the 11th International Workshop on Logic Based Program Synthesis and Transformation, pp. 57–75. Sakama, C., & Seki, H. (1997). Partial deduction in disjunctive logic programming. Journal of Logic Programming, 32(3), 229–245. Turner, H. (2001). Strong equivalence for logic programs and default theories (made easy). In Proceedings of the 6th International Conference on Logic Programming and Nonmonotonic Reasoning, pp. 81–92. Turner, H. (2003). Strong equivalence made easy: nested expressions and weight constraints. Theory and Practice of Logic Programming, 3(4-5), 609–622. Wang, K., & Zhou, L. (2005). Comparisons and computation of well-founded semantics for disjunctive logic programs. ACM Transactions on Computational Logic, 6(2), 295–327. 216