- •2. Элементы математической логики.
- •2.1. Высказывания и действия над ними.
- •2.2. Кванторы.
- •2.3. Предикаты.
- •2.4. Функции алгебры логики
- •2.4.1. Элементарные функции алгебры логики
- •2.4.2. Формульное задание функций алгебры логики
- •Упрощение записи формул:
- •Теорема о замене подформул на эквивалентные
- •Некоторые свойства элементарных функций
- •Следствия из свойств элементарных функций
- •2.4.3 Принцип двойственности
- •Принцип двойственности
- •Лемма о несамодвойственной функции
- •2.4.4 Разложение булевой функции по переменным
- •2.4.5. Полнота, примеры полных систем
- •Полные системы
- •Теорема Жегалкина
- •2.4.6. Замыкание и замкнутые классы
- •Важнейшие замкнутые классы в р2
- •Теорема Поста о полноте
- •Примеры использования теоремы Поста.
- •Теорема о достаточности четырех функций.
- •2.5. Математические теоремы, их виды и логическая структура.
- •2.5.1. Теоремы прямая, обратная, противоположная.
- •2.5.2. Достаточность и необходимость; существование и единственность.
- •2.5.3. Доказательство от противного; метод математической индукции.
- •2.6. Формальная аксиоматическая теория.
- •2.6.1. Основные определения.
- •2.6.2. Определение и разновидности дедуктивных теорий.
- •2.6.3. Исчисление высказываний
- •2.6.4. Теорема дедукции
- •2.6.5. Принцип резолюций.
- •2.6.6. Теорема о полноте исчисления высказываний.
- •2.6.7. Исчисление предикатов.
- •2.6.8. Теоремы Гёделя о неполноте.
Лемма о несамодвойственной функции
Подстановкой функций
и
в несамодвойственную функцию можно
получить одну из констант.
Доказательство. Пусть
– несамодвойственная функция. Тогда
существует набор
,
для которого
.
Построим функцию
,
заменив единицы в
на
,
а нули – на
.
Так как
,
то
.
Заметим, что
.
Тогда
,
т.е.
.
Следовательно, функция
есть одна из констант.
2.4.4 Разложение булевой функции по переменным
Обозначим
x=
Посмотрим, чему равно x при разных значениях x и .
x\ |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
Из таблицы следует: x=1 тогда и только тогда, когда x=.
Теорема о разложении функции по переменным
П
усть
f(x1,
..., xn)
P2.
Тогда для любого m:
1 ≤ m
≤ n
допустимо представление:
f(x1,
..., xm,
xm+1,
..., xn)
=
,
где дизъюнкция берется по всем наборам из 0 и 1. Это представление называется разложением функции f по переменным x1, ..., xn.
Прежде чем доказать утверждение, рассмотрим примеры.
Пример 1. m = 1, запишем разложение по переменным х:
f(x1,
..., xn) =
=
f(0, x2
, …,xn)x1f(1,
x2,
..., xn). (1)
Пример 2. m=2, запишем
разложение по переменным х и
:
f(x1,x2,…xn)
=
=
.
Если f(x,
x)
= xx,
то последняя формула дает xx=
xx
.
Доказательство.
Для доказательства возьмем произвольный
набор ,,n)
и покажем, что левая и правая части
формулы (1) принимают на этом наборе
одинаковые значения. Слева имеем f
.n.
Cправа :
.
Дизъюнкция
берется по всевозможным наборам (,
..., m).
Если в этих наборах хотя бы одно i
i
(1≤i≤m),
то
=
0 и
,
следовательно, ненулевой член будет
только на наборе (,
..., m)
= (,
..., m),
тогда
f
.n.
Следствие
1. Любую функцию f(x1,
..., xn)
не равную тождественно нулю можно
представить в виде:
,
причём единственным образом. Этот вид
называется совершенной дизъюнктивной
нормальной формой функции f(x1,
..., xn) и записывается
СДНФ.
Доказательство.
Существование
СДНФ для функции не равной тождественно
нулю вытекает из предыдущей теоремы.
Покажем, что эта СДНФ единственная. В
самом деле, имеется
n-местных
функций, не равных нулю тождественно.
Подсчитаем число различных СДНФ от n
переменных. Путь
означает число сочетаний из n
элементов по k.
Тогда число одночленных СДНФ
равно
.
Число k-членных
СДНФ равно
.
Число n-членных
СДНФ равно
.
Число всех различных СДНФ
Итак, функций реализуются посредством СДНФ, т.е. каждой функции соответствует единственная СДНФ.
Замечание. – элементарная конъюнкция ранга n по числу входящих переменных, предполагается, что при i j , хi хj. СДНФ для f(x1, ..., xn) –дизъюнкция элементарных конъюнкций ранга n. Если функция представлена в виде дизъюнкций элементарных конъюнкций, где ранг хотя бы одной элементарной конъюнкции меньше n, то такая форма называется дизъюнктивной нормальной формой (ДНФ).
Cледствие 2. Любая функция алгебры логики может быть представлена в виде формулы через отрицание, & и .
а)
Если f ≡
0, то f(x1,
..., xn) =
&
.
б)
Если f(x1,
..., xn)
0 тождественно, тогда ее можно представить
в виде СДНФ, где используются только
связки
,
&, .
СДНФ дает алгоритм представления функции
в виде формулы через &, ,
.
Пример 3. Пусть функция f(x1, x2, x3) задана таблицей истинности. Запишем ее в виде СДНФ. Наборов, на которых функция равна 1, три: (0, 1, 0), (1, 0, 0) и
(1, 1, 1), поэтому f(x1, x2, x3) = x10 & x21 & x30 x11 & x20 & x30 x11&x21 & x31=
=
&x2&
x1&
&
x1&x2&x3.
x1 |
x2 |
x3 |
f |
|||
0 0 0 0 1 1 1 1 |
0 1 1 1 0 0 1 1 |
0 1 0 1 0 1 0 1 |
0 0 1 0 1 0 0 1 |
|||
С
ледствие
3. Мы умеем представлять функцию в виде
.
Нельзя ли представить ее в виде
.
Пусть функция f(x1,
..., xn)
1
тождественно. Тогда функция f*
0
тождественно, и ее можно представить в
виде СДНФ:
.
По принципу двойственности заменим & на и наоборот, получим
(2)
называется элементарной
дизъюнкцией ранга n.
Представление функции в виде (2) называется
совершенной конъюнктивной
нормальной формой или
в краткой записи – СКНФ.
СКНФ для f(x1,
..., xn) –
конъюнкция элементарных дизъюнкций
ранга n. КНФ для f(x1,
..., xn) –
конъюнкция элементарных дизъюнкций,
где ранг хотя бы одной элементарной
дизъюнкции меньше n.
Пример 4. Пусть f(x1, x2, x3) = x1 (x2 (x3 ~ x1)). Представим ее в виде СКНФ, для этого получим таблицу истинности.
x1 |
x2 |
x3 |
x3~x1 |
x 2 (x3~x1) |
f |
0 0 0 0 1 1 1 1 |
0 0 1 1 0 0 1 1 |
0 1 0 1 0 1 0 1 |
1 0 1 0 0 1 0 1 |
1 1 1 0 1 1 0 1 |
1 1 1 1 1 1 0 1 |
Функция равна нулю только на наборе (1, 1, 0), поэтому
f(x1
x2
x3)=x1
x2
x3
=x10x20x31=
x3.
