Appendix: Proofs
Proposition 5 (Soundness)
KL1is sound: \(R \vdash _{\text {KL}_{1}} r\)implies\(R \models _{\text {KL}_{1}} r\). That is, \(deriv_{1}(R) \subseteq kl_{1}(R)\).
Proof
We show that if r ∈ deriv1(R) then, for all A, out1(R, A) = out1(R ∪{r}, A). The proof is by induction on the length of the derivation. The base case is trivial. For the inductive step, suppose r was derived in one step from r1 and r2. By the inductive hypothesis \(out_{1}(R \cup \{r_{1}, r_{2}\}, A) = out_{1}(R, A)\) for all A. We must show that, for all A:
$$ out_{1}(R \cup \{r_{1}, r_{2}, r\},\ A) = out_{1}(R \cup \{r_{1}, r_{2}\},\ A) $$
By Proposition 1, if X ∈ out1(R ∪{r1, r2, r}, A) then X = M(D, A) for some definite program D ∈def(R ∪{r1, r2, r}) and X⊧R ∪{r1, r2, r}.
Suppose r was derived from r1 and r2 using MUST-UNION. (The other cases are similar and are omittedFootnote 1). Let r1 =
, r2 =
, r =
∪ C. It can be checked that def({
∪ C}) = def({
,
}), and so:
$$ \mathit{def}(R \cup \{r_{1}, r_{2}, r\}) = \mathit{def}(R \cup \{r_{1}, r_{2}\}) $$
This establishes that \(out_{1}(R \cup \{r_{1}, r_{2}, r\},\ A) \subseteq out_{1}(R \cup \{r_{1}, r_{2}\},\ A)\) for all A. To show the other inclusion, that \(out_{1}(R \cup \{r_{1}, r_{2}\}\ A) \subseteq out_{1}(R \cup \{r_{1}, r_{2}, r\},\ A)\), it remains to show that if X⊧R ∪{r1, r2} then X⊧R ∪{r1, r2, r}. To see this, note that if X⊧
then X⊧
∪ C. □
Proposition 6 (Decomposition)
A set Rof rules semantically entails a rule rin KL2if and only if\(R \cup \mathcal {C} \cup aux(R)\)semantically entails rin KL1. That is, for all rule setsR:
$$ kl_{2}(R) = kl_{1}(R \cup \mathcal{C} \cup aux(R)) $$
Proof
\(kl_{2}(R) = kl_{1}(R \cup \mathcal {C} \cup aux(R))\) for all R is equivalent to saying that two rules sets R1 and R2 are strongly equivalent in KL2, kl2(R1) = kl2(R2), iff \(R_{1} \cup \mathcal {C} \cup aux(R_{1})\) and \(R_{2} \cup \mathcal {C} \cup aux(R_{2})\) are strongly equivalent in KL1, \(kl_{1}(R_{1} \cup \mathcal {C} \cup aux(R_{1})) = kl_{1}(R_{2} \cup \mathcal {C} \cup aux(R_{2}))\).
$$ \begin{array}{@{}rcl@{}} kl_{2}(R_{1}) &=& kl_{2}(R_{2}) \\ &&\text{iff}\quad out_{2}(R_{1},A) = out_{2}(R_{2},A) \quad \text{for all \textit{A}} \\ &&\text{iff}\quad out_{1}(R_{1} \cup \mathcal{C} \cup aux(R_{1}),\ A) = out_{1}(R_{2} \cup \mathcal{C} \cup aux(R_{2}),\ A) \quad \text{for all \textit{A}} \\ &&\text{iff}\quad kl_{1}(R_{1} \cup \mathcal{C} \cup aux(R_{1})) = kl_{1}(R_{2} \cup \mathcal{C} \cup aux(R_{2})) \end{array} $$
□
Proposition 7
Let Rbe a set of rules andAa (finite) set of literals:
Proof
We need to show that out1(R, A) = ∅ iff
for all sets \(A^{\prime }\) of literals.
For left-to-right: suppose out1(R, A) = ∅. First observe that
for all \(A^{\prime }\). (Because if
then X is computed from assumptions \(A^{\prime }\) using the non-constraint rules of R and X⊧R ∪
. Since X⊧R, that means \(X \in out_{1}(R,A^{\prime })\) also.)
It remains to show that
for all \(A^{\prime }\). Assume \(X \in out_{1}(R, A^{\prime })\); we shall show
. Since \(X \in out_{1}(R, A^{\prime })\), there is a D in def(R) such that \(X = \mathrm {M}(D, A^{\prime })\). We will prove, first, that D is one of the definite programs of R ∪
, and second, that X⊧R ∪
. First, since defr
= {∅}, D ∈def(R ∪
). So D, as well as being one of the definite programs of R, is also one of the definite programs of R ∪
. Second, since \(X \in out_{1}(R, A^{\prime })\), X⊧R. We just need to show X⊧
. Since out1(R, A) = ∅, \(A \nvDash R\) by Proposition 2. Now, since X⊧R, \(A \nsubseteq X\), hence X⊧
. These two claims entail, using Proposition 1, that
.
For the other direction: suppose out1(R, A)≠∅. We need to show that there is some \(A^{\prime }\) such that
. Take \(A^{\prime } = A\): clearly out1(R ∪
, A) = ∅. □
Proposition 8
Let Rbe a set of rules. If Xis a finite violating set of Rthen:
Proof
If X = ∅ (∅ is a violating set of R) then {a} and \(\{{\sim }\mspace {1mu} a\}\) are also violating sets of R, any atom a, and
. Clearly \(aux(R) \cup \mathcal {C}\) is strongly inconsistent in KL1 and so
(Proposition 4).
Suppose X≠∅. If X is a (finite) violating set of R then
. We show that
by showing that
.
Consider any rule X −{a}
, a ∈ X. Suppose, for contradiction, that
. Then \(X^{\prime } \supseteq X\) and
. In order to satisfy X −{a}
, \(X^{\prime }\) must contain \(\overline {a}\). But a ∈ X so \(X^{\prime }\) also contains a, and \(X^{\prime } \not \models \mathcal {C}\). □
Remark
The proof above shows that if ∅ is a violating set of R then \(aux(R) \cup \mathcal {C}\) is strongly inconsistent in KL1. We can also show that if \(R \cup \mathcal {C}\) is strongly inconsistent in KL1 then ∅ is a violating set of R. (Because then \(out_{1}(R \cup \mathcal {C},X) = \emptyset \) for every set X of literals including every maximal consistent set X, and ∅ is thus a violating set of R.) The converse however is not true. Consider
. ∅ is a violating set of R but R is not strongly inconsistent: out1(R, ∅) = {∅}≠∅.
Proposition 9
Let Rbe a set of rules and Xa finite set of literals.
Proof
One half follows from the preceding result: if X is a (finite) violating set of R then
; \(kl_{1}(\mathcal {C} \cup aux(R)) \subseteq kl_{1}(R \cup \mathcal {C} \cup aux(R))\) and so
∈ kl2(R). It remains to prove that if
∈ kl2(R) then X is a violating set of R. We will prove that if \(out_{1}(R \cup \mathcal {C} \cup aux(R),\ X) = \emptyset \) then X is a violating set of R.
Consider any definite logic program DR in the encoding def(R) of R. Let def(aux(R)) = {Daux} (all rules in aux(R) are
rules with singleton heads and so there is a single definite program encoding aux(R)). M(DR ∪ Daux, X)⊧aux(R) so it must be that \(\mathrm {M}(D_{R} \cup D_{aux},\ X) \not \models R \cup \mathcal {C}\), i.e., either M(DR ∪ Daux, X) is inconsistent or \(B \subseteq \mathrm {M}(D_{R} \cup D_{aux},\ X)\) for some rule
in R.
If X is inconsistent then X is a violating set of R. If X is consistent then consider any maximal consistent \(X_{m} \supseteq X\). \(\mathrm {M}(D_{R} \cup D_{aux},\ X_{m}) \supseteq \mathrm {M}(D_{R} \cup D_{aux},\ X)\), and since Xm is maximal, \(X_{m} \supseteq \mathrm {M}(D_{R} \cup D_{aux},\ X_{m}) \supseteq \mathrm {M}(D_{R} \cup D_{aux},\ X)\). If M(DR ∪ Daux, X) is inconsistent then so is Xm, and that cannot be. So \(B \subseteq \mathrm {M}(D_{R} \cup D_{aux},\ X)\) for some rule
in R. But then \(B \subseteq X_{m}\), and Xm⊮R. □
Proposition 11
Let Rbe a set of rules and Aa set of literals.
Proof
The result follows from the previous minimality result. It is enough to consider a singleton set of assumptions A = {a}. The general result follows by repeated application.
If
is strongly inconsistent the result holds trivially. Suppose it is not strongly inconsistent. We need to show that:
We will show that
.
Clearly \(\{\overline {a}\}\) and all violating sets of R are violating sets of
. Further, right
. So
. Now (assuming
is not strongly inconsistent) \(\{\overline {a}\}\) is a minimal consistent violating set of
. If X is a minimal consistent violating set of R and \(\overline {a} \in X\) then X is not a minimal consistent violating set of
; if \(\overline {a} \notin X\) then X is a minimal consistent violating set of
. So auxm(R ∪
) = auxm(R) ∪
. □
Proposition 15 (Soundness of KL2)
For all setsRof rules:
$$ deriv_{2}(R) \subseteq kl_{2}(R) $$
Proof
We need to show soundness of the inference rules of KL1, \({\sim }\mspace {1mu}\)-LEFT and \({\sim }\mspace {1mu}\)-RIGHT with respect to semantic entailment in KL2. Since \(kl_{2}(R) = kl_{1}(R \cup \mathcal {C} \cup aux(R))\) (Proposition 6) and KL1 is sound with respect to kl1, the soundness of KL1 inference rules is immediate. Soundness of \({\sim }\mspace {1mu}\)-LEFT is just \(\mathcal {C} \subseteq kl_{2}(R)\) which also follows trivially.
It remains to show that \({\sim }\mspace {1mu}\)-RIGHT is sound: if r ∈ right(R) then \(R \models _{\text {KL}_{2}} r\), or more generally, that \(right(R) \subseteq kl_{2}(R)\). We want to show:
$$ right(R) \subseteq kl_{1}(R \cup \mathcal{C} \cup aux(R)) $$
We will show that \(right(R) \subseteq aux(R)\) (which implies the above). In full: if r ∈ right(R) then r is a rule of the form
where
is a rule in R. In that case B ∪{c} is a (not necessarily minimal or consistent) violating set of R, and aux(R) contains the rule
. □
Proposition 16 (Conditional completeness of KL2)
If KL1is complete with respect to out1then KL2is complete with respect to out2. That is: if, for all sets Rof rules\(kl_{1}(R) \subseteq deriv_{1}(R)\)then, for all sets Rof rules\(kl_{2}(R) \subseteq deriv_{2}(R)\).
Proof
$$ \begin{array}{@{}rcl@{}} r \in kl_{2}(R) \ &\Rightarrow&\ r \in kl_{1}(R \cup \mathcal{C} \cup aux(R)) \\ &\Rightarrow&\ r \in kl_{1}(R \cup \mathcal{C} \cup aux_{e}(R)) \quad\qquad\qquad\qquad\qquad\hfill(\text{Proposition~13}) \\ &\Rightarrow&\ r \in deriv_{1}(R \cup \mathcal{C} \cup aux_{e}(R)) \qquad\qquad\quad\hfil(\text{completeness of KL}_{1}) \\ &\Rightarrow&\ r \in deriv_{2}(R) \end{array} $$
The final step is because all the inference rules used in the construction of auxe(R) in Proposition 14 are inference rules of KL2. □
Proposition 17 (Decomposition of KL2)
If KL
1
is complete with respect to o
u
t
1
then
$$ deriv_{2}(R) = deriv_{1}(R \cup \mathcal{C} \cup aux_{e}(R)) $$
Proof
Right-in-left inclusion is noted in the proof of Proposition 16. The other inclusion is similar:
$$ \begin{array}{@{}rcl@{}} r \in deriv_{2}(R) \ &\Rightarrow&\ r \in kl_{2}(R)\qquad\qquad\qquad\qquad\qquad\qquad \quad\hfil(\text{soundness of KL}_{2}) \\ &\Rightarrow&\ r \in kl_{1}(R \cup \mathcal{C} \cup aux(R)) \\ &\Rightarrow&\ r \in kl_{1}(R \cup \mathcal{C} \cup aux_{e}(R))\qquad\qquad\qquad\qquad \hfil(\text{Proposition~13}) \\ &\Rightarrow&\ r \in deriv_{1}(R \cup \mathcal{C} \cup aux(R))\qquad\qquad \hfil(\text{completeness of KL}_{1}) \end{array} $$
□
Proposition 19
LetRbe a set of rules and Aa set of assumptions, both containing no negative literals. Then:
$$ out_{2}(R,A)^{+} = out_{1}(R,A) $$
Proof
We can see this again by looking at the rules in aux(R): if R contains no negative literals, all rules in aux(R) are of the form
where c and all of B are atoms. These rules have no effect on the outcomes computed from R except possibly to add negative literals. This is clear if we look at the translation to definite logic programs: every definite program D in the encoding \(\mathit {def}(R \cup \mathcal {C} \cup aux(R))\) has the form DR ∪ Daux where DR ∈def(R) and def(aux(R)) = {Daux} (all rules in aux(R) are
rules with singleton heads and so there is a single definite program encoding aux(R)). Moreover, since none of the heads of clauses in Daux appear in DR the least model M(DR ∪ Daux, A) = M(DR,M(Daux, A)) (indeed that is true whether the set A of assumptions contains negative literals or not). If A contains no negative literals, then this least model also satisfies the constraints \(\mathcal {C}\). □