The Stanford Formal Reasoning Group is currently working on the logical approach to AI. Elaboration tolerance is one of our major research topics. Elaboration tolerance is a phrase introduced by McCarthy [MA96] to capture the notion that certain theories are more easily modified, while others are more brittle. The less brittle a theory is, the more easily it can be adapted to slightly different situations, the more elaboration tolerant the theory is. Obviously the simplest case of a modification is conjoining new information. Thus a theory that can capture a large variety of new phenomena by conjoining new information is more elaboration tolerant that one that cannot.
We have taken the well trodden missionaries and cannibals problem as our Drosophila.
Three missionaries and three cannibals come to a river and find a boat that holds two. If the cannibals ever outnumber the missionaries on either bank, the missionaries will be eaten.
The problem posed is ``How shall they cross?''. Consider the following elaborations:
A human has no trouble with these elaborations, but when humans design formalisms for computer representation, usually the representation chosen precludes most of the elaborations without starting over completely. For the above problem, most programs will have to be changed top to bottom.
Amarel [Ama68] suggested the following representation of the problem. Every state is represented as a three tuple, the number of missionaries, cannibals and boats on the left hand side of the river. Thus the starting state is (3,3,1) and the final state if (0,0,0). If we wish to add the first elaboration, that there are also oars, we need to move to a four tuple--the number of missionaries, cannibals, boats and oars on the left side of the river.
This change is not a simply a piece of non-monotonic reasoning. We have changed more than just what we think the valid conclusions are, we have also changed the representation of the puzzle itself.