Неукорачивающие и контекстно-зависимые грамматики, эквивалентность — различия между версиями
Строка 28: | Строка 28: | ||
По [[Иерархия Хомского формальных грамматик#Класс 1|определению]] в <tex>\Gamma_1</tex> нет правил другого вида. Получившаяся грамматика <tex>\Gamma_2</tex> является эквивалентной грамматике <tex>\Gamma_1</tex>, так в результате применения набора правил строка <tex>X_1 X_2 \ldots X_n</tex> перейдёт в строку <tex>Y_1 Y_2 \ldots Y_m</tex>. Осталось заметить, что по [[Иерархия Хомского формальных грамматик#Класс 1|определению]] получившаяся грамматика <tex>\Gamma_2</tex> является контекстно-зависимой. | По [[Иерархия Хомского формальных грамматик#Класс 1|определению]] в <tex>\Gamma_1</tex> нет правил другого вида. Получившаяся грамматика <tex>\Gamma_2</tex> является эквивалентной грамматике <tex>\Gamma_1</tex>, так в результате применения набора правил строка <tex>X_1 X_2 \ldots X_n</tex> перейдёт в строку <tex>Y_1 Y_2 \ldots Y_m</tex>. Осталось заметить, что по [[Иерархия Хомского формальных грамматик#Класс 1|определению]] получившаяся грамматика <tex>\Gamma_2</tex> является контекстно-зависимой. | ||
}} | }} | ||
− | {{ | + | |
+ | {{Лемма | ||
+ | |id= ==lemma== | ||
|statement=Любая контекстно-зависимая грамматика является неукорачивающей. | |statement=Любая контекстно-зависимая грамматика является неукорачивающей. | ||
|proof= Заметим, что в [[Иерархия Хомского формальных грамматик#Класс 1|определении контекстно-зависимой грамматики]] <tex>\gamma</tex> не пуста, поэтому <tex>|\alpha A \beta| \ge |\alpha \gamma \beta|</tex>. Следовательно, такая грамматика является неукорачивающей по [[Иерархия Хомского формальных грамматик#Класс 1|определению]]. | |proof= Заметим, что в [[Иерархия Хомского формальных грамматик#Класс 1|определении контекстно-зависимой грамматики]] <tex>\gamma</tex> не пуста, поэтому <tex>|\alpha A \beta| \ge |\alpha \gamma \beta|</tex>. Следовательно, такая грамматика является неукорачивающей по [[Иерархия Хомского формальных грамматик#Класс 1|определению]]. |
Версия 23:45, 22 января 2012
Теорема: |
Для любой неукорачивающей грамматики существует эквивалентная контекстно-зависимая грамматика . |
Доказательство: |
Рассмотрим правило из . Будем строить правила для грамматики . Каждое правило , где из заменим набором следующих правил:
причём нетерминалы свои для каждого правила из и .В словах языка, задаваемого грамматикой, не может быть нетерминалов, поэтому если в процессе вывода будет применено правило , то впоследствии должны быть применены все остальные правила. В противном случае нетерминалы или будут присутствовать в выведенном слове.Правила вида По , где оставляем без изменений. определению в нет правил другого вида. Получившаяся грамматика является эквивалентной грамматике , так в результате применения набора правил строка перейдёт в строку . Осталось заметить, что по определению получившаяся грамматика является контекстно-зависимой. |
Лемма: |
Любая контекстно-зависимая грамматика является неукорачивающей. |
Доказательство: |
Заметим, что в определении контекстно-зависимой грамматики не пуста, поэтому . Следовательно, такая грамматика является неукорачивающей по определению. |
Таким образом, для любой неукорачивающей грамматики можно построить эквивалентную ей контекстно-зависимую, а любая контекстно-зависимая грамматика является неукорачивающей. Значит, эти грамматики задают один и тот же класс языков.