Go moves a robot from its current location to another location.
Action(Go(x,y),
Precond: At(Robot,x)
Effect: not At(Robot,x) and At(Robot,y))
Pickup enables the robot to pick up an object at its
current location. Both the robot and the object have to be at the
same location.
Action(Pick(o),
Precond: EmptyHand(Robot) and At(Robot,x) and At(o,x)
Effect: not EmptyHand(Robot) and not At(o,x) and Holding(Robot,o))