In this section we present a method for self-monitoring and revision with reversible grammars that does not depend on the use of any specific generation and parsing algorithm. We therefore use generate and parse as abstract names for the algorithms used. In section 5.5.8 we describe how specific methods (including the uniform algorithm) can be adapted for use in the monitoring strategy.
A fundamental assumption is that it is often possible to obtain an unambiguous utterance by slightly changing an ambiguous one. Thus, after generating an ambiguous utterance, it may be possible to change that utterance locally, to obtain an unambiguous utterance with the same meaning. In the case of a simple lexical ambiguity this idea is easily illustrated. Given the two meanings of the word `bank' (`riverside' and `money institution') a generator may produce, as a first possibility, the following sentence in the case of the first reading of `bank'.
To `repair' this utterance we simply alter the word `bank' into the word `river side' and we obtain an unambiguous result. Similar examples can be constructed for structural ambiguities. Consider the German sentence:
which is ambiguous (in German) between `withdraw [the Croatian army]' and `[withdraw [the army] away from Croatia]'. In German this ambiguity can be repaired locally simply by changing the order of `aus Kroatien' and `die Armee', which forces the second reading. Thus again we only need to change only a small part of the utterance in order for it to be un-ambiguous.