Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теория автоматов. Учебное пособие
.pdf
Рис. 4.12. Изображение взаимозависимости сигналов
Рис. 4.12. Изображение взаимозависимости сигналов
Рис. 4.13. Изображение зависимости
нескольких сигналов от одного
Часты ситуации, когда изменение некоторого сигнала вызывается
определенными изменениями нескольких других сигналов, что может
быть изображено так, как на рис. 4.14.
Рис. 4.14. Изображение зависимости
одного сигнала от совокупности других
Если уровень напряжения входного сигнала не влияет на определенном временном интервале на работу дискретного устройства, или
-51-

Рис. 4.15. Изображение зон неопределенности сигнала
если уровень выходного сигнала не может быть однозначно определен
на этом временном интервале, или не имеет принципиального значения, то такая ситуация иллюстрируется рис. 4.15.
Рис. 4.15. Изображение зон неопределенности сигнала
Временные диаграммы позволяют отображать изменения группы
сигналов, которые меняют свои значения в одинаковый момент времени, но имеют разные уровни сигналов. Временная диаграмма, представленная на рис. 4.16, иллюстрирует такие ситуации.
Рис. 4.16. Изображение изменения уровней
напряжения группы сигналов
На рис. 4.16 временная диаграмма для сигналов С1 и С2 характерна для иллюстрации работы, например, одного разряда счетчика, не
имевшего начальной установки или конкретное состояние которого не
имеет принципиального значения. Диаграмма С3 характерна для графического изображения переключения в высокоимпедансное состояние группы сигналов (например, на шине данных микропроцессора).
Диаграммой С4 можно иллюстрировать неопределенность состояния
или пассивность некоторой группы сигналов.
На временных диаграммах допускается изображение дополнительной буквенно-цифровой информации на выносных линиях, так как
показано на рис.4.17.
-52-

Рис. 4.17. Изображение дополнительной информации
на временных диаграммах
Временная диаграмма, изображенная на рис. 4.17, может быть прочитана следующим образом.
В некоторой системе после установки кода на шинах адреса А0…
А15 формирование сигнала выбора устройства (CS) должно быть произведено за время, не превышающее t
. После того, как будет сформи-
1
рован срез сигнала CS, через 200 наносекунд на шине данных (D0…D7)
будет установлен действительный код.
-53-

Q1 Q2 Q
Q
Q
Q
(b,0)(c,0)
a
(d,0)
(d,0)
(d,0)
b
(a,0)
(a,0)
(c,0)
(a,0)(c,0)(d,0)
Описательные обозначения различных состояний являются полезными для интуитивного понимания их роли при определении соотношений вход — выход и для определения функций переходов (δ)
и выходов (λ) по словесному описанию абстрактного автомата. Они становятся бесполезными после того, как эти функции определены. Поэтому обозначение состояний не имеет какого-либо особого значения
и может выбираться произвольно. Например, вершины графа на рис. 5.1,
соответствующие состояниям системы, можно обозначить первыми девятью буквами русского алфавита. Автоматы, у которых функции δ и λ
одинаковы, за исключением возможных различий в обозначениях состояний, называются изоморфными друг другу [13]. Если задан автомат A,
представляющий определенную систему, то любой автомат, изоморфный к А, тоже может служить представлением этой системы, т.е. система может быть представлена несколькими изоморфными автоматами.
(a,0)(b,0)(d,0) (b,0)(c,0)
(b,0)
(d,1) (c,0)
(
,0)
(a,0)
(b,0)
Q
0
3
(a,0)(d,0)
(b,0)(c,0)
Q
(b,0)
(a,0)(b,0)(c,0)
Рис. 5.1. Граф гипотетического автомата
-54-
4
,0)(c,0)(d,0)
(
7
Q
5
8
(b,0)
6
(a,0)(d,0)

Понятие изоморфизма в терминах графов переходов допускает
очень простую интерпретацию: автоматы изоморфны, если они имеют
одинаковые графы, отличающиеся, быть может, только обозначениями
вершин. Чтобы автомат А заменить изоморфным ему автоматом, достаточно изменить обозначения одной или нескольких вершин.
Пусть автомат А задан графом переходов с r вершинами. Переставив обозначения вершин всеми r! возможными способами, получим
множество, состоящее из r! изоморфных автоматов, которое называется семейством перестановок автомата А.
При рассмотрении автоматов нет необходимости ни наблюдать, ни
интересоваться физической природой состояний. Единственное назначение состояний в том, чтобы участвовать в определении зависимостей
между входом и выходом автоматов. Поэтому любое множество состояний, выполняющих эту функцию, является приемлемым, независимо
от того, выражают эти состояния какой-либо интуитивный смысл или
нет. Эта свобода выбора множества состояний очень важна, поскольку
она позволяет заменять одно множество другим, что может оказаться
удобным для многих целей, например, найти оптимальное или минимальное по тому или другому критерию множество состояний.
При всех таких рассмотрениях важную роль играет понятие экви-
валентности. Говорят, что состояние Q
томата А
и автомат A
эквивалентны, если автомат A1, находящийся в состоянии Qi
2
, находящийся в состоянии Оj под воздействием любой
2
автомата A1 и состояние Qj, ав-
i
входной последовательности символов, выдают одинаковые выходные
последовательности символов. Если Q
что состояния различимы. Состояния Q
му и тому же автомату. Таким образом, состояния Q
, и Qj не эквивалентны, то говорят,
i
, и Qj могут относиться к одно-
i
, и Qj эквивалентны
i
только тогда, когда, наблюдая выходные последовательности символов,
нельзя отличить автомат A
с начальным состоянием Q
с начальным состоянием Qi, от автомата A2
1
. Состояния Qi, и Qj различимы, если имеет-
j
ся хотя бы одна входная последовательность символов, которая дает на
выходах автоматов различные последовательности символов. Во всех
случаях предполагается, что автоматы A
и A2 имеют одинаковые вход-
1
ные и выходные алфавиты, но могут иметь различное число состояний.
Имеются способы выявления эквивалентности и различимости двух
состоянии автоматов для разных форм их задания.
Понятие эквивалентности можно распространить на весь автомат с помощью следующих определений. Автомат A
вивалентны, если каждому состоянию Q
автомата A1 соответствует по
i
и автомат A2 эк-
1
-55-

крайней мере одно эквивалентное ему состояние в автомате A2 и если
каждому состоянию Q
эквивалентное ему состояние в автомате A
вивалентны, то они различимы. Автоматы A
ми тогда, когда имеется, по крайней мере одно состояние в A
не является эквивалентным никакому состоянию в A
по крайней мере одно состояние в A
тным никакому состоянию в A
автомата A2 соответствует по крайней мере одно
j
которое не является эквивален-
2
. Таким образом, автоматы A1 и A2, для
1
. Если автоматы A1 и A2 эк-
1
и A2 являются различимы-
1
, и если имеется
2
, которое
1
которых в качестве начальных состояний взяты эквивалентные состояния Q
, и Qj, являются эквивалентными только тогда, когда, наблюдая
i
последовательности символов на их выходах, образующихся под воздействием любой входной последовательности символов, нельзя отличить автомат А
от автомата А2. Эквивалентность инициальных автома-
1
тов означает, что они осуществляют одинаковую переработку входного
алфавита в выходной, а эквивалентность не инициальных — что этого
всегда можно добиться путем подходящей настройки (нахождения эквивалентных состояний).
Для всякого автомата Мили существует эквивалентный ему автомат Мура (это справедливо как для инициальных, так и для не инициальных автоматов). Поэтому автоматы Мили и Мура обладают равными
функциональными возможностями в том смысле, что всякое преобразование дискретной информации, осуществляемое в одном из них, осуществимо и в другом.
Пусть даны автоматы A
с Q = {Q11, Q12, Q13} и A2 с Q = {Q21, Q22}
1
(рис.5.2), имеющие одинаковые входные алфавиты x = {а, b} и выходные
алфавиты y = {0, 1}. Эквивалентные состояния могут существовать в одном автомате. Действительно, для автомата А
состояния Q12 и Q13 экви-
1
валентны, так как для каждого из них поступление символа a приводит
к переходу в одно и то же состояние Q
и выдаче выходного символа 1
11
и, следовательно, далее любая последовательность входных символов
не позволит различить состояния Q
и Q13 автомата A1. Если начало
12
последовательности входных символов будет состоять из любого числа
символов b, после которых следует символ а, то можно убедиться, что
и в этом случае по выходным последовательностям автомата состояния Q
и Q13 не различимы. Автоматы A1 и A2, графы переходов которых
12
приведены на рис. 5.2, эквивалентны, так как, проведя аналогичные
рассуждения, можно увидеть, что состояние Q
нию Q
Следовательно, автоматы A
, состояние Q
21
— состоянию Q22 и состояние Q13 — состоянию Q22.
12
и A2 эквивалентны.
1
эквивалентно состоя-
11
-56-

1
. Таким образом, автоматы A1 и A2, для которых
i
, и Qj, явля-
1
от автомата А2. Эквива-
1
с Q = {Q11, Q12, Q13} и A2 с Q = {Q21, Q22}
1
состояния Q12 и Q13 эквивалентны, так
11
и выдаче выходного символа 1 и, следовательно, далее любая
12
и
1
. Если начало последовательности входных символов будет со-
13
не различимы. Автоматы A1 и A2, графы переходов которых
11
эквивалентно состоянию Q21, состояние
22
и состояние Q13 — состоянию Q22. Следовательно, авто-
Q
Q
(b,1)
Q
11 Q11
(b,1)
(a,1)
(a,0)
(a,1)
(a,0)
(b,1)
(b,1)
(a,1)
A1 A
2
б
1
и A2, для которых
i
, и Qj, явля-
1
от автомата А2. Эквива-
12
, Q13} и A2 с Q = {Q21, Q22}
12
и Q13 эквивалентны, так
12
и
2
, графы переходов которых
21
, состояние
22
. Следовательно, авто-
(a,0)
(b,1)
(b,1)
(a,1)
A
11
12
(b,1)
Q
Q
13
11
а б
Рис. 5.2. Пример эквивалентных автоматов А
При создании автоматов входной и выходной алфавиты, как правило, заданы, в то время как на множество Q внутренних состояния
обычно никаких условий не накладывается. Требуемое преобразование входной последовательности символов в выходную может быть
осуществлено автоматами с различным числом состояний. Поэтому
возникает желание построить автомат, для которого это число минимально. Автоматы, одинаково преобразующие входную информацию
в выходную, называют эквивалентными. Автомат, эквивалентный заданному и имеющий наименьшее число состояний, назовем минимальным. Тогда проблему построения минимального автомата можно
назвать задачей минимизации автомата.
Для дальнейшего обсуждения проблемы минимизации автомата
вводят понятие k-эквивалентности. Состояние Q
яние Q
ложении к А
— автомата A2 называются k-эквивалентными, если при при-
j
1/Qi
, и к А2/Qj входной последовательности длины k они вы-
автомата A1 и состо-
i
рабатывают одинаковые выходные последовательности. Обозначение
A/Q принято для краткой записи высказывания «автомат А в состоянии Q». Если Q
ся k-различимыми. Обозначения А
и тому же автомату. Для 1-различимых состояния принято называть
явно различимыми. Если два состояния являются k-эквивалентными,
и Qj не являются k-эквивалентными, то они называют-
i
и A2 могут относиться к одному
1
то они являются и l-эквивалентными для каждого l ≤ k. Если два состояния являются k-различимыми, то они являются и l-различимыми для
каждого l ≥ k. Если состояния Q
и Qj эквивалентны для любого конечно-
i
го k, то они эквивалентны. Состояние, в которое переходит автомат из
состояния Q
вается k-м преемником Q
, при подаче входной последовательности длины k, назы-
i
по отношению к этой последовательности.
i
-57-
2
Q
11
и А
1
2

Рис. 5.2. Пример эквивалентных автоматов А1 и А
2
i
автомата A1 и состояние Qj — авто-
1/Qi
, и к
i
и Qj не являются k-
1
и A2
i
и Qj эквивалентны для любого конечного k, то
i
,
Э к в и в а л е н т ы
A
Q
i
Q
i1
1
Q
i2
Q
ik
Q
j
Q
j1
Q
j2
A
2
Q
jk
Рис. 5.3. k-эквивалентные автоматы
Если состояния Qi и Qj являются эквивалентными, то их k-е преемники по отношению к любой входной последовательности длины k
и для любого k являются эквивалентными. Входным последовательностям, поданным на A
щиеся состояниями Q
и A
соответственно. Приведенное выше утверждение означает, что
2
и A2/Qj, можно сопоставить два пути, начинаю-
1/Qi
и Qj на графах переходов (рис. 5.3) автоматов A1
i
если два начальных состояния на этих путях эквивалентны, то каждые
два соответствующих состояния на этих путях (т.е. состояния, в которые
переходят автоматы из начальных состояний после прохождения одного и того же числа дуг) являются также эквивалентными.
Построение минимального автомата А' осуществляется в два этапа. Вначале проводится разбиение множества состояний автомата на
классы эквивалентных состояний, а затем на этой основе строится минимальный автомат. Разбиение состояний автомата на классы эквивалентных состояний ведется по следующим правилам:
1. Все состояния, принадлежащие к одному классу, должны быть
k-эквивалентными;
2. Все состояния, принадлежащие к разным классам, должны быть
k-различимыми.
Такое разбиение называется k-эквивалентным разбиением ав-
томата. Минимизация автомата производится за счет объединения
вершин графа переходов, принадлежащих к одному классу эквивалентных состояний. Метод минимизации автомата, основанный на объединении эквивалентных состояний, был предложен Д.А. Хаффменом
и состоит в последовательном выделении классов эквивалентных состояний с помощью таблицы переходов и таблицы выходов автомата.
Рассмотрим метод Хаффмена на примере. Пусть в результате первого этапа синтеза автомата A
женный на рис.5.4. Для автомата A
ходной алфавит y = {1, 0} и множество состояний Q = {Q
был получен граф переходов, изобра-
3
входной алфавит x = {a, b, g}, вы-
3
, Q2, …, Q9}. По
1
-58-

1
= {Q1, Q3, Q5, Q7, Q8} и V2 = {Q2, Q4, Q6, Q9}.
Q
Q
Q4 Q
Q7 Q8 Q
(,1)
(,0)
Q
Q
(,1)(,0)
графу переходов построены таблицы переходов (табл. 5.1) и выходов
(табл. 5.2). Если двум состояниям автомата соответствуют различные
значения столбцов в таблице выходов (табл.5.2), то эти состояния не
эквивалентны, так как при подаче одного из входных символов выходные символы различаются. В то же время множество состояний можно
разбить на классы 1-эквивалентных состояний так, что в один и тот же
класс V
попадут те состояния, которым соответствуют одинаковые зна-
4
чения столбцов в таблице выходов (табл. 5.2). Классами 1-эквивалентных состояний будут V
= {Q1, Q3, Q5, Q7, Q8} и V2 = {Q2, Q4, Q6, Q9}.
1
(,1)(,0)
1
a
(,0)
(,0)
(,0)
5
Q
(,0)
(,0)
(,1)
3
(,0)
(,1)
(,0)
Q
6
(,1)
2
Q
b
(,1)
(,1)
9
Рис. 5.4. Граф минимизируемого автомата А
(,1)(,1)
(,1)(,1)
(,0)
(,0)
(,0)(,1)
(,0)
e
3
Таблица 5.1
Q
X
i
Q
Q
Q
1
2
α
Q
Q
2
β
Q
γ
Q
1
Q
2
4
Q
5
4
Q
3
Q
Q
2
Q
Q
2
Q
Q
5
i
Q
Q
Q
Q
4
5
6
7
Q
Q
3
6
Q
2
4
Q
2
2
Q
8
Q
Q
6
Q
9
2
Q
6
8
Q
8
9
Q
Q
4
Q
Q
7
Q
4
3
Q
7
7
-59-

Таблица 5.2
Q
X
i
Q
Q
Q
1
2
α
1
0
β
0
1
γ
0
1
Q
3
1
0
0
1
0
1
i
Q
Q
Q
Q
4
5
6
7
1
0
1
0
1
0
0
1
0
Q
8
9
1
0
0
1
0
1
Все состояния, входящие, например, в класс V2, есть состояния
1-эквивалентные, но это не значит, что Q
и Q4 не является в то же вре-
2
мя, например, 3-эквивалентными. Для эквивалентности внутренних
состояний автомата недостаточно их эквивалентности для некоторого
конкретного значения k, требуется эквивалентность при любом k, т.е.
нужно, чтобы при любом другом возможном переходе, при начальной
установке автомата в эквивалентные состояния, отображения (преобразования) любого входного символа в выходной совпадали. Для проверки этого условия следующий шаг делаем из первых преемников
и выясняем, будут ли состояния, ранее входившие в один класс эквивалентных состояний, 2-эквивалентными, т.е. остаются ли множества
состояний в своих классах эквивалентных состояний.
Построим таблицу переходов (табл. 5.3), строкам и столбцам которой соответствуют значения X
, и Qi. На пересечении j-й строки к i-го
j
столбца таблицы ставим обозначение класса 1-эквивалентных состояний, содержащего состояние, в которое переходит автомат из состояния
под действием символа Xj. Так, например, в табл. 5.3 на пересечении
Q
i
строки а и столбца Q2 стоит класс V2, так как в соответствии с табл. 5.1
автомат из состояния Q
при входном символе а переходит состояние
2
Q1, которое входит в класс V1 1-эквивалентных состояний.
Если элементам класса Vi будут соответствовать различные значения столбцов табл. 5.3, то этот класс не является классом 2-эквивалентных состояний. В этом случае каждый класс V
новых, причем в каждый из них входят все состояния из класса V
разбивается на два
i
, с оди-
i
наковыми значениями столбцов. Анализ табл. 5.3 показывает, что класс
V1 является 2-эквивалентным, потому что все состояния Q1, Q3, Q5, Q7, Q8
в таблице имеют одинаковые значения столбцов.
Это означает, что состояния, входящие в класс V
, являются не
1
только 1-эквивалентными, но и 2-эквивалентными состояниями. Класс
должен быть разбит на два, один из которых, являющийся классом
V
2
2-эквивалентных состояний, будет содержать состояния Q
гой — только Q
, не имеющее 2-эквивалентного состояния. В этом мож-
9
, Q4, Q6, а дру-
2
-60-
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
