Push Down Автомантон-вычисление
Я пытаюсь понять, как работает КПК. На следующей диаграмме я понимаю, как работают функции перехода и как должен обновляться стек. Но единственный вопрос, который у меня есть, - это то, почему состояние "Старт" также является состоянием принятия? в то время как КПК для L = {on1n | n ≥ 0}, означает, что он не должен принимать пустую строку. Кто-нибудь может объяснить причину, по которой вы начали принимать состояние, пожалуйста?
2 ответа
L = {0n1n | n ≥ 0}
Когда n=0, строка выглядит так:
0010 = ноль 0, за которыми следуют ноль 1, что является пустой строкой. Таким образом, согласно определению, язык L содержит пустую строку.
Если бы она не принимала пустую строку, определение было бы:
L = {0n1n | n> 0}