Нормальная форма ДМП-автомата
Определение
Определение: |
ДМП в нормальной форме (англ. Normal Form) называется такой детерминированный автомат с магазинной памятью , представленный конечным набором состояний , входным алфавитом на ленте , стековым алфавитом и множеством переходов , который удовлетворяет следующим условиям:
|
Определение: |
Множество слов выводиых из конфигурации |
Замечание: здесь и далее речь идёт о ДМП с допуском по пустому стеку.
Пример
Пусть
- — стартовая конфигурация
и переходы имеют следующий вид:
Данный автомат будет являтся ДМП автоматом с допуском по пустому стеку в нормальной форме.
Автомат с единственным состоянием
Определение: |
Автомат с единственным состоянием (англ. Single State Push Down Automata, SDA) называется такой автомат Переходы в таком автомате имеют вид:
| , представленный тройкой: входной алфавит на ленте , стековым алфавит и множеством переходов .
Определение: |
Множество слов выводиых из конфигурации |
Определение: |
Автомат с единственным состоянием находится в нормальной форме, если все его переходы удовлетворяют условию:
|
Автомат с единственным состоянием можно сделать детерминированным, наложив следующее требование на переходы:
- если и , тогда
Детерминированный автомат с единственным состоянием соответствует по мощности "простым грамматикам".
Определение: |
Простая грамматика (англ. Simple Grammar) — такая грамматика, где все продукции имеют вид:
|
Однако, множество языков допускаемых детерминированным автоматом с единственным состоянием является строгим подможеством языков ДМП автоматов, поэтому больший интерес представляют строгие автоматы с единственным состоянием.
Для этого вводится отношение эквивалентности
на множестве , заданное разбиением на непересекающиеся подмоножества.Пример 1 Детерминированный стековый автомат
- — стартовые конфигурации
Переходы:
Разбиение
имеет вид Такой автомат будет детерминированным.Пример 2
- — стартовые конфигурации
Переходы:
Разбиение
имеет вид , что означает, что .Отношение
можно расширить на последовательность стековых символов:если:
- либо
- либо , , и .
Свойства
:- если и , тогда
- если и , тогда
- если и , тогда
Определение: |
Отношение
| на множестве является строгим (англ. strict) —, если выполняются следующие условия:
Определение: |
Автомат с единственным состоянием с заданным разбиением | является строгим, если отношение строгое на множестве .
Опеределение конфигураций автомата с единственным состоянием расшириряется на наборы из последовательностей символов стека
, которые записываются в виде суммы .Две суммы конфигураций считаются эквивалентными (записывается через
), если они представляют из себя один и тот же набор.Язык суммы конфигураций определяется —
Определение: |
Сумма конфигураций | называется допустимой (англ. admissible), если для всех елементов суммы, и при .
Таким образом
— тоже допустимо. Некоторые суммы из второго примера: , , , и — все эти суммы допустимые, в то время как будет недопустима, так как .Строгий автомат с единственным состоянием можно сделать детерминированным, заменив множество переходов
на : для каждого символа и переходы вида из заменяются на один переход . Таким образом для каждого и будет уникальный переход из .Связь ДМП автомата в нормальной форме и автомата с единственным состоянием
Утверждение: |
Допустимые конфигурации строгого автомата с единственным состоянием генерируют те же языки, что и конфигурации ДМП с допуском по пустому стеку. |
Пусть задан ДМП автомат в нормальной форме в виде четырех множеств .
Полученный автомат с единственным состоянием также находится в нормальной форме. Детерминируем новый автомат, чтобы сохранить детерминированность. Таким образом каждая конфигурация вида из исходного автомата была трансформирована в и . |
Применим алгоритм к самому первому примеру и получим следующее:
- , где
Примение
Существует задача об определении эквивалентности двух ДМП автоматов (два ДМП автомата и эквивалетны, если ). Для этого автоматы переводятся в нормальную форму, а потом переводятся в автоматы с единственным состоянием, для которых эта задача разрешима.