Построение автомата пуш-ап из контекстно-свободной грамматики
Из этого раздела вики-статьи о КПК я получил приблизительное представление о процессе создания КПК из данного CFG. То, что эта статья не проясняет, является шагом, необходимым, когда есть несколько производственных правил для одного нетерминала.
Например, предположим, что у нас есть грамматика, заданная в виде:
Ясно, что эта грамматика распознает все строки вида x (ab) * y [по совпадению это тоже обычный язык].
Здесь у меня возникли проблемы при создании КПК из этой грамматики из-за этих 2 правил
То есть, какое из этих двух правил будет использоваться на этапе расширения при одновременном нажатии на стек?
2 ответа
Решение
Как показано в этом слайде, ваш КПК будет имитировать крайние левые выводы