- •Глава 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. Метод уменьшения числа состояний автоматов с ограничениями на входе
1.4. Конечность алфавита
Следующее предположение, которое должно быть сделано для основной модели с конечным числом состояний, заключается в том, что каждая переменная может принимать только конечное число различных значений (которые по своей природе могут быть числовыми или не числовыми).
Множество1
значений, которые переменная v
может принимать, называется алфавитом
переменной ν и обозначается через V;
элемент ν алфавита V
называется символом. Пусть K(1),
K(2), ...
K(m)
— конечные множества с соответствующими
элементами
и
пусть множество
обозначает
множество всех упорядоченных m-значных
наборов (
).
Если входные переменные данной системы
суть x(1),
x(2), ... ,
x(u)
, то входной алфавит этой системы,
обозначаемый через X,
определяется выражением
,
(1.1)
где X(i), i = 1, 2, …, u, - алфавит x(i).
Аналогично, если выходные переменные системы суть z(1), z(2), ..., z(w), то выходной алфавит Z системы определяется выражением
,
(1.2)
где Z(j), j = 1, 2, ..., w, — алфавит z(j). Если Х(i) имеет мощность pi, a Z(j) мощность qj, то мощности р для X и q для Z выражается соответственно формулами:
, (1.3)
, (1.4)
Мощности р и q конечны.
И
з
определения входного алфавита X
видно, что одного символа входного
алфавита — входного символа — достаточно
для описания всех и входных переменных
в любой заданный момент времени tν.
Аналогично из определения выходного
алфавита Z видно, что
одного символа выходного алфавита —
выходного символа — достаточно для
описания всех w выходных
переменных в любой заданный момент
времени tν.
Следовательно, входные переменные x(1),
x(2), ... ,
x(u)
могут быть заменены одной входной
переменной х, алфавит которой X
определяется выражением (1.1). Выходные
переменные z(1),
z(2), ...,
z(w)
могут быть заменены одной выходной
переменной z, алфавит
которой Z определяется выражением
(1.2).Соответственно u
входных клемм можно заменить одной
входной клеммой. В результате получим
схематичное изображение, имеющее вид
двухклеммного ящика (рис. 1.3), которое
является стандартным представлением
основной модели конечного автомата.
Для иллюстрации рассмотрим вычислительное устройство, которое имеет две входные линии х(1) и x(2) : по линии х(1) подаются символы 0 и 1, по линии x(2) — символы 1, 2 и 3.
В произвольные моменты времени tν
устройство выдает величины
и
.
Таким образом, имеем:
X(1) = {0,1}, X(2) = {1, 2, 3},
Z(1) = {0, 1, 2, 3, 4, 5, 6}, Z(2)={0, 1, 2, 3}
и, следовательно,
X = { (0,1), (0,2), (0,3), (1,1), (1,2), (1,3)},
Z = {(0,0), (0,1), (0,2), (0,3), (1,0), (1,1), (1,2), (1,3), (2,0), (2,1), (2,2), (2,3), (3,0), (3,1), (3,2), (3,3), (4,0), (4,1), (4,2), (4,3), (5,0), (5,1), (5,2), (5,3), (6,0), (6,1), (6,2), (6,3)}
1.5. Состояния
В то время как в качестве входов и выходов выбираются такие переменные, которые исследователь может наблюдать и измерять, природа промежуточных переменных часто может оставаться неизвестной, а измерение их — невозможным. Значение промежуточных переменных, однако, заключается не в характере изменения каждой из них, а скорее в их комбинированном действии на зависимости между входными и выходными переменными. Это комбинированное действие, так же как и переменные, вызывающие его, подчинено предположениям о дискретности времени и конечности алфавита, введенным в §§ 1.3 и 1.4. Указанное действие называется состоянием системы. Состояние системы в момент tν будем обозначать через sν. Набор всех возможных состояний системы, которые ей присущи, называется множеством состояний и обозначается через 5.
Понятие состояния может быть строго определено, исходя из той роли, которую оно играет в определении основной модели конечного автомата. Эта роль может быть выражена следующими двумя положениями: (1) выходной символ в данный момент времени однозначно определяется входным символом и состоянием в данный момент; (2) состояние в следующий момент времени однозначно определяется входным символом и состоянием в настоящий момент времени.
Таким образом, грубо говоря, состояние конечного автомата в любой заданный тактовый момент является той переменной, которая вместе с входным символом дает возможность
определить выходной символ в данный тактовый момент и состояние в следующий тактовый момент2. В качестве примера рассмотрим игру, в которой монета повторно подбрасывается и производятся отметки при появлении каждого первого герба в серии гербов и каждой, исключая первые две, цифры в серии цифр. В этом примере системой является игра, синхронизирующим источником — игрок, а синхронизирующим сигналом — операция бросания монеты; входной переменной является сторона монеты, выходной переменной — отметка при броске. Тогда входной алфавит будет {цифра, герб}, а выходной—{отметка, нет отметки}. Для определения множества состояний находят такое множество условий (которые могут быть выражены словесно, символами, в числовом виде или в какой-нибудь другой удобной форме), чтобы по известному в настоящий момент условию и стороне монеты однозначно определялось наличие или отсутствие отметки в настоящий момент и условие в следующий. Из описания игры можно установить, что для того, чтобы предсказать отметку, необходимо знать стороны монеты в настоящий момент и в два предыдущих. Временно примем следующее множество состояний {появление первой цифры, появление двух цифр, появление первого герба], где «появление первой цифры» — состояние системы, когда цифра выпала первый раз после герба, «появление двух цифр» — состояние системы, когда цифра выпала после цифры, и «появление первого герба» — состояние системы, когда герб выпал после герба или после цифры. Отметка производится каждый раз, когда система находится в состоянии «появление двух цифр» и входом является цифра или когда система находится в состоянии, отличном от состояния «появление первого герба», и входом является герб. Если состояние в настоящий момент — «появление первой цифры» или «появление двух цифр», то состояние в следующий момент будет «появление двух цифр», если входом является цифра, и «появление первого герба», если входом является герб. Если состояние в настоящий момент — «появление первого герба», то состояние в следующий момент будет «появление первой цифры», если входом является цифра, и «появление первого герба», если входом является герб. Таким образом, подтверждается, что выбранное множество состояний отвечает предъявляемым требованиям, так как по известному состоянию системы и входу в настоящий момент может быть определен выход в настоящий момент и состояние в следующий. Выбор множества состояний в общем случае является сложной задачей, которая решается не обязательно однозначно. Так как не существует общих правил для выбора множества состояний, то часто прибегают к методу последовательного приближения путем проб и ошибок. Затраты времени на выбор состояний и их число, вообще говоря, зависят от интуиции и степени знания исследуемой системы.
