
- •1. Множества и операции над ними
- •1.1. Множества. Определения, примеры. Способы задания множеств
- •Способы задания множеств
- •I. Задание множества списком
- •II. Порождающая процедура
- •III. Задание множества описанием его элементов (разрешающая процедура)
- •1.2.Операции над множествами
- •2.Векторы и прямые произведения
- •2.1. Векторы
- •2.1.Проекции векторов и векторных множеств на оси
- •3. Элементы комбинаторики
- •3.1. Правило произведения
- •3.2. Размещения без повторений
- •3.3. Размещения с повторениями
- •3.4. Перестановки без повторений
- •3.5. Перестановки с повторениями
- •3.6. Сочетания без повторений
- •3.6. Правило суммы
- •4. Соответствия
- •4.1 Определения и примеры
- •4.2. Взаимно однозначные соответствия и мощность множеств
- •4.3. Счетные множества
- •О парадоксе Кантора
- •5. Отношения
- •5.1. Определения и примеры
- •5.2. Способы задания бинарных отношений
- •5.3. Свойства отношений
- •5.4. Отношение эквивалентности
- •Классы эквивалентности
- •5.5. Отношение порядка
- •6. Элементы общей алгебры
- •6.1. Алгебры
- •6.2. Свойства бинарных алгебраических операций
- •6.3.Гомоморфизм и изоморфизм алгебр
- •7. Булева алгебра и теория множеств
- •7.1. Основные определения
7. Булева алгебра и теория множеств
7.1. Основные определения
Будем рассматривать
двухэлементное множество
,
элементы которого не являются числами
в полном смысле этого слова, а
интерпретируются как «ложь» и «истина».
Считая их логическими переменными,
определим следующие функции алгебры
двузначной логики.
Определение:
Отрицанием x
назовем функцию
,
которая значению аргумента x = 0
ставит в соответствие
;
а значению аргумента x = 1
ставит в соответствие
.
Определение:
Конъюнкцией
элементов
и
назовем функцию
,
которая имеет значение 1, только если
.
В остальных случаях конъюнкция равна
0.
Определение:
Дизъюнкцией
элементов
и
назовем функцию
,
которая принимает значение 1, если хотя
бы один из ее аргументов
или
(то
есть только
,
или только
,
или
и
одновременно) равны 1. Дизъюнкция равна
нулю тогда и только тогда, когда
.
Определенные так логические функции носят название логических связок «не», «и», «или».
Связь между ними описывается с помощью набора эквивалентностей:
1)
;
2)
;
3)
;
4)
;
5);
6)
;
7)
;
8)
;
9)
;
10)
;
11)
;
12)
;
13)
;
14)
;
.
Любые операции, подчиняющиеся свойствам 1-14, называются булевыми операциями. F алгебры с данным набором операций называются булевыми алгебрами. Так, например, свойства 1-14 будут выполняться и для операций объединения, пересечения и дополнения множеств, если сопоставить
объединение – дизъюнкции;
пересечение – конъюнкции;
дополнение –
отрицанию, а вместо
и
подставить некоторые множества А и В
из U
(универсального множества).
Заметим важный
факт, что если применить данные операции
к логическим функциям
,
где
,
то результатами тоже будут логические
функции. Поэтому связки &,
также можно считать и операциями над
множеством всех логических функций
двузначной логики, обозначаем
.
Тогда алгебра
тоже будет булевой алгеброй (булевой
алгеброй логических функций), так как
для ее операций тоже выполняются
соотношения 1-14, где вместо переменных
и
подставлены логические функции
.
Если U
– некоторое множество элементов мощности
n:
.
Определение:
B
- булеан
U
– это множество (совокупность) всех
подмножеств множества U.
Определение:
Алгебра (B,
),
несущим множеством которой является
множество B
,
а операциями – пересечение, объединение
и дополнение множеств, называется
булевой
алгеброй множества U
или
алгеброй Кантора. Ее
тип (2,2,1).
Общий термин ”булева алгебра” для алгебр множеств и логических функций не случаен.
Определение: Всякая алгебра типа (2,2,1) называется булевой алгеброй, если ее операции удовлетворяют основным свойствам булевых операций 1-14.
В алгебре множеств
элементами являются подмножества
фиксированного (”универсального”)
множества U,
операции & соответствует пересечение
,
операции
– объединение
,
операции
(отрицание) соответствует дополнение;
единицей является само множество U,
нулем -
.
Справедливость соотношений 1-14 для
алгебры множеств можно доказать
непосредственно их проверкой. Для этого
нужно рассмотреть переменные в них как
множества, знаки & и
заменить на
и
,
и показать, что, если какой-либо элемент
принадлежит множеству из левой части
равенства, то он принадлежит и правой
части, и наоборот.
В пункте 4.2. (в
теореме о числе подмножеств конечного
множества) отмечалось и использовалось
взаимно однозначное соответствие
между множеством
двоичных векторов длины n
и множеством B
,
где
:
каждому подмножеству
соответствует двоичный вектор
,
где
.
Булева алгебра
на множестве
(двоичных векторов) определяется
следующим образом: для любых
и
.
Поскольку компоненты
(разряды)
и
векторов
и
принимают значения 0 и 1, то указанные
операции над компонентами – это просто
логические операции над двоичными
переменными.
Определение: Операции над векторами назовем покомпонентными (поразрядными) логическими операциями над двоичными векторами.
Такие операции
(наряду с логическими операциями над
переменными) входят, в частности, в
систему команд любой современной ЭВМ.
Выполнение их очень просто: вектор
содержит единицы во всех разрядах, в
которых есть 1 либо в
,
либо в
;
- вектор
содержит единицы только в тех разрядах,
в которых есть единицы и в
,
и в
;
- вектор
содержит единицы в тех разрядах, в
которых
содержит 0 и наоборот.
Например:
,
то
=
11011,
=
01010,
=
10100,
.
Теорема 1(об изоморфизме булевых алгебр)
Если
,
то булева алгебра (B
,
)
изоморфна булевой алгебре
.
Доказательство:
Итак, вспомним
взаимно однозначное соответствие между
B
и
.
Множеству М
B
соответствует
,
т.е.
.
(*)
Остается показать, что Г – изоморфизм, т.е. проверить выполнение равенства гомоморфизма алгебр для всех трех операций:
,
если
.
Справедливость их вытекает из (*). Докажем, например второе:
- если
,
то i-ый
разряд вектора
равен 1;
но, с другой стороны,
это означает, что
или
,
но это (по гомоморфизму) означает,
или
,
и, следовательно, i-ый
разряд вектора
равен 1;
- если
,
то i-ый
разряд вектора
равен 0;
но это означает,
что
и
,
но это (по Г) означает,
и
,
и, следовательно, i-ый
разряд вектора
равен 0.
Аналогично доказываются остальные равенства.
Эта теорема
позволяет заменить теоретико-множественные
операции
над системой подмножеств поразрядными
логическими операциями над двоичными
векторами. Такая замена часто используется
при программировании, поскольку
представление двоичных векторов и
поразрядные операции над ними реализуются
очень просто.
Рассмотрим теперь
множество
всех логических функций m
переменных
.
Оно замкнуто относительно операций
(результат их применения к функциям из
снова дает функцию из
,
и, следовательно, образует конечную
булеву алгебру
,
являющуюся подалгеброй булевой алгебры
логических функций.
Теорема 2 (об изоморфизме булевых алгебр).
Если
,
то булева алгебра множеств (B
,
)
изоморфна булевой алгебре функций
.
Доказательство:
1. Прежде всего
отметим, что эти алгебры равномощны и
обе содержат по
элементов т.к. если
,
то
B
=
,
и т.к. все двоичные функции
с m
переменным определяются вектор-столбцом
с
компонентами, то таких различных двоичных
векторов будет
;
2. Поскольку все
множества U
одинаковой мощности порождают изоморфные
булевы алгебры (B,
)
множеств, то эту теорему достаточно
доказать для какого-либо конкретного
U,
удовлетворяющего условию
.
В качестве такого множества U
возьмем множество
–
двоичных векторов длины m
и, следовательно, будем доказывать
изоморфизм между булевой алгеброй
множеств (B
,
)
и булевой алгеброй функций
;
3. Обозначим через
множество единичных наборов функции
f.
Тогда набор
принадлежит
.
Соответственно
(гомоморфизм отображает f
в множество единичных наборов
)
– между функциями и их единичными
множествами является взаимно однозначным
соответствием между
и B
,
поскольку различным функциям соответствуют
различные множества, и наоборот.
Определение: Функцию f , единичным множеством которой служит М, называют характеристической функцией множества М.
4. Покажем, что взаимно однозначное соответствие Г является изоморфизмом. Достаточно проверить выполнение равенств гомоморфизма для всех трех пар операций, которое в данном случае сводится к трем уравнениям:
,
для любых функций f и g от m переменных. Докажем втрое из них.
Пусть
(
- двоичный вектор,
,
f
– единичное множество функции
),
тогда
и, следовательно,
или
и, значит,
или
,
следовательно,
.
Обратно:
или
или
.
Аналогично доказываем остальные свойства.
Замечание: Во избежание путаницы обращаем внимание на различие объектов в доказанных нами теоремах.
1. В теореме 1 фигурировала алгебра со следующим основным множеством:
-
- множество произвольной природы и любой
конечной мощности n;
-
B
- множество подмножеств U
мощности
;
-
- множество двоичных векторов длины n
также мощности
.
В теореме 2 участвовали:
- тот же множество
,
но с дополнительным условием
(m
– любое натуральное число);
-
- конкретное множество U
с этими же условиями:
;
- множество
логических функций m
переменных:
;
- B
- множество подмножеств
:
B
=
.
2. Множества
и
,
хотя и имеют одну и ту же природу (состоят
из двоичных наборов), использовались в
теореме 1 и теореме 2 по-разному. В теореме
1 была использована структура элементов
,
благодаря чему над ними оказались
возможными поразрядные логические
операции. Подмножества
не рассматривались. В теореме 2 структура
элементов
не учитывалась, само
было выбрано только для естественности
и наглядности, зато рассматривалась
B
- система
Таблица 1
|
|
|
f |
g |
|
|
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
подмножеств
.
Теоремы 1 и 2 указывают на тесную связь
между множествами и логическими функциями
и позволяют переходить от операций над
множествами к операциям над функциями
и обратно. В частности, они дают возможность
непосредственно производить операции
над функциями, заданными не формулами,
а таблицами или единичными множествами.
Из теоремы 1 и теоремы 2 следует, что булевы операции над функциями, заданными таблицами, сводятся к поразрядным логическим операциям над столбцами значений функций. Пример, приведенный в таблице, содержащей две функции f и g, и результат булевых операций над ними.