Бульові функції (реферат)
Видатний математик Еміль Пост сформулював і обгрунтував критерій повноти множини функцій у загальному випадку алгебри функцій з операцією суперпозиції. У цьому критерії, тобто необхідній і достатній умові, використовується поняття передповного класу. Розглянемо його. Розглянемо тепер поняття алгебри формул (термів, або виразів). Нехай є множина функцій F. Кожній n-місній функції з F поставимо… Читати ще >
Бульові функції (реферат) (реферат, курсова, диплом, контрольна)
Реферат на тему:
Бульові функції
1. Алгебри бульових виразів і бульових функцій
1.1. Основні поняття
Множину {0, 1} позначимо літерою B. Множину всіх можливих послідовностей з 0 і 1 — Bn. Такі послідовності за традицією будемо називати наборами або векторами довжини n. Очевидно, Bn містить 2n елементів. Значення 0 і 1 називаються протилежними одне до одного.
Означення. Всюди визначена функція з Bn у B називається n-місною функцією алгебри логіки або n-місною бульовою функцією.
Послідовність змінних (x1, x2, …, xn) із значеннями у B позначимо
. Бульова функція f (.
) задається у вигляді таблиці, або графіка зі стандартним розташуванням наборів:
.x1, x2, …, xn. | f (x1, x2, …, xn). |
0, 0, …, 0, 0. | f (0, 0, …, 0, 0). |
0, 0, …, 0, 1. | f (0, 0, …, 0, 1). |
0, 0, …, 1, 0. | f (0, 0, …, 1, 0). |
0, 0, …, 1, 1. | f (0, 0, …, 1, 1). |
… | … |
0, 1, …, 1, 1. | f (0, 1, …, 1, 1). |
1, 0, …, 0, 0. | f (1, 0, …, 0, 0). |
… | … |
1, 1, …, 1, 0. | f (1, 1, …, 1, 0). |
1, 1, …, 1, 1. | f (1, 1, …, 1, 1). |
Зауважимо, що в стандартному розташуванні набори можна розглядати як двійкові записи послідовних чисел від 0 до 2n-1. Функцію, задану зі стандартним розташуванням наборів, можна ототожнити з набором довжини 2n. Наприклад, двомісну функцію, задану таблицею.
x y. | f (x, y). |
0 0. | |
0 1. | |
1 0. | |
1 1. |
можна ототожнити з вектором (1011).
Далі іноді будемо позначати n-місну функцію f (
) як f (n)(.
), підкреслюючи кількість змінних, від яких вона залежить.
.Очевидно, що множина всіх можливих наборів довжини 2n, тобто множина n-місних бульових функцій, складається з 22n елементів. При n=0 це 2, при n=1 — 4, при n=2 — 16, при n=3 — 256 тощо.
Нуль-місними функціями є сталі 0 і 1.
Одномісні функції подано у наступній таблиці разом з виразами, якими ці функції позначаються:
x. | x. | p> | ||
Функції 0 і 1 називаються тотожними нулем і одиницею, функція x — тотожною, запереченням. Замість виразу вживається ще вираз . Ці вирази читаються як «не x» .
Подамо також деякі з 16 двомісних функцій разом із їх позначеннями:
x y. | xp> | xp> | xp> | xp> | xp> | x | y. | xp> |
0 0. | |||||||
0 1. | |||||||
1 0. | |||||||
1 1. |
Функція, позначена виразом xназивається кон’юнкцією і позначається ще як x&-y, xабо xy. Усі ці вирази читаються як «x і y» .
Функція, позначена виразом xназивається диз’юнкцією. Вираз читається як «x або y» .
Функція, позначена виразом xназивається імплікацією і позначається ще як xЦі вирази читаються як «x імплікує y» або «з x випливає y» .
Функція, позначена виразом xназивається еквівалентністю і позначається ще як x~y або xЦі вирази читаються як «x еквівалентно y», що в даному випадку збігається з «x дорівнює y» .
Функція, позначена виразом xназивається додаванням за модулем 2 або «виключним або». Зауважимо, що її значення є протилежними до значень еквівалентності.
Функція, позначена виразом x|y, називається штрихом Шеффера і має значення, протилежні значенням кон’юнкції. Її вираз читається як «не x або не y» .
Функція, позначена виразом xназивається стрілкою Пірса і має значення, протилежні значенням диз’юнкції. Її вираз читається як «не x і не y» .
Зауважимо, що інфіксні позначення наведених функцій вигляду x f y, де f — відповідний знак, склалися історично. Їх так само можна позначати й у вигляді f (x, y), наприклад, y).
З тримісних функцій наведемо лише так звану функцію голосування m (x, y, z), графік якої має такий вигляд:
x y z. | m (x, y, z). |
0 0 0. | |
0 0 1. | |
0 1 0. | |
0 1 1. | |
1 0 0. | |
1 0 1. | |
1 1 0. | |
1 1 1. |
Її назва зумовлена тим, що її значення на кожному наборі збігається з більшістю значень змінних у цьому наборі.
Множину всіх n-місних функцій позначимо P (n), а множину всіх функцій, тобто об'єднання P (n) по всіх n — P2.
Перейдемо до означення таких понять, як алгебра бульових функцій і алгебра формул.
Алгебри бульових функцій, як і всі інші алгебри, визначаються своїми носіями та сигнатурами операцій. Носіями в алгебрах бульових функцій є множини функцій. Сигнатуру складає операція суперпозиції, або підстановки.
Означення. Нехай є n-місна функція f (n)() і n функцій g1(y1,1, y1,2, …, y1, m1), g2(y2,1, y2,2, …, y2, m2), …, gn (yn, 1, yn, 2, …, yn, mn), залежні від змінних з деякої їх множини Y={y1, y2, …, yk}. Суперпозицією, або підстановкою функцій g1, g2, …, gn у функцію f (n) називається функція h (m)(y1, y2, …, ym), кожне значення якої h (…, визначається як.
f (n)(g1(,, …, 1), g2(,, …, 2), …, gn (,, …, n)).
Суперпозиція ще позначається як.
S (f (n) — g1(y1,1, y1,2, …, y1, m1), g2(y2,1, y2,2, …, y2, m2), …, gn (yn, 1, yn, 2, …, yn, mn)).
Приклади.
1. h1(x, y, z)=S (yзадається наступною таблицею:
x y z. | xp> | yp> | h1(x, y, z). |
0 0 0. | |||
0 0 1. | |||
0 1 0. | |||
0 1 1. | |||
1 0 0. | |||
1 0 1. | |||
1 1 0. | |||
1 1 1. |
2. h2(x, y)=S (yзадається таблицею:
x y. | xp> | yp> | h2(x, y). |
0 0. | |||
0 1. | |||
1 0. | |||
1 1. |
Нехай є множина бульових функцій F. Утворюючи з них та їх суперпозицій усі можливі суперпозиції, ми одержимо множину функцій, яку позначимо [F]. Отже, маємо алгебру ([F]- S), породжену множиною функцій F. Інша множина функцій F1 буде породжувати, взагалі кажучи, іншу алгебру ([F1]- S). Наприклад, алгебри (111), (0001)}) і (0), (0001)}).
Розглянемо тепер поняття алгебри формул (термів, або виразів). Нехай є множина функцій F. Кожній n-місній функції з F поставимо у взаємно однозначну відповідність символ, що її позначає (функціональний символ) f (n). Нехай X — зліченна множина змінних (точніше, їх імен).
Означення.
1. Ім'я змінної є формулою.
2. Якщо f (n) — функціональний символ, а T1, T2, …, Tn є формулами, то f (n)(T1, T2, …, Tn) є формулою.
3. Інших формул немає.
Це означення задає множину формул із функціональними символами з множини F, які одержуються за допомогою підстановок, тобто суперпозицій. Таким чином, ми маємо алгебру формул, породжену множиною функціональних символів F. Інша множина функціональних символів буде породжувати й іншу алгебру формул.
Зв’язки між алгебрами функцій і алгебрами формул встановлюють наступні два означення.
Означення. Значенням формули T на наборі значень змінних з множини X є:
1) значення змінної x, якщо T є змінною x;
2) f (n)(…, якщо T=f (n)(T1, T2, …, Tn), а формули T1, T2, …, Tn мають на цьому наборі значення відповідно …, /p>
Означення. n-місна бульова функція f (n) задається формулою T, якщо всі змінні у формулі T є змінними з множини X, і при будь-якому наборі значень (…, цих змінних x1, x2, …, xn значення формули дорівнює значенню f (n)(…,.
Звідси випливає інше означення суперпозиції функцій.
Означення. n-місна бульова функція f (n) є суперпозицією функцій f1, f2, …, fn, якщо її можна задати формулою, усі функціональні символи якої є серед символів функцій f1, f2, …, fn.
З наведених прикладів 1 і 2 видно, що функція h1(x, y, z) задається формулою y), z)), або в інфіксному записі (x Аналогічно функція h2(x, y) задається формулою y), x)), або (x Як бачимо, обидві функції задаються формулами з тими самими функціональними символами тобто є суперпозиціями цих функцій.
Наостанок наведемо узгодження, які склалися в математиці й дозволяють у формулах з функціональними символами, аписувати не всі необхідні дужки. ****.
1.2. Суттєві та несуттєві змінні
Розглянемо поняття суттєвої залежності функції від її змінних. Почнемо з прикладів: значення функції h2(x, y) з прикладу 2 на кожному з наборів збігаються зі значеннями x. Отже, зміна значення y не впливає на значення функції, тобто вона фактично не залежить від y. В той час як зміна значення x веде до зміни значення h2. Уточнимо ці міркування наступними означеннями.
Означення. Змінна xi функції f (n)(x1, x2, …, xi, …, xn) називається суттєвою, якщо існує хоча б одна пара наборів значень змінних.
(…,, 0,, …, і (…,, 1,, …,.
така, що.
f (n)(…,, 0,, …, n)(…,, 1,, …,.
Змінна xi називається несуттєвою у противному разі, тобто коли за всіх можливих пар наборів значень.
(…,, 0,, …, і (…,, 1,, …, /p>
мають місце рівності:
f (n)(…,, 0,, …, = f (n)(…,, 1,, …,.
Наприклад, неважко переконатися, що всі змінні функції h1 з прикладу 1 є суттєвими. Функція h2 має суттєву змінну x і несуттєву y. Функція двох змінних, задана як вектор (1111), не має суттєвих змінних.
1.3. Еквівалентні формули та закони
Одна й та сама бульова функція задається, взагалі кажучи, багатьма різними формулами. Наприклад, неважко переконатися, що формули xі обидві задають функцію (1101). Таким чином, можна говорити про еквівалентність цих двох формул.
Означення. Нехай **** Формули і називаються еквівалентними, якщо.
1.4. Канонічні формули для подання бульових функцій
Задачі
1. Побудувати графік функції за формулою, що її задає:
1)/p>
2)x.
3)((xz).
4)((xx;
5).
6)((xx;
7)x (y;
8)x (z.
9)x (y;
10)x (y.
11)x (y;
12)x (y;
13)x (y;
14)x (z;
15)x;
16)x (z;
17)x (y;
18)x (z;
2. Указати суттєві та несуттєві змінні функції, заданої вектором значень при стандартному розташуванні наборів (за зростанням у лексикографічному порядку):
1)(0000 1111 1100 0011);
2)(0000 1111 1111 0010);
3)(0000 1111 0110 0101);
4)(0000 1111 0011 1010);
5)(0000 1111 0011 0110);
6)(0000 1111 1100 1010);
7)(0000 1100 0011 0101);
8)(0000 0011 0011 1101);
9)(0000 0011 1100 0010);
10)(0000 0011 1001 0101);
11)(0000 0011 0101 1111);
12)(0011 1100 0111 1100);
13)(0011 1100 1001 0101);
14)(0011 0011 0011 1010);
15)(0011 0011 1100 1100);
16)(0011 0011 1001 1001);
17)(1001 1001 1100 1100);
18)(1001 1001 1001 0001).
3. За виразом побудувати еквівалентні йому вирази у ДДНФ, ДКНФ, у вигляді полінома Жегалкіна (варіанти 1−18 відповідають варіантам задачі 1).
4. Побудувати формулу з трьома змінними, істинну тоді й тільки тоді, коли:
1)рівно одна змінна має значення 1;
2)не менше ніж одна змінна має значення 1;
3)рівно дві змінні мають значення 1;
4)не менше двох змінних мають значення 1;
5)непарна кількість змінних має значення 1;
6)парна кількість змінних має значення 1.
5. Побудувати формулу з чотирма змінними, істинну тоді й тільки тоді, коли:
1)рівно одна змінна має значення 1;
2)не менше ніж одна змінна має значення 1;
3)рівно дві змінні мають значення 1;
4)не менше двох змінних мають значення 1;
5)рівно три змінні мають значення 1;
6)не менше трьох змінних мають значення 1;
7)непарна кількість змінних має значення 1;
8)парна кількість змінних має значення 1.
2. Бульові функції та комбінаційні схеми
І-елемент АБО-елемент лемент НЕ-елемент.
a a a.
b r b r b r a r.
r = a r = a r = a r = p>
.Розглянемо реалізацію бульових функцій у вигляді комбінаційних схем. Найпростішими з них є логічні елементи, відповідні бульовим функціям: кон’юнкції диз’юнкції додавання за модулем 2 а заперечення Вони позначаються й зображаються таким чином:
.Входи перших трьох елементів вважаються симетричними згідно законів комутативності, яким задовольняють кон’юнкція, диз’юнкція та додавання за модулем 2.
З наведених логічних елементів будуються складніші схеми, які в загальному випадку мають n входів і m виходів і реалізують набір з m функцій від n аргументів:
a1 b1.
a2 b2.
.
.
.
an bm.
.Тут bj=fj (a1, a2, …, an), j=1, 2, …, m.
Приклади.
1. Побудуємо схему з І-, АБОта НЕ-елементів, яка реалізує функцію Виразимо її за допомогою функцій набору {/p>
x xyx/p>
x.
y.
.Звідси відповідна схема має вигляд:
.2. Побудуємо схему з Іта лементів, яка реалізує функцію Виразимо її за допомогою функцій набору {}:
x x/p>
Звідси відповідна схема має вигляд:
x.
y.
.3. Побудуємо схему з І-, АБОта НЕ-елементів, яка реалізує так званий «однорозрядний напівсуматор» [****] з двома симетричними входами x, y і двома виходами: s = xd = xЗ цих формул видно, що схема має реалізувати додавання двох однорозрядних чисел із переносом. Виразимо s за допомогою функцій набору {s = xyxТоді схема має вигляд:
.x s.
d.
y.
.Задачі
6. З використанням І-, АБОта НЕ-елементів накреслити комбінаційну схему, відповідну:
1)функції /p>
2)функції /p>
3)функції /p>
4)функції |;
5)функції голосування xy.
6)арифметичному додаванню двох однорозрядних двійкових чисел із переносом, складену з функціональних елементів у мінімальній кількості;
7)арифметичному додаванню трьох однорозрядних двійкових чисел із переносом;
8)арифметичному додаванню двох дворозрядних двійкових чисел із переносом у третій розряд;
9)додаванню 1 до дворозрядного двійкового числа із втратою переносу зі старшого розряду;
10)порівнянню «=» двох дворозрядних двійкових чисел;
11)порівнянню «>» двох дворозрядних двійкових чисел;
12)порівнянню «двох дворозрядних двійкових чисел.
7. З використанням Іта лементів, а також входів, на які подається 1, накреслити комбінаційну схему, відповідну:
1)функції /p>
2)функції /p>
3)функції /p>
4)функції |;
5)функції голосування xy.
6)арифметичному додаванню двох однорозрядних двійкових чисел із переносом;
7)арифметичному додаванню трьох однорозрядних двійкових чисел із переносом;
8)арифметичному додаванню двох дворозрядних двійкових чисел із переносом у третій розряд;
9)додаванню 1 до дворозрядного двійкового числа із втратою переносу зі старшого розряду;
10)порівнянню «=» двох дворозрядних двійкових чисел;
11)порівнянню «>» двох дворозрядних двійкових чисел;
12)порівнянню «двох дворозрядних двійкових чисел.
3. Замкнені та повні набори функцій. Критерій Поста повноти набору функцій
У підрозділі 7.1 ми побачили, що будь-яку бульову функцію можна задати як суперпозицію функцій з набору {або з набору {}.
Означення. Множина всіх функцій, що є суперпозиціями функцій деякого набору F, і лише їх, називається замиканням цього набору й позначається [F].
Таким чином, якщо P2 позначає множину всіх бульових функцій, то.
[{}] = P2.
Означення. Множина функцій F називається функціонально повною, якщо .
Отже, множини {і {} є функціонально повними.
Природним є питання про те, які властивості повинні мати функціонально повні множини функцій.
Видатний математик Еміль Пост сформулював і обгрунтував критерій повноти множини функцій у загальному випадку алгебри функцій з операцією суперпозиції. У цьому критерії, тобто необхідній і достатній умові, використовується поняття передповного класу. Розглянемо його.
Нехай F позначає множину всіх можливих функцій деякої алгебри функцій A з операцією суперпозиції.
Означення. Множина функцій S називається передповним класом алгебри A, якщо F і за будь-якої функції f з множини FS набір S є повним:
Критерій Поста. Нехай S1, S2, … — усі передповні класи алгебри функцій F. Множина функцій M є повною тоді й тільки тоді, коли для кожного передповного класу Si множина M містить fi.
Приймемо це твердження без доведення.
Пост також дослідив передповні класи алгебри бульових функцій. Їх виявилося лише 5. Це множини всіх функцій:
що зберігають сталу 0,.
що зберігають сталу 1,.
самодвоїстих, лінійних, монотонних.
Означимо вказані функції.
Означення. Функція f (n) зберігає сталу 0, якщо на нульовому наборі має значення 0: f (n)(0, 0, …, 0)=0.
Означення. Функція f (n) зберігає сталу 1, якщо на одиничному наборі має значення 1: f (n)(1, 1, …, 1)=1.
Наприклад, тотожна функція f (x)=x зберігає сталі 0 і 1, функція f (x)=не зберігає жодної.
****Двоїста до …
Означення. Функція f (n) є самодвоїстою, якщо для всіх пар протилежних наборів вона приймає на них протилежні значення:
f (n)(…, = ****f (n)(…, зберігає сталу 0, якщо на нульовому наборі має значення 0: f (n)(0, 0, …, 0)=0.
Означення. Функція f (n) зберігає сталу 1, якщо на одиничному наборі має значення 1: f (n)(1, 1, …, 1)=1.
Неважко переконатися, що множини означених функцій, позначені відповідно T0, T1, S, L, M, є замкненими класами.
Задачі
8. Визначити, чи є наступна множина функцій замкненим класом. Вважається, що з кожною функцією f із цієї множини до неї належать також усі функції, конгруентні f:
1){0, 1};
2){.
3){1,.
4){x1 n.
5){1, x1, n.
6){0, x1 n.
7){0, x1, n.
8){x1 n.
9){0, x1, n.
9. Визначити, чи істинно, що за будь-яких замкнених класів (будь-якого замкненого класу):
1)їх перетин є замкненим класом;
2)їх об'єднання є замкненим класом;
3)їх різниця є замкненим класом;
4)його доповнення не є замкненим класом.
10. Поставити один із знаків, яким за будь-яких множин F1 і F2 найточніше виражається теоретико-множинне відношення між множинами:
1)[F1 і [F1]];
2)[F1 і [F1]];
3)[F1F2] і [F1][F2].
11. Визначити, чи є двоїстими одна до одної функції:
1)xі x.
2)xі y.
3)xyі xy.
4)xі x.
5)xі x.
6)xі x.
7)xі x|y;
8)xі x|y.
Застосувавши критерій Поста повноти системи функцій, визначити, чи є повним наступний набір функцій, і якщо так, то виділити в ньому всі можливі базиси:
1){.
2){.
3){.
4){,.
5){,.
6){,.
7){.
8){.
9){|,.
10){|,.
11){,.
12){1,.
13){1,.
14){,.
15){1,.
16){1,.
17){.
18){.
19){,.
20){0,.
21){0,.
22){,.
23){0,.
24){0,.
8. Обчислити кількість функцій від n змінних у множині:
1)T0.
2)T0.
3)T0.
4)T0.
5)L (T0;
6)L (T0;
7)Lk — лінійних функцій, що мають k суттєвих змінних;
8)S.
9)T0S;
10)L.
11)S;
12)ST1);
13)S (T0;
14)Sk — самодвоїстих функцій, що мають k суттєвих змінних;
15)M (T0;
16)M (T0;
17)M.
18)M.
19)L (M.