Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TAiFYA(X-file).doc
Скачиваний:
18
Добавлен:
24.04.2019
Размер:
3.09 Mб
Скачать

16. Лемма Огдена для кс-языков. Пример языка, не являющегося контекстно-свободным.

Пусть есть некоторое слово α, |α|=к.

Позиция i – натуральное число 1≤i≤k, буква а занимает позицию i в α, α=α1аα2, |α1|=i-1. Символ а занимает I позицию в слове α.

Формулировка:

Для любой КС-грамматики G=<VT, VN, P, S> существует такое к≥1, что если αϵL(G), |α|≥к и в α выделены ≥ к различных позиций, то α можно записать в виде:

α=uvwxy, причем

1.w содержит хотя бы одну выделенную позицию

2.либо u и v обе содержат выделенную позицию, либо x и y обе содержат выделенную позицию (хотя бы одно из этих условий обязательно выполняется)

3.v w x содержит не более к выделенных позиций

4. существует нетерминал А, что

S=>+uAy=>+uvAxy=>+…=>+uviAxiy=>+uviwxiy

Следствие леммы Огдена (леммы о разрастании)

Пусть L – КС-язык, тогда существует константа л≥1, что если αϵL, |α|≥k, то α можно представить в виде:

Α=uvwxy, где любое слово вида uviwxiy для любого i≥0.

Пример языка, не являющегося КС.

L={anbncn|nϵ натур.}. Показать, что L-не КС.

Сущ-ет к≥1, α= aкbкcк, |α|>к, по лемме aкbкcк= uvwxy, где vx≠λ, |vwk|≤k =>vwx не может содержать все буквы алфавита.

  1. ак – префикс u

  2. ск – входит в у

uviwxiy ϵ L при i≥0

Пусть i=0 => u w y ϵ L

т.к. |vx|≠λ => выкинули либо букву а, либо b, либо с =>нарушается равенство степеней n, не получаем равенства количества букв в обоих случаях. Наше предположение не верно, L – не КС-язык.

21. Соотношение между кс-языками и языками, допускаемыми мпа. Построение по кс-грамматике мп-автомата.

Соотношение между КС-языками и языками, допускаемыми МПА.

Теорема

Класс языков порождаемых КС-грамматиками, совпадает с классом языков, допускаемых МП-автоматами.

Это означает, что для любой КС-грамматики можно построить автомат с магазинной памятью, допускающий тот же язык.

Построение по КС-грамматике МП-автомата.

Пусть дана грамматика: . Автомат строится так, что он моделирует левые выводы грамматики.

всегда строим автомат, допускающий опустошение магазина.

Под подразумевается:

  1. Если множество правил R содержит: , то , если верхний символ в магазине не терминал, то не читая слова, заменяем его в магазине на .

Пример:

q

z

q

q

q

q


22. Понятие мп-преобразователя. Нисходящие и восходящие распознаватели.

МП-преобразователи

(множество подмножеств)

Т.е. записывается на выходную ленту ещё и слово в алфавите В.

где:

x- принадлежит замыканию А` слово которое ещё не прочитано на входной ленте.

– слово в магазине.

у – слово записанное в данный момент на входной ленте.

Вид преобразования:

Одна конфигурация перейдёт в другую за один такт, если

Левый разбор – последовательность номеров правил грамматики, образующих левый вывод.

Нисходящий разбор – каждому дереву вывода соотвествует лувый разбор.

Пусть известен корень дерева вывода и его крона.

Дерево постепенно разворачивается, начиная от корня. Пытаемся к корню применить какое-либо правило грамматики, затем к самому левому нетерминалу и т.д.

Получим разбор  построим дерево вывода.

Нисходящий разбор производится с помощью преобразователя с МП.

Hl-левый анализатор.

Идея аналогична МП-автомату, строящему такой же язык, как на входе и плюс к этому записывающий номера правил.

(опустошение магазина допускается)

  1. , , i – номер правила.

Если верхний символ из терминального алфавита , он стирается и на выходную ленту ничего не падается.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]