8.2.2 Being Complete

How can we be sure that we really find all possible edges spanning (parts of) our input.

One central point we have not yet addressed explictly is: How can we be sure that we really find all possible edges spanning (parts of) our input. Well, the principle is simple. What we are doing is this:

  1. We traverse our input string from left to right, and

  2. We do not move on before we have done all that can be done at some point.

As a consequence, our chart is always complete to the left: All that could have been done there had been done. So, when we move on to some node x, we make sure that all possible edges between 0 and x are being added. Then we know, that the chart is complete up to node x when we move to x+1. As a consequence, we never have to backtrack to some earlier nodes to see whether there is anything left that has to be done. This strategy leads us systematically through the input without forgetting to add any edge.


Kristina Striegnitz, Patrick Blackburn, Katrin Erk, Stephan Walter, Aljoscha Burchardt and Dimitra Tsovaltzi
Version 1.2.5 (20030212)