Учебное пособие 1203
.pdf15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
X Y |
Z |
|
|
|
|
|
|
|
(Z | X) (Y | X) |
||||||||||||||||||||||||||||||||
16 |
|
(X |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
(X Y)|(X Z) |
|||||||||||||||||||||||
|
Y |
Z |
||||||||||||||||||||||||||||||||||||||||
17 |
X Z |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
X |
Z |
Y |
|
(X | |
|
|
|
) (Z |
|
|
) |
|||||||||||||||||||||||||||||||
Y |
X |
|||||||||||||||||||||||||||||||||||||||||
18 |
Z ( |
|
|
|
|
|
|
Y) |
|
( |
|
X) ( |
|
|Y) |
||||||||||||||||||||||||||||
X |
Z |
X |
||||||||||||||||||||||||||||||||||||||||
19 |
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X ( |
|
|
|
(Y Z)) |
|||||||||||||||||||
|
Y Z |
|
|
|
Y |
|||||||||||||||||||||||||||||||||||||
20 |
(X |
|
|
|
|
) Y |
|
|
|
|
X ( |
|
|
|
|(Z |
|
|
|
|
)) |
||||||||||||||||||||||
Z |
X |
|
Y |
X Y |
5. БУЛЕВЫ ФУНКЦИИ
Теоретические сведения
Функция, которая принимает два значения 0 или 1, и аргументы которой принимают эти же значения, называется булевой функцией [1, 3].
Существуют различные способы задания булевой функции. С одной стороны, известно, что для любой булевой функции существует ПФ, которая ее задает. С другой стороны, булеву функцию полностью определяет таблица истинности. Однако задание булевой функции таблицей истинности имеет существенные ограничения. Количество различных булевых
функций от n аргументов определяется числом 22n . С возрастанием n количество различных функций увеличивается (уже при n =5 существует 4235000000 булевых функций), поэтому ограничиваться табличным заданием булевой функции нельзя и возникает вопрос о построении булевой функции с помощью полных систем функций.
Пусть P(n) – множество всех булевых функций от n переменных, содержащее также константы 0 и 1. Так для n=2 получим 16 функций, которые можно определить с помощью таблицы истинности.
39
X |
Y |
f1 |
f2 |
f3 |
f4 |
f5 |
f6 |
f7 |
f8 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
X |
Y |
f9 |
f10 |
f11 |
f12 |
f13 |
f14 |
f15 |
f16 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
Функция f1 (X,Y)=0 – константа нуль; Функция f2 (X,Y)= X Y – конъюнкция;
Функция f3 (X,Y)= X Y = X Y - левая коимпликация
(читается «не если Х, то Y»); Функция f4 (X,Y)=Х;
Функция f5 (X,Y)= X Y= Y X – правая коимпликация;
Функция f6 (X,Y)=Y;
Функция f7 (X,Y)= – сложение по модулю два или функция неравнозначности, неэквивалентности;
Функция f8 (X,Y)= Х Y – дизъюнкция;
Функция f9 (X,Y)= X Y X Y X Y – функция Вебба;
Функция f10 (X,Y)= X Y – эквиваленция; Функция f11 (X,Y)= Y – отрицание;
Функция f12 (X,Y)= X Y X Y – правая импликация
(читается «если Y, то Х»);
Функция f13 (X,Y)= X – отрицание;
Функция f14 (X,Y)= X Y=Y X – левая импликация;
Функция f15 (X,Y)= X Y=X|Y – функция Шеффера;
40
Функция f16 (X,Y)=1 константа единица.
Функция |
f (X1, X2,...,Xn) называется функцией, сохра- |
няющей константу 0, если f (0,…,0)=0. |
|
Функция |
f (X1, X2,...,Xn) называется функцией сохра- |
няющей константу 1, если f (1,…,1)=1. |
|
Функция |
f *(X1, X2,...,Xn) называется двойственной |
функцией f (X1, X2,...,Xn), если
f *(X1, X2,...,Xn)= f (X1, X2,...,Xn).
Функция |
f (X1, X2,...,Xn) |
называется самодвойствен- |
ной, если |
|
|
f (X1, X2,...,Xn)= f *(X1, X2,...,Xn). |
||
Функция |
f (X1, X2,...,Xn) называется монотонной, если |
|
для любых |
двух наборов |
X (X1, X2,...,Xn) и |
Y (Y1,Y2,...,Yn), таких, что X≤Y (для любого i |
Xi Yi ), име- |
ет место неравенство |
|
f (X1, X2,...,Xn) ≤ f (Y1,Y2,...,Yn).
Функция f (X1, X2,...,Xn) называется линейной, если f (X1, X2,...,Xn)=C0 C1X1 ... CnXn
где Ci {0,1}, а + - операция сложения по модулю два.
Замечания.
1.Монотонность булевой функции проверяется с помощью таблицы истинности.
2.Чтобы определить, является ли функция линейной, нужно построить многочлен Жегалкина.
Многочленом Жегалкина называется многочлен, являющийся суммой константы 0 или 1 и различных одночленов, в которые все переменные входят не выше чем в первой степени. Каждая булева функция может быть представлена многочленом Жегалкина, причем такое представление единственно. В
основе его лежит переход к операциям и +, при этом
41
0+X=X; 1+X= X .
Чтобы построить многочлен Жегалкина нужно выполнить следующие действия:
1.В выражении для булевой функции перейти к операциям , .
2.X заменить на (1+X).
3.Выполнить логическое умножение и упростить
формулу в соответствии со свойствами операций + и . Примеры:
X1 X2 , X1 X2 – функции, сохраняющие константу 0; X1 X2 – функция, не сохраняющая константу 0;
X1 X2 , X1 X2 – функции, сохраняющие константу 1; X1 +X2 – функция, не сохраняющая константу 1; X1+X2+X3 – самодвойственная функция, т.к.
f*( X1 ,X2 ,X3 )=1+(1+ X1)+(1+X2)+(1+X3 )= X1+X2 +X3 = f( X1 ,X2 ,X3 );
X1+X2 – несамодвойственная функция, т.к.
f*( X1 ,X2)=1+(1+ X1)+(1+X2)=1+X1+X2 f( X1 ,X2 ); X1 X2, X1 X2 – монотонные функции;
X1 X2 – немонотонная функция (определении монотонности нарушается на наборах (0, 0) и (1, 0)).
X1 +X2 – линейная функция;
X1 X2 = X1 +X2+X1X2 – нелинейная функция.
Система функций {f1, f2,..., fn} называется полной, если любая булева функция может быть записана в виде формулы через функции этой системы.
Пусть D={f1, ..., fn} – произвольная система булевых функций, тогда справедлив следующий критерий полноты.
Теорема Поста. Система D булевых функций является полной тогда и только тогда, когда выполняется пять условий: существует функция fi D, не сохраняющая константу 0; функция fi D, не сохраняющая константу 1; нелинейная функция;
42
несамодвойственная функция и немонотонная функция в системе D.
Пример. Пусть К0 – класс функций, сохраняющих константу 0; К1 – класс функций, сохраняющих константу 1; Км – класс монотонных функций; Кл – класс линейных функций; Кс
– класс самодвойственных функций. Докажем полноту системы {+, ,1}.
Составим таблицу Поста следующего вида:
F |
К0 |
К1 |
Км |
Кл |
Кс |
X+Y |
+ |
- |
- |
+ |
- |
X Y |
+ |
+ |
+ |
- |
- |
1 |
- |
+ |
+ |
+ |
- |
В силу теоремы Поста для полноты системы необходимо и достаточно, чтобы в каждом столбце таблицы был хотя бы один “-”. Построенная таблица доказывает полноту систе-
мы {+, ,1}.
Пример. Исследовать систему булевых функций ,
на полноту.
Решение. Для проверки полноты системы булевых функций будем использовать критерий полноты – теорему Поста. Составим таблицу Поста.
f |
K0 |
K1 |
Kм |
|
Kл |
|
Kс |
|||||
X Y |
- |
|
|
+ |
- |
|
- |
|
- |
|||
|
|
|
- |
|
|
- |
- |
|
+ |
|
+ |
|
X |
||||||||||||
|
|
|
|
|
|
|
K0 . |
|
|
|||
|
|
0 0 1,0 |
1,следовательно , |
|
|
|
||||||
|
|
1 1 1,следовательно K1, |
|
в то |
время как |
K1,так как 1 0.
Для проверки монотонности воспользуемся таблицей ис
43
X |
Y |
X Y |
|
|
|
||
|
X |
|
|||||
0 |
0 |
1 |
|
|
1 |
||
0 |
1 |
1 |
|
|
1 |
||
1 |
0 |
0 |
|
|
0 |
||
1 |
1 |
1 |
|
|
0 |
||
|
|
|
|
|
|
|
|
Анализ показывает, что X Y, X не являются моно-
тонными |
функциями, |
|
|
так |
|
|
|
|
как |
(1,0) (0,0), а |
(1 0) (0 0); для |
|
|
:1 0, а |
|
|
|
|
|
|
|
(1) (0). |
|||||||
X |
Для определения линейности функции построим многочлен Жегалкина.
X 1 X;
X Y X Y X Y 1 (X (1 Y)) 1 X XY
Таким образом, X - линейная функция, а X Y - нет. Определим являются ли исследуемые функции самодвой-
ственными. Так как |
f *(X) |
|
|
|
|
|
|
|
|
|
|
|
f |
( |
X |
) |
X |
f (X), |
то |
X - са- |
|||||
модвойственная |
функция. |
|
|
|
|
В |
|
то |
время, |
|
|
как |
f *(X,Y) f (X,Y ) X Y X Y X Y X Y , и по-
этому Kc .
Для полноты системы необходимо и достаточно, чтобы в каждом столбце таблицы Поста был хотя бы один “-“. Постро-
енная таблица доказывает, что система |
( , ) является пол- |
|||||||||
ной. |
|
|
|
|
|
|
Задание 7 |
|
||
|
|
|
|
|
|
|
|
|||
|
Исследовать систему булевых функций на полноту. |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
1 |
, , |
|
|
|
11 |
|
, ,1 |
|||
|
||||||||||
2 |
, |
|
|
|
|
12 |
|
, ,1 |
||
|
|
|||||||||
3 |
, |
|
|
|
|
|
13 |
|
, ,1 |
|
|
||||||||||
4 |
,0 |
|
14 |
|
, ,0 |
44
5 |
, ,0 |
15 |
, ,1 |
||||||||
6 |
, |
|
|
|
16 |
, , |
|||||
|
|
||||||||||
7 |
, |
17 |
, ,1 |
||||||||
8 |
, , |
18 |
, , |
|
|
|
|||||
|
|
||||||||||
9 |
, |
|
|
|
19 |
, , |
|
|
|
||
|
|
|
|||||||||
10 |
, , |
20 |
, ,1 |
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1.Новиков Ф.А. Дискретная математика для программистов / Ф.А. Новиков. СПб.: Питер, 2004. 364 с.
2.Судоплатов С.В. Элементы дискретной математики / С.В. Судоплатов, Е.В. Овчинникова. М.: ИНФРА-М, 2002. 280 с.
3.Судоплатов С.В. Математическая логика и теория алгоритмов: учебник / С.В. Судоплатов, Е.В. Овчинникова. М.:
ИНФРА-М, 2004. – 224 с.
4.Иванов Б.Н. Дискретная математика. Алгоритмы и программы / Б.Н. Иванов. М.: Лаборатория базовых знаний, 2003. – 288 с.
5.Кузнецов О.П. Дискретная математика для инженера / О.П. Кузнецов. СПб.: Лань, 2005. – 400 с.
6.Собенина О.В. Дискретная математика: учеб. пособие / О.В. Собенина. Воронеж: ВГТУ, 2012.(электронное издание)
7.Лавров И.А. Задачи по теории множеств, математической логике и теории алгоритмов / И.А. Лавров, Л.Л. Максимова. М.: ФИЗМАТЛИТ, 2004. – 256 с.
8.Гаврилов Г.П. Сапоженко А.А. Задачи и упражнения по дискретной математике: учеб. пособие / Г.П. Гаврилов, А.А. Сапоженко. – 3-е изд., перераб. – М.: ФИЗМАТЛИТ, 2005. – 416 с.
45
|
СОДЕРЖАНИЕ |
|
Правила выполнения и оформления типового расчета |
1 |
|
1. |
Бинарные отношения |
2 |
2. |
Элементы теории графов |
11 |
3. |
Операции над высказываниями и их свойства |
25 |
4. |
Нормальные и совершенные нормальные формы |
32 |
5. |
Булевы функции |
39 |
|
Библиографический список |
45 |
46
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к выполнению типового расчета по дисциплине «Дискретная математика»
для студентов направления подготовки бакалавров 09.03.02 «Информационные системы и технологии» (профиль «Информационные системы и технологии в машиностроении») очно-заочной формы обучения
Составители: Собенина Ольга Валерьевна
Пак Алла Анатольевна
В авторской редакции
Компьютерный набор О.В. Собениной
Подписано к изданию 30.05.2016.
Уч.-изд. л. 2,8. «С»
ФГБОУ ВО «Воронежский государственный технический университет»
394026 Воронеж, Московский просп., 14
47