Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по дискретной математике.doc
Скачиваний:
435
Добавлен:
02.05.2014
Размер:
3.12 Mб
Скачать

Лекция № 10. Булевы алгебры и теория множеств.

  1. Двойственность.

Определение.Функцияназываетсядвойственнойк функции, если.

Если взять отрицание обеих частей равенства и подставить вместо переменных, то получится. Это означает, что функциядвойственна к функции, и, таким образом, отношение двойственности является симметричным. Из определения двойственности ясно, что для любой функции двойственная ей функция определяется однозначно. В частности, может оказаться, что функция двойственна самой себе. В этом случае она называетсясамодвойственной.

Пример 1.Если рассматривать логические функции, то, очевидно, дизъюнкция двойственна конъюнкции и наоборот (непосредственно следует из правил Де Моргана). Отрицание является самодвойственной функцией. Функция-константадвойственна функции. Ещё один традиционный пример самодвойственной функции – функция.

Пользуясь определением двойственности нетрудно доказать следующее утверждение, называемое принципом двойственности.

Теорема 10.1.Если в формуле, представляющей функцию, все знаки функций заменить соответственно на знаки двойственных им функций, то полученная формулабудет представлять функцию, двойственную функции.

В булевой алгебре принцип двойственности имеет более конкретный вид, вытекающий из ранее приведённых примеров: если в формуле , представляющей функцию, все конъюнкции заменить дизъюнкциями и наоборот, все единицы заменить нулями и наоборот, то получим формулу, представляющую функцию, двойственную функции.

Если функции равны, то двойственные им функции также равны. Это позволяет с помощью принципа двойственности получать новые эквивалентные соотношения, переходя от равенства с помощью указанных замен к равенству. Примером могут служить соотношенияи, которые могут быть получены друг из друга по указанному принципу.

  1. Булева алгебра и теория множеств.

Ранее были описаны булевы алгебры множеств, то есть алгебры вида , где- булеан множества, то есть множество всех его подмножеств. Общий термин “булева алгебра” для алгебр множеств и логических функций не является случайным.

Определение.Всякая алгебра типаназывается булевой алгеброй, если её операции удовлетворяют соотношениям 1 – 10 (см. предыдущую лекцию).

В алгебре множеств элементами являются подмножества фиксированного универсального множества . В этой алгебре операция пересечения соответствует конъюнкции, операция объединения соответствует дизъюнкции, а операция дополнения соответствует отрицанию. Само множествоявляется единицей, а пустое множество – нулём. Справедливость соотношений 1 – 10 для этой алгебры можно доказать непосредственно, рассматривая в них переменные как множества, а знаки логических функций – как соответствующие операции над множествами.

В одной из предыдущих лекций отмечалось взаимно однозначное соответствие между множеством , гдеи множествомдвоичных векторов длины. Каждому подмножествусоответствует двоичный вектор, где, если, и, если. Операции над векторами в булевой алгебреопределяются следующим образом.

Пусть даны два вектора ииз множества. Тогда:

,

,

.

Поскольку компоненты (координаты) векторов принимают значения 0 или 1, то указанные операции – это просто логические операции над двоичными переменными, поэтому операции над векторами естественно назвать покомпонентными логическими операциями над двоичными векторами.

Пример 2.Даны векторыи. Найти.

Решение:

.

Заметим, что подобные операции (наряду с логическими операциями над переменными) входят в систему команд любой современной ЭВМ.

Теорема 10.2.Если мощность множестваравна, то булева алгебраизоморфна булевой алгебре.

Эта простая по содержанию теорема имеет огромное значение в математике. Она позволяет заменить теоретико-множественные операции над системой подмножеств данного множества поразрядными логическими операциями над двоичными векторами.

Похожая по формулировке, но значительно отличающаяся по смыслу теорема существует для множества всех логических функций переменных. Обозначим это множество. Оно замкнуто относительно операцийи, следовательно, образует конечную булеву алгебру, которая является подалгеброй булевой алгебры логических функций.

Теорема 10.3.Если мощность множестваравна, то булева алгебраизоморфна булевой алгебре функций.

Теорема 10.3 указывает на тесную связь между множествами и логическими функциями и позволяет переходить от операций над множествами к операциям над функциями и обратно. В частности, они позволяют непосредственно производить операции над функциями, заданными не формулами, а таблицами. Пример приведён в следующей таблице, содержащей две функции трёх переменных ии результаты операций над ними:

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

0

1

  1. ДНФ, интервалы и покрытия.

Теоретико-множественная интерпретация булевой алгебры предлагает очень удобный язык для изучения дизъюнктивных нормальных форм (ДНФ) и построения методов их упрощения. Рассмотрим кратко основные понятия, связанные с ДНФ.

Введём следующее обозначение: обозначим через множество всех единичных наборов функции. Тогда набор (вектор)из множествапринадлежиттогда и только тогда, когда. Множествоназываетсяединичным множествомфункции, а функцияназываетсяхарактеристической функциеймножества. Легко показать, что соответствие между функциями и их единичными множествами является изоморфизмом.

Если функция представляется элементарной конъюнкцией всехпеременных, то множествосодержит ровно один элемент множества. Если же функция – элементарная конъюнкцияпеременных, тосодержитдвоичных наборов. Это объясняется тем, что в таком случаепеременных, не входящих в эту конъюнкцию несущественны для функции. Тогда они принимаютзначений, не изменяя значения. Множествотакой функции называется интервалом.

Пример 3.Рассмотрим функциюи найдём её интервал.

Прежде всего, заметим, что две переменных являются несущественными. Это позволяет сразу определить количество единичных наборов, содержащихся в множестве(иначе говоря, его мощность). Поскольку в данном случае, то получим.

Далее, очевидно, что только при значениях. При этом переменныемогут принимать любые значения. Теперь перечислим все единичные наборы для данной функции:. Итак,.

В рассматриваемом случае говорят, что конъюнкция (или, точнее, интервал) покрывает множествои все его подмножества.

Представление некоторой функции в виде ДНФ соответствует представлению её единичного множества в виде объединения интервалов; в совокупности все конъюнкции ДНФ покрывают всё единичное множество функции . Обратное также верно: если все элементы некоторого интервалапринадлежат, то существует ДНФ данной функции, содержащая конъюнкцию.

Назад, в начало конспекта.