- •Оглавление
- •Глава 1. Алгебраические системы 17
- •Глава 2. Элементы комбинаторики 88
- •Глава 3. Основы теории графов 101
- •Глава 4. Основы математической логики 169
- •4.1.1.4. Эквивалентные преобразования формул 179
- •4.1.4. Выполнить подстановку: 247
- •Глава 5. Основы теории алгоритмов 252
- •Глава 6. Конечные автоматы 289
- •Введение
- •Глава 1. Алгебраические системы
- •1.1 Множества
- •1.1.1. Четкие множества
- •1.1.2. Нечеткие множества
- •1.2. Соответствия, отображения и функции
- •1.2.1. Четкие отображения и функции
- •1.2.2. Нечеткие отображения
- •1.3. Отношение
- •1.3.1. Четкие отношения
- •1.3.2. Нечеткое отношение
- •1.4. Элементы общей алгебры
- •1.5. Булева алгебра
- •1.5.1. Булевы операции
- •1.5.2. Законы булевой алгебры
- •1.5.3. Формула булевой функции
- •1.5.4. Описание булевой функции
- •1.5.5. Суперпозиция булевых функций
- •1.5.6. Свойства булевых функций
- •1.5.6.1. Самодвойственные булевы функции
- •1.5.6.2. Монотонные булевы функции
- •1.5.6.3. Линейные булевы функции
- •1.5.6.4. Функции, сохраняющие “0”
- •1.5.6.5. Функции, сохраняющие “1”
- •1.5.6.6. Функционально полные системы
- •1.5.7. Разложение булевых функции
- •1.5.7.1. Днф булевой функции
- •1.5.7.2. Кнф булевой функции
- •Алгоритм преобразования формулы к скнф:
- •1.5.8. Минимизация булевых функций.
- •1.5.8.1.Минимизация днф булевой функции
- •1.5.8.2. Минимизация кнф булевой функции
- •1.6. Алгебра четких множеств
- •1.6.1. Операции над множествами
- •1.6.2. Законы алгебры множеств
- •1.6.3. Эквивалентные преобразования формул
- •1.6.4. Композиция отображений и отношений
- •1.6.5. Поиск неизвестного множества
- •1.7. Алгебра нечетких множеств
- •1.7.1. Операции над нечеткими множествами
- •1.7.2. Композиция нечетких отображений
- •1.7.3. Композиция нечетких отношений
- •1.7.4. Свойства нечетких отношений
- •Вопросы и задачи
- •Глава 2. Элементы комбинаторики
- •2.1. Размещение из n элементов по k
- •2.2. Перестановка элементов
- •2.3 Сочетание из n элементов по k
- •2.4. Разбиение множества
- •2. 5 Правила комбинаторики
- •Вопросы и задачи
- •Глава 3. Основы теории графов
- •3.1. Граф и его характеристики
- •3.2. Описание графа
- •3. 3. Числа графа
- •3.4. Операции над графами
- •3.4.1. Унарные операции
- •3.4.1.1 Поиск дополнительного графа
- •3.4.1.2. Введение и удаление вершин графа
- •3.4.1.3. Стягивание вершин графа
- •3.4.1.4. Введение и удаление ребер графа
- •3.4.1.5. Поиск плотности и неплотности графа
- •3.4.1.6. Поиск числа компонент связности графа
- •3.4.1.7. Поиск устойчивости графа
- •3.4.1.8. Поиск цикломатического числа графа
- •3.4.1.9. Поиск хроматического числа графа
- •3.4.2. Бинарные операции
- •3.4.2.1. Объединение графов
- •3.4.2.2. Пересечение графов
- •3.4.2.3. Композиция графов
- •3.4.2.4. Соединение графов
- •3.4.2.5. Прямое произведение графов
- •3.4.2.6. Изоморфизм графов
- •3.5. Некоторые алгоритмы на графах
- •3.5.1. Построение покрывающего остова
- •3.5.2. Построение остова минимального веса
- •3.5.3. Поиск кратчайших путей в сети.
- •3.5.4. Поиск максимального потока в сети
- •3.5.5. Метод критического пути в управлении
- •3.6. Нечеткие графы
- •Вопросы и задачи
- •Глава 4. Основы математической логики
- •4.1. Логика высказываний
- •4.1.1. Алгебра высказываний
- •4.1.1.1. Логические операции
- •4.1.1.2. Правила записи сложных формул.
- •4.1.1.3. Законы алгебры высказываний
- •4.1.1.4. Эквивалентные преобразования формул
- •4.1.1.5. Нормальные формы формул
- •4.1.2. Исчисление высказываний
- •4.1.2.1. Интерпретация формул
- •4.1.2.2. Аксиомы и правила введения и удаления логических связок
- •4.1.2.3. Метод дедуктивного вывода
- •4.1.2.4. Принцип резолюции
- •4. 2. Логика предикатов
- •4.2.1. Алгебра предикатов
- •4.2.1.1. Законы алгебры предикатов
- •4.2.1.2. Предваренная нормальная форма формулы
- •4.2.1.3 Сколемовская стандартная форма формулы
- •4. 2. 2. Исчисление предикатов
- •4.2.2.1. Правила подстановки
- •4.2.2.2. Правила введения и удаления кванторов
- •4.2.2.3. Правила заключения
- •4.2.2.4. Метод дедуктивного вывода
- •4.2.2.5. Принцип резолюции
- •4.2.2.6. Логическое программирование
- •4.3. Логика реляционная
- •4.3.1 Реляционная алгебра
- •4.3.1.1. Унарные операции
- •4.3.1.2. Бинарные операции
- •4.3.1.3. Правила реляционной алгебры
- •4.3.2. Реляционное исчисление
- •4.3.3. Языки реляционной логики
- •4.4. Нечеткая логика
- •4.4.1. Нечеткое исчисление
- •4.4.2. Экспертные системы
- •Вопросы и задачи
- •Глава 5. Основы теории алгоритмов
- •5.1. Рекурсивные функции
- •5.1.1. Базовые функции
- •5.1.2. Элементарные операции
- •5.2. Машина Тьюринга
- •5.2.1. Описание машины Тьюринга
- •5.2.2. Примеры машин Тьюринга
- •5.2.3. Композиция машин Тьюринга
- •5.3. Нормальные алгоритмы Маркова
- •5.4 Сложность вычислений
- •Вопросы и задачи
- •Глава 6. Конечные автоматы
- •6.1. Абстрактный автомат
- •6.1.1. Типы конечных автоматов
- •6.1.2. Описание автоматов
- •6.1.3. Автоматное моделирование алгоритмов
- •6.1.3.1. Автомат Мили - модель управляющего автомата
- •6.1.3.2. Автомат Мура - модель управляющего автомата
- •6.1.3.3. Микропрограммный автомат
- •6.1.4. Эквивалентность автоматов
- •6.1.5. Эквивалентность внутренних состояний автомата
- •6.1.5.1. Детерминированный автомат
- •6.1.5.2. Недетерминированный автомат
- •6.2. Структурный автомат
- •6.2.1. Произведение автоматов
- •6.2.1.1. Последовательное соединение автоматов
- •6.2.1.2. Параллельное соединение автоматов
- •Обратная связь автоматов
- •6.2.3. Сумма автоматов
- •6.2.4. Структурный автомат и кодирование
- •6.3. Логическое проектирование автоматов
- •6.3.1. Кодирование алфавитов автомата
- •6.3.2. Автоматы без “памяти”.
- •6.3.2.1. Формирование оператора
- •6.3.2.2. Формирование системы операторов
- •Логическая схема комбинационного автомата
- •6.3.3. Автоматы с “памятью”
- •6.3.3.1. Формирование оператора
- •6.3.3.2. Формирование оператора
- •.3.3.3. Логическая схема автомата с “памятью”
- •Вопросы и задачи
- •Литература
- •Предметный указатель
6.2.1. Произведение автоматов
При синхронном режиме работы состояния qQ автомата М определяются прямым произведение состояний автоматов M1 и M2,
т. е. q=(q1i; q2j)(Q1Q2).
Таблица 6.29 |
|||||
q1 |
q2 |
q3 |
q4 |
q5 |
q6 |
(q11; q21) |
(q11; q22) |
(q12; q21) |
(q12; q22) |
(q13; q21) |
(q13; q22) |
6.2.1.1. Последовательное соединение автоматов
Пусть автоматы М1 и М2 соединены, как показано на рис. 6.15.
При этом X=X1, Y1=X2, Q = (Q1Q2) и Y=Y2.
Функционирование автомата M может быть описано системой:
q[+1]=(q1[+1]; q2[+1])=(1(q1[]; x1[]); 2(q2[]; 1(q1[]; x1[])));
y[]=(q[]; x[])=2(q2[]; 1(q1; x1).
По данным таблиц 6.27, 6.28 и 6.29 составим таблицу поведения автомата М (см. таблицу 6.30).
Последовательное соединение автоматов - некоммутативная операция. При смене мест автоматов М1 и М2 меняется структура автомата М и его поведение.
Пусть М1 находился в состоянии q11, а на его вход подан сигнал x11. М1 формирует на выходе сигнал y11=x21 и переходит в состояние q12. . М2 находился в состоянии q21, по сигналу x21 переходит в состояние q21 и формирует на выходе сигнал y21. Следовательно, автомат М переходит из состояния q1=(q11; q21) в состояние q3=(q12; q21) и генерирует на выходе сигнал y21.
|
таблицу 6.30 |
||
Автомат М |
|||
qQ |
xX |
||
x11 |
x12 |
||
q1 |
q3; y21 |
q1; y22 |
|
q2 |
q4; y21 |
q1; y22 |
|
q3 |
q6; y21 |
q3; y21 |
|
q4 |
q6; y21 |
q4; y21 |
|
q5 |
q5; y21 |
q1; y21 |
|
q6 |
q6; y21 |
q2; y21 |
6.2.1.2. Параллельное соединение автоматов
Параллельное соединение автоматов возможно в четырех вариантах (см. рис. 6.16).
Различие схем заключено в формировании входных и выходных сигналов.
Для схем а) и с), множество сигналов на входе автомата М определяется парой входных сигналов автоматов М1 и М2, то есть сигнал на входе есть вектор xi= (x1j; x2k)(X1X2) (см. таблицу 6.31).
Для схем а) и b) множество сигналов на выходе автомата М определяется парой выходных сигналов автоматов М1 и М2, то есть сигнал на выходе есть вектор yi= (y1j; y2k)(Y 1Y2) (см. таблицу 6.32).
Для схем b) и d) сигналы на входе автомата М равны входным символам автоматов М1 и М2 при условии X1=X2=X.
Для схем с) и d) значения сигналов на выходе автомата М определяются оператором , то есть y=(y1i, y2j).
.
Таблица 6.31
-
x1
x2
x3
x4
x5
x6
(x11; x21)
(x11; x22)
(x11; x23)
(x12; x21)
(x12; x22)
(x12; x23)
Таблица 6.32
-
y1
y2
y3
y4
y5
y6
(y11;y21)
(y11;y22)
(y12;y21)
(y12;y22)
(y13;y21)
(y13;y22)
Система рекуррентных соотношений для схемы а) есть:
Это позволяет вычислить каждую позицию таблицы 33 поведения автомата М.
Например, если дано q1=(q11, q21) и x4=(x12, x21), то
q=(1(q11, x12); 2(q21, x21))= (q11, q21)= q1;
y=((q11, x12); (q21, x21))= (y13, y21)=y5.
(см. таблицы 27-29, 31, 32).
Таблица 6.33 |
||||||
текущее состояние |
символы входного алфавита xX |
|||||
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
|
q1 |
q3; y1 |
q4; y1 |
q3; y2 |
q1; y5 |
q2; y5 |
q1; y6 |
q2 |
q4; y1 |
q4; y1 |
q3; y2 |
q2; y5 |
q2; y5 |
q1; y6 |
q3 |
q5; y1 |
q6; y1 |
q5; y2 |
q3; y1 |
q4; y1 |
q3; y2 |
q4 |
q6; y1 |
q6; y1 |
q5; y2 |
q4; y1 |
q4; y1 |
q3; y2 |
q5 |
q5; y1 |
q6; y1 |
q5; y2 |
q1; y3 |
q2; y3 |
q1; y4 |
q6 |
q6; y1 |
q6; y1 |
q5; y2 |
q5; y3 |
q2; y1 |
q1; y4 |
Для схемы b) на входе автомата М есть x1=x11=x21, x2=x12=x22. Тогда система рекуррентных соотношений есть:
Это позволяет вычислить каждую позицию таблицы 34 поведения автомата М.
Например, если дано q1=(q11, q21) и x5=(x12, x22), то
q=(1(q11, x12); 2(q21, x22))= (q11, q22)= q2;
y=((q11, x12); (q21, x22))= (y13, y21)=y5.
(см. таблицы 27-29, 31, 32).
Таблица 6.34
текущее состояние |
символы входного алфавита xX |
|
x1 |
x5 |
|
q1 |
q3;y1 |
q2;y5 |
q2 |
q4;y1 |
q2;y5 |
q3 |
q5;y3 |
q1;y1 |
q4 |
q6;y3 |
q4;y1 |
q5 |
q5;y1 |
q2;y1 |
q6 |
q6;y1 |
q2;y1 |
Для схемы с) выход автомата М формируется функцией
y=(y1i; y2j).
Рекуррентные соотношения для такого автомата M есть:
Оператор формируется поставленной задачей.
Это позволяет вычислить каждую позицию таблицы 35 поведения автомата М.
Например, если дано q1=(q11, q21), x5=(x12, x22) и если аргумент функции содержит символ y21, то на выходе автомата М – формируется символ от автомата М1, если - y22, то - символ от автомата М2, то
q=(1(q11, x12); 2(q21, x22))= (q11, q22)= q2;
y=((q11, x12); (q21, x22))= (y13, y21)=y13.
Таблица 6.35
текущее состояние |
символы входного алфавита xX |
|||||
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
|
q1 |
q3;y11 |
q4;y11 |
q3;y22 |
q1;y13 |
q2;y13 |
q1;y22 |
q2 |
q4;y11 |
q4;y11 |
q3;y22 |
q2;y13 |
q2;y13 |
q1;y22 |
q3 |
q5;y11 |
q6;y11 |
q5;y22 |
q3;y11 |
q4;y11 |
q3;y22 |
q4 |
q6;y11 |
q6;y11 |
q5;y22 |
q4;y11 |
q4;y11 |
q3;y22 |
q5 |
q5;y11 |
q6;y11 |
q5;y22 |
q1;y12 |
q2;y12 |
q1;y22 |
q6 |
q6;y11 |
q6;y11 |
q5;y22 |
q5;y12 |
q2;y11 |
q1;y22 |
Для автомата по схеме d) сигнал на входе формируется также как для автомата по схеме b), а сигнал на выходе также как для автомата по схеме с).
Система рекуррентных соотношений есть:
Например, если дано q1=(q11, q21), x5=(x12, x22) и если аргумент функции содержит символ y21, то на выходе автомата М – формируется символ от автомата М1, если - y22, то - символ от автомата М2:
q=(1(q11, x12); 2(q21, x22))= (q11, q22)= q2;
y=((q11, x12); (q21, x22))= (y13, y21)=y13.
Таблица 6.36
-
текущее состояние
символы входного алфавита xX
x1
x5
q1
q3;y11
q2;y13
q2
q4;y11
q2;y13
q3
q5;y12
q1;y11
q4
q6;y12
q4;y11
q5
q5;y11
q2;y11
q6
q6;y11
q2;y11