
4. Минимизация автомата
Теорема. Для любого автомата существует минимальный автомат единственный с точностью до изоморфизма.
Рассмотрим алгоритм минимизации автомата по методике Мура:
В таблице переходов автомата отыскиваются строки, у которых имеются рабочие состояния в одинаковых столбцах. Под рабочим состоянием будем понимать состояние, отличное от состояния ошибки. Состояние ошибки на таблице переходов обозначено пустой клеткой. Состояния, соответствующие таким строкам, заносятся в группы.
Рабочие состояния внутри группы проверяются на эквивалентность.
Два состояния qi и qj называются эквивалентными, если для любого
входного символа Xk функции выходов и функции переходов пар
( qi, Xk ) , ( qj, Xk ) будут равны. ( В курсовой работе функции выходов
не заданы).
Если среди рабочих состояний групп через ряд проверок устанавливается эквивалентность, то такие состояния также считаются эквивалентными.
Продолжим рассматривать решение в соответствии с обозначенным алгоритмом. Анализ делаем по табл. 4. Группы состояний, проверяемых на эквивалентность, следующие:
( q1;q2;q3;q10), (q4,15; q5,15 ), (q8;q11; q12,14 ).
Проведем анализ этих состояний по переходам. Устанавливаем, что состояния q4,15 и q5,15, а также cостояния q2 и q3 являются внутри обозначенных пар эквивалентными по определению. Cостояния q1 и q2 эквивалентны через переход по x7 в эквивалентные состояния q4,15 и q5,15. Состояние q10 эквивалентно q1 и q2 через переход по x7. Состояния q8, q11 и q14,15 не эквивалентны, так как из них по x1 следуют переходы в состояния q1, q12 и q 12,14, которые никак нельзя считать эквивалентными.
Обозначив эквивалентные состояния одним состоянием, введем новые нетерминальные символы r вместо q. Будем иметь:
r0 = q0; r1 = (q1, q2, q3; q10 ); r2 = ( q4,15; q5,15 ); r3 = q6; r4 = q7,9;
r5 = q8; r6 = q11; r7 = q12; r8 = q12,14; r9 = q13, r10= q15.
Введем полученные замены и подстановки в табл.5 переходов автомата. Будем иметь новую таблицу 6 эквивалентную с точностью до изоморфизма таблице переходов 5.
Таблица 6
Соответствие нетерминалов |
Терминалы |
|||||||||||||||
Х0 |
Х1 |
Х2 |
Х3 |
Х4 |
Х5 |
Х6 |
Х7 |
|||||||||
r0 -нач.сост. |
q0 |
r1 |
|
|
|
|
|
r3 |
r4 |
|||||||
r1 |
q1;q2;q3;q10 |
|
|
|
|
|
|
|
r2 |
|||||||
r2 |
q4,15; q5,15 |
|
|
|
|
r0 |
r10 |
|
|
|||||||
r3 |
q6 |
|
|
|
|
|
r6 |
|
r8 |
|||||||
r4 |
q7,9 |
r5 |
|
|
r1 |
|
|
|
|
|||||||
r5 |
q8 |
|
r1 |
|
|
|
|
|
|
|||||||
r6 |
q11 |
|
r7 |
|
|
|
|
|
|
|||||||
r7 |
q12 |
|
|
|
|
|
r9 |
|
|
|||||||
r8 |
q12,14 |
|
r9 |
|
|
|
r9 |
|
|
|||||||
r9 |
q13 |
|
|
|
|
|
|
r10 |
|
|||||||
r10 закл. сост. |
q15 |
|
|
|
|
|
|
|
|