The implementation assumed there would be no rules starting with
terminals since they were eliminated at the first chance. However, rules
starting with a non-terminal which produced the empty string followed by
a terminal were added to the set of rules.