Simple Example
Suppose state had 2 objects: blocka and blockb and blocka was on the table and blockb was on top of blocka.
State: {(isa block blocka) (isa block blockb) (ontop blockb blocka)
If (state (isa block <x>) (ontop <x> <y>))(goal (ontable <x>))
Then (add (ontable <x>)) (remove (ontop <x> <y>))
What does the interpreter do???