
- •1. Элементы теории множеств
- •1.1 Множества. Основные понятия
- •1.2. Способы задания множеств
- •1.3. Операции над множествами. Диаграммы Венна
- •1.4. Свойства операций над множествами
- •1.5. Прямое (декартово) произведение множеств
- •1.6 Разбиения и покрытия
- •1.7. Замечание о мощности некоторых множеств
- •1.8 Представление множеств в эвм
- •1.9. Отношения
- •1.9.1.Определения
- •1.9.2 Бинарные отношения
- •1.9.3. Способы задания бинарных отношений
- •1.9.4 Свойства бинарных отношений
- •1.9.5. Отношение эквивалентности
- •1.9.5. Отношение порядка
- •1.9.6.1. Минимальные и максимальные элементы множества
- •1.9.6.2. Диаграммы Хассе
- •1.9.6.3. Принцип двойственности
- •1.9.7. Представление отношений в эвм
- •1.10. Соответствия. Функции. Операции. Отображения
- •1.10.1. Соответствия и их свойства
- •1.10.2 Функции и отображения
- •1.10.3. Инъекция, сюръекция и биекция
- •1.10.4. Композиция и суперпозиция функций. Способы задания функций
- •1.10.5. Представление функций в эвм
- •1.10.6. Операции
- •1.10.6.1. Способы задания операций
- •1.11. Алгебраические структуры
- •1.11.2. Замыкание и подалгебры
- •1.11.3. Гомоморфизм и изоморфизм
- •1.11.4. Алгебры с одной бинарной операцией
- •1.11.5. Алгебры с двумя бинарными операциями
- •1.11.6.Решетки
- •1.11.7. Булевы алгебры
- •2. Элементы математической логики и булевы функции
- •2.1. Операции над высказываниями
- •2.2. Логические операции (логические связки)
- •2.3. Элементарные булевы функции
- •2.3.1. Функции алгебры логики
- •2.3.2. Равносильность функций. Существенные и несущественные переменные
- •2.3.3. Реализация функций формулами. Суперпозиция функций
- •2.3.4. Подстановки и замены
- •2.3.5. Принцип двойственности
- •2.3.6. Нормальные формы в логике высказываний
- •2.3.6.1. Разложение булевых функций по переменным. Дизъюнктивно-нормалльная форма (днф)
- •2.3.6.2. Совершенная дизъюнктивная нормальная форма
- •2.3.7. Арифметические операции в алгебре логики. Полиномы Жегалкина
- •2.3.8. Монотонные функции алгебры логики
- •2.3.9. Функционально замкнутые классы
- •2.4. Полнота системы булевых функций. Теорема
- •2.5. Элементы логике предикатов
- •2.5.1. Определение предиката
- •2.5.2. Кванторы. Формулы логики предикатов
- •2.5.3. Равносильность формул
- •2.5.4. Предикаты на конечных областях. Логика одноместных предикатов
- •2.6. Операции над предикатами и кванторами
- •2.7. Построение доказательств в логике предикатов
- •1.6.2. Разбор решений задач по логике предикатов
- •1. Элементы теории множеств 3
- •1.1 Множества. Основные понятия 3
- •2.6. Операции над предикатами и кванторами 137
- •394026 Воронеж, Московский просп., 14
2.3.4. Подстановки и замены
Если в формулу F входит переменная х, то этот факт обозначается так: F(...x...).
Соответственно запись F(...G..) обозначает, что в формулу F входит подформула G. Можно вместо x и G подставить другую формулу или переменную.
Если подстановка производится вместо всех вхождений заменяемой переменной (или подформулы), то результат подстановки обозначается так:
F(...x...){G//x}.
Если же подстановка производится вместо некоторых вхождений (в том числе вместо одного), то результат подстановки обозначается так:
F(...G1...){G2/G1}.
Пример 1. Замена всех вхождений переменной х
xv¬x{y^z//x} = (y^z)v¬(y^z).
2. Замена всех вхождений подформулы:
xvyvz{¬x//yvz} = xv¬x.
3. Замена первого вхождения переменной:
xv¬x{y/x} = yv¬x.
4. Замена первого вхождения подформулы:
xvyvz{¬x/yvz} = xv¬x.
Правило подстановки: если в равносильных формулах вместо всех вхождений некоторой переменной х подставить одну и ту же формулу, то получатся равносильные формулы:
.
2.3.5. Принцип двойственности
Понятие двойственных функций
Двойственная функция получается из исходной при замене всех переменных на противоположные, т.е. всюду в истинностной таблице нужно заменить 0 на 1, а 1 на 0:
Определение 1. Функция f+(x1, ...,xn), двойственная к функции f(x1, ...,xn), определяется равенством:
f+(x1,
...,xn)
=
.
Из определения видно, что двойственность инволютивна: f++ = f.
Определение 2. Функция, равносильная своей двойственной, т.е. такая, что
f(x1,
...,xn)
= f+(x1,
...,xn)
=
,
называется самодвойственной.
Самодвойственная функция принимает на
противоположных наборах
и
противоположные значения.
f |
1 |
0 |
x1vx2 |
x1^x2 |
x |
|
f* |
0 |
1 |
x1^x2 |
x1vx2 |
x |
|
Пример 2. Тождественная функция и отрицание самодвойственны, а дизъюнкция и конъюнкция – нет.
Теорема. Если функция φ(х1...хn) реализована формулой
f(f1(x1,
...,xn),
..., fn(x1,
...,xn)),
то формула
реализует функцию φ*(х1...хn).
Доказательство. φ*(х1...хn)
=
=
=
=
=
=
=
.
Теорема (Принцип двойственности).
Пусть F = {f1, ..., fm}. Положим F* = {f1*, ..., fm*}.
Тогда, если формула F над базисом F реализует функцию f, то формула F* над базисом F* полученная из формулы F заменой функций f на двойственные функции f*, реализует функцию f*:
funcF[F]=f
=> funcF*[F*]
= f*, где F*[F*]
= F[F]{fi*//fi}
Короче: Функция, двойственная суперпозиции некоторых функций, равносильна соответствующей суперпозиции двойственных функций.
Следствие: F1 = F2 => F1* = F2*.
Пример: Из
по принципу двойственности сразу имеем
.
Закон двойственности удобен при нахождении двойственных функций для функций, представленных формулами. Можно, конечно, воспользоваться определением двойственной функции и поставить отрицания над аргументами и над всей формулой. Однако при этом из формулы, содержащей только дизъюнкции, конъюнкции и отрицания, у которой отрицания стоят только над аргументами, получится формула, не обладающая этим свойством.
Если же строить двойственную функцию при помощи закона двойственности, (заменив операции на двойственные, а именно, конъюнкции на дизъюнкциями и наоборот), то указанное свойство сохраняется.
Примеры.
A. Дать определение несамодвойственной функции.
Функция является несамодвойственной,
если существует такой набор
,
что
.
B. Дана произвольная несамодвойственная функция. Отождествить у нее переменные так, чтобы получилась несамодвойственная функция от возможно меньшего числа переменных. Каким может быть это число?
Пусть f(x1,
..., xn)
– несамодвойственная функция, тогда
для набора
имеем
. (*)
Разобьем переменные (x1, ..., xn) на две группы:
1) сюда включим те переменные xi,
для которых
.
2) сюда – остальные переменные (для
которых
0).
Отождествим между собой переменные первой группы (переименуем их в у1), а так же переменные второй группы (переименуем их в у2).
В результате получим функцию от двух
переменных
.
Она может оказаться функцией от одной
переменной, если
- единичный или нулевой набор.
Очевидно, что
и
=
Поэтому, в силу (*), отсюда следует, что
,
а значит, - несамодвойственная функция.
Может оказаться, что дальнейшее отождествление переменных с сохранением несамодвойственности невозможно.
Например, ху – несамодвойственная функция, а единственно возможное отождествление переменных приводит к самодвойственной функции х.
C. Доказать, что из произвольной несамодвойственной функции и отрицания суперпозицией можно получить константы 0 и 1.
1) Заметим, что все несамодвойственные
функции одной переменной являются
константами. Поэтому в силу предыдущей
задачи можно ограничиться функциями
от двух переменных. Пусть
.
Тогда рассмотрим функцию
.
Эта функция является суперпозицией
и
.
Так как
,
то
.
Отождествим у
переменные х и у:
.
Имеем
,
т.е.
.
Подставляя эту координату в
,
получим другую константу. Таким образом,
представлены в виде суперпозиции
и
обе константы 1 и 0.
Эти задачи используются в последствии при доказательстве теоремы Поста.