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

Мп-автомат, распознающий язык {0n 1n | nN}

Построим систему команд для такого автомата.

δ(q0,0,z)→(q1,xz)

δ(q1,0,xz)→(q1,xxz)

δ(q1,1,xz)→(q2,εz) это означает, что верхний элемент магазина разгружается

δ(q2,1,xz)→(q2,εz)

δ(q2,#,z)→(q0,εz), где # - пусто.

Рассмотрим: (q0,0011,z)→(q1,011,xz)→(q1,11,xxz)→(q2,1,xz)→(q2,#,z)→(q0,#,z).

Q={q0,q1,q2}

A={0,1}

C={x,z}

F{q0}

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

Возможно и другое представление функции δ, например: Q×A×C*, где- множество всех подмножеств QC*, т.е. тройке сопоставляется некоторый набор возможных значений.

Автоматы с таким отображением δ называются недетерминированными МП-автоматами.

Классы языков, допускаемые детерминированными и недетерминированными МП-автоматами, различны.

Если отображение имеет вид Q*×()×C*→Q*×C*, то говорят об определении обобщённого детерминированного автомата.

Класс языков, допускаемый обобщёнными МП-автоматами, совпадает с классом УКС языков.

При моделировании МП-автоматов вводят следующие операции:

  1. Операции над магазином:

- втолкнуть в магазин, определить магазинный символ

- вытолкнуть верхний символ из магазина

- оставить магазин без изменения

При моделировании магазина считается, что маркер никогда не выгружается из магазина. При пустом магазине он находится сверху.

2) Операции над состояниями:

-перейти в заданное новое состояние

3) Операции над входом:

- сдвиг – убрать начальный символ и рассматривать оставшиеся

- держать – оставить текущий символ, не сдвигая просмотра

МП-автомат называется МП-распознавателем, если у него имеется 2 цепочки выхода: допустить и отвергнуть.

Графическое описание мп-автомата

При этом описании каждая вершина графа представляет собой пару (р,а), где р – состояние, а – символ магазина.

Один такт работы МП-автомата представляет собой пару вершин, соединённых дугой. При этом дуге приписывается пометка – символ входного алфавита, а также дополнение, указывающее на изменение состояния магазина.

Пример: автомат для языка {an bn | n1}

- символ начала и конца строки;

+а – загрузка в магазин символа а;

-а – разгрузка.

вход

1

p0,

a +a

a

2 b 4 a,b 5

+a

p0, a -a p1, p0,

b Error: Reference source not foundb -a

-a 3 b -a

p1, a

В данном графическом представлении не указаны ситуации, когда на вход подаются символы, не присутствующие в цепочках, распознаваемых в языке. Считается, что в этом случае происходит переход автомата сразу в отвергающее состояние.

10

Соседние файлы в папке Лекции и практики