The usual AI situation calculus blocks world has a propositional
fluent asserting that block x is on block y. We
can assert
about some situation s
and have the action
that moves block x on top of
block y.
Suppose this formalism is being used by a robot acting in the real
world. The concepts denoted by , etc. are then approximate
concepts, and the theory is an approximate theory. Our goal is to
relate this approximate theory to the real world. Similar
considerations would apply if we were relating it to a more
comprehensive but still approximate theory.
We use formalized contexts as in [McC93b] and [MB97].
and let be a
blocks world context with a language allowing On(x,y), etc.
is approximate
in at least the following respects.
and
are respectively conditions
in the outer context on the situation s that x shall be on y
and x shall not be on y in the context
. These
need not be the negations of each other, so it can happen that it
isn't justified to say either that x is on y or that it isn't.
and
need not be mutually
exclusive. In that case the theory associated with
would be inconsistent. However, unless there are
strong lifting rules the inconsistency within
cannot infect the rest of the reasoning.
Notice that the theory in the context approximates a theory
in which blocks can be in different orientations on each other or in
the air or on the table in quite different sense than numerical
approximation.