Графовое представление МП-автоматов
Как и конечные автоматы, МП-автоматы также допускают графовое представление, которое, конечно, является более сложным, чем графовое представление конечных автоматов. Так, МП-автомату
сопоставляется ориентированный мультиграф (в отличие от обычного ориентированного графа в мультиграфе допускается несколько дуг для одной и той же упорядоченной пары вершин, т.е. несколько дуг, начало и конец которых совпадают), множество вершин которого есть множество состояний автомата, а каждая дуга которого имеет метку в виде упорядоченной тройки , где — магазинный символ, — входной символ или пустая цепочка, — магазинная цепочка. По определению, дуга , ведущая из вершины (состояния) в вершину (состояние) имеет метку , если и только если в системе команд находится команда .
Замечание 8.16. Более формально ориентированный мультиграф может быть определен как упорядоченная тройка , где — множество вершин, — множество дуг, а — отображение множества в множество , называемое функцией инцидентности. Таким образом, если для различных дуг все значения равны, то возникает "множественная", или "кратная", дуга, т.е. множество дуг, отображаемых в одну и ту же упорядоченную пару вершин . Графически это можно изобразить так, как показано на рис. 8.40. В том случае, когда функция инцидентности есть инъекция, мультиграф превращается в обычный ориентированный граф.
 В мультиграфе, представляющем МП-автомат, множество дуг для заданной упорядоченной пары состояний находится во взаимно однозначном соответствии с множеством всех команд для различных
Можно было бы задавать МП-автомат и обычным ориентированным графом, но тогда пришлось бы по-иному вводить метки дуг. Технически удобнее каждой команде сопоставлять отдельную дугу и строить таким образом ориентированный мультиграф.
Магазинная метка пути в мультиграфе МП-автомата
Введем понятие магазинной метки пути в мультиграфе МП-автомата. Для этого заметим, что понятие пути в мультиграфе слегка отличается от такового в обычном ориентированном графе. Под путем в мультиграфе понимается произвольная последовательность дуг , где , такая, что любая пара соседних дуг этой последовательности смежна, т.е. существует вершина , в которую дуга заходит и из которой дуга выходит. Число дуг в пути (для конечного пути) назовем его длиной. Пути в мультиграфе будем записывать как цепочки в алфавите : так, запись обозначает путь, являющийся последовательностью дуг

Тогда магазинная метка дуги (т.е. пути длины 1) с меткой есть цепочка ; магазинная метка пути длины при условии, что магазинная метка пути , служащего началом исходного пути, определена и равна , а дуга имеет метку , равна . Напомним, что для произвольных алфавита , его буквы и цепочки в алфавите выражение означает цепочку , такую, что , и не определено, если первая буква цепочки отлична от (см. задачу 7.23). Таким образом, магазинная метка пути в мультиграфе, представляющем МП-автомат, может быть не определена.
Введем операцию Y-сцепления магазинных меток двух. смежных дуг и с метками и соответственно, полагая (рис. 8.41).
Средние компоненты меток дуг МП-автомата будем называть их входными метками. Входная метка пути в мультиграфе образуется стандартно из входных меток дуг, как в конечном автомате.
Рассмотрим в качестве примера МП-автомат для языка . Его система команд имеет следующий вид:
По этой системе команд строим мультиграф (рис. 8.42 ).
Ясно, что дуга с меткой не может быть сцеплена сама с собой, так как выражение не определено. Но верхняя петля в начальной вершине может сцепиться с нижней, а последняя сцепляется сама с собой. Например,
Неформально любой путь соответствует переписыванию с ленты в магазин символов . Тогда путь имеет входную метку и магазинную метку . Так, для цепочки будем иметь последовательность сцеплений:
Если в цепочке больше символов , чем , то мы, вычисляя магазинную метку соответствующего пути, придем к выражению , которое не определено. Если же в цепочке больше символов , чем , то мы не попадем в заключительную вершину, так как в нашем мультиграфе нет дуги с меткой, первая компонента которой равна , а вторая — .
Обратим внимание на то, что если мы забудем о магазинных метках и будем рассматривать наш мультиграф как граф обычного конечного автомата, то получим регулярное выражение . Таким образом, вычисление магазинных меток вдоль путей мультиграфа фильтрует множество входных цепочек, допускаемых МП-автоматом, т.е. в регулярном языке выделяется подмножество более сложной структуры — некоторый КС-язык.
Любая дуга, исходящая из начальной вершины и имеющая метку для произвольных и , называется стартовой. Тогда нетрудно дать графовую интерпретацию языка МП-автомата.
Теорема 8.15. Язык МП-автомата — это множество всех входных цепочек, являющихся в представляющем МП-автомат мультиграфе входными метками путей, первая дуга которых стартовая, последняя заходит в заключительное состояние, а магазинная метка равна пустой цепочке.
Если заметили ошибку, опечатку или есть предложения, напишите в комментариях.
|