ДМП-автоматы и неоднознчность
Содержание
Теоремы
Теорема 0
| Теорема (0): |
Пусть — МП-автомат. Тогда существует КС- грамматика , для которой . |
| Доказательство: |
|
Построим , где V состоит из следующих переменных.
Докажем корректность неформальной интерпретации переменных вида :
(Достаточность) Пусть . Докажем, что , используя индукцию по числу переходов МП-автомата. Базис. Один шаг. Пара должна быть в , и есть либо одиночный символ, либо . Из построения следует, что является продукцией, поэтому . Индукция. Предположим, что последовательность состоит из переходов, и . Первый переход должен иметь вид , где для некоторого , которое является либо символом из , либо . Отсюда следу- ет, что пара (r0, Y1Y2...Yk) должна быть в δ(q, a, X). Кроме того, по построению G сущест- вует продукция [qXrk] → a[r0Y1r1][r1Y2r2]...[rk–1Ykrk], у которой rk = p и r1, r2, ..., rk–1 — не- которые состояния из Q. На рис. 6.10 показано, что символы Y1, Y2, ..., Yk удаляются из магазина по очереди, и для i = 1, 2, ..., k – 1 можно выбрать состояние pi, в котором находится МП-автомат при удалении Yi. Пусть X = w1w2...wk, где wi — входная цепочка, которая прочитывается до * удаления Yi из магазина. Тогда (ri–1, wi, Yi) |
Теоремы1
| Теорема (1): |
Если для некоторого ДМП автомата , то имеет однозначную КС-грамматику |
| Доказательство: |
|
Утверждаем, что конструкция теоремы 6.14 порождает однозначную КС-грамматику , когда МП-автомат, к которому она применяется, детерминирован. Вначале вспомним (см. теорему 5.29), что для однозначности грамматики достаточно показать, что она имеет уникальные левые порождения. Предположим, допускает по пустому магазину. Тогда он делает это с помощью одной-единственной последовательности переходов, поскольку он детерминирован и не может работать после опустошения магазина. Зная эту последовательность переходов, мы можем однозначно определить выбор каждой продукции в левом порождении в . Правило автомата , на основании которого применяется продукция, всегда одно. Но правило, скажем, , может порождать много продукций грамматики , с различными состояниями в позициях, отражающих состояния после удаления каждого из , , ..., . Однако, поскольку детерминирован, осуществляется только одна из этих последовательностей переходов, поэтому только одна из этих продукций в действительности ведет к порождению . |
| Теорема (2): |
Если для некоторого ДМП-автомата , то имеет однозначную КС-грамматику |
| Доказательство: |
|
Пусть будет “концевым маркером”, отсутствующим в цепочках языка , и пусть . Таким образом, цепочки языка представляют собой цепочки из , к которым дописан символ . Тогда имеет префиксное свойство, и для некоторого ДМП-автомата . По теореме 1 существует однозначная грамматика , порождающая язык , т.е. . Теперь по грамматике построим , для которой . Для этого нужно лишь избавиться от маркера в цепочках. Будем рассматривать как переменную грамматики и введем продукцию ; остальные продукции и одинаковы. Поскольку , получаем, что . Утверждаем, что однозначна. Действительно, левые порождения в совпадают с левыми порождениями в , за исключением последнего шага в — изменения на . Таким образом, если бы терминальная цепочка имела два левых порождения в , то имела бы два порождения в . Поскольку однозначна, также однозначна. |