- •Дискретная математика
- •© Омский государственный технический университет, 2009
- •Содержание
- •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.3. Свойства отношений
- •2.4. Отношения эквивалентности и разбиения на классы
- •2.5. Отношение порядка
- •2.6. Функции. Основные понятия и определения
- •2.7. Способы задания функций
- •3. Графы
- •3.1. Основные характеристики графов
- •3.2. Матричные способы задания графов
- •3.3. Основные свойства матриц смежности и инцидентности
- •3.4. Графы и отношения
- •3.5. Изоморфизм графов
- •3.6. Маршруты, циклы в неориентированном графе
- •3.7. Пути, контуры в ориентированном графе
- •3.8. Связность графа
- •3.9. Деревья. Основные определения
- •3.10. Минимальные остовные деревья нагруженных графов
- •3.11. Построение дерева кратчайших путей
- •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.2. Формулы логики булевых функций
Определение 4.2. Формула логики булевых функций определяется индуктивно следующим образом:
1) любая переменная, а также константы 0 и 1 есть формула;
2) если A и B – формулы, то A, AVB, A&B, A B, A ~ B есть формулы;
3) ничто, кроме указанного в пунктах 1–2, не есть формула.
Пример 4.1.
Выражение (xVy)&((y z) ~ x) является формулой.
Выражение x&y z V ~x не является формулой.
Определение 4.3. Часть формулы, которая сама является формулой, называется подформулой.
Пример 4.2.
x&(yz) – формула; yz – ее подформула.
Определение 4.4. Функция f есть суперпозиция функций f1, f2, ... , fn если f получается с помощью подстановок этих формул друг в друга и переименованием переменных.
Пример 4.3.
f1
= x1&x2
(конъюнкция);
f2
=
(отрицание).
Возможны две суперпозиции:
1) f = f1(f2) = (x1)&(x2) – конъюнкция отрицаний;
2) f = f2(f1) = (x1&x2) – отрицание конъюнкции.
Порядок подстановки задается формулой. Всякая формула задает способ вычисления функции, если известны значения переменных.
Пример 4.4.
Построим таблицу значений функции f(x1, x2, x3) = (x2 x3) ~ (x1Vx2). Таблица 4.4 представляет последовательное вычисление этой функции.
Таблица 4.4
x1 x2 x3 |
x3 |
x2 x3 |
(x2 x3) |
x1 |
x1Vx2 |
f(x1, x2, x3) |
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 |
1 0 1 0 1 0 1 0 |
1 1 1 0 1 1 1 0 |
0 0 0 1 0 0 0 1 |
1 1 1 1 0 0 0 0 |
1 1 1 1 0 0 1 1 |
0 0 0 1 1 1 0 1 |
Таким образом, формула каждому набору аргументов ставит в соответствие значение функции. Следовательно, формула так же, как и таблица, может служить способом задания функции. В дальнейшем формулу будем отождествлять с функцией, которую она реализует. Последовательность вычислений функции задается скобками. Принято соглашение об опускании скобок в соответствии со следующей приоритетностью операций: , &, V, и ~.
4.3. Равносильные преобразования формул
В отличие от табличного задания представление функции формулой не единственно. Например, две различные формулы
x1Vx2 и (x1&x2)
реализуют одну функцию – штрих Шеффера.
Определение 4.5. Две формулы, реализующие одну и ту же функцию, называются равносильными. Равносильность формул A и B будем обозначать следующим образом: A = B.
Для того чтобы установить равносильность формул, можно составить таблицы значений функции для каждой формулы и сравнить их. Для равносильных формул эти таблицы совпадают. Другой способ установления равносильности формул заключается в использовании некоторых установленных равносильностей булевых формул.
