- •Оглавление
- •Глава 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. Логическая схема автомата с “памятью”
- •Вопросы и задачи
- •Литература
- •Предметный указатель
2. 5 Правила комбинаторики
При исполнении нескольких операций (размещений, перестановок, сочетаний или разбиений) следует применять дополнительные правила: суммы, произведения и включения-исключения.
Правило суммы: если комбинаторный объект ti может быть выбран из исходного множества X “s” способами, а другой комбинаторный объект tj из того же исходного множества X “p” способами, то выбор “либо ti, либо tj“ может быть осуществлен “(s+p)” способами.
Пример: сколько можно составить перестановок из n перфокарт, в которых две перфокарты ‘a’ и ‘b’ не стояли бы рядом?
Известно, что общее число перестановок равно n!.
Если ‘a’ стоит непосредственно перед ‘b’, то раcположение пары ‘a, b’ среди множества перфокарт равно (n-1). Если ‘b’ стоит непосредственно перед ‘a’, то раcположение пары 'b, a’ среди множества перфокарт также равно (n-1).
По правилу суммы общее число размещений рядом перфокарт “a” и “b” равно (n-1)+(n-1)=2(n-1).
Число перестановок оставшихся перфокарт для каждого случая, когда перфокарты ’a’ и ‘b’ стоят рядом, равно (n-2)!
По правилу суммы общее число перестановок, когда перфокарты ‘a’ и ‘b’ стоят рядом, равно 2(n-1)(n-2)! = 2(n-1)!
Следовательно, искомое число перестановок равно
n! - 2(n-1)!=(n-2)(n-1)!
Пусть даны четыре перфокарты X={a, b, c, d}. Число перестановок, когда карты ‘a’ и ‘b’ не стоят рядом, равно
(4-2)(4-1)!=12.
Множество комбинаторных объектов по этому условию есть:
{(a c b d), (a c d b), (a d b c), (a d c b), (b c a d), (b c d a), (b d a c),
(b d c a), (c a d b), (c b d a), (d a c b), (d b c a)}.
Правило произведения: если комбинаторный объект ti может быть выбран из исходного множества “s” способами и после каждого из таких выборов комбинаторный объект tj может быть выбран “p” способами, то выбор “ti и tj“ в указанном порядке может быть осуществлен “(sp)” способами.
Пример: Из m букв и n цифр следует сформировать k элементные множества, содержащие s букв и (k-s) цифр при условии sm, (k-s)n.
Число подмножеств, содержащих s букв, есть
.
Число подмножеств, содержащих (k-s) цифр есть .
Тогда число подмножеств, содержащих s букв и (k-s) цифр, по правилу умножения есть
Пусть даны четыре буквы {a, b, c, d} и три цифр {1, 2, 3}, для которых m=4 и n=3. Сформировать трехэлементные подмножества (k=3), содержащих две буквы (s=2) и одну цифру ((к-s)=1).
Число трехэлементных комбинаторных объекта, содержащих две буквы и одну цифру равно:
Множество таких объектов:
{{a, b, 1}, {a, b, 2}, {a, b, 3}, {a, c, 1}, {a, c, 2}, {a, c, 3}, {a, d, 1}, {a, d, 2}, {a, d, 3}, {b, c, 1}, {b, c, 2}, {b, c, 3}, {b, d, 1}, {b, d, 2}, {b, d, 3}, {c, d, 1}, {c, d, 2}, {c, d, 3}}.
Правило включения-исключения: если существует множество объектов Х и множество свойств Y={y1,y2,..yt}, которыми могут обладать элементы xiХ, то может быть выполнено разбиение множества Х на подмножества по числу свойств, которыми они обладают.
В этом случае разбиение множества на подмножества удовлетворяет следующему условию:
|X0|=|X|-|X1|+|X2|-|X3|...+(-1)t|Xt|,
где |X0| - число элементов множества Х, не обладающих ни одним свойством множества Y;
|X | - общее число элементов множества Х;
|X1| - число элементов множества Х, обладающих только одним свойством из множества Y, т.е. yiY;
|X2| - число элементов множества Х, обладающих только двумя свойствами множества Y, т.е. {yi, yj}Y;
|X3| - число элементов множества Х, обладающих только тремя свойствами множества Y, т.е. {yi, yj, yk}Y и т.д.
Следует обратить внимание, что знак “+” ставят для подмножеств, обладающих четным числом свойств, а знак “-” - нечетным.
Пример: даны множества A, B и C. При этом xA, xB, xC, x(AB), x(AC), x(BC) или x(ABC). Найти x(ABC).
Согласно правилу включения-исключения имеем:
=|ABC|-|A|-|B|-|C|+|(AB)|+|(AC)|+|(BC)|-|ABC)|.
О ткуда |ABC|=|A|+|B|+|C|-|(AB)|-|(AC|-|BC|+ |ABC)|.
Пусть даны по четыре прописных буквы латиницы A’={A, B, C, D},
кириллицы А”={А, Б, В, Г} и греческого алфавита А’”={А, B, Γ, Δ}.
Тогда (A'А”)={A, B}, (A’А”)={A, B},
(А”А’”)={A, В, Г},
Рис. 2.1 Поиск объединения множеств (A’А”А’”)={A, B}.
Следовательно, |A’А”А’”|=|A’|+|А”|+|А’”|-|(A’А”)|-|(A’А’”)|-|(А”А’”)|+|(A’А”А’”)|= 4+4+4-2-2-3+2 =7.
Множество букв объединения четырех алфавитов есть (A’А”А’”) = {A, B, C, D, Б, Г, Δ}.
Пример: Дана колода из n индексированных перфокарт. Сколькими способами можно расположить их в колоде, чтобы ни одна перфокарта с номером i не занимала i-го места? для 1in.
Общее число перестановок перфокарт в колоде равно n!
Число перестановок, при котором i перфокарт занимают i мест есть (n-i)!
Число перестановок i перфокарт, когда i-я перфокарта занимает i-е место по правилу произведения равно:
.
И наконец, число размещений перфокарт
в колоде, при котором ни одна из перфокарт с номером i не занимает i-го места по правилу включения-исключения равно:
B0 .
номер
места
1
2
3
4
номер
перфокарты
4
1
2
3
3
1
4
2
2
1
4
3
4
3
1
2
3
4
1
2
2
4
1
3
4
3
2
1
3
4
2
1
2
3
4
1
Тогда B0 ..
В таблице приведены возможные расположения перфокарт, когда ни одна перфокарта не занимает соответствующего места.
Пример: в студенческой группе обучается 50 человек, т.е. |X|=50. В группе 20 юношей (свойство -”быть юношей”), т.е. |X11|=20, 20 студентов имеют хорошую успеваемость (свойство -”быть успевающим”), т.е. |X12|=20, 20 студентов увлекаются спортом (свойство -”быть спортсменом”), т.е. |X13|=20, 5 юношей имеют хорошую успеваемость (два свойства: ”быть юношей” и “быть успевающим”), т.е. |X21|=|X11X12|=5, 10 юношей увлекаются спортом (два свойства: “быть юношей” и “быть спортсменом”), т.е. |X22|=|X11X13|=10, 10 успевающих студентов увлекаются спортом (два свойства: “быть успевающим” и “быть спортсменом”), т.е. |X23|=|X12X13|=10, 5 юношей имеют хорошую успеваемость и увлекаются спортом (три свойства: “ быть юношей”, “быть успевающим” и “быть спортсменом”), т.е. |X31|=|X11X12X13|=5.
Сколько девушек (X11) имеют слабую успеваемость (X12) и не увлекаются спортом (X13) или (X11X12X13)?
По правилу включения-исключения имеем:
|(X11X12X13)|=|X|-|X11|-|X12|-|X13|+|X21|+|X22|+|X23|-|X31|
|(X11X12X13)|=50-20-20-20+5+10+10-5=10.
Следовательно, 10 девушек имеют слабую успеваемость и не увлекаются спортом.
Пример: в цехе имеется 9 свободных рабочих мест, из которых на двух могут работать только женщины, а на трех - только мужчины. Сколькими способами можно распределить трех женщин и четырех мужчин на эти рабочие места?
Е
рабочие места
м м
м
ж
ж
м м м м -
- ж ж ж
м м м м -
ж ж ж -
м м м м ж
ж ж - -
- м м м м
- ж ж ж
- м м м м
ж ж ж -
- - м
м м м ж ж ж
Рис.2.2 Распределение
мужчин и женщин на
рабочие места
И наконец, если одного мужчину направить на одно специализированное для мужчин рабочее место, то из 4-х общих свободных рабочих мест три будут заняты мужчинами без учета их квалификации. В этом случае существует один способа размещения женщин на рабочих местах.
Итого существует шесть способов распределения трех женщин и четырех мужчин без учета их квалификации и специализации девяти рабочих мест.