Совпадение множества языков МП-автоматов и контекстно-свободных языков — различия между версиями
Bochkarev (обсуждение | вклад) (→Корректность построения) |
Bochkarev (обсуждение | вклад) (→Корректность построения) |
||
Строка 24: | Строка 24: | ||
*Также заметим, что <tex> \alpha_n = \epsilon</tex>. Таким образом <tex> (q,w,S)\vdash^*(q,\epsilon,\epsilon) </tex>, т.е допускает <tex> P </tex> по пустому стеку. | *Также заметим, что <tex> \alpha_n = \epsilon</tex>. Таким образом <tex> (q,w,S)\vdash^*(q,\epsilon,\epsilon) </tex>, т.е допускает <tex> P </tex> по пустому стеку. | ||
{{Утверждение | {{Утверждение | ||
+ | |about=1 | ||
|statement= Если МП-автомат <tex> P </tex> построен по грамматике <tex> G </tex> с использованием указанной выше конструкции, то <tex> N(P) \geq L(G) </tex> | |statement= Если МП-автомат <tex> P </tex> построен по грамматике <tex> G </tex> с использованием указанной выше конструкции, то <tex> N(P) \geq L(G) </tex> | ||
|proof= Очевидно из того, что мы доказали корректность построения. | |proof= Очевидно из того, что мы доказали корректность построения. | ||
}} | }} |
Версия 03:02, 15 января 2011
Эта статья находится в разработке!
Содержание
Эквивалентность МП-автоматов и КС-языков
Далее будут приведены конструкции для построения МП-автомата по заданной КС-грамматике, и наоборот. Также будут приведены теоремы об эквивалентности языков.
Построение МП-автомата по заданной КС-грамматике
Пусть
— КС-грамматика. Построим МП-автомат , который допускает по пустому магазину. Функция переходов будет определена по следующим правилам:- 1. — продукция — для каждой переменной .
- 2. для каждого терминала .
Пример
Преобразуем грамматику выражений в МП-автомат. Пусть дана грамматика:
Множеством входных символов является
. Эти символы, вместе с переменными , образуют магазинный алфавит. Функция переходов определена следующим образом:- a)
- b)
- c) ; ;... ; если входной символ совпадает с вершиной стека, то вершина удаляется.
Пункты a,b образованы по первому правилу построения функции переходов, пункт c по второму правилу.
Корректность построения
Пусть
, тогда имеет следующее левое порождение: . Покажем индукцией по , что :- База. Очевидно, что
- Переход. Предположим, что . Заметим, что шаг порождения включает замену некоторой переменной ее продукцией . Правило 1 построения МП-автомата позволяет на заменить на вершине стека на цепочку , а правило 2 позволяет затем сравнить любые терминалы на вершине со входными символами. В результате достигается МО .
- Также заметим, что . Таким образом , т.е допускает по пустому стеку.
Утверждение (1): |
Если МП-автомат построен по грамматике с использованием указанной выше конструкции, то |
Очевидно из того, что мы доказали корректность построения. |