lec06
.pdfКафедра Прикладной математики Института информационных технологий РТУ МИРЭА
Дисциплина
«Математическая логика и теория алгоритмов»
2022-2023 уч.г.
Наполнение курса
Объем курса
16 лекционных и 8 практических занятий
Темы лекционных занятий
1.Элементы теории множеств. Булева алгебра
2.Булевы вектора и булевы функции
3.ДНФ, СДНФ, КНФ, СКНФ
4.Минимизация ДНФ
5.Метод Карно и метод Квайна
6.Двойственные функции
7.Функциональная полнота. Полные классы. Алгебра Жегалкина.
8.Замкнутые классы функций: монотонные, самодвойственные, сохраняющие const.
9.Теорема Поста
10.Исчисление высказываний
11.Исчисление предикатов. Основные положения. Кванторы
12.Нормальные формы. Доказательства
13.Конечные автоматы
14.Соединения и синтез автоматов
15.Машина Тьюринга
16.ЧРФ и НАМ
2
Лекция 6.
Двойственность булевых функций.
6.1.Двойственные БФ.
6.2.Двойственность и СНФ.
6.3.Приложения алгебры логики.
Часть 1.
Двойственные БФ.
Двойственные БФ.
(x1,x2, … xi, … xn) – произвольная булева функция.
Двойственной к функции называется булева функция
(x |
, x |
, … x |
, … x |
) ( , |
, … , … ), (6.1) |
|
1 |
2 |
i |
n |
1 2 |
|
|
если она получена из (x1,x2, … xi, … xn) инверсией всех аргументов xi и самой функции .
5
Пример 6.1. Нахождение двойственной БФ – .
(x1,x2) = x1 x2; g(x1,x2) = x1 x2.
Найти двойственные *, g* к функциям и g. Находим * формально по ТИ:
x1 |
x2 |
x1 |
x2 |
x1 |
x2 |
x1 |
x2 |
|
|
|
|
||||
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
1 |
|
1 |
0 |
1 |
|
0 |
1 |
0 |
|
1 |
1 |
0 |
|
0 |
1 |
1 |
|
1 |
1 |
1 |
|
1 |
x |
x |
x |
? x |
|
|
x |
x |
x |
x |
|
11 |
12 |
1 |
1 |
2 |
≡ ? |
01 |
02 |
1 |
0 |
2 |
1 |
0 |
|
0 |
|
0 |
1 |
|
0 |
|
|
0 |
1 |
|
0 |
|
|
1 |
0 |
|
0 |
|
0 |
0 |
|
0 |
|
|
1 |
1 |
|
1 |
|
Тождественна с точностью до перестановки строк в ТИ |
6 |
|
Пример 6.1. Нахождение двойственной БФ – . (продолжение)
(x1,x2) = x1 x2; g(x1,x2) = x1 x2.
Проверим подстановкой по определению *:
*(x1,x2) = 1 2 = 1 2 = x1 x2; g*(x1,x2) = 1 2 = 1 2 = x1 v x2;
7
Формула F* называется двойственной формуле F, если она получена из F заменой символов функций на символы двойственных им функций.
Пример 6.2.
Построим функцию, двойственную стрелке Пирса.
x1 |
x2 |
x1 |
x2 |
1 2 1 2 |
*(x1, x2) = 1 2 |
x1 |
| x2 |
|||
0 |
0 |
|
1 |
1 |
1 |
0 |
1 |
|
1 |
|
0 |
1 |
|
0 |
1 |
0 |
0 |
1 |
|
1 |
? |
|
|
|
|
≡ |
||||||
1 |
0 |
|
0 |
0 |
1 |
0 |
1 |
|
1 |
|
1 |
1 |
|
0 |
0 |
0 |
1 |
0 |
|
0 |
|
8
Пример 6.3. Нахождение функции, двойственной .
Построим функцию, двойственную .
|
|
|
|
|
|
|
|
|
|
|
|||||||
x |
x |
x x |
|
|
|
|
*(x , x |
) = |
x x |
|
|||||||
1 |
2 |
1 |
|
2 |
1 |
2 |
|
1 |
2 |
1 |
2 |
|
1 |
2 |
1 |
|
2 |
|
1 |
1 |
|
0 |
|
|
1 |
|
|
1 |
|||||||
0 |
0 |
|
0 |
|
|
|
|
|
|
|
|
|
|||||
0 |
1 |
|
1 |
|
1 |
0 |
|
|
1 |
|
|
0 |
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
≡ ? |
|
|
1 |
0 |
|
1 |
|
0 |
1 |
|
|
1 |
|
|
0 |
|
|
|
||
|
|
|
|
|
|
|
|
|
0 |
|
|||||||
1 |
1 |
|
0 |
|
0 |
0 |
|
|
0 |
|
|
1 |
|
|
|
1 |
|
9
Теорема. Принцип двойственности.
Теорема 6.1.
Пусть F(x1, … xn) является суперпозицией (x1, … xn) и набора БФ
G = { g1(x1, … xn), …, gn(x1, … xn) }, т.е.
F(x1, … xn) = (g1(x1, … xn), …, gn(x1, … xn)).
Тогда двойственной для нее есть:
F*(x1, … xn) = *( 1(x1, … xn), …, (x1, … xn)).
В интерпретации формул: если формула F задает булеву функцию (x1, … xn), то двойственная ей формула F задает двойственную функцию f (x1, … xn)
Доказательство:
[ (g1(x1, … xn), …, gn(x1, … xn))]* =
=( 1( 1, … ), …, ( 1, …
=*( 1(x1, … xn), …, (x1, … xn)).
(g1( 1, … ), …, gn( 1, … )) = )) = ( 1(x1, … xn), …, (x1, … xn)) =
10