Step 4 - Rewrite as Successor State Axioms for each fluent FThe effect axioms can be rewritten as successor state axioms.Poss(a,s) ? [F(do(a,s)) ? ?F+(a,s) ? (F(s) ? ? ?F-(a,s))]F is true in the situation resulting from performing action a in situation s iff either the positive effect axiom made it true or it was true in the previous situation and the negative effect axiom didn’t make it falseE.g., Poss(a,s) ? [on(Pump,do(a,s)) ? a=turnOn(Pump) ? (on(Pump,s) ? a?turnOff(Pump)]Merits of Successor State Axiom Solution: ? captures the non-effects of actions for the provided representation. ? parsimonious: one successor state axioms per fluent. ? closed-form: no need for further computation. ? independent semantic justification: equivalent to a circumscriptive minimization of ab(F, a), where ab is an abbreviation for ? [F(s) ? F(do(a,s))] ? can be realized procedurally in Prolog by exploiting Prolog’s completion semantics.
The Frame Problem (cont.)