Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lekcii_dm.doc
Скачиваний:
50
Добавлен:
08.11.2018
Размер:
11.89 Mб
Скачать

Определение.

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

Определение.

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

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

1. Заданные регулярные события (число которых предполагается конечным) представляются правильно записанными регулярными выражениями R1,…,Rp. Все места (как основные, так и не основные) в этих выражениях обозначаются вертикальными черточками (линиями).

2. Каждому основному месту в выражениях R1,…,Rp приписывается в качестве индекса неотрицательное целое число. При этом всем начальным местам приписывается один и тот же индекс (нуль). Что же касается остальных основных мест, то они нумеруются в произвольном порядке натуральными числами 1, 2, …

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

3. Индекс (основной) каждого основного места α распространяется в качестве неосновного индекса на все места (как основные, так и неосновные), подчиненные месту α, но отличные от него самого.

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

4. Строится таблица переходов некоторого автомата Мура. В качестве состояний этого автомата берутся подмножества множества всех основных индексов.

При этом подмножество, состоящее из основных индексов i1,…, ik (k≥1), будем обозначать через i1∨i2∨…∨ik, а пустое множество основных индексов – звездочкой (соответствующее ему состояние автомата А называется пустым).

Построение таблицы переходов с состояниями автомата Мура А начинается с вписывания обозначений строк и столбцов таблицы.

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

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

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

5. Каждое из состояний i1∨i2∨…∨ik (k≥1), обозначающее столбцы таблицы переходов, отмечается множеством (Rj1, …, Rjm) всех символов тех и только тех регулярных выражений R1,…,Rp, конечные места которых содержат в числе своих индексов (как основных, так не основных) хотя бы один из индексов i1,…,ik.

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

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

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

Событие, заданное регулярным выражением R, представляется множеством всех тех и только тех состояний, которые отмечены множествами, содержащими в качестве своих элементов выражение Ri. Это же событие (за вычетом лишь пустого слова, если оно содержится в событии) представляется в автоматах А и В множеством всех тех и только тех выходных сигналов (множеств), состоящих из выражений R1,…,Rp, которые содержат в своем составе выражение Ri(i = 1,..., p). Множество состояний, отмеченных пустым множеством ( ), или выходной сигнал ( ) представляет событие, состоящее из всех слов входного алфавита, не вошедших в заданные события.

В процессе синтеза автомата или по окончании этого процесса производят переобозначения состояний и выходных сигналов с целью упрощения записи таблиц переходов и выходов. Обычно при переобозначении состояний их просто нумеруют натуральными числами 1, 2, ..., используя для обозначения начального состояния единицу. В некоторых случаях оказывается целесообразным обозначать состояния числами 0, 1, 2, ..., тогда начальное состояние обозначается всегда нулем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]