Основные понятия теории абстрактных автоматов
1.2. Методы задания автоматов
Для задания конечного автомата S требуется описать все элементы множества
![S=\{A, W, Z, \delta, \lambda, а_1\},](/sites/default/files/tex_cache/c76b9ff1744525e25a458481033ecf32.png)
наиболее часто используемой формой описания элементов множества S используется табличный, графический, матричный способы.
Теоретико-множественное представление автоматов.
Для задания конечного автомата все элементы множества должны быть заданы явно. Так для автомата Мили:
![\delta: A \times Z \to A(a_s = \delta (a_m,z_i)/a_s \inA);](/sites/default/files/tex_cache/9d89c53f244b3aefcd65ea0e4ad0e763.png)
![\lambda: A \times Z \to W(w_s = \lambda (a_m, z_i)/ a_s \in A, w \in W);](/sites/default/files/tex_cache/2979fb9dc8b7d18310bfbeddbc3a3334.png)
- начальное состояние автомата.
Например, автомат Мили , представленный в табл.1.3 в явной форме описывается так:
![A=\{a_1, a_2, a_3 \}; Z= \{ z_1, z_2\}; W= \{ w_1, w_2\}; \delta: a_2= \delta( a_1 , z_1); a_3= \delta( a_1 , z_2); a_1= \delta( a_2 , z_1); a_3= \delta( a_2 , z_2); a_3= \delta( a_3 , z_1); a_2= \delta( a_3 , z_2); \lambda: w_1= \lambda( a_1 , z_1); w_2= \lambda ( a_1 , z_2); w_2= \lambda ( a_2 , z_1); w_1= \lambda ( a_2 , z_2); w_1= \lambda ( a_3 , z_1); w_2= \lambda ( a_3 , z_2).](/sites/default/files/tex_cache/727f91981515bc2c5bba5b97bbf1d04e.png)
Автомат Мура , представленный в табл.1.8 в явной форме описывается так:
![A=\{a_1, a_2, a_3 , a_4, a_5 \}; Z= \{ z_1, z_2, z_3\}; W= \{ w_1, w_2, w_3\}; \delta: a_2= \delta( a_1 , z_1); a_1= \delta( a_1 , z_2); a_4= \delta( a_2 , z_3); a_1= \delta( a_2 , z_1); a_5= \delta( a_2 , z_2); a_3= \delta( a_2 , z_3); a_1= \delta( a_3 , z_1); a_2= \delta( a_3 , z_2); a_5= \delta( a_3 , z_3); a_1= \delta( a_4 , z_1); a_5= \delta( a_4 , z_2); a_2= \delta( a_4 , z_3); a_1= \delta( a_5 , z_1); a_3= \delta( a_5); a_4= \delta( a_5 , z_3); \lambda: w_1= \lambda( a_1); w_3= \lambda ( a_2); w_2= \lambda ( a_3); w_1= \lambda ( a_4); w_3= \lambda ( a_5).](/sites/default/files/tex_cache/936b0e335f0f754d45b313cbf5d4209f.png)
Табличная форма.
Табличная форма для автомата Мили иллюстрируется табл.1.1 (переходов) и табл.1.2 (выходов).
Строки этих таблиц соответствуют входным сигналам, а столбцы - состояниям, причем крайний левый столбец обозначен начальным состоянием . На пересечении столбца
и строки
…. в таблице переходов ставится функция перехода
, то есть состояние, в которое автомат переходит из состояния
под действием входного сигнала
а в таблице выходов - выходная функция
, то есть соответствующий этому переходу выходной сигнал
.
Пример табличного способа задания автомата Мили показан в табл. 1.3 (переходов) и табл. 1.4 (выходов).
Автомат называется частично заданным, если он определен не для всех пар переходов ( ). Для частично заданного автомата на месте отсутствующего перехода ставится прочерк как в таблице переходов, так и в таблице выходов.
Пример табличного способа задания частичного автомата показан в табл.1.5 (переходов) и табл.1.6 (выходов).
Табличная форма задания автомата Мура представляет собой совмещенную табл.1.7, в которой выходной сигнал, соответствующий состоянию в автомате Мура размещен в верхней строке над соответствующими состоянием, а остальная информация аналогична представлению автомата Мили.
Пример представления автомата Мура приведен в табл.1.8.
\ wG | w1 | w3 | w2 | w1 | w3 |
---|---|---|---|---|---|
zf\ am | a 1 | a2 | a3 | a4 | a5 |
z1 | a2 | a1 | a1 | a1 | a1 |
z2 | a3 | a5 | a2 | a5 | a3 |
z3 | a4 | a3 | a5 | a2 | a4 |
Графовая форма задания абстрактных автоматов
В данном случае автомат представляется графом, в котором:
- множество
изображено вершинами графа;
- функция
задана дугами графа, причем две вершины графа
и
, соединяются дугой, если в автомате существует переход из
в
;
- множество
изображено метками дуг:
ставится на дуге из вершины
в вершину
, если в автомате существует переход из
в
под действием входного сигнала
;
- функция
задана метками дуг или вершин: для автомата Мили дуга из вершины
в вершину
помечается выходным сигналом
, если в автомате существует переход из
в
и при этом вырабатывается выходной сигнал
; а для автомата Мура выходным сигналом
помечается вершина, определяющая
.
На рисунке 1.8 приведены примеры описания автомата Мили и автомата Мура:
Матричная форма
Для автомата Мили матричная форма состоит из матрицы размерностью
, где каждый элемент матрицы
стоящий на пересечении
-ой строки и
-го столбца соответствует входному сигналу
, вызывающему переход из состояния
в состояние
с выработкой выходного сигнала
. Пример матричного описания автомата Мили показан ниже.
Для автомата Мура матричная форма состоит из матрицы размерностью
, где каждый элемент матрицы
, стоящий на пересечении
-ой строки и
-го столбца, соответствует входному сигналу
, вызывающему переход из состояния
в состояние
Так как выходной сигнал
. в автомате Мура зависит только от состояния, следовательно, выходные сигналы могут быть представлены матрицей-столбцом. Пример матричного описания автомата Мура показан на формуле, приведенной выше.