Булевы функции одной переменной
Булевы функции двух переменных
Булевы функции двух переменных
Булевы функции двух переменных
Двойственные булевы функции
Самодвойственные булевы функции
Монотонные булевы функции
Монотонные булевы функции
Линейные булевы функции
Линейные булевы функции
Линейные булевы функции
Теорема Поста о функциональной полноте
1.22M
Категория: МатематикаМатематика

Алгоритм получения СДНФ

1.

Алгоритм получения СДНФ
привести формулу с помощью равносильных преобразований к
ДНФ.
удалить члены дизъюнкции, содержащие переменную вместе с ее
отрицанием (если такие окажутся);
из одинаковых членов дизъюнкции (если такие окажутся) удалить
все, кроме одного;
из одинаковых членов каждой конъюнкции (если такие окажутся)
удалить все, кроме одного;
если в какой-нибудь конъюнкции не содержится переменной xi из
числа переменных, входящих в исходную формулу, добавить к
этой конъюнкции член xi xi и применить закон
дистрибутивности конъюнкции относительно дизъюнкции;
если в полученной дизъюнкции окажутся одинаковые члены,
воспользоваться предписанием из п. 3.
Полученная формула и является СДНФ данной формулы.
1

2.

Алгоритм получения СДНФ
x y x y x x y y xy x y
x y z x y xz x y z z xz y y | 5 |
x yz x y z xzy xz y x yz x y z xyz.
2

3.

Алгоритм получения СКНФ
привести формулу с помощью равносильных преобразований к
КНФ.
удалить члены конъюнкции, содержащие переменную вместе с ее
отрицанием (если такие окажутся);
из одинаковых членов конъюнкции (если такие окажутся) удалить
все, кроме одного;
из одинаковых членов каждой дизъюнкции (если такие окажутся)
удалить все, кроме одного;
если в какой-нибудь дизъюнкции не содержится переменной xi из
числа переменных, входящих в исходную формулу, добавить к
этой дизъюнкции член xi xi и применить закон
дистрибутивности дизъюнкции относительно конъюнкции;
если в полученной конъюнкции окажутся одинаковые члены,
воспользоваться предписанием из п. 3.
3

4.

Алгоритм получения СКНФ
x y xy x y xy x y x y y y x x
x y x y x y y x y x
x y x y x y .
4

5. Булевы функции одной переменной

x
0
1
2
3
0
0
0
1
1
1
0
1
0
1
1. 0 0 — функция константа 0,
2. 1 = x — функция повторения аргумента,
3. 2 = x — функция инверсии или отрицания аргумента,
4. 3 1 — функция константа 1.
5

6. Булевы функции двух переменных

x y f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0 x y
x
y
x y
1
константа 0
6

7. Булевы функции двух переменных

x y f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
y
y x
x
x y
7

8. Булевы функции двух переменных

x y f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
x y
x y
x y x y x y
x y
x|y
x y
отрицание импликации
отрицание обратной импликации
исключающее «или»
(сумма по модулю 2)
отрицание дизъюнкции
(стрелка Пирса)
отрицание конъюнкции
(штрих Шеффера)
8

9.

10. Двойственные булевы функции

Функция f*(x1,…,xn) называется двойственной к
функции f(x1,…,xn), если
f ( x 1 ,..., x n ) f ( x 1 ,..., x n )
*
Пример
Найти двойственные функции
( x y )* x y x y
( x y )* x y x y
( x )* x x
(0)* 0 1
(1)* 1 0
10

11. Самодвойственные булевы функции

Функция, равная своей двойственной, называется
самодвойственной.
f = f*
x y
f(x,y)
f*(x,y)
x y f(x,y)=f*(x,y)
0 0 f(0,0)
f (1,1)
0 1 f(0,1)
f (1,0)
0 0 f(0,0)= f (1,1)
0 1 f(0,1)= f (1,0)
1 0 f(1,0)
f (0,1)
1 0 f(1,0)= f (0,1)
1 1 f(1,1)
f (0,0)
1 1 f(1,1)= f (0,0)
11

12.

Пример
Является ли функция f(x,y,z) самодвойственной?
f(x,y,z) —
x y z f (x,y,z) f* (x,y,z)
0 0 0
0
0
0 0 1
1
1
0 1 0
0
1
0 1 1
1
1
1 0 0
0
0
1 0 1
0
1
1 1 0
0
0
1 1 1
1
1
несамодвойственная
12

13. Монотонные булевы функции

13

14. Монотонные булевы функции

14

15. Линейные булевы функции

Многочленами Жегалкина назваются формулы над
множеством функций FJ={ 0, 1, ^, +}
15

16. Линейные булевы функции

Всякую булеву функцию можно представить единственным
полиномом Жегалкина.
16

17.

Алгоритм построения полинома Жегалкина по СДНФ
Начало. Задана совершенная ДНФ функции f(x1, …,
xn).
Шаг 1. Заменяем каждый символ дизъюнкции на
символ дизюнкции с исключением.
Шаг 2. Заменяем каждую переменную с
инверсией x равносильной формулой x 1.
Шаг 3. Раскрываем скобки.
Шаг 4. Вычеркиваем из формулы пары одинаковых
слагаемых.
Конец. Получен полином Жегалкина функции f(x1,
…, xn).

18.

19. Линейные булевы функции

19

20.

Алгоритм построения полинома Жегалкина
Треугольнику Паскаля

21.

T0, T1, L, M, S

22.

23. Теорема Поста о функциональной полноте

Одна из сфер применения булевых функций -- синтез логических схем; при этом булевым функциям
соответствуют определённые функциональные элементы (детали). Полнота системы функций означает,
что, пользуясь только элементами соответствующих этим функциям типов, можно собрать любую
логическую схему.
English     Русский Правила