Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

dm_tema_3

.pdf
Скачиваний:
10
Добавлен:
14.02.2015
Размер:
614.36 Кб
Скачать

3. Алгебра логики

3.2 Булевы функции

С помощью законов алгебры логики можно выполнять преобразования булевых функций.

Пример Рассмотрим булеву функцию f (x; y) = x _ y _ x. Применяя законы де

Моргана, дистрибутивности, исключенного третьего, коммутативности, получим

f (x; y) = (x ^ y) _ x = (x _ x) ^ (y _ x) = 1 ^ (x _ y) = x _ y:

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

21 / 57

3. Алгебра логики 3.3 Классы булевых функций

3.3 Классы булевых функций

Все множество булевых функций f (x1; : : : ; xn) обозначим через P2. Число переменных может быть любым.

Определение Суперпозицией двух булевых функций

f (x1; : : : ; xk ; : : : ; xn); g(y1; : : : ; ym)

называется булева функция

f (x1; : : : ; xk 1; g(y1; : : : ; ym); xk ; : : : ; xn):

Пример

Пусть f (x1; x2) = x1 ^ x2, g(x1; x2) = x1 x2. Тогда

f (g(x1; x2); x2) = (x1 x2) ^ x2; g(f (x1; x2); x2) = (x1 ^ x2) x2:

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

22 / 57

3. Алгебра логики

3.3 Классы булевых функций

Определение

Замыканием множества булевых функций F P2 называется множество [F ] всех булевых функций, получаемых из F с помощью операции суперпозиции.

Определение

Множество булевых функций F называется замкнутым, если [F ] = F .

Определение Система булевых функций

F = ff1; : : : ; fmg

называется функционально полной, если [F ] = P2.

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

23 / 57

3. Алгебра логики

3.3 Классы булевых функций

Следующие классы булевых функций будем называть основными.

Определение

Булева функция f сохраняет константу 0, если

f (0; : : : ; 0) = 0:

Класс булевых функций, сохраняющих константу 0, обозначим через

K0.

Определение

Булева функция f сохраняет константу 1, если

f (1; : : : ; 1) = 1:

Класс булевых функций, сохраняющих константу 1, обозначим через

K1.

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

24 / 57

3. Алгебра логики

3.3 Классы булевых функций

Определение

Функция f (x1; : : : ; xn) называется двойственной к функции f и обозначается f .

Пример Двойственной для конъюнкции является дизъюнкция

x1 ^ x2 = x1 _ x2:

Определение

Булева функция f называется самодвойственной, если f = f . Класс самодвойственных функций обозначим через S.

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

25 / 57

3. Алгебра логики

3.3 Классы булевых функций

Определение

Булева функция f называется линейной, если она может быть записана в следующем виде

f (x1; : : : ; xn) = c0 c1x1 c2x2 cnxn;

ãäå ci 2 f0; 1g. Множество всех линейных функций обозначим через L.

Пример Эквивалентность является линейной функцией

x1 x2 = 1 x1 x2:

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

26 / 57

3. Алгебра логики

3.3 Классы булевых функций

Пусть x = (x1; : : : ; xn), y = (y1; : : : ; yn) два булевых вектора длины n. Будем говорить, что x y, åñëè xi yi , i = 1; : : : ; n. В противном случае x è y несравнимы.

Определение

Булева функция f называется монотонной, если для любых x y выполняется неравенство f (x) f (y). Множество всех монотонных функций обозначим через M.

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

27 / 57

3. Алгебра логики

3.3 Классы булевых функций

Теорема

Классы булевых функций K0, K1, S, L, M и все множество булевых функций P2 замкнуты.

Доказательство.

Докажем [S] = S. Пусть f ; g 2 S. Тогда

f(x1; : : : ; g(y1; : : : ; ym); : : : ; xn) =

f(x1; : : : ; g(y1; : : : ; ym); : : : ; xn) =

f(x1; : : : ; g(y1; : : : ; ym); : : : ; xn):

Теорема (теорема Поста)

Система булевых функций F является функционально полной тогда и только тогда, когда для любого класса K 2 fK0; K1; S; L; Mg найдется функция f 2 F такая, что f 2= K .

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

28 / 57

3. Алгебра логики

3.3 Классы булевых функций

Таблица принадлежности булевых функций классам K0, K1, S, L, M

Функция

K0

K1

S

L

M

x

 

 

+

+

 

 

 

 

 

 

 

x1 ^ x2

+

+

 

 

+

x1 _ x2

+

+

 

 

+

x1 ! x2

 

+

 

 

 

x1 x2

 

+

 

+

 

x1 x2

+

 

 

+

 

Из таблицы видно, что системы булевых функций: fx; x1 ^ x2g, fx; x1 _ x2g являются функционально полными.

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

29 / 57

3. Алгебра логики 3.4 Нормальные формы булевых функций

3.4 Нормальные формы булевых функций

Рассмотрим множество булевых функций n переменных x1; : : : ; xn. Обозначим: xi ^ xj = xi xj , xi1 = xi , xi0 = xi . Под литералом будем понимать xi èëè xi .

Определение Элементарной конъюнкцией называется конъюнкция литералов

x1 1 : : : xmm ; m n;

ãäå i 2 f0; 1g.

Элементарная конъюнкция равна 1 только на наборе значений аргументов x1 = 1; : : : ; xm = m.

Е.А.Перепелкин (АлтГТУ)

Дискретная математика. Тема 3

2012

30 / 57

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]