
- •Раздел V. Основы теории конечных автоматов
- •1. Основные понятия теории
- •1.1. Автоматы Мили. Граф переходов. Однотактные и многотактные автоматы
- •1.2. Таблица состояний автомата
- •1.3. Реакция, эквивалентность и сокращение автоматов
- •1.4. Свойства классов k - эквивалентности автоматов. Построение сокращенных автоматов
- •1.5. Автоматы Мура
- •5) G : х q q - функция переходов.
- •2. Анализ и синтез двоичных автоматов
- •2.1. Числовая форма задания автоматов. Двоичные автоматы
- •2.2. Канонические уравнения и схема автомата
- •1. Канонические уравнения.
- •2.Схема автомата.
- •2.3. Оптимальные автоматы
- •2. По заданной канонической таблице состояний построить оптимальную функциональную схему автомата и граф пере-ходов.
1.3. Реакция, эквивалентность и сокращение автоматов
Наряду с непосредственным заданием автоматов при помощи графа переходов и таблицы состояний их можно уподобить “черному ящику”, который перерабатывает вход-ную информацию в выходную. Рассмотрим более подробно два эти вида информации и особенности её автоматной об-работки.
Пусть задан некоторый автомат Мили А, у которого известны: множество возможных входов Х = (Х1,Х2,…,ХN) и множество возможных выходов Z = (Z1,Z2,…,ZM).
Определение. Входным
словомХ
длины k
автомата Мили
назовём упорядоченную последовательность
элемен-тов из множества возможных входов
Х,
поступающих на вход автомата в моменты
времени t1
, t2,
…, tk.
Множество всех таких слов обозначим
через Хk.
Множество всех вход-ных слов конечной
длины обозначим через
.
По аналогии множество всех возможных
выходных слов конечной длины обозначим
через
.
Многие свойства автоматов наиболее просто иллюст-рируются на автономных автоматах, у которых множество
286
входов Х состоит из одного элемента а (Х = 1) и, соот-ветственно, все множества Хk имеют один элемент - аk. На Рис.5.3 дан граф переходов автономного автомата с входом Х = (а), с P внутренними состояниями Q = (Q1, Q2, …, QP) и множеством возможных выходов Z = (y,z).
Рис.5.3
Очевидно, конечный результат работы автомата А за-висит не только от того, какое словоХ подано на его вход, но и от начального состояния автомата Q(t0).
Определение. Выходным словомZ(Х,Q(t0)), соответ-ствующим входному словуХ длины k и начальному состоя-нию автомата Q(t0), называется последовательность эле-ментов из множества возможных выходов Z, поступившая
на выход автомата в моменты времени t1 , t2, …, tk.
Зависимость Z(Х,Q(t0)) задает автоматное отображе-ние из множества возможных входов в множество всех возможных выходных слов . Его основные свойства сле-дующие.
1. Свойство сохранения длины. ВходноеХ и выходное сло-ваZ =Z(Х,Q(t0)) имеют одинаковую длину по количеству элементов множеств Х и Z. При этом один элемент в данных множествах может кодироваться несколькими символами, поэтому с точки зрения кодирующих символов входное и выходное слова могут иметь различную длину .
287
2. Отсутствие предвосхищения. Символы выходного слова Z, выдаваемые в моменты времени t1, t2, …, tk, зависят только от начального состояния Q(t0) и символов входного словаХ в моменты t1, t2, …, tk. Зависимость от символовХ входного слова, вводимых в последующие моменты tk+1, tk+2, …, отсутствует.
Пример 1. Построить выходное словоZ =Z(Х, Q(t0)), соответствующее входному словуХ = (Х(t1), Х(t2), Х(t3), Х(t4))= abab и начальному состоянию Q2, для ав-томата, граф переходов которого дан на Рис. 5.4.
Рис.5.4
Решение. Поочередно рассматривая моменты времени, по-лучим:
t1 : Q(t1)= Q1, Z(t1)= x,
t2 : Q(t2)= Q1, Z(t2)= z,
t3 : Q(t3)= Q2, Z(t3)= z,
t4 : Q(t4)= Q3, Z(t4)= y.
Записывая подряд значения Z(t1) - Z(t4), получаем ответ:
Z(abab, Q2)=xzzy.
288
Определение. Автоматное отображение из множест-ва возможных входов в множество всех возможных вы-ходных слов , получаемое при использовании автомата А с начальным состоянием Qi = Q(t0) Q, называется реакци-
ей состояния Qi и обозначается А(Qi, ). Объединение ре-акций всех состояний Qi Q автомата называется реакцией автомата и обозначается А( ). Если в качестве множества входных слов взять все слова Хk длины k, то получаемые множества всех выходных слов назовем, соответственно, для фиксированного состояния и всего автомата реакциями глубины k и будем обозначать через А(Qi, Хk) и А (Хk) .
На практике реакции глубины k состояний Qi автомата А можно представить в виде таблицы, у которой слева перечислены все входные слова из множества слова Хk, а справа в соответствующих колонках – искомые реакции А(Qi, Хk) глубины k для всех внутренних состояний автомата Qi. Для краткости данную таблицу будем называть таблицей реакций состояний автомата глубины k .
Пример 2. Построить для автомата, заданного графом переходов (Рис.5.4), таблицу реакций состояний глубины 2.
Решение. В левом столбце перечислим все возможные вход-ные слова длины 2, справа приведем реакции глубины 2 состояний автомата Q1, Q2, Q3. В итоге получим следующую таблицу:
X2={Х(t1) Х(t2)} |
Z 2 = {Z(t1) Z(t2)} |
||
|
Q1 |
Q2 |
Q3 |
Aa |
zx |
xz |
xz |
Ba |
zz |
yz |
yz |
Ab |
zy |
xz |
xz |
Bb |
zz |
yy |
yy |
289
Рассмотрим, каким образом информация о реакциях состояний автомата может быть использована для оптими-зации его структуры.
Определение. Допустим, автоматы А и А имеют оди-наковые множества возможных входов Х и Х и множества возможных выходов Z и Z. Внутренние состояния Qi и Qj автоматов А и А называют эквивалентными, если их реак-ции А(Qi, ) и А(Qj, ) совпадают. Автоматы А и А назы-вают эквивалентными, если их реакции А( ) и А( ) сов-падают. По аналогии с реакциями состояния и автоматы, у которых совпадают реакции глубины k, будем называть k- эквивалентными.
Замечание 1 . Введенные определения эквивалентных состояний верны и в том случае, когда А = А, т.е. рассмат-риваются различные состояния одного автомата.
Замечание 2 . Введенные определения эквивалентных и k- эквивалентных состояний и автоматов можно рассмат-ривать как бинарные отношения на соответствующих мно-жествах внутренних состояний и множествах автоматов. Несложно проверить, что они удовлетворяют всем аксио-мам отношения эквивалентности: рефлексивности, симмет-ричности и транзитивности. Отношения эквивалентности и k- эквивалентности разбивают множество всех внутренних состояний Q любых автоматов с одинаковыми множествами Х и Z на непересекающиеся классы эквивалентности.
Обозначим разбиение множества всех внутренних со-стояний Q автомата А на классы k - эквивалентности через {Q}k =Qk,1,…, Qk,s . По определению эквивалентности
1)Qk,1 … Qk,s = {Q}k,
2)Qk,i {Q}k,Qk,j {Q}k, ij Qk,i Qk,j = .
Очевидно, если множество классов эквивалентности Q1 , …, Qs содержит некоторый класс Qр (1рs) , в котором более одного состояния - Qр =( Qр1, Qр2 ,… ), то все состоя-
290
ния в Qр могут быть заменены одним, имеющим одина-ковую реакцию с ними. Новый полученный автомат будет эквивалентен прежнему, но его структура упростится за счет уменьшения числа внутренних состояний.
Определение. Автомат А называют сокращенным, ес-ли все пары его внутренних состояний не являются экви-валентными.
У сокращенного автомата полностью проведена опи-санная выше процедура замены классов эквивалентных со-стояний одним представителем.