By projection we mean inferring facts about the situation that results from performing a sequence of actions in an initial situation S0. Consider the situation of figure 1.
Figure 1
We call it S0 and describe it as follows:
These formulas are somewhat lengthy. Building enough machinery would permit a more compact description, e.g.
Compactness is not our present goal, so we won't bother.
The above is the positive information about S0. We also need negative information such as that these are all the blocks in the scene, that they are distinct and that blocks are distinct from situations and colors--considerably more.
Here are some items:
We assume that, as in section 2.3.1, we have axioms that make the natural numbers all different.
We also want axioms
Another way of making blocks, colors and situations, etc. distinct from each other is to use a multi-sorted logic. A sorted logic could provide different variables for the blocks, colors, etc. and a convention that the variables range over the appropriate sort.
or if the variable x is declared to be of sort block
[much more to come]