_____
x1 x2=
1 v 2Функциональная полнота системы булевых функций называется минимальной ,если удаление из нее какой-либо функции приводит к нарушению свойства функциональной полноты.
Системы из одной функции S4=¯(стрелка Пирса)
S5=|(штрих Шеффера)
которые принято называть универсальным базисом.
2)Базис Жегалкина S6= {&, Å, 1}
Понятие функциональной полноты системы булевых функций связано с аналогичным понятием для системы логических элементов.
Эта связь заключается в следующем :
Если каждой функции из некоторой функционально полной системы сопоставить логический элемент, реализующий эту функцию ,то система логических элементов соответствующая некоторой функционально полной системе булевых функций естественным образом оказывается тоже функционально полной .
Задача синтеза комбинационных схем с использованием функционально полной системы логических элементов можно построить комбинационную схему реализующую любую наперед заданную ,сколь угодно сложную булеву функцию.
Доказательство функциональной полноты некоторой системы
булевых функций можно осуществлять одним из двух способов:
1) С использованием теоремы о функциональной полноте .
2) С использованием конструктивного подхода .
Теорема о функциональной полноте (Пост - Яблонского).
Для того, чтобы система булевых функций была функционально полной необходимо и достаточно чтобы она содержала хотя бы одну функцию не:
1) cохраняющую константу ноль
2) cохраняющую константу единица
3) линейную функцию
4) монотонную функцию
5) самодвойственную функцию.
Замечательные классы булевых функций.
1. Булева функция называется сохраняющей константу ноль , если на нулевом наборе аргументов она принимает значение равное нулю, то есть f(0,0,0,...,0) = 0;
В противном случае функция относится к классу не cохраняющих константу ноль.
К функциям ,сохраняющим константу ноль относятся
f(x1,x2)= x1 v x2
f(x1,x2)= x1 * x2
К функциям не cохраняющим константу ноль относятся
f(x)=
и f(x1,x2)=x1~x22.Булева функция называется сохраняющей константу единица , если на единичном наборе аргументов она принимает значение равное единице, то есть f(1,1,1,...,1)= 1;
В противном случае функция относится к классу не cохраняющих константу единица.
К функциям ,сохраняющим константу единица относятся
f(x1,x2)= x1 v x2
f(x1,x2)= x1 * x2
К функциям не cохраняющим константу единица относятся
f(x)=
и f(x1,x2)=x1Åx23. Булева функция называется линейной если она представима полиномом Жегалкина первой степени.
В булевой алгебре доказывается теорема о возможности представления любой булевой функции от n переменных с помощью полинома Жегалкина n-ой степени.
В общем случае полином имеет вид :
fn (x)= K0 ÅK1x1Å...ÅKn xn Å...
...ÅKn+1x1x2 ÅKn+2x1x3 Å...ÅKn+lxn-1xn Å...
...
...ÅKn+mx1x2...xn
K0 ,K1 ,Kn+m -являются коэффициентами и представляют собой логические константы нуля или единицы.
В алгебре Жегалкина одноименной полином можно считать канонической нормальной формой для булевой алгебры.
Полином Жегалкина является линейным (1-ой степени) если все коэффициенты общего полинома ,начиная с Kn+1=Kn+2 =...=Kn+m=0
В отношении функции от 2-х переменных полином Жегалкина имеет вид (линейный): f2(x)=K0ÅK1x1ÅK2x2
Примерами линейных функций являются:
y= x1Åx2 (K0=0,K1=K2=1)
_____
y= x1~x2=x1Åx2=1Åx1Åx2 (K0=K1=K2)
y=
=1Åx1 (K0=K1=1 ,K2=0)Примеры нелинейных функций:
y= x1*x2
____
y= x1lx2 =x1*x2=1Åx1*x2
4.Булева функция называется монотонной если при возрастании наборов аргументов она принимает неубывающие значения.
A=(a1,a2,...,an)>B=(b1,b2,...,bn)
f(A)³f(B)
Между наборами аргументов А и В имеет место отношение возрастания в том и только том случае , если имеет место отношение не убывания для всех компонент этого набора:
___
ai³bi (i=1, n )
и по крайней мере для одной компоненты имеет место отношение возрастания.
Примеры наборов ,для которых имеет место отношение возрастания: (1011)>(0011)
(1011)>(0001)
(0001)>(0000)
Пример несопоставимых наборов (1011)и (0111)
В отношении функции от 2-х переменных несопоставимыми являются наборы (01) и (10)
Пример немонотонных функций: y=
y= x1Åx2
5.Две булевы функции fn(x) и gn(x) называются двойственными если для любых наборов аргументов выполняется равенство
____
fn(x) =gn(x) то есть функции f и g на противоположных наборах аргументов х и
принимает противоположные значения .Два набора аргументов называются противоположными если любая из их компонент принимает противоположные значения.
x=(0101)
=(1010)Булева функция называется самодвойственной если она является двойственной по отношению к самой себето есть принимает противоположные значения на противоположных наборах аргументов.
Примером самодвойственной функции является : у=
Примеры не самодвойственных функций: у=х1*х2
у=х1vх2
у=х1Åх2
Принадлежность базовых булевых функций и логических констант к замечательным классам представлена таблицей.
К0 + сохраняет константу ноль ,- не сохраняет константу ноль
К1 + сохраняет константу единица ,- не сохраняет константу
Кл + линейная ,- нелинейная
Км + монотонная , - не монотонная
Кс + самодвойственная ,- не самодвойственная
Функция | К0 | К1 | Кл | Км | Кс |
0 | + | - | + | + | - |
1 | - | + | + | + | - |
- | |||||
х1*х2 | + | + | - | + | - |
х1vх2 | + | + | + | - | |
х1Åх2 | + | - | + | - | - |
х1~х2 | - | + | - | ||
х1Dх2 | + | - | |||
х1®х2 | - | ||||
х1|х2 | - | - | |||
х1¯х2 | - |
Конструктивный подход к доказательству функциональной полноты некоторой системы булевых функций.
Подход основан на доказательстве реализуемости функций булева базиса с помощью функций этой системы.
При этом естественно предполагать ,и это действительно так, что булев базис образует функционально полную систему.
Пример :S5={|}
_ ____
x =x * x= x|x
====
x1*x2 = x1*x2 =( x1|x2)|( x1|x2)
______
x1vx2=
1* 2 =( x1|x1)|( x2|x2)Синтез комбинационных схем.
Понятиелогическогоэлемента.
Типовые логические элементы и их обозначения на функциональных схемах.
Определение: как правило ,под логическим элементом понимается комбинационная схема ,реализующая некоторую элементарную булеву функцию.
Любой логический элемент характеризуется :
1) Наличием одного или нескольких входов на которые подаются входные сигналы( входные переменные).
2) Наличием выхода ,на котором формируется выходной сигнал
(выходная переменная).
3) Определенной функцией ,которая отображает зависимость выходного сигнала от входных.
К основным типам логических элементов относятся:
1) Инвертор( НЕ)
2) Дизъюнктор (ИЛИ)
3) Конъюнктор (И)
4) Дизъюнкторс отрицанием (ИЛИ - НЕ)
5) Конъюнкторс отрицанием (И - НЕ)
6) Исключительное ИЛИ
(единичный сигнал на выходе имеет место в том и только том случае если на
одном и только одном входе присутствует единичный сигнал)
7) Сумматор по модулю 2