Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора.Дискретна..docx
Скачиваний:
31
Добавлен:
16.09.2019
Размер:
101.25 Кб
Скачать

31. Алгебра Жегалкіна

Множину P2 всіх булевих функцій разом з уведеною на ній системою операцій називають алгеброю булевих функцій. Алгебру (P2; ^, +) з операціями кон. та додавання за mod2 називають алгеброю Жегалкіна.

Формули цієї алгебри будують зі знаків операцій, круглих дужок, букв x,y,z…і констант 0 та 1. Букви позначають довільні булеві функції, при цьому булеві змінні розглядають як окремий випадок булевих функцій. Знак кон. ^ у формулах зазвичай не пишуть. Якщо немає дужок, пріоритет операцій в алгебрі Жегалкіна такий: спочатку виконується кон., а потім – додавання за mod2. За наявності дужок спочатку виконуються операції всередині їх.

Закони алгебри Жегалкіна:

  • Асоціативності (XY)Z=X(YZ)=XYZ, (X+Y)+Z=X+(Y+Z)=X+Y+Z;

  • Комутативності XY=YX, X+Y=Y+X;

  • Дистрибутивності (X+Y)Z=XZ+YZ;

  • Ідемпотентності XX=X;

  • Співвіднош. для констант 1Х=Х, 0Х =0, Х+0=X;

  • Зведення подібних членів у разі додавання за mod2 X+X=0

32. Замкнені класи булевих функцій.

Класи T0 та T1 Множину К булевих функцій називають замкненим класом, якщо довільна суперпозиція функцій із К також належить К. Будь-яка система Q булевих функцій породжує якийсь замкнений клас. Цей клас складається з усіх функцій, які можна одержати суперпозиціями функцій із Q, його називають замиканням Q.

Існує 5 найважливіших замкнених класів:

  • Клас T0 функцій, що зберігають 0;

  • Клас Т1 функцій, що зберігають 1;

  • Клас S самодвоїстих функцій;

  • Клас M монотонних функцій;

  • Клас L лінійних функцій;

Клас Т0 функцій, що зберігають 0. Булеву функцію f(x1,…,xn­) називають функцією, яка зберігає 0, якщо f(0,…,0)=0.

Наприклад, функції 0,x,xy,XvY,X+Y зберігають 0, тобто належать класу Т0, а функції 1, ˥X, XY – не зберігають, тобто не належать класу Т0. Таблиця значень функції з класу Т0 містить 0 у першому рядку. Отже у класі Т0 є ½*22^n булевих функцій, що залежить від n змінних.

Т. Т0 – замкнений клас. Інакше кажучи, із функцій, що зберігають 0, суперпозицією можна одержати лише функції, які зберігають 0.

Д. Клас Т0 містить тотожну функцію. Отже, досить показати, що функція F(x1,….,xn) = f(f1(x1,…,x­n),……,fm(x1,….,xn)) зберігає 0, якщо функції f,f1,f2,…,fm зберігають 0. Справді, f(f1(0,…,0),f2(0,…,0),…,fm(0,…,0))=f(0,…,0)=0.

Н. Повна система функцій має містити хоча б одну функцію, яка не зберігає 0.

Клас T1 функцій, що зберігають 1. Булеву функцію f(x1,….,xn) називають функцією, яка зберігає 1, якщо f(1,…,1)=1.

Наприклад, функції 1,X,XY,XvY,X->Y належать класу T1, а ф-ії 0, ˥Х, X+Y – ні.

Т. Т1 - замкнений клас

Д. Т1 містить тотожну функцію. Отже, досить довести, що функція F(x1,…,xn)=f(f1(x1,…,xn),….,fm(x1,…,xn)) зберігає 1, якщо функції f,f1,….,f­m зберігають 1. Справді, f(f1(1,…,1),….,fm(1,…,1))=f(1,…,1)=1.

Н. Повна система функцій має містити хоча б одну функцію, яка не зберігає 1.

33. Клас S. Лема про несамодвоїсту функцію.

Булеву функцію f(x1,….,xn) називають самодвоїстою, якщо вона набуває протилежних значень на протилежних наборах значень змінних: f(x1,x2,…,xn)= ˥f(˥x1, ˥x2,…, ˥xn).

Самодвоїсті: x, ˥x, x1+x2+x3. Несамодвоїсті: x1x2, x1 v x2, x1->x2

Т-ма. Клас S самодвоїстих ф-цій замкнений.

Н. Повна система булевих ф-цій повинна містити хоча б одну несамодвоїсту функцію.

Л. Із несамодвоїстої функції f(x1,…,xn) підстановкою функцій x та ˥х можна отримати несамодвоїсту функцію однієї змінної, тобто константу.

Д. Нехай f(x1,….xn) не належить S. Отже існує хоча б один набір an=(a­1,…,an) значень змінних такий, що f(a1,….,an­)=f(˥a1,.., ˥an­). За набором аn=(a1,…,an­) визначимо допоміжні функції ϕі (х), і=1….n:

Х, якщо аі=0

Φi= ˥Х, якщо аi=1

Легко переконатись, що ці функції мають властивість ϕі(0)=аі , ϕі(1)= ˥аі (і=1….n). Розглянемо функцію φ(x)=f(ϕ1(x)….ϕn(x)). Її отримано з функції f(x1…xn) підстановкою х та ˥ х. Функція φ(х) – константа, бо φ(0)=f(ϕ1(0)….ϕn(0))=f(a1,…,an)=f(˥a1,.., ˥an)=f(ϕ1(1),…,ϕn(1))=φ(1).

34. Клас M. Лема про немонотонну функцію.

Функцію f(xn)=f(x1,…,xn) називають монотонною, якщо для будь-яких двійкових наборів an і bn із того, що an≤bn, випливає, що f(an)≤f(bn).

Монотонні: 0, 1, х, х1х2, x1 v x2

Немонотонні: x1+x2, x1->x2, ˥x

Т. Клас М монотонних функцій замкнений.

Н. Повна система булевих функцій повинна містити хоча б одну немонотонну функцію.

Л. Із немонотонної функції підстановкою констант 0, 1, і функції X можна отримати функцію ˥Х.

Д. Нехай f(xn) не належить M. Отже, існують такі два набори an=(a1,…,an). bn=(b1,…,bn) значень змінних x1,…,xn, що an≤bn але f(an)>f(bn), тобто f(an)=1, f(bn)=0.

Якщо an та bn відрізняються k компонентами, то в цих компонента у наборі an є нулі, а в наборі bn – одиниці. Підставимо у функцію f(xn) замість змінних, яким у наборах an­ та bn відповідають однакові значення, просто ці значення, а на місце решти k змінних – функцію х. Тоді отримаємо функцію однієї змінної g(x). З урахуванням того, що f(an­)=1, f(bn)=0, одержимо, що g(0)=f(an)=1, g(1)=f(bn)=0. Отже g(x)= ˥x.