 That makes simple rules such as

requiring a great many artificial rules that essentially enumerate the combinations of all the possible states and lookahead terminals that can follow.A similar problem appears for implementing non-lookahead rules such as

where all the possible lookaheads must be enumerated.That is the reason why LR(1) parsers cannot be practically implemented without significant memory optimizations.