- •Программа по курсу «Дискретная математика» для заочной формы обучения
- •Методика рецензирования контрольной работы.
- •Краткие теоретические сведения
- •Множества и операции над ними
- •Бинарные отношения
- •Отношение эквивалентности
- •Отношение упорядоченности
- •Функции
- •Функции и формулы алгебры логики
- •Двойственные функции и совершенные нормальные формы
- •Принцип двойственности
- •Построение совершенных нормальных форм
- •Полнота и замкнутость систем функций алгебры логики
- •Полные системы функций алгебры логики
- •Важнейшие замкнутые классы
- •Задание к контрольной работе по дискретной математике
- •I. Множества и операции над ними.
- •Варианты контрольных работ Вариант №1
- •Вариант №2
- •Вариант №3
- •Вариант №4
- •Вариант №5
- •Вариант №6
- •Вариант №7
- •Вариант №8
- •Вариант №9
- •Вариант №10
- •Вариант №11
- •Вариант №12
- •Вариант №13
- •Вариант №14
- •Вариант №15
- •Вариант №16
- •Вариант №17
- •Вариант №18
- •Вариант №19
- •Вариант №20
- •Вариант №21
- •Вариант №22
- •Вариант №23
- •Вариант №24
- •Вариант №25
- •Пример решения контрольной работы
- •Список литературы
- •400131, Волгоград, просп. Им. В.И. Ленина, 28
- •400131, Волгоград, ул. Советская, 35
-
Двойственные функции и совершенные нормальные формы
-
Принцип двойственности
-
Функция называется двойственной к функции f(x1,x2,…,xn). Для обозначения двойственной функции используется запись: [f(x1,x2,…,xn)]* или f*(x1,x2,…,xn) или f*.
Для получения столбца значений двойственной функции, как следует из определения, необходимо инвертировать значения функции f, т.е. заменить все единицы на нули, а нули – на единицы, а затем «перевернуть» полученный столбец, т.е. переписать его, начиная с конца, – что соответствует инвертированию значений переменных.
В таблице 5 процесс получения двойственной функции показан по шагам.
x |
y |
z |
f(x,y,z) |
|
|
|
0 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
1 |
0 |
1 |
|
0 |
1 |
0 |
0 |
1 |
1 |
|
0 |
1 |
1 |
1 |
0 |
1 |
|
1 |
0 |
0 |
0 |
1 |
0 |
|
1 |
0 |
1 |
0 |
1 |
1 |
|
1 |
1 |
0 |
0 |
1 |
0 |
|
1 |
1 |
1 |
1 |
0 |
0 |
Таблица 5 |
Легко убедиться, что (0)*=1, (1)*=0, (х)*=х, ()*=, (x&y)*= xy, (xy)*=x&y, (xy)*=, ()*=yx, (xy)*=xy, (xy)*=xy, (xy)*=xy, (xy)*=xy.
Из определения двойственности следует, что f**=(f*)*=f, т.е. f двойственна f*, – это так называемое свойство взаимности.
Принцип двойственности:
пусть формула U=S [f1, f2,…, fp] реализует функцию f(x1,x2,…,xn), тогда формула S [f1*, f2*,…, fp*], полученная из формулы U заменой функций f1, f2,…, fp двойственными функциями f1*, f2*,…, fp* соответственно, реализует функцию f*(x1,x2,…,xn), двойственную f. Эта формула называется двойственной к формуле U и обозначается U*. Таким образом, U*= S [f1*, f2*,…, fp*], где S означает структуру формулы. Заметим, что структура формулы, определяемая порядком выполняемых действий, остается неизменной.
На практике наиболее часто принцип двойственности применяется к формулам, сконструированным из таких функций, как константы ноль и единица, тождественной функции, отрицания, конъюнкции и дизъюнкции. В таких случаях для получения двойственной формулы необходимо ноль заменить на единицу, а единицу на ноль везде, где они встречаются, знак «&» заменить знаком «», а знак «» – на «&». При этом следует учесть порядок выполняемых действий в исходной формуле и, если он не был задан явно скобками, а задавался только приоритетом операций, то, возможно, придется расставить скобки в двойственной формуле. Тогда установить их надо на тех же местах, где они неявно присутствовали в исходной формуле. В других случаях, ввиду того же старшинства операций, в двойственной формуле скобки, возможно, и не понадобятся.
Примеры:
-
U1(x,y) = x & y U1*(x,y) = x y;
-
U2(x,y) = x & y U2*(x,y) = (x y) &;
-
U3(x,y) = (x y) & () U3*(x,y) = x & y .