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

Елементарною кон'юнкцією називається кон'юнкція будь-якого числа булевих змінних, що взяті із запереченням або без нього, в якій кожна змінна зустрічається не більше одного разу. Елементарною кон'юнкцією, що містить нуль змінних, будемо вважати константу 1.

Приклад.

Елементарними кон'юнкціями для функції від однієї змінної можуть бути у, z,

від двох змінних — х у, х z,

від трьох змінних — х у z, х у z, х у z

Диз'юнктивною нормальною формою (ДНФ)

називається формула, що зображена у вигляді диз'юнкції елементарних кон'юнкцій.

Елементарна кон'юнкція

x1 1

 

x2 2

...

xn n

називається конституентою одиниці функції f(x1, x2, ..., хn), якщо f( 1, 2, ..., n) = 1.

Конституента одиниці має такі властивості:

1.Конституента одиниці дорівнює одиниці тільки на відповідній їй інтерпретації.

2.Значення конституенти одиниці однозначно визначається номером відповідної інтерпретації.

3.Кон'юнкція будь-якого числа різних конституент одиниці функції дорівнює нулю.

Досконалою диз'юнктивною нормальною формою (ДДНФ) булевої функції називається формула, що зображена у вигляді диз'юнкції конституент одиниці даної функції.

Теорема 2. Про кон'юнктивне розкладання булевої функції f(x1, x2, ..., хn) за k змінними

Будь-яку булеву функцію f(x1, x2, ..., хn) можна зобразити в такій формі:

f (x1,..., xk , xk 1,..., xn )

 

 

x

 

1

 

x

 

2

 

...

x

 

k

 

f (

 

,...,

 

, x

,...,x )

 

 

 

1

k

( 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) ( х z у t) ( х z)

Наслідок 3. Кон'юнктивне розкладання булевої функції 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)

Наслідок 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 ) 0

 

 

 

 

 

 

 

 

 

 

 

Запис

( 1 , 2 ,... k )

означає, що кон'юнкція

f ( 1 , 2 ,... k ) 0

береться за всіма наборами значень ( 1, 2, ..., n), на яких f( 1, 2, ..., n) = 0.

Приклад. Розглянемо функцію 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 z 1) (х 0 у 1 z 1) (х 1 у 0 z 1) = = (х у z) (х у z) ( х у z).

Елементарною диз'юнкцією називається диз'юнкція будь-якого числа булевих змінних, що взяті із запереченням або без нього, в якій кожна змінна зустрічається не більше одного разу. Елементарною диз'юнкцією, що містить нуль змінних, будемо вважати константу 0.

Приклад.

Елементарними диз'юнкціями для функції від однієї змінної можуть бути у, z,

від двох змінних — х у, х z,

від трьох змінних — х у z, х у z, х у z

Кон'юнктивною нормальною формою (КНФ)

називається формула, що зображена у вигляді кон'юнкції елементарних диз'юнкцій.

Елементарна диз'юнкція

 

 

 

 

 

 

 

...

 

 

 

x1 1

 

x2 2

xn n

називається конституентою нуля функції f(x1, x2, ..., хn), якщо f( 1, 2, ..., n) = 0.

Конституента нуля має такі властивості:

1.Конституента нуля дорівнює нулю тільки на відповідній їй інтерпретації.

2.Значення конституенти нуля однозначно визначається номером відповідної інтерпретації.

3.Диз'юнкція будь-якого числа різних конституент нуля функції дорівнює одиниці.

Досконалою кон'юнктивною нормальною формою (ДКНФ) булевої функції називається формула, що зображена у вигляді кон'юнкції конституент нуля даної функції.

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