Алгоритм Устранение нетерминалов, не порождающих терминальных строк
Вход: КС-грамматика .
Выход: КС-грамматика , такая, что и для всех существуют выводы , где .
Шаг 1. Определить множество нетерминалов, порождающих терминальные строки, с помощью алгоритма 4.1.
Шаг 2. Вычислить , где - это множество правил, содержащих бесполезные нетерминалы .
ПримерДана грамматика с правилами
Преобразуем ее в эквивалентную грамматику по алгоритму 4.2:
N0 = Ø;
N1 = {S, B, C};
N2 = {S, B, C}.
Т.к. N1= N2, то N = {S, B, C}. После удаления бесполезных нетерминалов и правил вывода, получим грамматику с правилами