Главная > Методы обработки данных > Введение в теорию конечных автоматов
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

3.11. Минимальная форма

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

то

    (3.15)

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

Процесс отыскания минимальной формы автомата называется минимизацией автомата. Минимизация автомата состоит в определении эквивалентного разбиения Жив последующем применении (3.15) для построения Так как при применении (3.15) все состояния принадлежащие одному и тому же классу эквивалентности, дают один и тот же результат, то индивидуальное распознавание каждого состояния становится ненужным; для целей минимизации важно распознавание класса, к которому принадлежит каждое состояние. Поэтому всем состояниям принадлежащим классу эквивалентности можно приписать общее обозначение, например, . После этого (3.15) может быть интерпретировано как формулировка того, что автомат получается из автомата путем «объединения» одинаково обозначенных состояний в одно состояние. Способы, которыми это объединение производится, существенно зависят от того, каким образом определен автомат — таблицей, графом или матрицей. Эти способы будут описаны ниже. Хотя понимание этих способов облегчается благодаря предшествующей интуитивной интерпретации условия (3.15), их справедливость не зависит от этой интерпретации и вытекает непосредственно из самого условия.

Таблица переходов . Если заданы таблица переходов и эквивалентное разбиение автомата М, то таблица переходов автомата может быть построена следующим образом: (1) заменим обозначение каждого состояния, которое имеется в таблице переходов на обозначение класса, которому данное состояние принадлежит; (2) из каждой группы строк с одинаковыми обозначениями в клетках основного столбца (все такие строки являются одинаковыми в обеих подтаблицах вычеркнем все строки, кроме одной. Полученная при этом таблица является таблицей переходов

Например, автомат представленный таблицей 3.2, имеет классы эквивалентности Обозначим их произвольно 1, 2, 3, 4 и 5 соответственно. Делая первый шаг процедуры, заменим каждое обозначение «1», «3», и «8» в основном столбце и в подтаблице таблицы 3.2 на «1», каждое «2» и «4» - на «2»,

«5» и «7» — на «3», «6» — на «4», «9» — на «5». Полученная в результате таблица переходов приведена в таблице 3.14. Вычеркивание всех повторяющихся строк дает таблицу переходов АТ, показанную в таблице 3.15.

Таблица 3.14. Шаг 1 при построении таблицы переходов для автомата

Таблица 3.15. Автомат

Граф переходов М. Если заданы граф переходов и эквивалентное разбиение автомата М, то граф переходов автомата М может быть построен следующим образом: (1) заменим обозначение каждого состояния, которое имеется в графе переходов М, на обозначение класса, к которому относится данное состояние; (2) объединим все одинаково обозначенные состояния (рассматривая дуги графа как «гибкие связи») и представим объединенные состояния одним состоянием, имеющим общее обозначение; (3) из

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

В качестве примера на рис. 3.9 приведен граф переходов автомата полученный в результате применения описанной выше процедуры к графу переходов, изображенному на рис. 3.3. Использованные здесь обозначения классов эквивалентности те же, что были использованы при построении таблицы переходов.

Рис. 3.9. Автомат

Матрица переходов М. Если заданы матрица переходов и классы эквивалентности автомата М, то матрица переходов автомата М может быть построена следующим образом: (1) произведем симметрическую перестановку и симметрическое разбиение [М], так чтобы строки (и столбцы) группировались соответственно классам эквивалентности М (в результате получим матрицу такую же, как окончательная матрица получаемая при матричном методе эквивалентного разбиения); (2) заменим все обозначения строк (и столбцов) каждой группы, представляющей класс эквивалентности, одним обозначением этого класса; (3) заменим каждую подматрицу в разбитой матрице одной клеткой, содержащей все пары вход - выход, которые имеются в любой строке этой подматрицы (все строки в любой такой подматрице содержат одно и то же множество пар вход - выход). Полученная в результате матрица будет матрицей переходов М.

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

построении таблицы переходов

<< Предыдущий параграф Следующий параграф >>
Оглавление