Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

LK / Лекция 22

.doc
Скачиваний:
128
Добавлен:
10.05.2015
Размер:
319.49 Кб
Скачать

Баранов Виктор Павлович. Дискретная математика.

Раздел 4. Функциональные системы с операциями. Алгебра логики.

Лекция 22. Полнота и замкнутость. Полином Жегалкина

Лекция 22. ПОЛНОТА И ЗАМКНУТОСТЬ. ПОЛИНОМ ЖЕГАЛКИНА

План лекции:

  1. Полнота и замкнутость. Примеры функционально полных систем.

  2. Представление булевых функций полиномом Жегалкина.

  1. Полнота и замкнутость. Примеры функционально полных систем

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

Примеры полных систем.

  1. Система – множество всех булевых функций.

  2. Система

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

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

, ,

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

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

По условию теоремы

, , …, .

Поэтому в формуле можно исключить вхождения функций , заменив их формулами над :

,

То есть мы выразили в виде формулы над . Теорема доказана.

Опираясь на эту теорему, можно установить полноту еще ряда систем и тем самым расширить список примеров полных систем.

  1. Система является полной. Для доказательства возьмем за систему систему 2), а за систему – систему 3) и используем тождество

.

  1. Система является полной. Доказательство аналогично предыдущему, либо через принцип двойственности.

  2. Система является полной. Для доказательства возьмем за систему систему 3), а за систему – систему 5). Тогда

, .

  1. Система является полной. Для доказательства возьмем за систему систему 3), а за систему – систему 6). Имеем

.

С понятием полноты тесно связано понятие замыкания и замкнутого класса.

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

Свойства замыкания:

  1. ;

  2. ;

  3. если , то ;

  4. .

Класс (множество) называется функционально замкнутым, если .

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

В терминах замыкания и замкнутого класса можно дать другое определение полноты, эквивалентное исходному: – полная система, если .

  1. Представление булевых функций полиномом Жегалкина

Рассмотрим полную систему функций . Формула, построенная из функций этой системы, после раскрытия скобок и алгебраических преобразований переходит в полином по mod 2, который в честь русского логика конца XIX века И.И. Жегалкина называют полиномом Жегалкина. Возможность такого преобразования следует из следующих тождеств:

; (1)

; (2)

; (3)

; (4)

. (5)

Действительно, из тождеств (1) – (5) следует, что формулы, содержащие операции & и , можно преобразовывать по обычным алгебраическим законам: переставлять слагаемые и множители, раскрывать скобки, выносить общий множитель за скобки.

Пример 1. Представим функцию над множеством связок :

. (6)

Рассмотрим произвольную булеву функцию . Представим ее формулой в базисе , например, совершенной д. н. ф., после чего заменим в этой формуле каждую операцию по формуле (6), а каждое отрицание по формуле . В полученном выражении раскроем скобки и приведем подобные члены. В результате получим полином

где коэффициенты полинома либо равны 1, либо 0 в зависимости от наличия или отсутствия соответствующего члена.

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

Теорема. Каждая функция из представима полиномом Жегалкина.

Подсчитаем число полиномов Жегалкина от переменных , то есть число выражений вида

.

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

Пример 2. Представить функцию в виде полинома Жегалкина.

Будем искать выражение для данной функции в виде полинома с неопределенными коэффициентами:

.

При имеем ,

при имеем ,

при имеем ,

при имеем , то есть .

Отсюда .

Пример 2. Представить полиномом Жегалкина функцию, заданную таблицей истинности:

0 0 0

1

0 0 1

0

010

1

011

1

100

0

101

0

110

0

111

1

Рассматриваемый далее алгоритм построения полинома Жегалкина применим для любой булевой функции.

  1. Представим заданную функцию совершенной д.н.ф.:

. (6)

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

  1. Заменим в выражении (6) все знаки на :

.

  1. Заменим все отрицания по формуле , раскроем скобки и приведем подобные члены:

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

4

Соседние файлы в папке LK