.

Автоматы с магазинной памятью

Язык: русский
Формат: реферат
Тип документа: Word Doc
84 465
Скачать документ

АВТОМАТЫ С МАГАЗИННОЙ ПАМЯТЬЮ

Автоматы и преобразователи с магазинной памятью играют важную роль при
построении автоматно-лингвистических моделей различного назначения,
связанных с использованием бесконтекстных (контекстно-свободных) языков.
В частности, такие устройства используются в большинстве работающих
программ для синтаксического анализа программ, написанных на различных
языках программирования, которые во многих случаях можно рассматривать
как бесконтекстные.

В отличие от конечных автоматов и преобразователей,

автоматы с магазинной памятью снабжены дополнительной магазинной памятью
(рабочей лентой).

На рис. 1

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

верхнюю ячейку магазинной памяти; за один такт работы автомата
(преобразователя) управляющая головка может произвести следующие
движения:

1) стереть символ из верхней ячейки (при этом все символы, находящиеся
на рабочей ленте, перемещаются на одну ячейку вверх);

2) стереть символ из верхней ячейки и записать на рабочую ленту
непустую цепочку символов (при этом содержимое

рабочей ленты сдвигается вниз ровно настолько, какова длина

с записываемой цепочки).

Таким образом, устройство магазинной памяти можно сравнить с устройством
магазина боевого автомата: когда в него вкладывается патрон, те, которые
уже были внутри, проталкиваются вниз; достать можно только патрон,
вложенный последним.

Формально детерминированный магазинный автомат определяется как
следующая совокупность объектов:

M = (V, Q, VM, ?, q0, z0, F),

где V, Q, q0 Є Q, F определяются так же, как и для конечного автомата;

VM = {z0, z1,…,zp-1} — алфавит магазинных символов автомата;

? — функция, отображающая множество Q X (V U { ? }) X VM

в множество Q X VM, где е — пустая цепочка;

z0 Є VM — так называемый граничный маркер, т. е. символ,

первым появляющийся в магазинной памяти.

Недетерминированный магазинный автомат отличается от детерминированного
только тем, что функция ? отображает множество Q X (V U { ? }) X VM. в
множество конечных подмножеств Q x VM

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

Далее будем рассматривать только недетерминированные магазинные
автоматы.

Рассмотрим интерпретацию функции ? для такого автомата. Эту функцию
можно представить совокупностью команд вида

(q, a, z)?(q1, ?1),…,(qm, ?m),

где q, q1,…qm Є Q, a Є V, z Є VM, ?1,…,?m Є V*m

При этом считается, что если на входе читающей головки авто

мата находится символ а, автомат находится в состоянии q, а верхний
символ рабочей ленты z, то автомат может перейти к состоянию qi, записав
при этом на рабочую ленту цепочку ?i(1 ? i ? m)

вместо символа z, передвинуть входную головку на один символ

вправо так, как это показано на рис. 1, и перейти в состояние qi.
Крайний левый символ ?i должен при этом оказаться в верхней

ячейке магазина. Команда (q, e, z)?(q1, ?1),…, (qm, ?m) означает,

что независимо от входного символа и, не передвигая входной го- +

ловки, автомат перейдет в состояние qi, заменив символ z магазина

на цепочку ?i(1 ? i ? m). •

Ситуацией магазинного автомата называется пара (q, ?), где

q Є Q, ? Є V*m. Между ситуациями магазинного автомата (q, ?) и

(q’, ?’), устанавливается отношение, обозначаемое символом ?, если
среди команд найдется такая, что

(q, a, z)?(q1, ?1),…,(qm, ?m),

причем ? = z?, ?’ = ?i? q’ = qi для некоторого 1 ? i ? m (z Є Vm,

? Є V*m ).

Говорят, что магазинный автомат переходит из состояния (q, ?) в
состояние (q’, ?’) и обозначают это следующим образом:

a: (q, ?)? (q’, ?’).

Вводится и такое обозначение:

a1…an: (q, ?)? * (q’, ?’),

если справедливо, что

ai: (qi, ?i)? (qi+1, ?i+1), 1 ? i ? m

где

ai Є V, ?1 = ?, ?2,…, ?n+1 = ?’ Є V*m

q1 = q, q2,…, qn+1 = q’ Є Q

Существует два способа определения языка, допускаемого магазинным
автоматом. Согласно первому способу считается, что входная
цепочка ? Є V* принадлежит языку L1 (M) тогда, когда после просмотра
последнего символа, входящего в эту цепочку,

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

L1 (M) = { ? | ?: (q0, z0) ? * (q, ?)}

где q Є Q.

Согласно второму способу считается, что входная цепочка принадлежит
языку L2 (M) тогда, когда после просмотра последнего символа, входящего
в эту цепочку, автомат М окажется в одном из своих заключительных
состояний qf Є F. Другими словами,

L2 (M) = { ? | ?: (q0, z0) ? * (qf, ?)}

где ? Є V*m, qf Є F

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

Доказано также, что если L (G2) — бесконтекстный язык, порождаемый
Грамматикой G2 = (Vx, VT, Р, S), являющейся нормальной формой Грейбах,
произвольной бесконтекстной грамматики G, то существует
недетерминированный магазинный автомат М такой, что L1 (M) = L (G2). При
этом

M = (V, Q, Vm , ?, q0, z0, 0),

Где V=VT; Q={q0}; VM=VN; z0=S

а для каждого правила G2 вида

A?a?, a Є VT, a Є V*n

строится команда отображения ?:

(q0, a, A)?(q0, a)

Apia логично для любого недетерминированного магазинного автомата М,
допускающего язык L1 (M), можно построить бесконтекстную грамматику G
такую, что L (G) = L1 (M).

Если для конечных автоматов детерминированные и недетерминированные
модели эквивалентны по отношению к классу допускаемых языков, то этого
нельзя сказать для магазинных автоматов. Детерминированные автоматы с
магазинной памятью допускают лишь некоторое подмножество бесконтекстных
языков, которые называют детерминированными бесконтекстными языками.

Список использованной литературы

КУЗИН Л.Т «Основы кибернетики» Т.2

УКРАИНСКИЙ ГОСУДАРСТВЕННЫЙ

ХИМИКО-ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

Р Е Ф Е Р А Т

По дискретной математике на тему:

«Автоматы с магазинной памятью»

Подготовил студент гр. 1киб-30

Кирчатов Роман Романович

Преподаватель

Бразинская Светлана Викторовна

ДНЕПРОПЕТРОВСК, 2002

Нашли опечатку? Выделите и нажмите CTRL+Enter

Похожие документы
Обсуждение

Ответить

Курсовые, Дипломы, Рефераты на заказ в кратчайшие сроки
Заказать реферат!
UkrReferat.com. Всі права захищені. 2000-2020