Неукорачивающие и контекстно-зависимые грамматики, эквивалентность
Версия от 23:45, 22 января 2012; Berezhkovskaya (обсуждение | вклад)
Теорема: |
Для любой неукорачивающей грамматики существует эквивалентная контекстно-зависимая грамматика . |
Доказательство: |
Рассмотрим правило из . Будем строить правила для грамматики . Каждое правило , где из заменим набором следующих правил:
причём нетерминалы свои для каждого правила из и .В словах языка, задаваемого грамматикой, не может быть нетерминалов, поэтому если в процессе вывода будет применено правило , то впоследствии должны быть применены все остальные правила. В противном случае нетерминалы или будут присутствовать в выведенном слове.Правила вида По , где оставляем без изменений. определению в нет правил другого вида. Получившаяся грамматика является эквивалентной грамматике , так в результате применения набора правил строка перейдёт в строку . Осталось заметить, что по определению получившаяся грамматика является контекстно-зависимой. |
Лемма: |
Любая контекстно-зависимая грамматика является неукорачивающей. |
Доказательство: |
Заметим, что в определении контекстно-зависимой грамматики не пуста, поэтому . Следовательно, такая грамматика является неукорачивающей по определению. |
Таким образом, для любой неукорачивающей грамматики можно построить эквивалентную ей контекстно-зависимую, а любая контекстно-зависимая грамматика является неукорачивающей. Значит, эти грамматики задают один и тот же класс языков.