
- •Розділ 4. Булеві функції
- •4.1. Булеві змінні і функції
- •Функції кількох незалежних змінних можна розглядати як функції від більшої кількості змінних. При
- •4.2. Способи задання булевих функцій
- •Булеві функції можуть бути задані такими способами:
- •Булеві функції однієї змінної
- •Булеві функції двох змінних
- •Позначення булевих функцій двох змінних
- •Функція
- •Булева алгебра
- •Формула — це вираз, що містить булеві функції та їхні суперпозиції.
- •На відміну від табличного задання, зображення функції формулою не єдине.
- •Функція f*(х1, ..., хn) називається двоїстою до функції f(х1, ..., хn), якщо
- •Щоб побудувати таблицю істинності функції, що двоїста даній, необхідно побудувати таблицю істинності заданої
- •Нехай функція F задана як суперпозиція функцій f0 і
- •4.4.Закони булевої алгебри
- •Закони булевої алгебри
- •Закони булевої алгебри
- •Закони булевої алгебри
- •4.5. Диз'юнктивні та кон'юктивні розкладання булевих функцій
- •Для спрощення математичних викладень введемо двійковий параметр і позначення х таким чином:
- •Теорема 1. Про диз'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за k
- •Приклад.
- •Наслідок 1. Диз'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за однією змінною.
- •Приклад.
- •Наслідок 2. Про диз'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за всіма
- •Елементарною кон'юнкцією називається кон'юнкція будь-якого числа булевих змінних, що взяті із запереченням або
- •Елементарна кон'юнкція
- •Теорема 2. Про кон'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за k
- •Приклад.
- •Наслідок 3. Кон'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за однією змінною.
- •Приклад.
- •Наслідок 2. Про кон'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за всіма
- •Елементарною диз'юнкцією називається диз'юнкція будь-якого числа булевих змінних, що взяті із запереченням або
- •Елементарна диз'юнкція
- •4.6. Нормальні форми зображення булевих функцій
- •Алгоритм переходу від таблиці істинності булевої функції до ДДНФ
- •Алгоритм переходу від таблиці істинності булевої функції до ДКНФ
- •Приклад. Одержати ДДНФ та ДКНФ для функції
- •Одержання таблиці істинності функції, що задана ДДНФ або ДКНФ, зображує процедуру, обернену розглянутій
- •Таблиця істинності f(х, у, z) и g(х, у, z)
- •Алгоритм переходу від довільної формули алгебри логіки до ДДНФ
- •Приклад. Побудувати ДДНФ функції
- •Дана функція залежить від трьох змінних, тому до елементарних кон'юнкцій необхідно ввести відсутні
- •Алгоритм переходу від довільної формули алгебри логіки до ДКНФ
- •Приклад. Побудувати ДКНФ функції
- •Будуємо КНФ (дистрибутивний закон
- •Дана функція залежить від трьох змінних, тому до елементарних диз'юнкцій необхідно ввести

Закони булевої алгебри
Закон подвійного заперечення
x x
Закон протиріччя
хх = 0
Закон виключеного третього
хх = 1

Закони булевої алгебри
Закони елімінації (поглинання)
х(х у) = х
х(х у) = х
Закони де Моргана
x y x y x y x y

4.5. Диз'юнктивні та кон'юктивні розкладання булевих функцій
теореми розкладання
елементарні кон'юнкція і диз'юнкція
конституенти нуля та одиниці
нормальні форми

Для спрощення математичних викладень введемо двійковий параметр і позначення х таким чином:
х, В = {0, 1},
x, 0
x
x, 1
Можемо зробити висновок, що
1, x x 0, x

Теорема 1. Про диз'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за k змінними
Будь-яку булеву функцію f(x1, x2, ..., хn) можна зобразити в такій формі:
f (x1,..., xk , xk 1,..., xn )
|
|
x 1 |
|
x 2 |
... |
x k |
|
f ( |
1 |
,..., |
k |
, x |
,...,x ) |
( 1 , 2 ,... k ) |
1 |
|
2 |
|
k |
|
|
|
k 1 |
n |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Запис |
|
( 1 , 2 ,... k ) |
означає багатократну диз'юнкцію, яка береться за всіма можливими наборами значень ( 1, 2, ..., k)
при будь-якому k (1 k n).

Приклад.
Записати диз'юнктивне розкладання функції |
|
f (x, y, z,t) (x y z) t |
за змінними х, z. |
Розв'язок. За теоремою про розкладання:
f (x, y, z,t) |
x 1 z 2 f ( 1, y, 2 ,t) |
( 1 , 2 ) |
|
=х z f(0, у, 0, t) х z f(0, у, 1, t)
х z f(1, у, 0, t) х z f(1, у, 1, t) Обчислимо:
f (0, y,0,t) |
|
|
|
|
|
t t; |
f (1, y,0,t) |
|
|
|
|
|
t |
|
t; |
||
(0 |
y |
0) |
(1 |
y |
0) |
y |
|||||||||||
f (0, y,1,t) |
|
|
|
|
t 0; |
f (1, y,1,t) |
|
|
|
|
t 0; |
||||||
(0 |
y |
1) |
(1 |
y |
1) |
f(x, у, z, t) = х z t х z 0 х z у t
х z 0 = х z t х z у t = х z t х z у t

Наслідок 1. Диз'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за однією змінною.
Будь-яку булеву функцію f(x1, x2, ..., хn) можна зобразити в такій формі:
f (x , x ,..., x ) |
x i |
|
f (x ,..., x |
, |
i |
, x |
,..., x ) |
|||
1 2 |
n |
( i ) |
i |
|
1 |
i 1 |
|
i 1 |
n |
|
|
|
|
|
|
|
|
|
|
|

Приклад. |
|
|
Записати диз'юнктивне розкладання функції |
||
f (x, y, z,t) (x |
y z) t |
за змінною х. |
Розв'язок.
f(x, y, z,t) ( 1 ) x 1 f ( 1, y, z2 ,t)
=х f(0, у, z, t) х f(1, у, z, t)
Обчислимо:
f (0, y, z,t) |
|
|
|
|
|
t |
|
|
t; |
||||
(0 |
y |
z) |
z |
||||||||||
f (1, y, z,t) |
|
|
|
|
t |
|
|
|
t; |
||||
(1 |
y |
z) |
y |
z |
Підставимо одержані значення:
f(x, у, z, t) = х z t х у z t = х z t х у z t

Наслідок 2. Про диз'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за всіма змінними
Будь-яку булеву функцію f(x1, x2, ..., хn) можна зобразити в такій формі:
f (x , x ,...,x ) |
|
|
x 1 |
|
x 2 |
... |
x n |
||
1 2 |
n |
( 1 |
, 2 |
,... k ) |
1 |
|
2 |
|
n |
|
|
f ( 1 , 2 ,... k ) 1 |
|
|
|
|
|
Запис |
( , ,... ) |
означає, що диз'юнкція |
f (1 1 ,2 2 ,...k k ) 1 |
береться за всіма наборами значень ( 1, 2, ..., n), на яких f( 1, 2, ..., n) = 1.

Приклад. Розглянемо функцію f(x, у, z) = xy z. Отримати диз'юнктивне розкладання цієї функції за
всіма змінними.
Розв'язок. Визначимо значення функції на кожній з інтерпретацій:
f(0, 0, 0) = 0 0 0 = 0 1 = 1, f(0, 0, 1) = 0 0 1 = 0 0 = 0, f(0, 1, 0) = 0 1 0 = 0 1 = 1, f(0, 1, 1) = 0 1 1 = 0 0 = 0, f(1, 0, 0) = 1 0 0 = 0 1 = 1, f(1, 0, 1) = 1 0 1 = 0 0 = 0, f(1, 1, 0) = 1 1 0 = 1 1 = 1, f(1, 1, 1) = 1 1 1 = 1 0 = 1.
f(x, у, z) = х0 у0 z0 х0 у1 z0 х1 у0 z0 х1 у1 z0 х1 у1 z1 = = x y z x y z x y z x y z x y z.