- •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. Теоремы Гёделя о неполноте.
Теорема Поста о полноте
Для того чтобы система функций была полной, необходимо и достаточно, чтобы она не содержалась целиком ни в одном из классов T0, T1, L, S, M.
Доказательство. Докажем необходимость этого условия. Пусть система
N = {f1, f2, ...fs, ...} полна в Р2, покажем, что тогда она не лежит целиком в Q, где через Q обозначим любой из классов T0, T1, L, S, M. Докажем от противного, пусть N Q, очевидно, [N] [Q] = Q, но [N] = P2, т.к. N – полна в Р2, отсюда Р2=Q, но это не так. Необходимость доказана.
Докажем достаточность. Пусть F = {f0, f1, fL, fm, fs}, где f0T0, f1T1, fLL, fsS и fmM. Покажем, что суперпозицией функций системы F можно получить полную систему G = {x1&x2, }.
1. Пусть g(x) = f0(x, …, x). Тогда g(0) = f( 0, …, 0) = 1. Далее возможны два случая:
g(1) = 1. Тогда g(x) 1. Функция h(x) = f1(g(x), …, g(x)) = f1(1, …, 1) = 0, т.е. h(x) 0. Получили константы 0 и 1;
g(1) = 0. Тогда g(x) = . По лемме о несамодвойственной функции суперпозицией над {fs, } можно получить одну из констант, например, 0. Тогда f0(0, …, 0) = 1 есть другая константа.
В обоих случаях получили обе константы.
2. По лемме о немонотонной функции суперпозицией над {fm, 0, 1} можно получить отрицание.
3.
По лемме о нелинейной функции суперпозицией
над {fL, 1,
}
можно получить конъюнкцию. Теорема
доказана.
Следствие. Всякий замкнутый класс функций из Р2, не совпадающий с Р2 содержится, по крайней мере, в одном из замкнутых классов T0, T1, L, S, M. Действительно, если N не является подмножеством Q, то [N] = P2, что неверно.
Примеры использования теоремы Поста.
1. Покажем, что система функций {f1 =x1x2, f2 =0, f3 =1, f4 = x1x2x3} полна в Р2. Составим таблицу, которая называется критериальной :
|
Т0 |
Т1 |
L |
M |
S |
x1x2 |
+ |
+ |
- |
+ |
- |
0 |
+ |
- |
+ |
+ |
- |
1 |
- |
+ |
+ |
+ |
- |
x1x2x3 |
+ |
+ |
+ |
- |
+ |
x1 x2 x3 |
x1x2x3 |
0 0 0 0 1 1 1 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 |
0 0 0 0 1 0 0 1 |
Из таблицы видно, что какой бы класс мы ни взяли, всегда есть функция из данной системы , которая в этот класс не входит. Можно сформулировать следующее правило: для того чтобы система функций была полна, необходимо и достаточно, чтобы в каждом столбце критериальной таблицы был хотя бы один «минус».
Отметим еще одно обстоятельство, касающееся приведенной системы. Какую бы функцию из этой системы мы ни удалили, система станет неполной, действительно, {f2, f3, f4}L, {f1, f3, f4}T1, {f1, f2, f4}T0, {f1, f2, f3}M.
2.
Мы знаем, что система {x1|x2}
– полна в Р2.
Какова для нее критериальная таблица?
x1|x2=
= x1x21.
|
Т0 |
Т1 |
L |
M |
S |
x1|x2 |
- |
- |
- |
- |
- |
3. Составим критериальную таблицу для другой полной системы функций из Р2: {0, 1, x1x2, x1x2}.
|
Т0 |
Т1 |
L |
M |
S |
0 |
+ |
- |
+ |
+ |
- |
1 |
- |
+ |
+ |
+ |
- |
x1x2 |
+ |
+ |
- |
+ |
- |
x1x2 |
+ |
- |
+ |
- |
- |
Согласно критериальной
таблице, полной является и система {1,
x1x2,
x1x2}.
Константа 0 введена в эту систему для
удобства, тогда мы можем записать полином
Жегалкина в виде, где а
равны
0, если члены х
х
...х
,
в полиноме отсутствуют.
4.
Выясним, полна ли система
.
Составим критериальную таблицу, очевидно
.
Чтобы показать, что
,
достаточно найти одну функцию
и
.
Возьмем
,
удовлетворяющую требуемым условиям.
Если f
S\T0,
то f(0,
..., 0) = 1, f(1,
..., 1)=0, следовательно, f
M,
f
T1.
Рассмотрим функцию h
= x1x2
x2x3
x1x3=1,
набор ее значений (11101000), h
S\T0,
но h
L.
Следовательно, критериальная таблица
имеет вид:
|
Т0 |
Т1 |
L |
M |
S |
L |
- |
+ |
+ |
- |
- |
S\T0 |
- |
- |
- |
+ |
- |
и А – полная система функций.
Определение. Система функций {f1, ..., fs, ...} называется базисом в Р2,если она полна в Р2, но любая ее подсистема не будет полной. Например, система функций {x1&x2, 0, 1, x1 x2 x3} – базис.
