Stable model semantics ( SM) was introduced by Gelfond and Lifschitz [18] as a tool to provide a semantics for logic programs with negation. their original proposal is now one of the standard semantics for logic programs. We now recall the definition of propositional stable model.
Let be a propositional, general logic program. Let be a subset (i.e., an interpretation) of the atoms of . Let be the program obtained from in the following way: if a clause of contains in its body a negated atom such that then is deleted; if a body of a clause contains a negated atom such that then is deleted from the body of the clause. If is a least Herbrand model of then is a stable model of .
For the formalism SM, we consider the program as the knowledge base. We write to denote that query is implied by a logic program under Stable Model semantics.
In order to prove our result, we need to define the kernel of a graph.
We can now state the theorem on the compilability class of inference in the stable model semantics, and the corresponding theorem compactness class.
Proof. Membership in the class follows from the fact that the problem is coNP-complete [40]. For the hardness, we adapt the proof of Marek and Truszczynski [40] showing that deciding whether a query is true in all stable models is coNP-hard.
Let KERNEL be the language such that is a graph with at least one kernel. Let , and observe that cannot have more vertices than its size .
We show that for each , there exists a logic program such that for every graph with at most vertices, there exists a query such that has a kernel iff .
Let the alphabet of be composed by the following propositional letters: .
The program is defined as:
As a result, this is a reduction. We now show that this reduction is correct, i.e., KERNEL ( has a kernel) iff .
If-part. Suppose
. Then, there
exists a stable model of such that
.
Observe that is equivalent to the conjunction of all
such that , and all such that
. Simplifying with we obtain
the clauses:
Let , . Now is a vertex cover of G, since for each edge , should satisfy the corresponding clause (1) , hence either , or . Moreover, for each in , the atom is in , and since is a stable model, there exists a clause such that , that is, . Therefore, is a kernel of .
Only-if part. Suppose has a kernel , and let
. Let be the interpretation