Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
57
Добавлен:
16.04.2015
Размер:
790.89 Кб
Скачать

e(P) (T)

Далее мы можем повторить рассуждения, аналогичные предыдущим, относя их к

цепочкам x

*, y ’ ’

(i = 1,

2, …, m) и

i

i

 

 

Bj N ( j = 2, …, m), последовательно появ-

ляющимся

в верхней

части

магазина в

результате серии движений, построенных в соответствии с п.2, затем п.3, и ряда движений, приводящих к понижению вершины магазина ниже позиции, занимаемой Bj.

61

e(P) (T)

Другими словами, детальный разбор возможных движений от исходной конфигурации к конечной даёт основание утверждать, что вход x и выход y представимы в виде

x = x0t1x1tm xm, y = y0 z1 y1zm ym,

(1.6)

причём

 

 

(q, ti, Bi, )

(q, , , zi),

(1.7)

li n, i = 1, 2, …, m.

62

e(P) (T)

По построению первое движение (1.5) обусловлено существованием правила

Ax0 B1x1Bm xm, y0 B1 y1Bm ym R, (1.8)

аиз существования движений (1.7) по

li

, zi), i = 1, 2, …, m.

 

(Bi, Bi) (ti

(1.9)

T

 

 

Используя (1.8) и (1.9), с учетом (1.6)

получаем:

 

 

 

 

*

(A, A) (x0 B1x1Bm xm, y0 B1 y1Bm ym)

T

 

T

индукционному

предположению

следует

существование выводов

 

* (x0t1x1tm xm, y0 z1 y1zm ym) = (x, y).

T

63

e(P) (T)

В частности, при A = S следует утверждение II.

Из рассуждений I и II следует утверждение леммы.

Доказанная лемма даёт алгоритм построения недетерминированного магазинного преобразователя, эквивалентного данной простой схеме синтаксически управляемой трансляции.

64

Пример 1.4.

Пусть sdts T = ({E}, {a, +, *}, {a, +, *}, R, E), где

R= {(1) E +EE, EE+ ;

(2)E *EE, EE* ;

(3)E a, a}.

По лемме 1.1 эквивалентный npdt есть

P = ({q}, {a, +, *}, {E, a, +, *, a, +, *}, {a, +, *}, , q, E, ), где

1) (q, , E) = { (q, +EE+, ),

(q, *EE*, ), (q, aa, )},

2)(q, b, b) = {( q, , )} для всех b {a, +, *},

3)(q, , с) = {( q, , с)} для всех с {a, +, *}.

65

Пример 1.4.

Сравните этот недетерминированный магазин- ный преобразователь с эквивалентным детерминированным преобразователем из примера 1.3.

Оба преобразуют префиксные арифметические выражения в постфиксные.

(q, +*aaa, E, )

(q, +*aaa, +EE+, )

(q, *aaa, EE+, )

 

 

 

(q, aaa, EE*E+, )

(q, *aaa, *EE*E+, )

 

 

(q, aaa, aaE*E+, )

(q, aa, aE*E+, )

(q, aa, E*E+, a)

 

(q, aa, aa*E+, a)

(q, a, a*E+, a)

(q, a, *E+, aa)

(q, a, E+, a a *)

(q, a, aa+, aa*)

(q, , a+, aa*)

(q, , +, a a * a)

(q, , , a a * a +).

 

 

 

66

e(P) (T)

Лемма 1.2. Пусть P = (Q, , , , , q0, Z0, )

недетерминированный магазинный преобразователь. Существует простая схема синтаксически-управляемой трансляции T, такая, что (T) = e(P).

Доказательство. Построим такую схему T следующим образом (ср. с теор. 5.3).

Положим T = (N, , , R, S), где

N= {S} {[qZp] q, p Q, Z },

и — такие же, как в npdt P,

Ret 82

67

e(P) (T)

R= {S [q0Z0 p], [q0Z0 p] для всех p Q}

{[qZp] a[q1Z1q2][q2Z2q3]…[qmZmqm + 1],3 m2 21 21 m m + 1

(q1, Z1Z2Zm, y) (q, a, Z);

a { }, y *; p, q, qi Q; Z, Zi ; i = 1, 2, …, m; qm + 1= p}.

I. Докажем сначала, что

 

 

если (q, x, Z, )

(p, , , y),

то

 

 

*

 

([qZp], [qZp]) (x, y),

используя

индукцию

по

T

числу l движений

 

ndpt P.

68

69
T
(x, y).
с помощью которого
В этом случае x { } и (p, , y) (q, x, Z). Тогда по построению схемы T существует правило [qZp] x, y R,
немедленно получаем: ([qZp], [qZp])

e(P) (T)

База. Пусть l = 1. Имеем

(q, x, Z, ) (p, , , y).

e(P) (T)

Индукционная гипотеза. Предположим, что утверждение I выполняется для всех переходов между конфигурациями за число движений l n (n 1).

Индукционный переход. Докажем, что тогда утверждение I справедливо и для l = n + 1.

Итак, пусть

(q, x, Z, ) (p, , , y).

Рассмотрим этот переход подробнее.

70

Соседние файлы в папке lectures