Why does TOAST work? More specifically, what properties of its environment does it rely upon to work? In general, our strategy is to identify a series of structures in the environment that permit TOAST's tasks to be factored, and then to define a series of reductions that permit more complex versions of TOAST's problem to be defined in terms of simpler ones. We do not claim any vast generality for the TOAST architecture; we simply observe that the environmental regularities that TOAST relies upon are common to many other environments, and we suggest that our method in arguing for TOAST's architecture seems likely to extend to other types of structure in the environment. Although different versions of TOAST rely on different structures, we will show below that all the versions rely on:
The formalization of the properties of tools and materials is simple. The precise formalization of factorability into objects, however, is surprisingly difficult because the environment is not directly factorable using the methods we have developed so far. We will solve the problem by defining a new factoring technique called uniform reduction, in which the environment is viewed as a collection of overlapping instances of schematic environments, each containing the minimal set of objects necessary to perform the task. The agent solves the task by choosing one of these instances and reducing the goal in the true environment to the solution of that schematic instance. To do this, the agent must keep track of which instance it is operating on as it goes along. This could be accomplished with internal memory, of course, but then the agent would need more and more memory as it performs more and more tasks concurrently. We will show that by structuring its activity, the agent can make this information manifest in the environment, thus ``storing'' the information in the world.