Ий этап: построение минимальных ДНФ.

Минимальные ДНФ функции являются тупиковыми ДНФ. Поэтому, после того как все тупиковые ДНФ построены, нужно отобрать те из них, которые имеют наименьшую сложность (таких может быть несколько). Это и будут минимальные ДНФ.

Например, для функции ий этап: построение минимальных ДНФ. - student2.ru обе тупиковые ДНФ имеют сложность, равную шести, и, следовательно, обе являются минимальными.

Упражнение 22. Построить минимальные ДНФ функции:

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru ;

в) ий этап: построение минимальных ДНФ. - student2.ru ; г) ий этап: построение минимальных ДНФ. - student2.ru .

а) 1 этап. Строим сокращенную ДНФ функции:

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru .

2-ой и 3-й этапы для данной функции не актуальны. Действительно, функция ий этап: построение минимальных ДНФ. - student2.ru зависит от переменных ий этап: построение минимальных ДНФ. - student2.ru существенным образом и, значит, не может быть представлена ДНФ, содержащей менее трех букв. Следовательно, сокращенная ДНФ ий этап: построение минимальных ДНФ. - student2.ru функции ий этап: построение минимальных ДНФ. - student2.ru является также тупиковой и минимальной.


ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru

б)1-й этап. Строим сокращенную ДНФ функции:

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru .

Переход I: операция неполного склеивания применена к парам конъюнкций 1 и 2, 1 и 4, 2 и 5, 3 и 7, 4 и 5, 5 и 6, 6 и 7.

Переход II: применена операция поглощения - каждая из конъюнкций 4-го ранга поглощена какой-то из конъюнкций 3-го ранга.

Переход III: операция неполного склеивания применена к парам конъюнкций 8 и 12, 9 и 10.

Переход IV: применена операция поглощения и убраны дублирующие члены.

Итак, мы нашли сокращенную ДНФ функции: ий этап: построение минимальных ДНФ. - student2.ru .

2-й этап. Введем обозначения для простых импликант функции: ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru . Составим импликантную таблицу:

 
ий этап: построение минимальных ДНФ. - student2.ru
ий этап: построение минимальных ДНФ. - student2.ru
ий этап: построение минимальных ДНФ. - student2.ru
ий этап: построение минимальных ДНФ. - student2.ru

Тогда

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru .

Таким образом, имеем две тупиковых ДНФ, реализующие функцию ий этап: построение минимальных ДНФ. - student2.ru : ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru .

3-й этап. Тупиковые ДНФ функции ий этап: построение минимальных ДНФ. - student2.ru имеют одинаковую сложность (равную восьми), и, следовательно, обе являются минимальными.

в), г) решите самостоятельно. ►

§ 2.4. Классы Поста и полнота

2.4.1. Понятие о полноте системы булевых функций

Определение. Множество булевых функций ий этап: построение минимальных ДНФ. - student2.ru называется полной системой, если любая булева функция из ий этап: построение минимальных ДНФ. - student2.ru может быть реализована формулой над ий этап: построение минимальных ДНФ. - student2.ru .

Упражнение 2.25. Доказать, что ий этап: построение минимальных ДНФ. - student2.ru - полная система.

◄ Возможны два случая:

1. ий этап: построение минимальных ДНФ. - student2.ru . Тогда ий этап: построение минимальных ДНФ. - student2.ru и может быть реализована в виде СКНФ.

2. ий этап: построение минимальных ДНФ. - student2.ru . Тогда ий этап: построение минимальных ДНФ. - student2.ru может быть реализована в виде СДНФ.

Таким образом, любая булева функция может быть реализована формулой над множеством ий этап: построение минимальных ДНФ. - student2.ru , что и означает полноту этой системы функций. ►

Теорема (о полноте двух систем). Пусть заданы две системы функций из ий этап: построение минимальных ДНФ. - student2.ru : ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru . Тогда, если система ий этап: построение минимальных ДНФ. - student2.ru - полная и каждая ее функция может быть реализована формулой над ий этап: построение минимальных ДНФ. - student2.ru , то система ий этап: построение минимальных ДНФ. - student2.ru тоже полная.

Докажем это утверждение. Пусть ий этап: построение минимальных ДНФ. - student2.ru - произвольная функция из ий этап: построение минимальных ДНФ. - student2.ru . Надо показать, что ее можно реализовать формулой над ий этап: построение минимальных ДНФ. - student2.ru . Рассуждаем так. В силу полноты ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru реализуется формулой над ий этап: построение минимальных ДНФ. - student2.ru , т.е. ий этап: построение минимальных ДНФ. - student2.ru . В свою очередь, по условию ий этап: построение минимальных ДНФ. - student2.ru реализуются формулами над ий этап: построение минимальных ДНФ. - student2.ru , т.е. ий этап: построение минимальных ДНФ. - student2.ru . Следовательно, в формуле ий этап: построение минимальных ДНФ. - student2.ru мы можем исключить вхождение символов функций ий этап: построение минимальных ДНФ. - student2.ru , заменив их соответствующими формулами: ий этап: построение минимальных ДНФ. - student2.ru . Полученное выражение определяет формулу над ий этап: построение минимальных ДНФ. - student2.ru , реализующую ий этап: построение минимальных ДНФ. - student2.ru .

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

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru ; в) ий этап: построение минимальных ДНФ. - student2.ru ; г) ий этап: построение минимальных ДНФ. - student2.ru .

а)Докажем, что ий этап: построение минимальных ДНФ. - student2.ru - полная система. Действительно, пусть ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru . Система ий этап: построение минимальных ДНФ. - student2.ru - полная и, поскольку ий этап: построение минимальных ДНФ. - student2.ru , то каждая функция этой системы выражается формулой над ий этап: построение минимальных ДНФ. - student2.ru . Таким образом, условия теоремы о полноте двух систем выполнены и, значит, система ий этап: построение минимальных ДНФ. - student2.ru - полная система.

б) Докажем, что ий этап: построение минимальных ДНФ. - student2.ru полная система. Действительно, пусть ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru . Имеем: ий этап: построение минимальных ДНФ. - student2.ru или ий этап: построение минимальных ДНФ. - student2.ru . Следовательно, ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru . Таким образом, каждая функция полной системы ий этап: построение минимальных ДНФ. - student2.ru реализуется формулой над ий этап: построение минимальных ДНФ. - student2.ru . Следовательно, условия теоремы о полноте двух систем выполнены и, значит, ий этап: построение минимальных ДНФ. - student2.ru - полная система.

в) и г)докажите самостоятельно. ►

2.4.2. Реализация булевых функций полиномом Жегалкина

Возьмем произвольную функцию ий этап: построение минимальных ДНФ. - student2.ru . Поставим цель – реализовать ее в виде суммы (по модулю два) слагаемых, каждое из которых представляет собой конъюнкцию нескольких переменных.

Вначале рассмотрим эту задачу на конкретном примере. Для функции ий этап: построение минимальных ДНФ. - student2.ru имеем:

ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru .

В ходе преобразований мы воспользовались несколькими доказанными ранее (упр. 2.12) равносильностями: ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru .

Аналогичным образом можно поступать с произвольной функцией: сначала реализовать ее в виде СДНФ или СКНФ; затем, воспользовавшись законом де Моргана, избавиться от дизъюнкции; раскрыть скобки, воспользовавшись дистрибутивностью операций сложения по модулю два и конъюнкции; после этого полученное выражение упростить, используя тождества ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru . В результате функция окажется реализована формулой, представляющей собой сумму (по модулю два) конъюнкций переменных. Формулы такого вида называют полиномами Жегалкина.

Дадим строгое определение полинома Жегалкина. Пусть M – произвольное подмножество булевого куба ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru - номер вектора ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru - его вес, ий этап: построение минимальных ДНФ. - student2.ru - номера отличных от нуля координат вектора ий этап: построение минимальных ДНФ. - student2.ru .

Определение. Формула вида

ий этап: построение минимальных ДНФ. - student2.ru , (***)

где суммирование ведется по модулю два, а коэффициенты ий этап: построение минимальных ДНФ. - student2.ru равны либо 0, либо 1, называется полиномом Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных.

Если суммирование в формуле (***), ведется по всем булевым векторам длины n, слагаемые идут в порядке возрастания номеров булевых векторов и ий этап: построение минимальных ДНФ. - student2.ru , то говорят, что полином Жегалкина записан в канонической форме.

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

Возможно, строгое определение канонического полинома Жегалкина показалось Вам неясным. Лучший способ его осознать – переформировать применительно к какому-нибудь частному случаю, например, случаю 2-х переменных.

Рассуждаем так. Согласно определению в формуле (***) слагаемых столько, сколько булевых векторов в множестве ий этап: построение минимальных ДНФ. - student2.ru , т.е. 4; слагаемые идут в порядке возрастания номеров булевых векторов, т.е. первое слагаемое соответствует булевому вектору (0,0), второе - (0,1), третье - (1,0), четвертое - (1,1). Слагаемые представляют собой конъюнкции, в которые входят только те переменные, значения которых в соответствующем булевом векторе равны 1, конъюнкции помножены на числовой коэффициент. Таким образом, слагаемое, соответствующее булевому вектору (0,0) (его номер 0), имеет вид ий этап: построение минимальных ДНФ. - student2.ru ; слагаемое, соответствующее булевому вектору (0,1) (его номер 1), имеет вид ий этап: построение минимальных ДНФ. - student2.ru ; слагаемое, соответствующее булевому вектору (1,0) (его номер 2), имеет вид ий этап: построение минимальных ДНФ. - student2.ru ; слагаемое, соответствующее булевому вектору (1,1) (его номер 3), имеет вид ий этап: построение минимальных ДНФ. - student2.ru . Итак, канонический полином Жегалкина от 2-х переменных - это формула вида ий этап: построение минимальных ДНФ. - student2.ru .

Рассуждая аналогично, выпишем в общем виде канонический полином Жегалкина от 3-х переменных - ий этап: построение минимальных ДНФ. - student2.ru (Это удобно делать, имея перед глазами таблицу истинности функции трех переменных, поскольку в этой таблице булевы вектора перечисляются в нужном нам порядке).

Упражнение 2.27. Найти число канонических полиномов Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных.

◄ Каждый канонический полином Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных однозначно определяется набором своих коэффициентов ий этап: построение минимальных ДНФ. - student2.ru . Каждый такой набор можно рассматривать как булев вектор длины ий этап: построение минимальных ДНФ. - student2.ru . Следовательно, канонических полиномов Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных столько же, сколько булевых векторов длины ий этап: построение минимальных ДНФ. - student2.ru , т.е. ий этап: построение минимальных ДНФ. - student2.ru . ►

Заметим, что каждый полином Жегалкина от n переменных можно записать в канонической форме. Например, полином Жегалкина от двух переменных ий этап: построение минимальных ДНФ. - student2.ru в канонической форме запишется так: ий этап: построение минимальных ДНФ. - student2.ru .

Выше на примере функции ий этап: построение минимальных ДНФ. - student2.ru мы показали, как можно реализовать функцию в виде полинома Жегалкина. Полученный полином можно переписать в канонической форме ий этап: построение минимальных ДНФ. - student2.ru . В связи с этим естественно задаться вопросом: каждую ли булеву функцию можно реализовать в виде канонического полинома Жегалкина? Оказывается, да. Действительно, с произвольной функцией можно действовать так же как с функцией ий этап: построение минимальных ДНФ. - student2.ru : сначала реализовать ее в виде СДНФ или СКНФ; затем, воспользовавшись законом де Моргана, избавиться от дизъюнкции; раскрыть скобки, воспользовавшись дистрибутивностью операций сложения по модулю два и конъюнкции; после этого полученное выражение упростить, используя тождества ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru . В результате функция окажется реализованной в виде полинома Жегалкина, который легко переписать в канонической форме.

Положим, мы построили для функции канонический полином Жегалкина. Естественно поинтересоваться: нельзя ли, действуя иначе, получить для той же функции другой канонический полином Жегалкина. Оказывается, нельзя.

Действительно, число канонических полиномов Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных равно ий этап: построение минимальных ДНФ. - student2.ru и число функций от ий этап: построение минимальных ДНФ. - student2.ru переменных равно ий этап: построение минимальных ДНФ. - student2.ru . Предположим, что найдется функция, представление которой в виде канонического полинома Жегалкина не единственно. Поскольку число булевых функций ий этап: построение минимальных ДНФ. - student2.ru переменных и число канонических полиномов Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных одинаково, то из неоднозначности представления следует, что найдется канонический полином Жегалкина, реализующий не менее двух функций, что невозможно. Пришли к противоречию, следовательно, наше предположение о неоднозначности представления было неверным.

Мы доказали теорему: каждая булева функция от ий этап: построение минимальных ДНФ. - student2.ru переменных может быть реализована в виде канонического полинома Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных, причем единственным образом.

Для нахождения полинома Жегалкина, реализующего функцию ий этап: построение минимальных ДНФ. - student2.ru , применяют два способа: метод равносильных преобразований и метод неопределенных коэффициентов.

Методом равносильных преобразований мы уже пользовались, когда искали полином Жегалкина функции ий этап: построение минимальных ДНФ. - student2.ru .

Упражнение 2.28. Используя метод равносильных преобразований, найти полином Жегалкина, реализующий функцию:

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru ;

в) ий этап: построение минимальных ДНФ. - student2.ru ; г) ий этап: построение минимальных ДНФ. - student2.ru .

а) ий этап: построение минимальных ДНФ. - student2.ru .

б) ий этап: построение минимальных ДНФ. - student2.ru .

в) и г)решите самостоятельно. ►

Метод неопределенных коэффициентов состоит в следующем. Пусть функция ий этап: построение минимальных ДНФ. - student2.ru зависит от ий этап: построение минимальных ДНФ. - student2.ru переменных. В общем виде записывают канонический полином Жегалкина ий этап: построение минимальных ДНФ. - student2.ru от ий этап: построение минимальных ДНФ. - student2.ru переменных. Для каждого набора ий этап: построение минимальных ДНФ. - student2.ru значений переменных составляют уравнение ий этап: построение минимальных ДНФ. - student2.ru . В результате получают систему из ий этап: построение минимальных ДНФ. - student2.ru уравнений, которая однозначно определяет коэффициенты полинома.

Упражнение 2.29. Используя метод неопределенных коэффициентов, найти полином Жегалкина, реализующий функцию:

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru ;

в) ий этап: построение минимальных ДНФ. - student2.ru ; г) ий этап: построение минимальных ДНФ. - student2.ru .

а)Зададим функцию ий этап: построение минимальных ДНФ. - student2.ru таблично:

ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru

Канонический полином Жегалкина от двух переменных имеет вид: ий этап: построение минимальных ДНФ. - student2.ru . Поэтому должны выполняться равенства:

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru .

Откуда последовательно находим ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru . Таким образом, ий этап: построение минимальных ДНФ. - student2.ru .

б)

ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru

Запишем в общем виде канонический полином Жегалкина от трех переменных:

ий этап: построение минимальных ДНФ. - student2.ru .

Нам нужно подобрать такие коэффициенты ий этап: построение минимальных ДНФ. - student2.ru , чтобы на каждом наборе значений переменных выполнялось равенство: ий этап: построение минимальных ДНФ. - student2.ru :

ий этап: построение минимальных ДНФ. - student2.ru ; ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru .

Коэффициенты найдены и можно записать канонический полином Жегалкина: ий этап: построение минимальных ДНФ. - student2.ru .

Каноническая форма полинома Жегалкина довольно громоздкая и в практическом плане не имеет каких-либо преимуществ перед любой другой формой. Поэтому имеет смысл упростить полученное выражение, опустив нулевые члены и единичные сомножители: ий этап: построение минимальных ДНФ. - student2.ru .

в) и г)решите самостоятельно. ►

2.4.3 Классы Поста

Определение. Говорят, что булева функция сохраняет 0, если ий этап: построение минимальных ДНФ. - student2.ru .

Обозначим через ий этап: построение минимальных ДНФ. - student2.ruмножество функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, сохраняющих 0, а через ий этап: построение минимальных ДНФ. - student2.ru – множество всех булевых функций, сохраняющих 0, т.е. ий этап: построение минимальных ДНФ. - student2.ru .

Например, ий этап: построение минимальных ДНФ. - student2.ru , т.к. ий этап: построение минимальных ДНФ. - student2.ru ; ий этап: построение минимальных ДНФ. - student2.ru , т.к. ий этап: построение минимальных ДНФ. - student2.ru .

Определение. Говорят, что булева функция сохраняет 1, если ий этап: построение минимальных ДНФ. - student2.ru .

Обозначим через ий этап: построение минимальных ДНФ. - student2.ruмножество функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, сохраняющих 1, а через ий этап: построение минимальных ДНФ. - student2.ru – множество всех булевых функций, сохраняющих 1, т.е. ий этап: построение минимальных ДНФ. - student2.ru .

Например, ий этап: построение минимальных ДНФ. - student2.ru , т.к. ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , т.к. ий этап: построение минимальных ДНФ. - student2.ru .

Упражнение 2.30. а)Какие из функцийодной переменной принадлежат, а какие не принадлежат множествам ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru ?

б) Какие из элементарных функций двух переменных принадлежат, а какие не принадлежат множествам ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru ?

а) ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru.

б) решить самостоятельно.►

Упражнение 2.31. а) Перечислите векторы значений булевых функций 2-х переменных, сохраняющих 0.

б) Перечислите векторы значений булевых функций 2-х переменных, сохраняющих как 0, так и 1.

в) Сколько имеется булевых функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, сохраняющих 0?

г) Сколько имеется булевых функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, сохраняющих 1?

д) Сколько булевых функций содержится во множестве ий этап: построение минимальных ДНФ. - student2.ru ?

е) Сколько булевых функций содержится во множестве ий этап: построение минимальных ДНФ. - student2.ru ?

а)иб) решите самостоятельно.

в)Пусть ий этап: построение минимальных ДНФ. - student2.ru . Вектор значений такой функции имеет ий этап: построение минимальных ДНФ. - student2.ru координат, первая из которых равна 0, т.е. ий этап: построение минимальных ДНФ. - student2.ru . Следовательно, функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, сохраняющих 0, столько же, сколько булевых векторов длины ий этап: построение минимальных ДНФ. - student2.ru , т.е. ий этап: построение минимальных ДНФ. - student2.ru .

г) и д) решите самостоятельно.

е) Разобьем множество ий этап: построение минимальных ДНФ. - student2.ru на три подмножества: в первое включим функции, сохраняющие 0, но не сохраняющие 1, во второе – функции, сохраняющие 1, но не сохраняющие 0, в третье – функции, сохраняющие как 0, так и 1. В первом подмножестве содержится ий этап: построение минимальных ДНФ. - student2.ru функций (первая и последняя координаты вектора значений этих функция равны 0), во втором - ий этап: построение минимальных ДНФ. - student2.ru (первая и последняя координаты вектора значений этих функция равны 1), в третьем - ий этап: построение минимальных ДНФ. - student2.ru (первая координата вектора значений этих функция равна 0, последняя - 1). Следовательно, ий этап: построение минимальных ДНФ. - student2.ru .

Другой подход к решению – использование формулы мощности объединения множеств:

ий этап: построение минимальных ДНФ. - student2.ru

Определение. Булева функция называется самодвойственной, если ий этап: построение минимальных ДНФ. - student2.ru , т.е. на любом наборе ий этап: построение минимальных ДНФ. - student2.ru значений переменных ий этап: построение минимальных ДНФ. - student2.ru выполняется равенство т.е. ий этап: построение минимальных ДНФ. - student2.ru .

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

Обозначим через ий этап: построение минимальных ДНФ. - student2.ru множество самодвойственных функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, а через ий этап: построение минимальных ДНФ. - student2.ru – множество всех самодвойственных функций; т.е. ий этап: построение минимальных ДНФ. - student2.ru .

Упражнение 2.32.Дать определение несамодвойственной функции.

◄Булева функция несамодвойственная, если существует такой набор ий этап: построение минимальных ДНФ. - student2.ru значений переменных ий этап: построение минимальных ДНФ. - student2.ru такой, что ий этап: построение минимальных ДНФ. - student2.ru .►

Например, ий этап: построение минимальных ДНФ. - student2.ru , т.к. ий этап: построение минимальных ДНФ. - student2.ru .

Упражнение 2.33. а)Перечислите самодвойственные функцииодной переменной.

б) Перечислите элементарные самодвойственные функции двух переменных.

а) ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , таким образом, среди функций одного аргумента самодвойственными являются тождественная функция и отрицание.

б) решить самостоятельно.►

Определение. Если для любого ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ( ий этап: построение минимальных ДНФ. - student2.ru ), то говорят, что вектор ий этап: построение минимальных ДНФ. - student2.ru предшествует вектору ий этап: построение минимальных ДНФ. - student2.ru и пишут ий этап: построение минимальных ДНФ. - student2.ru .

Обратите внимание, если номер вектора ий этап: построение минимальных ДНФ. - student2.ru меньше номера вектора ий этап: построение минимальных ДНФ. - student2.ru (и, значит, в таблице истинности ий этап: построение минимальных ДНФ. - student2.ru стоит выше ий этап: построение минимальных ДНФ. - student2.ru ), то это еще не значит, что ий этап: построение минимальных ДНФ. - student2.ru предшествует ий этап: построение минимальных ДНФ. - student2.ru . Чтобы выяснить предшествует ли один вектор другому, нужно сравнить их координаты (первую с первой, вторую со второй, и т.д.). Например, вектор ий этап: построение минимальных ДНФ. - student2.ru предшествует ий этап: построение минимальных ДНФ. - student2.ru , но не предшествует вектору ий этап: построение минимальных ДНФ. - student2.ru . Еще примеры: ий этап: построение минимальных ДНФ. - student2.ru ; ий этап: построение минимальных ДНФ. - student2.ru . Заметьте, есть пары векторов, в которых ни один из векторов не предшествует другому.

Если имеет место хотя бы одно из соотношений ий этап: построение минимальных ДНФ. - student2.ru или ий этап: построение минимальных ДНФ. - student2.ru , то ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru называют сравнимыми. В противном случае – несравнимыми.

Упражнение 2.32. а) Перечислите булевы вектора, предшествующие ий этап: построение минимальных ДНФ. - student2.ru .

б)Перечислите булевы вектора, предшествующие ий этап: построение минимальных ДНФ. - student2.ru .

а)Булев вектор будет предшествовать вектору ий этап: построение минимальных ДНФ. - student2.ru , если его первая и третья координаты будут либо равны 0, либо 1, а вторая и четвертая равны 0. Этим условиям удовлетворяют вектора ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , а также сам вектор ий этап: построение минимальных ДНФ. - student2.ru .

б) решить самостоятельно.►

Упражнение 2.35. а)Сколько существует булевых векторов, предшествующих вектору ий этап: построение минимальных ДНФ. - student2.ru ?

б)Сколько существует булевых векторов, которым предшествует вектор (101000101)?

а) Вектора, предшествующие вектору ий этап: построение минимальных ДНФ. - student2.ru , имеют вид ий этап: построение минимальных ДНФ. - student2.ru , где ий этап: построение минимальных ДНФ. - student2.ru выбираются из множества ий этап: построение минимальных ДНФ. - student2.ru . Для подсчета используем правило произведения. Вначале выбираем значение ий этап: построение минимальных ДНФ. - student2.ru (это можно сделать двумя способами – взять 0 или 1), затем выбираем значение ий этап: построение минимальных ДНФ. - student2.ru (0 или 1), и последним выбираем значение ий этап: построение минимальных ДНФ. - student2.ru (0 или 1). Следовательно, общее число предшествующих векторов равно ий этап: построение минимальных ДНФ. - student2.ru .

б) Решить самостоятельно.►

Определение. Говорят, что булева функция ий этап: построение минимальных ДНФ. - student2.ru монотонна, если для любых наборов ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru значений переменных, таких что ий этап: построение минимальных ДНФ. - student2.ru , выполняется неравенство ий этап: построение минимальных ДНФ. - student2.ru .

Обозначим через ий этап: построение минимальных ДНФ. - student2.ruмножество монотонных функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, а через ий этап: построение минимальных ДНФ. - student2.ru – множество всех монотонных функций; т.е. ий этап: построение минимальных ДНФ. - student2.ru.

Упражнение 2.36.Дать определение немонотонной функции.

◄Булева функция ий этап: построение минимальных ДНФ. - student2.ru немонотонная, если найдутся такие наборы ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru значений переменных, что ий этап: построение минимальных ДНФ. - student2.ru , а ий этап: построение минимальных ДНФ. - student2.ru . ►

В случае функции одной переменной функция монотонна при выполнении неравенства ий этап: построение минимальных ДНФ. - student2.ru . В частном случае двух переменных функция ий этап: построение минимальных ДНФ. - student2.ru монотонна, если выполняются неравенства: ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru . Обратите внимание: так как в паре векторов ий этап: построение минимальных ДНФ. - student2.ru ни один не предшествует другому, то и значения ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru не сравниваются. Например, функции ий этап: построение минимальных ДНФ. - student2.ru - монотонны, а функции ий этап: построение минимальных ДНФ. - student2.ru немонотонны.

Упражнение 2.37. Выяснить, монотонна или нет функция:

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru .


ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru

а)Будем последовательно перебирать пары булевых векторов, отбирать из них сравнимые и сопоставлять значения функции ий этап: построение минимальных ДНФ. - student2.ru на векторах этих пар.

Перебор можно вести, придерживаясь такой схемы: сначала перебираем пары с вектором ий этап: построение минимальных ДНФ. - student2.ru ,

затем пары с вектором ий этап: построение минимальных ДНФ. - student2.ru (вектор ий этап: построение минимальных ДНФ. - student2.ru уже не рассматриваем), затем пары с вектором ий этап: построение минимальных ДНФ. - student2.ru (вектора ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru уже не рассматриваем) и т.д.

Вектор ий этап: построение минимальных ДНФ. - student2.ru предшествует всем прочим булевым векторам длины 3, при этом значение функции на этом векторе, будучи равным нулю, меньше либо равно значениям функции на всех других векторах. Этот факт не позволяет сделать никаких выводов относительно монотонности функции ий этап: построение минимальных ДНФ. - student2.ru , поэтому переходим к рассмотрению пар с вектором ий этап: построение минимальных ДНФ. - student2.ru . Вектор ий этап: построение минимальных ДНФ. - student2.ru предшествует векторам ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , при этом ий этап: построение минимальных ДНФ. - student2.ru , однако уже ий этап: построение минимальных ДНФ. - student2.ru . Следовательно, условие монотонности нарушено, и, значит, функция немонотонна.

б) Последовательно перебрав все пары сравнимых векторов, убеждаемся, что функция монотонна.►

Обратите внимание: для вывода о не монотонности функции достаточно указать два булевых вектора ий этап: построение минимальных ДНФ. - student2.ru и ий этап: построение минимальных ДНФ. - student2.ru , такие что ий этап: построение минимальных ДНФ. - student2.ru , а ий этап: построение минимальных ДНФ. - student2.ru . Для вывода о монотонности, нужно сравнить значения функции на всех парах сравнимых векторов.

Определение. Говорят, что булева функция линейна, если степень ее канонического полинома Жегалкина меньше либо равна 1.

Иначе говоря, функция линейна, если ее полином Жегалкина имеет вид ий этап: построение минимальных ДНФ. - student2.ru .

Обозначим через ий этап: построение минимальных ДНФ. - student2.ru множество линейных функций от ий этап: построение минимальных ДНФ. - student2.ru переменных, а через ий этап: построение минимальных ДНФ. - student2.ru – множество всех линейных булевых функций, т.е. ий этап: построение минимальных ДНФ. - student2.ru .

Упражнение 2.38.Дать определение нелинейной функции.

◄Булева функция ий этап: построение минимальных ДНФ. - student2.ru нелинейна, если степень ее канонического полинома Жегалкина больше либо равна двум. ►

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

Например, все функции одной переменной ий этап: построение минимальных ДНФ. - student2.ru линейны; ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru линейными не являются.

Упражнение 2.39. а) Выписать полиномы Жегалкина линейных булевых функций от 2-х переменных.

б) Выяснить, сколько имеется линейных булевых функций от ий этап: построение минимальных ДНФ. - student2.ru переменных.

а) решите самостоятельно.

б) Между булевыми функциями ий этап: построение минимальных ДНФ. - student2.ru переменных и каноническими полиномами Жегалкина от ий этап: построение минимальных ДНФ. - student2.ru переменных существует взаимно однозначное соответствие, значит, линейных булевых функций от ий этап: построение минимальных ДНФ. - student2.ru переменных столько же, сколько канонических полиномов Жегалкина вида ий этап: построение минимальных ДНФ. - student2.ru . Каждый такой полином Жегалкина определяется набором коэффициентов ий этап: построение минимальных ДНФ. - student2.ru , а количество таких наборов равно ий этап: построение минимальных ДНФ. - student2.ru . Значит, ий этап: построение минимальных ДНФ. - student2.ru .►

Упражнение 2.40. Определите, каким из классов Поста принадлежат функции:

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru ; а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru .

а) ий этап: построение минимальных ДНФ. - student2.ru . Имеем:

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , а ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru .

б) ий этап: построение минимальных ДНФ. - student2.ru . Имеем:

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , а ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru .

Пунктыв)иг) решите самостоятельно.►

Классы ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru , ий этап: построение минимальных ДНФ. - student2.ru называют классами Поста.

Упражнение 2.41. Определите, каким из классов Поста принадлежат функции

а) ий этап: построение минимальных ДНФ. - student2.ru ; б) ий этап: построение минимальных ДНФ. - student2.ru .

а)Удобно работать с функцией, заданной таблично:

ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru ий этап: построение минимальных ДНФ. - student2.ru

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru ;

ий этап: построение минимальных ДНФ. - student2.ru , а ий этап: построение минимальных ДНФ. - student2.ru , следовательно, ий этап: построение минимальных ДНФ. - student2.ru .

Наши рекомендации