- •Оглавление
- •Глава 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. Логическая схема автомата с “памятью”
- •Вопросы и задачи
- •Литература
- •Предметный указатель
Глава 4. Основы математической логики 169
4.1. Логика высказываний 169
Пример: 169
Пример: 170
4.1.1. Алгебра высказываний 171
4.1.1.1. Логические операции 171
4.1.1.2. Правила записи сложных формул. 174
Для определения истинности суждения необходимо анализировать значение истинности каждого элементарного высказывания и формировать последовательно значение истинности каждой подформулы, входящей в формулу сложного суждения. 174
Логические значения сложной формулы также удобно описывать таблицами истинности. 174
F =(A(BC))&(BD)&((D&A) C). 174
AB; AC; CD; D 175
B. 175
Приведенные примеры позволяют сформулировать некоторые правила записи сложных суждений: 177
F=((F1(F2))F3)F4; 178
F=(F1(F2))F3F4; 178
F=F1(F2)F3F4; 178
F=F1F2F3F4; 178
4.1.1.3. Законы алгебры высказываний 178
F(Fj). 179
Любая замена переменной или формулы определяется правилом подстановки. 179
А В (ACA) 179
4.1.1.4. Эквивалентные преобразования формул 179
Знание законов алгебры высказываний позволяет выполнять эквивалентные преобразования любой формулы, сохраняя ее значение для всех наборов пропозициональных переменных. Ниже на примерах рассмотрены эквивалентные преобразования основных логических операций. 179
F= (F1F2)(( F2F3)((F1F2) F3); 180
F=F1F2F2F3F1F2F3; 180
F=( F1F1) F2F2F3 F3; 180
F=F2F2F3 F3; 180
F=F2(F2F3) (F3 F3); 180
F=F2(F2F3); 180
F=(F2F2)F3; 180
F=(F1F2)(F3F4)(F1F2)(F3F4); 180
F=F1F2(F3F4) F1F2(F3F4); 180
F=( F1 F1) F2(F3F4); 180
F=F2(F3F4). 180
Следовательно, (F1F2)(F3F4)(F1F2)(F3F4)=F2(F3F4) 180
F=А(AВ)АСАВС; 180
F=А (АВ)АСАВС; 180
F=А (АВ)AАСАВС; 181
F=А((АВ) АСВС); 181
F=А((АВ) С(АВ)); 181
4.1.1.5. Нормальные формы формул 182
В алгебре высказываний используют две нормальные формы: дизъюнктивную (ДНФ) и конъюнктивную нормальные формы формулы (КНФ). 182
Так сформирована КНФ. 183
4.1.2. Исчисление высказываний 183
4.1.2.1. Интерпретация формул 183
4.1.2.2. Аксиомы и правила введения и удаления логических связок 185
Как уже отмечалось, множество формул поля интерпретации может быть очень большим. Среди формул этого поля можно выделить подмножество тождественно истинных формул. На этом подмножестве можно строить различные системы аксиом, достаточные для вывода новых формул. 185
Известна система из трех аксиом, использующая две логических связки “” и “” или система из пяти аксиом, использующая логические связки “” и “”. 185
Однако наибольшей популярностью пользуется счистема из двенадцити аксиом, использующая логические связки “”, ””, “” и ””. Эта система позволяет наиболее удобно и за меньшее число шагов организовать вывод заключения. 185
А1. F1(F2F1); 185
А2. (F1 F2) ((F2 F3)) (F1 F3)); 185
А3. (F1 F2)F1; 185
А4. (F1 F2)F2; 185
А5. F1(F2(F1F2)); 185
А6. F1(F1F2); 185
А7. F2(F1F2); 185
А8. (F1F3)((F2F3)((F1F2)F3)); 185
А9. (F1F2)(( F1 F2) F1); 185
A10. (F1F2)((F1F3)(F2F3)); 185
A11. (F1 F2)((F1F3)(F2F3)); 186
А12. F1 F1. 186
А2. (F1 F2)(( F1( F2 F3))( F1 F3)). 186
А8. (F1 F3)(( F2 F3)(( F1 F2) F3)) 186
4.1.2.3. Метод дедуктивного вывода 188
Выводом формулы В из множества формул F1; F2; . . . Fn называется такая последовательность формул, что любая Fi есть либо аксиома, либо выводима из множества предшествующих ей формул F1; F2; . . . Fn. 188
b) если Fj и (FiFj) выводимые формулы, то Fi также выводимая формула: 189
(FiFj) 189
B; AB 189
Пример. доказать истинность заключения: 190
C A. 190
191
Ниже показан процесс дедуктивного вывода заключения. 191
F1=(DBE) - посылка; 191
F2=E - посылка; 191
F6=(СD) - заключение по F4 и правилу П2; 191
F7=(BA) - заключение по F5 и правилу П2; 191
F8=(DB) - заключение по F3 и закону де Моргана; 191
Пример: доказать истинность заключения: 191
((A B) С); (С(D M )); (MN); (( D)( N)) 191
F13=A - заключение по F12 и правилу П2. 192
4.1.2.4. Принцип резолюции 192
Шаг 1: принять отрицание заключения, т.е. В; 193
Пример: доказать истинность заключения 193
ABN. 193
CDM=(CD)M=(CDM) –посылка (один дизъюнкт); 194
Пример: доказать истинность заключения 195
(AB)(CD); (DBM); M 195
(AC). 195
197
4. 2. Логика предикатов 197
4.2.1. Алгебра предикатов 201
Если F1 и F2 формулы, то (F1 ); (F1 F2); (F1F2); (F1F2 );(F1F2 ) также формулы. 201
4.2.1.1. Законы алгебры предикатов 205
x(F(x))x(F(x))=и, для {;} 205
x(F(x))x(F(x))=л, для {;} 205
4.2.1.2. Предваренная нормальная форма формулы 206
Алгоритм приведения формулы к виду ПНФ: 206
Пример: F=x1x2(P1(х1)x3 (P2(х1, x3)P3(x2, x3))). 206
K={ P1(х1); P2(х1; x3); P3(x2;x3)). 207
Пример: F=(x(P1 (х)y(P2 (y)P3 (z))))(y(P4 (x; y)P5.(z))). 207
4.2.1.3 Сколемовская стандартная форма формулы 208
Алгоритм приведения формулы к виду ССФ: 208
Пример: F=x1x2x3x4x5x6((P1(x1, x2)P2(x3, x4, x5))P3(x4, x6)). 208
заменить предметную переменную x6 на функцию f2(x2, x3, x5): 208
F=x2x3x5((P1(a, x2)P2(x3, f1(x2, x3), x5))P3(f1(x2, x3), 208
f2(x2, x3, x5))). 209
Множество дизъюнктов матрицы: 209
К={(P1(a, x2)P2(x3, f1(x2, x3), x5)); P3(f1(x2, x3), f2(x2, x3, x5))}. 209
заменить предметную переменную x6 на функцию f2(x2, x3, x5): 209
F=x2x3x5((P1(a, x2)P2(x3, f1(x2, x3), x5))P3(f1(x2, x3), 209
f2(x2, x3, x5))). 209
Множество дизъюнктов матрицы: 209
К={(P1(a, x2)P2(x3, f1(x2, x3), x5)); P3(f1(x2, x3), f2(x2, x3, x5))}. 209
4. 2. 2. Исчисление предикатов 209
Логический вывод заключения есть теорема: 211
4.2.2.1. Правила подстановки 211
Если в формулу F(х), содержащую свободную переменную x, выполнить всюду подстановку вместо x терма t , то получим формулу F(t). 211
Этот факт записывают так: 211
x t F(x) 212
F(t). 212
Подстановка называется правильной, если в формуле всюду вместо свободной переменной x выполнена подстановка терма t.. 212
Например, 212
x1x2x3(P1(x1, x3)P2(x2)) 212
x3(P1(x2, x3)P2(x2)). 212
Это - правильная подстановка, так как x1 –свободная переменная. 212
212
x1f(x2, t) x3(P1(x1, x3) P2(x2)) 212
x3(P1(f(x2, t), x3) P2(x2)). 212
Это - правильная подстановка, так как x1 –свободная переменная. 212
. x3x2x3(P1(x1, x3) P2(x2)) 212
x3(P1(x1, x2) P2(x2)). 212
Это - неправильная подстановка, т.к. x3 –связанная x3. 212
x2x3x3(P1(x1, x3) P2(x2)) 212
x3(P1(x1, x3) P2(x3)). 212
Это - неправильная подстановка, т.к. предикат P2(x3) попадает в область действия квантора x3. 212
4.2.2.2. Правила введения и удаления кванторов 213
П1. Если дана формула (F1(t)F2(x)) и F1(t) не содержит свободной переменной x, то формула (F1(t)x(F2(x))) выводима в исчислении предикатов, т.е. 213
(F1(t) F2(x)) 214
Все правила введения и удаления логических связок, принятые в логике высказываний, применимы также и в логике предикатов, если в них вместо формул алгебры высказываний подставить формулы алгебры предикатов. 214
4.2.2.3. Правила заключения 215
b) если F2 и (F1F2) выводимые формулы в исчислении предикатов, то F1 также выводима. Это - правило modus tollens (m.t): 215
F2; (F1F2) 215
F1. 215
4.2.2.4. Метод дедуктивного вывода 215
4.2.2.5. Принцип резолюции 218
F2=x(P1(x)y(P4 (y)P3(x; y)))=xy(P1(x)(P4 (y)P3(x; y)))= 219
xy(P1(x)P4 (y)P3(x; y))); 219
F3=y(P2 (y)P4(y))=y((P2(y)P4(y)))=y(P2(y)P4(y))=P2(b)P4(b). 219
4.2.2.6. Логическое программирование 221
4.3. Логика реляционная 224
4.3.1 Реляционная алгебра 227
4.3.1.1. Унарные операции 229
4.3.1.2. Бинарные операции 232
4.3.1.3. Правила реляционной алгебры 235
r’=(r1><r2)= (r2><r1) - операция соединения коммутативна; 236
4.3.2. Реляционное исчисление 236
если r - имя отношения, а t - терм, то r(t) –элементарная формула; 236
4.3.3. Языки реляционной логики 238
4.4. Нечеткая логика 241
4.4.1. Нечеткое исчисление 241
4.4.2. Экспертные системы 244
Вопросы и задачи 247
b) (((((AB)A)B)C)C); 247
c) (A(BC))(AC)(AB). 247