- •Глава 1. Основная модель 8
- •Глава 2 21
- •2.1. Введение 21
- •Глава 3 47
- •3.1. Введение 47
- •Глава 4 77
- •4.1. Введение 77
- •Глава 7 157
- •7.1. Введение 157
- •От редактора перевода
- •Предисловие
- •Глава 1. Основная модель
- •1.1. Введение
- •1.2. Многополюсный черный ящик
- •1.3. Дискретность времени
- •1.4. Конечность алфавита
- •1.5. Состояния
- •1.6. Определение основной модели
- •1.7. Примеры конечных автоматов
- •1.8. Определение множества состояний по внутренней структуре
- •1.9. Другая модель
- •1.10. Предсказание поведения автомата
- •Глава 2
- •2.1. Введение
- •2.2. Таблица переходов
- •2.4. Изоморфные автоматы
- •2.5. Граф переходов
- •2.6. Классификация состояний и подавтоматов
- •2.7. Разложение автоматов и расщепляемый автомат
- •2.8. Матрица переходов13
- •2.9. Матрицы переходов высшего порядка
- •2.10. Элементарные пути
- •2.11. Определение минимальных путей и полных контуров
- •2.12. Скелетная матрица
- •2.13. Частичное построение матриц
- •Глава 3 эквивалентность и минимизация автоматов
- •3.1. Введение
- •3.2. Эквивалентность состояний
- •3.5. Эквивалентные разбиения
- •8.6. Разбиение при помощи таблиц Рk
- •3.7. Разбиение при помощи таблицы пар
- •8.8. Матричный метод разбиения
- •3.9. Эквивалентность автоматов
- •8.10. Эквивалентное разбиение множеств автоматов
- •3.11. Минимальная форма
- •3.12. Свойства минимальной формы
- •3.13. Уменьшение числа состояний автомата последовательным объединением
- •3.14. Класс минимальных автоматов
- •Глава 4 эксперименты по распознаванию состояний
- •4.1. Введение
- •4.2. Классификация экспериментов
- •4.3. Диагностические и установочные эксперименты
- •4.4. Диагностические эксперименты для двух состояний
- •4.5. Разновидности диагностической задачи с двумя состояниями
- •4.6. Дерево преемников
- •4.7. Диагностическое дерево
- •4.8. Простые безусловные диагностические эксперименты
- •4.9. Простые условные диагностические эксперименты
- •4.10. Кратные безусловные диагностические эксперименты
- •4.11. Кратные условные диагностические эксперименты
- •4.12. Установочное дерево
- •4.13. Простые безусловные установочные эксперименты
- •4.14. Простые условные установочные эксперименты
- •4.15. Регулярные безусловные установочные эксперименты
- •4.16. Регулярные условные установочные эксперименты
- •4.17. Следствия, связанные с экспериментами по распознаванию состояний
- •Глава 5 эксперименты по распознаванию автоматов
- •5.1. Введение
- •5.2. Общая задача распознавания автомата
- •5.3. Распознавание автоматов известного класса
- •5.4. Задача распознавания повреждений
- •5.5, Сильносвязные автоматы
- •5.6. Некоторые свойства сильносвязных автоматов
- •5.7. Распознавание сильносвязных (n, р, q)-автоматов
- •5.8. Автоматы без потери информации31
- •Глава 6 автоматы с конечной памятью
- •6.1. Введение
- •6.2. Представление систем с конечной памятью
- •6.3. Свойства автоматов с конечной памятью
- •6.4. Определение памяти автомата
- •6.5. Минимальная X-z-функция
- •6.6. Линейные двоичные автоматы37
- •6.7. Временная характеристика линейного двоичного автомата
- •6.8. Распознавание линейного двоичного автомата
- •6.9. Не зависящие от выхода автоматы
- •Глава 7 автоматы с ограничениями на входе
- •7.1. Введение
- •7.2. Совместимость состояний
- •7.3. Квазиэквивалентные автоматы
- •7.4. Определение минимальных форм
- •7.5. Метод уменьшения числа состояний автоматов с ограничениями на входе
2.8. Матрица переходов13
Матрицы переходов являются математической копией графов переходов; они дают возможность формализовать ряд операций, которые на графе переходов могут быть выполнены визуально. Матрицы переходов поэтому имеют преимущества в тех случаях, когда эти операции не могут быть выполнены человеком-исследователем и, следовательно, не могут быть выполнены визуально или когда граф переходов настолько сложен, что использование визуальной методики бесполезно.
Для автомата М, имеющего n состояний, матрица переходов состоит из n. строк и n столбцов и обозначается [М]. Пусть {σ1, σ2, .:., σn}—множество состояний автомата М и пусть bij обозначает дугу графа переходов автомата М, направленную от σi к σj. Элемент (i, j) (т. е. содержимое клетки, расположенной на пересечении i-й строки и j-го столбца матрицы [М] обозначается еij и определяется так:
Для ясности обычно обозначение k-го состояния σk приписывают k-й строке и k-му столбцу и называют их «строка σk» и «столбец σk» соответственно. Выражение (2.12) изображает матрицу переходов автомата А1, заданного в виде графа на рис. 2.2.
Если р — мощность входного алфавита автомата М, то каждая строка в [М] должна содержать точно р пар вход-выход, причем каждая пара имеет входной символ, отличный от входного символа любой другой пары. Дуги, заходящие в состояние σk, представляются недиагональными элементами14 столбца σk; дуги, исходящие из состояния σk, представляются недиагональными элементами строки σk ; петля состояния σk представляется диагональным элементом в строке σk или
столбце σk. Следовательно, если σk — переходящее состояние, то все недиагональные элементы в столбце σk (но не в строке σk) равны нулю; если σk —тупиковое состояние, то все недиагональные элементы в строке σk (но не в столбце σk) равны нулю; если σk —изолированное состояние, то все недиагональные элементы в строке σk и столбце σk равны нулю.
Если Si = {σi1, σi2, ..., σir}, то определенное в § 2.6 множество G1 (Si) представляет собой объединение Si и обозначений столбцов, в которых элементы, принадлежащие строкам σi1, σi2, ..., σir, не равны нулю. Определенное в § 2.7 множество HI(Si) представляет собой объединение Si обозначений столбцов, в которых элементы, принадлежащие строкам σi1, σi2, ..., σir, не равны нулю, и обозначений строк, в которых элементы, принадлежащие столбцам σi1, σi2, ..., σir, не равны нулю. Например, из матрицы [Al] ясно видно, что для автомата A1 G1(l, 2) = {1, 2, 3} и Н1(4, 5)={1, 3, 4, 5}. Таким образом, ясно, что матрица переходов является удобным инструментом для выполнения алгоритмов 2.1, 2.2 и 2.3.
Для того чтобы определить, составляет ли множество S(σi1, σi2, ..., σir) преходящий, тупиковый или изолированный подавтомат автомата М, надо строки и столбцы матрицы [М] переставить так, чтобы строки и столбцы σi1, σi2, ..., σir заняли соседние положения, начиная с первой строки и первого столбца соответственно. Как показано в (2.13), эта перестановка делит матрицу [М] на четыре подматрицы [М11], [М12], [M21], [М22], причем строками и столбцами [М11] являются строки и столбцы σi1, σi2, ..., σir
Обозначая матрицу, все элементы которой равны нулю, через [0], можно сделать вывод, что Si составляет преходящий подавтомат, если [M21] = [0], а [М12] ≠ 0, тупиковый подавтомат, если [М12] = [0], а [M21] ≠ 0, и изолированный подавтомат, если [М12] = [М21] = [0]. В (2.14) представлена матрица переходов автомата A3, изображенного на рис. 2.5, в которой строки и столбцы переставлены так, чтобы выделить тупиковый подавтомат {1, 4, 7}, преходящий подавтомат {2, 5, 8} и изолированный подавтомат {3, 6, 9}.
Если Si
составляет тупиковый или изолированный
подавтомат, то [M12]
= [0] и, следовательно, каждая строка в
[М11] содержит все р пар вход-выход,
где р — мощность входного алфавита.
Удалив [M12], [M21]
и [М22] из [М], получим матрицу [М11]
размером r
r,
которую можно трактовать как матрицу,
представляющую независимый автомат
М11 с r состояниями,
имеющий тот же входной алфавит, что и
М. Отсюда следует то же заключение,
которое было получено в § 2.6: если автомат
находится в состоянии, принадлежащем
тупиковому или изолированному подавтомату,
то все состояния, которые не принадлежат
этому подавтомату, и все дуги, исходящие
из этих состояний, могут быть исключены.
