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

Материал из WEGA

Автомат с магазинной памятью (Pushdown automation) — тип распознавателей, определяющий класс контекстно-свободных языков.

Автомат с магазинной памятью (сокращенно МП-автомат ) — это семерка P=(Q,Σ,Γ,δ,q0,Z0,F), где

Pushdown automation.png

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

(2) Σ — конечный входной алфавит;

(3) Γ — конечный алфавит магазинных символов;

(4) δ — отображение множества Q×(Σ{e})×Γ в множество конечных подмножеств множества Q×Γ;

(5) q0Qначальное состояние управляющего устройства;


(6) Z0Γ — символ, находящийся в магазине в начальный момент (начальный символ);


(7) FQ — множество заключительных состояний.

Конфигурацией МП-автомата P называется тройка (q,ω,α)Q×Σ×Γ, где

(1) q — текущее состояние управляющего устройства;

(2) ω — неиспользованная часть входной цепочки; первый символ цепочки ω находится под входной головкой; если ω=e, то считается, что вся входная лента прочитана;

(3) α — содержимое магазина; самый левый символ цепочки считается верхним символом магазина; если α=e, то магазин считается пустым.

Начальной конфигурацией МП-автомата P называется конфигурация вида (q0,ω,Z0), где ωΣ. Заключительная его конфигурация — это конфигурация вида (q,e,e), где qF.

Такт работы МП-автомата P представляется в виде бинарного отношения P, определенного на конфигурациях следующим образом: (q, aω, Zα)P(p,ω,γα), если множество δ(q,a,Z) содержит (p,γ), где q,pQ, aΣ{e}, ωΣ, ZΓ и α,γΓ. Через P и P+ обозначаются соответственно рефлексивное и транзитивное замыкание и транзитивное замыкание отношения P.

Цепочка ω допускается МП-автоматом P, если (q0,ω,Z0)P(q,e,e) для некоторого qF.

Языком, определяемым (или допускаемым) автоматом P (обозначается L(P)), называют множество цепочек, допускаемых автоматом P.

Сравнивая понятия конечного и магазинного автоматов, можно сказать, что МП-автомат получается из конечного автомата добавлением потенциально бесконечной рабочей (вспомогательной) памяти, в которой элементы информации хранятся и используются так же как патроны в магазине автоматического оружия, т.е. в каждый момент доступен только верхний элемент магазина.

Такт работы некоторого МП-автомата P, связанный с переходом от конфигурации (q,aω,Za) к конфигурации (q,ω,γa) при ae, говорит о том, что МП-автомат P, находясь в состоянии q и имея a в качестве текущего входного символа, расположенного под входной головкой (т.е. обозревая a), а Z — в качестве верхнего символа магазина, может перейти в новое состояние q, сдвинуть входную головку на одну ячейку вправо и заменить верхний символ магазина цепочкой γ магазинных символов. Если γ=e, то верхний символ удаляется из магазина и, тем самым, магазинный список сокращается.

Такт, в котором a=e, называют е-тактом. В e-такте текущий входной символ не принимается во внимание и входная головка не сдвигается. Однако состояние управляющего устройства и содержимое памяти могут измениться. Заметим, что e-такт может происходить и тогда, когда вся входная цепочка прочитана.


Литература

  • Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979.
  • Касьянов В.Н. Лекции по теории формальных языков, автоматов и сложности вычислений. — Новосибирск: НГУ, 1995.
  • Касьянов В.Н., Поттосин И.В. Методы построения трансляторов. — Новосибирск: Наука. Сиб. отд-ние, 1986.