Здавалка
Главная | Обратная связь

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



Система булевых функций F={f1, f2, … , fn, …} называется полной, если любая булева функция может быть выражена через функции этой системы (представить в виде суперпозиции функций из функций F.

Все логические операции могут быть выражены через операции конъюнкции, дизъюнкции и отрицания, то есть класс Ф= { , , Ú} является функционально полным докажем это утверждение.

Рассмотрим два случая.

1) Пусть f тождественно не равна 0. Тогда для нее существует СДНФ, в которой для представления функции по определению используются только , , Ú. Следовательно, произвольная функция представима в заданном базисе.

2) Пусть f тождественно равна 0. Тогда для нее существует СКНФ, в которой для представления функции по определению используются только , , Ú. Следовательно, произвольная функция представима в заданном базисе.

Также полными являются следующие системы функций:

а) { , Ú}; б) { , Ù}; в) { , }.

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

Полнота системы { , } следует из полноты системы { , Ú} и равносильности 12, позволяющую выразить импликацию через отрицание и дизъюнкцию.

Полином Жегалкина

Всякая булева функция может быть представлена в виде полинома Жегалкина:

где , где знак + обозначает двоичное сложение (сумму по модулю 2). Таблица истинности двоичного сложения имеет вид:

 

 

Рассмотрим два способа построения полинома.

1. Алгоритм построения полинома Жегалкина с использованием таблицы истинности.

1. Построить таблицу истинности данной булевой функции.

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

3. Заменить выражения по формуле: . Раскрыть скобки и привести подобные слагаемые по правилу: .

2. Метод неопределенных коэффициентов для построения ПЖ.

Рассмотрим этот способ на примере.

Общий вид ПЖ для функции от 2-х переменных: f(x1, x2)= c1x1x2 + c2x1 + c3x2 + c4.

Общий вид ПЖ для функции от 3-х переменных:

f(x1, x2, x3)= c1x1x2x3+ c2x1x2 + c3 x1x3 + c4x2x3 + c5x1 + c6x2 + c7x3 + c8.

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

Пусть требуется найти полином Жегалкина для функции f(x1, x2)= x1Ú x2.

Построим таблицу истинности для заданной функции:

x1 x2 x1Ú x2

Имеем по таблице f(0,0)=0. Подставим значения переменных (0,0) в формулы разложения. Получим:

f(0, 0)= c100 + c20 + c30 + c4.

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

f(0, 0)= c100 + c20 + c30 + 0=0Þ c4=0.

Рассуждая аналогичным образом, получаем:

f(0,1)=c101 + c20 + c31 + 0=1Þ c3=1;

f(1,0)=c110 + c21 + c30 + 0=1Þ c2=1;

f(1,1)=c111 + c21 + c31 + 0=1Þ c1=1.

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

f(x1, x2)= 1x1x2 +1x1 + 1x2 +0=x1x2 +x1 + x2, - полином Жегалкина для заданной функции.

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.