
- •Алгебра логики
- •Законы алгебры логики
- •Проверка эквивалентности формул с помощью таблиц истинности
- •Нормальные формы
- •Разложение Шеннона
- •Полнота систем функций. Базисы
- •Истинностные значения булевых формул
- •Формальные теории
- •Исчисление предикатов
- •Интерпретация. Выполнимость и истинность.
- •Аксиоматическое построение исчисления предикатов.
- •Кванторные правила.
- •Законы квантования предикатов
- •Метод семантических таблиц
- •Запись суждений о множествах с помощью исчисления предикатов.
Нормальные формы
Среди всех записей формул выделяются две нормальные формы, в которых зафиксирован порядок использования связок. Основные нормальные формы: аддитивная, которая в логике называется дизъюнктивной ( в соответствии с названием аддитивной операцией логики), и мультипликативная ( конъюнктивная).
В дизъюнктивной нормальной форме внешняя связка – дизъюнкция, далее может идти конъюнкция, а отрицания ставятся только над пропозициональными переменными.
Любая формула может быть приведена к дизъюнктивной форме.
Например,
Или:
Поскольку обе формулы приводятся к одной и той же дизъюнктивной форме, они эквивалентны.
Однако дизъюнктивная форма для формулы
может быть не единственной. Например,
рассмотрим формулу:.
Формула может быть преобразована следующим образом:
Таким образом, приведённая формула имеет более одной дизъюнктивной формы.
Поскольку во многих случаях требуется установить, эквивалентны ли выражения, определяемые различными формулами, хорошо иметь форму, в которой эквивалентные функции имеют одинаковое представление. Такие формы – совершенные. Для представления функций алгебры логики используются совершенная дизъюнктивная нормальная форма(СДНФ) и совершенная конъюнктивная нормальные форма(СКНФ).
Назовем первичным термом переменную или переменную с отрицанием. Совершенные формы содержат первичные термы, соответствующие всем переменным функции.
Формальная запись дизъюнктивной
нормальной формы, где переменными
являются хi и
используются обозначения: х0=,
х1=х:
Так, СДНФ для функции
имеет
вид:
.
Обозначим a - x1,
b – x2,
c –x3.
Тогда СДНФ примет вид:
.
Если порядок высказываний в СДНФ задан, то для задания функции достаточно указать степени исходных высказываний. Конституэнты в СДНФ называются конституэнтами единицы. Каждая из конституэнт обозначаются буквой p с индексом, соответствующим степеням входящих в неё элементарных высказываний. Получим F(x1,x2,x3)= p111 p110 p011 p001. Или, в десятичной записи, при заданном числе элементарных высказываний, F(x1,x2,x3)= p7 p6 p3 p1.
Конституэнты единицы в СДНФ некоторой функции соответствуют единицам в таблице истинности, составленной для этой функции. Для построения СДНФ по таблице истинности выписываются и соединяются знаком конъюнкции для каждой единицы в таблице истинности (каждая единица соответствует одной конституэнте). Если в строке, соответствующей единице, переменной сопоставлен 0, то в конституэнте переменная записывается с отрицанием, если 1 – переменная записывается без отрицания.
Так, например, функции F(x1,x2,x3) в таблице
x1 |
x2 |
x3 |
F(x1,x2,x3) |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
соответствует СДНФ:
Теорема. Две функции равны тогда и только тогда, когда совпадают их совершенные нормальные формы.
Совпадение рассматривается с точностью до перестановки конституэнт и сомножителей в произведениях.
Свойства конституэнт единицы:
-
Дизъюнкция всех конституэнт единицы даёт единицу. Доказательство этого подобно доказательству для множеств.
2. Конъюнкция двух различных конституэнт единицы равна 0.
Аналогично определяется совершенная
конъюнктивная нормальная форма (СКНФ).
Она является конъюнкцией дизъюнкций,
в каждую из которых входят первичные
термы, соответствующие всем переменным
формулы. Формула для СКНФ:
.
СКНФ может быть построена по СДНФ с помощью эквивалентных преобразований, например:
Конституэнты СКНФ называются конституэнтами нуля. Конституэнты нуля обозначаются символом q. В двоичном индексе у символа q пишется 1 для переменной с отрицанием, и 0 для переменной без отрицания.
Так же СКНФ может быть построена по таблице истинности функции. Выписываются и соединяются конъюнкцией дизъюнкции, построенные для нулей функции. Если нулевой строке функции переменной соответствует 0, то переменная в конституэнте пишется без отрицания, если переменной соответствует 1, то она пишется с отрицанием.
Свойства конституэнт нуля:
-
Конъюнкция всех конституэнт нуля – нуль.
-
Дизъюнкция двух различных конституэнт нуля – единица.
Далее в таблице приводится пример построения совершенных форм по таблице истинности функции.
x1 |
x2 |
x3 |
F(x1,x2,x3) |
Конституэнты единицы |
СДНФ |
Конституэнты нуля |
СКНФ |
0 |
0 |
0 |
1 |
|
|
|
|
0 |
0 |
1 |
0 |
|
|
||
0 |
1 |
0 |
1 |
|
|
||
0 |
1 |
1 |
0 |
|
|
||
1 |
0 |
0 |
1 |
|
|
||
1 |
0 |
1 |
0 |
|
|
||
1 |
1 |
0 |
0 |
|
|
||
1 |
1 |
1 |
1 |
|
|
Сложность представления функции – число вхождений в это представление переменных и переменных с отрицанием. Минимизация представления логических функций производится по тому же алгоритму, по которому производится минимизация представления множеств.