- •Оглавление
- •Глава 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.1.4. Выполнить подстановку: 247
a) А BC(АB); 247
b) (BA (BC))А (BA) (ABC); 247
c) АB (AB) (BA). 247
Глава 5. Основы теории алгоритмов 252
5.1. Рекурсивные функции 253
5.1.1. Базовые функции 254
5.1.2. Элементарные операции 254
5.2. Машина Тьюринга 260
5.2.1. Описание машины Тьюринга 262
5.2.2. Примеры машин Тьюринга 264
5.2.3. Композиция машин Тьюринга 275
Алгоритм вычисления оператора суперпозиции: 276
Th:qо|g1(x1+1, x2+1,.. xn+1) +1 #...|gm(x1+1, x2+1,.. xn+1) +1 276
Tf: qо|x+1# |y+1# qk|f (x+1; y+1) +1 # . 276
Алгоритм вычисления оператора рекурсии: 276
5.3. Нормальные алгоритмы Маркова 279
Протокол. 282
Протокол. 282
Протокол. 283
Протокол. 284
Протокол. 285
5.4 Сложность вычислений 287
Вопросы и задачи 288
Глава 6. Конечные автоматы 289
6.1. Абстрактный автомат 289
6.1.1. Типы конечных автоматов 293
293
295
6.1.2. Описание автоматов 296
Граф детерминированного автомата Мили. 299
Граф детерминированного автомата Мура. 301
Граф недетерминированного автомата Мили. 302
6.1.3. Автоматное моделирование алгоритмов 304
Рис. 6.7.. Компоненты блок-схемы алгоритма. 305
Рис. 6.8. Операционный и управляющий автоматы. 306
6.1.3.1. Автомат Мили - модель управляющего автомата 307
Множества входных и выходных сигналов управляющего автомата и его внутренних состояний: 309
6.1.3.2. Автомат Мура - модель управляющего автомата 310
6.1.3.3. Микропрограммный автомат 314
6.1.4. Эквивалентность автоматов 317
Анализ таблицы показывает, что 319
6.1.5. Эквивалентность внутренних состояний автомата 321
6.1.5.1. Детерминированный автомат 321
Анализ таблицы показывает, что 322
6.1.5.2. Недетерминированный автомат 333
Анализ таблицы показывает, что 335
6.2. Структурный автомат 343
6.2.1. Произведение автоматов 344
6.2.1.1. Последовательное соединение автоматов 344
6.2.1.2. Параллельное соединение автоматов 345
6.2.2. Обратная связь автоматов 348
6.2.3. Сумма автоматов 350
6.2.4. Структурный автомат и кодирование 351
6.3. Логическое проектирование автоматов 352
6.3.1. Кодирование алфавитов автомата 352
6.3.2. Автоматы без “памяти”. 353
6.3.2.1. Формирование оператора 353
6.3.2.2. Формирование системы операторов 357
6.3.2.3. Логическая схема комбинационного автомата 360
6.3.3. Автоматы с “памятью” 361
6.3.3.1. Формирование оператора 363
6.3.3.2. Формирование оператора 364
.3.3.3. Логическая схема автомата с “памятью” 367
Вопросы и задачи 368
Литература 370
Предметный указатель 371
“Теперь в математике остаются только целые числа и конечные...системы целых чисел...”
Анри Пуанкаре.
Введение
Основное отличие дискретной математики от классической заключается в отсутствии понятий предела и непрерывности, а основными носителями являются, например, целые числа и многочлены, векторы и матрицы, чертежи и рисунки, слова и команды и т. п. Элементы носителя формируют состав какой-либо системы, а отношения между ними – ее структуру. Отношения и элементы системы могут изменять свое значение в дискретные моменты времени.
Следовательно, состав и структура таких систем представляют дискретную модель, для описания которой привлекается аппарат дискретной математики.
В главе I – Алгебраические системы - изложены основные понятия теории множеств, отображений и отношений. Особенность данной главы заключается в том, что в ней приведены основные характеристики “четких” и “нечетких” объектов. Это – четкие и нечеткие множества, четкие и нечеткие отображения, четкие и нечеткие отношения. Такое построение главы позволяет глубже понять единство и различия “четких” и “нечетких” объектов, условия исполнения алгебраических операций над этими объектами. В главе приведены многочисленные примеры.
В главе 2 - Элементы комбинаторики - сформулированы основные требования к комбинаторным объектам, рассмотрены основные процедуры формирования упорядоченных и неупорядоченных выборок: размещения и перестановки, сочетания и разбиения. Все разделы главы подкреплены примерами на различных множествах.
В главе 3 - Основы теории графов – приведены основные характеристики графов, правила исполнения алгебраических операций над графами и алгоритмы решения некоторых практических задач на графах.
В главе 4 – Основы математической логики – изложены основные понятия логик высказываний и предикатов, реляционной и нечеткой логик, показаны основные процедуры вывода заключений для дедуктивного метода и принципа резолюции. Кратко описаны возможности языков Prolog для программирования логических задач, SQL для формирования запросов. Описана также одна из экспертных систем –MYCIN, использующая правила нечеткой логики при выводе заключения.
В главе 5 – Основы теории алгоритмов - приведены три модели алгоритмов: рекурсивные функции, машины Тьюринга и нормальные алгоритмы Маркова. По каждой модели приведены вычислительные примеры. Показано, что любая частично рекурсивная функция может быть реализована на машине Тьюринга или нормальном алгоритме Маркова.
В главе 6 – Конечные автоматы – изложены основы формализации и классификации конечных автоматов, дано описание их характеристик. Изложены основные приемы минимизации детерминированного и частично определенного (или недетерминированного) абстрактного автомата, формирования структурного автомата при синхронном и асинхронном режимах работы и различных схемных соединениях элементарных автоматов. Для структурного автомата дано описание способов и приемов логического проектирования комбинаторного автомата и автомата с памятью. Приведены примеры минимизации преобразователя кода, рассмотрены проблемы автоматного моделирования алгоритмов и минимизации состава и структуры автомата с памятью.