Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DM_2 / ОДМлек / СРМлек41.pps
Скачиваний:
97
Добавлен:
12.05.2015
Размер:
391.68 Кб
Скачать

Закони булевої алгебри

Закон подвійного заперечення

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.

Соседние файлы в папке ОДМлек