- •Глава 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
ТАБЛИЦЫ, ГРАФЫ И МАТРИЦЫ ПЕРЕХОДОВ
2.1. Введение
После того как для данной системы установлены входной алфавит, выходной алфавит и множество состояний, словесное описание системы может быть формализовано при помощи таблицы, графа или матрицы. Таблицы, графы и матрицы — различные формы представления характеристических функций конечного автомата, который описывает данную систему. Такое представление совершенно необходимо для проведения любого точного анализа или синтеза конечного автомата, и мы будем им широко пользоваться в настоящей книге. Поскольку одной формой представления автомата выгодно пользоваться при одних обстоятельствах, другой — при других, полезно познакомиться со всеми формами представления. Поэтому в этой главе будут введены все три представления и обсуждены некоторые характерные задачи, для решения которых одно представление оказывается более выгодным, чем другое.
2.2. Таблица переходов
Характеристические функции fz
и fs, определяемые уравнениями
(1.5) и (1.6), могут быть представлены в форме
таблицы, известной под названием таблицы
переходов. Таблица содержит перечень
значений этих функций для всех возможных
аргументов, т. е. для всех возможных
упорядоченных пар (xv, sv),
где xv принадлежит входному
алфавиту X, a sv
— множеству состояний S.
Образец таблицы переходов для автомата
с входным алфавитом { ξ1, ξ2,
..., ξp }, выходным
алфавитом { ζ1, ζ2, ..., ζq
} и множеством состояний {σ1,
σ2, ..., σn}
представлен таблицей 2.1. Таблица состоит
из двух соседних подтаблиц zv-под
таблицы и sv+1-подтаблицы,
которые определяют функции fz
и fs соот
ветственно. Эти подтаблицы имеют общий основной столбец 7 (левый крайний столбец), в котором перечислены все возможные состояния в настоящий момент sv; столбцы в обеих подтаблицах озаглавлены одинаково, причем каждому возможному значению входного символа в настоящий момент sv соответствует в каждой подтаблице свой столбец. Таким образом, строки обозначены символами σ1, σ2, ..., σn а столбцы символами ξ1, ξ2, ..., ξp. В клетке на пересечении строки σi и столбца ξj в подтаблице z помещается значение fs(ξj,σi) (это значение будем называть значением sv+1). Символы, записанные в клетках подтаблиц zv и sv+1, принадлежат выходному алфавиту Z и множеству состояний S соответственно или подмножествам этих множеств. Если fz и fs — характеристические функции детерминированного полностью определенного автомата, то эти функции должны быть однозначно определены для каждой упорядоченной пары (xv, sv), где xv принадлежит множеству X, a sv — множеству S. Следовательно, подтаблица zv должна содержать в каждой клетке точно один элемент из Z, а подтаблица sv+1 — точно один элемент из S.
Хотя описательные обозначения состояний (выбираемые так, как в примерах § 1.7) являются полезными для интуитивного понимания роли .различных состояний при определении соотношений вход — выход и для определения функций fz и fs по словесному описанию системы, они становятся бесполезными после того, как эти функции определены. Поэтому в таблице переходов первоначальные обозначения можно заменить любыми другими, удобными для исследователя. В большинстве примеров, приводимых в книге, состояния будут обозначаться просто цифрами 1, 2, 3 и т. д.
Для иллюстрации построения таблицы переходов приведена таблица 2.2, которая представляет собой таблицу переходов системы, описанной в примере 2 § 1.7. Эта система названа автоматом А\, а состояния «новое слово», «ждать нового слова», «появление u», «появление u-n» и «появление u-n-d» обозначены цифрами 1, 2, 3, 4 и 5 соответственно. Содержимое клеток таблицы представляет собой числовое отражение словесных доводов, объясняющих
выбор множества состояний в примере 2. Сравнение словесного описания с таблицей переходов позволяет оценить точность и краткость последней по сравнению с первым способом описания.
2.3. Перечисление автоматов
Одним из важных применений таблицы переходов является использование ее для перечисления автоматов, принадлежащих тому или иному классу. Класс автоматов часто может быть определен при помощи ряда ограничений, накладываемых на распределение состояний и выходных символов в таблице переходов. Заданный класс автоматов может быть перечислен путем построения всех возможных таблиц переходов, удовлетворяющих этим ограничениям. Часто мощность класса может быть сразу оценена путем подсчета определяемого заданными ограничениями числа степеней свободы при построении таблиц 'переходов. Такое использование таблиц будет продемонстрировано при оценке мощностей некоторых классов автоматов, которые будут встречаться в последующих главах.
Класс (n, p, q)-автоматов, (n, p, q) - автомат— это автомат, имеющий множество состояний S= {σ1, σ2, ..., σn}, входной алфавит, определяемый множеством X = {ξ1, ξ2, ..., ξp}, и выходной алфавит, определяемый множеством Z= {ζ1, ζ2, ..., ζq} или некоторым подмножеством Z. Любая таблица переходов, имеющая в основном столбце символы σ1, σ2, ..., σn заглавия столбцов ξ1, ξ2, ..., ξp значения zv из множества Z или из подмножества Z и значения sv+1 из множества S, характеризует (n, p, q)-автомат. Мощность N n,р,q этого класса автоматов определяется формулой
Nn,p.q = (qn)pn. (2.1)
Класс явно минимальных (n, р, q)-автоматом. Назовем (n, р, q)-автомат явно минимальным, если для каждого i и каждого j≠i имеется по крайней мере одно k такое, что fz(ξk, σi) ≠ fz(ξk, σj). Любая таблица переходов, в которой все строки в подтаблице zv различны, характеризует явно минимальный автомат. Мощность N´n,p,q этого класса
равна
где отрицательные значения N´n, р, q считаются равными нулю. Класс явно сократимых (n, p, q)-автоматов, (n, p, q)- автомат называется явно сократимым, если в таблице переходов выполняются следующие условия: существует по крайней мере одна пара строк, например σi и σj, которые одинаковы как в подтаблице zv, так и sv+1 или становятся одинаковыми при замене каждого символа σi на σj (или σj на σi). Если автомат не относится к классу явно сократимых автоматов, то ему соответствует таблица, в которой все строки (в обеих подтаблицах zv и sv+1) различны. Число N´´n, p, q не явно сократимых автоматов поэтому определяется выражением
Из (2.1) и (2.3) следует, что нижняя граница числа N´´´n,p,q явно сократимых (n,р,q) автоматов определяется формулой
