In contrast to reasoning within a formal theory of the conventional sort used in science or operations research, common sense reasoning [McCarthy 1959] is open-ended. More facts than were originally taken into account may turn out to be relevant. Formalizing common sense requires a formal system that preserves this open-endedness. It can be done by formalizing nonmonotonic reasoning.
We present a straightforward example of how a system might take into account new facts. An unexpected obstacle vitiates the inference that the usual sequence of actions will achieve a goal. Then, without changing any existing premise, a system can infer that inserting a suitable new action in the sequence achieves the goal.
1. We use a general formalism for describing the effects of actions. It is a variant due to Vladimir Lifschitz (1987) of the situation calculus [McCarthy and Hayes 1969].
2. Specific facts concerning travel by airplane from one city to another are given. The need for a flight to exist and for the traveller to have a ticket are made explicit preconditions.
3. Facts relevant for flying from Glasgow to Moscow via London are mentioned, i.e. the flights are mentioned.
4. The circumscription formalism of [McCarthy 1980] and [McCarthy 1986] is used to minimize certain predicates, i.e. precond, noninertial, causes, occurs while allowing the predicate holds to vary.
5. It can then be inferred (nonmonotonically) that flying from Glasgow to London and then flying to Moscow results in being in Moscow.
6. Facts giving the consequences of losing a ticket and buying a ticket are included. They do not change the result of the previous inference.
7. An assertion that the ticket is lost in London is then added to the previous facts. Now it can no longer be inferred that the previous plan succeeds. However, it can be inferred that the plan of flying to London, then buying a ticket and then flying to Moscow does succeed.
This example shows that it is possible to make a formalism that (1) can be used to infer that a certain plan will succeed, (2) can no longer infer that the plan will succeed when an obstacle is asserted to exist, (3) can be used to infer that a different plan that includes actions to overcome the obstacle will succeed.
Our formulas include only the parameters needed to illustrate the reasoning. They don't even include the traveller, i.e. the person whose actions are reasoned about. From the point of view of demonstrating full common sense reasoning this is a blemish. However, we believe that the very formulas used here can be preserved provided we enter a suitable context. Formal reasoning about contexts is discussed in [McCarthy 1993].