Unformatted text preview: Relationships Among Semantics If a program + EDB has a strati ed or perfect
locally strati ed model, then that is the unique
A program + EDB can have a unique stable
model even if there is no perfect model. Example
p :- NOT q
q :- NOT p
p :- NOT p Only fpg is a stable model.
Note that without the 3rd rule, both fpg and
fqg are stable. Why Strati ed Models are Stable Intuition to prove strati ed model M is stable:
Divide M into strata M0 ; M1; : : : M0 includes
LFP of stratum 0 does not involve negation,
so its instantiated rules survive to the
inference step of the GL transform, and
exactly M0 is inferred.
Thus, M0 , and nothing else for stratum 0, is
in GLM .
Consider what happens computing the
strati ed model at stratum 1.
3 Negated subgoals are resolved according
to M0 .
3 Instantiated rules with a negated member
of M0 e ectively disappear, and those
with a negated nonmember of M0
e ectively lose that subgoal.
Thus, the LFP for stratum 1 looks just like
the GL transform for the relevant instantiated
rules. Example Let's revisit the locally strati ed Win" example:
whose relevant instantiated rules were:
1 r1: win1 :- move1,2 & NOT win2
r2: win1 :- move1,3 & NOT win3
r3: win2 :- move2,3 & NOT win3
Recall stratum 0 = win3 + EDB facts;
stratum 1 = win2; stratum 2 = win1.
Also recall: the strati ed model is
fwin1; win2g + the EDB; we must show
this model is also stable.
Stratum 0: No relevant rules, so win3 is
false. Likewise, win3 is not inferred in the
Stratum 1: Since win3 is false, the rules for
stratum 1 become:
r3: win2 :win2 is inferred, both in the strati ed and
Stratum 2: Since win2 is true and win3 is
false, the rule for stratum 2 becomes:
r2: win1 :Again, the same thing happens to this rule
in the GL procedure, so we infer win1 in both
strati ed and stable approaches. Well-Founded Model
3-valued model: true, false, unknown.
WF model has positive facts like p1 and
negative facts like :p1.
IDB ground atoms not mentioned are assumed
to be unknown."
EDB ground atoms not mentioned are
assumed false. Two Modes of Inference 1. If body is true, infer head.
2. Look for unfounded sets : If, after instantiating
rules in all possible ways and eliminating
those with a known false subgoal, there is
a set U of positive ground atoms such that
every rule with a member of U in the head has
a member of U as one of its subgoals, then U
3 We cannot prove any member of U ,
because we would have to prove another
2 member rst.
3 In WF semantics, we infer the negation of
all members of U .
Repeat inference modes until no new
inferences of either type are possible. Example Win" rule with EDB 1 ! 2, 2 ! 1, 2 ! 3 ! 4 !
5 ! 6.
1 2 3 4 5 6 Start by instantiating the Win rule
winX :- moveX,Y & NOT winY in all possible ways.
3 Eliminate rules with false bodies.
3 Also eliminate true subgoals from
3 For convenience, eliminate rules whose
head has already been inferred.
win5 ::::::- NOT
win6 Round 1: No positive inferences. Largest
unfounded set = fwin6g. Infer :win6.
Round 2: Infer win5. Delete last two rules. One
now has a false subgoal, the other an alreadyinferred head.
win3 ::::- NOT
win4 Largest unfounded set = fwin4g. Infer :win4.
Round 3: Infer win3, delete last two rules.
win1 :- NOT win2
win2 :- NOT win1 Now, no unfounded sets, so done.
WF model is
fwin3; win5; :win4; :win6g
3 Truth value of win1 and win2 is
s ::::- q
NOT p & NOT q fp; qg is an unfounded set.
But fp; q; rg is the largest unfounded set.
3 Note: union of unfounded sets is
unfounded, so there is always a largest.
WF model: f:p; :q; :r; sg. Alternating Fixed Point
1. Instantiate rules in all possible ways.
2. Eliminate rules with false EDB or arithmetic
subgoal; eliminate true EDB and arithmetic
subgoals from remaining rules for convenience.
3. Initialize all IDB ground atoms to false.
4. Repeatedly evaluate IDB subgoals by applying
the GL transform to the model consisting of
the EDB + an IDB based on the previous
round's true false decisions.
In the limit, IDB ground atoms that converge
to true are true. Those that converge to false
are false. Those that oscillate are unknown. Example
Repeating above Win" example:
Rules processed by 1 and 2:
win5 ::::::- NOT
win6 Using alternating xed point:
4 5 6 Round
0 Another Example
p :- q; q :- NOT p Round
010101 Round 0: Both are 0 as always.
Round 1: Rules simplify to p :- q; q :-.
Infer both q and p.
Round 2: Rules simplify to p :- q. No
Round 3 and later: Repeats.
Conclude both p and q are unknown." Relationships Among Semantics
If there is a 2-valued WF model, it is the
unique stable model.
If there is a perfect model i.e., program +
EDB is locally strati ed, then this model is
also the stable and WF model, and obviously
There can be a 3-valued WF model when
there is no stable semantics i.e., no unique
stable model. Example Win program with EDB move1,2, move2,1.
Two stable models, fwin1g and fwin2g.
Thus, a stable semantics does not exist.
However, the WF model exists and makes
both win1 and win2 unknown."
There can be a unique stable model 6= WF
p :- NOT q
q :- NOT p
p :- NOT p WF model makes p, q unknown."
fpg is the only stable model.
There can be a 2-valued WF model when
there is no locally strati ed model. Example
winX :- moveX,Y & NOT winY with move de ned by
1 2 3 4 There is a cycle among 1, 2, and 3, so this
program and EDB is not locally strati ed.
However, the WF model is 2-valued,
intuitively because the cycle is not followed
from board 3 on best play.
win3 ::::- NOT
0 Comparisons Between Stable and WF
In win" program, true = forced win; false =
forced loss; unknown = draw with best play.
However, in cafeteria" example to follow, the
rules are the same but the intuitive semantics
favors the stable approach.
Consider a collection of buildings:
Buildings have either lounges or cafeterias, not
No adjacent buildings both have cafeterias.
If a building does not have a cafeteria, then an
adjacent building must have one.
loungeX :- adjX,Y & cafeteriaY
cafeteriaX :- NOT loungeX If we get rid of cafeteria":
loungeX :- adjX,Y & NOT loungeY Looks just like win."
Problem is really: nd a maximal independent
set of buildings in which to put cafeterias.
The stable models are the maximal
But the WF model makes cafeteriaX true
i X is in every maximal independent set. Comparison of Complexity for Stable Versus
It is NP-hard to tell whether a propositional
logic program has a stable semantics, i.e., a
unique stable model.
It is polynomial to construct the WF model.
Same comments hold for rst-order logic,
but with complexity measured in terms of
the EDB size rather than the number of
propositions. Modularly Strati ed Semantics
Motivation: largest known class of Datalogwith-negation programs for which magic-sets
query optimization technique to be discussed
Must be able to partition the rules into
modules," such that
1. All recursion is within a module.
7 2. All modules have locally strati ed
semantics with respect to the EDB and
the previously computed models for any
3 I.e., treat all true facts belonging to lower
modules as if they were EDB facts.
Modularly strati ed semantics = what we get
by computing locally strati ed semantics for
modules, bottom up.
Note modules are partially ordered by
dependence among their predicates, because
all recursion must take place within a single
Consider: winX :- moveX,Y & NOT winY with move relation fmove1; 2g.
We might appear to have a cycle in the
r1: win1 :- move1,2 & NOT win2
r2: win2 :- move2,1 & NOT win1
But the fact that move2; 1 is false removes
The only dependence is win1 ! win2, and
this program + EDB is locally strati ed. Example Continued
Next, suppose we add an IDB predicate
move1 to be identical to move:
winX :- move1X,Y & NOT winY
move1X,Y :- moveX,Y Now, with the same EDB, we instantiate the win
r1: win1 :- move11,2 & NOT win2
r2: win2 :- move12,1 & NOT win1
It is not apparent that win2 does not
depend on win1, so it looks like we have a
cycle in the dependency graph.
3 The di erence is that move1 is IDB,
while move is EDB.
This program + EDB is not locally strati ed.
8 However, the program + EDB is modularly
strati ed, because we can group move and
move1 into a module and win into a higher
Module for move and move1: We rst
compute the locally strati ed model for
move1, which is fmove11; 2g.
Module for win: We discover that r2 can be
removed, because move12; 1 is known to be
Thus, there is no cycle, and the win module is
also locally strati ed.
Thus, the whole program + EDB is modularly
strati ed. Summary of Semantics
De nition A above de nition B means that
every program + EDB that has a semantics in
1. Has a semantics according to A, and
2. The meaning chosen model is the same
for both A and B .
View Full Document
- Spring '09
- Logic, EDB, Stable model semantics, WF model