6.2. Эквивалентность формул.
Поскольку функция рассматривается с
точностью до фиктивных переменных, мы
считаем, что формула Aреализует и любую функцию, равнуюf.
Если функция
,
реализуемая формулой
,
имеет несущественную переменнуюxi,
то приn>1 переменнуюxiможно удалить, заменив функциюfравной ей функцией
,
а формулуA– формулой
,
получающейся изAв
результате отождествления переменнойxiс любой из оставшихся переменных.
Очевидно, что
является формулой нади реализует функцию
.
Определение 6.2.ФормулыG1иG2надназываютсяэквивалентными, если
они реализуют равные булевы функции
и
.
При оперировании с формулами, которые реализуют булевы функции, бывают полезны приведенные ниже эквивалентности (тождества). Дополнительно введем символ , который обозначает любую из связок алгебры логики.
1.
- коммутативность связки,
где- общее
обозначение для связок,,,,,.
2.
- ассоциативность связки,
где- общее
обозначение для связок,,,.
3.а)
- дистрибутивность конъюнкции относительно
дизъюнкции;
б)
- дистрибутивность дизъюнкции относительно
конъюнкции;
в)
- дистрибутивность конъюнкции относительно
сложения поmod2.
4.правила де Моргана:
а)
;
б)
.
5.правила поглощения:
а)
;
б)
.
6.а)
;
б)
;
в)
;
г)
;
д)
.
7.а)
;
б)
;
в)
.
8.а)
;
б)
.
Тождества легко могут быть проверены путем сопоставления функций, соответствующих правой и левой частям тождеств. (Убедиться в этом самостоятельно).
Очевидно, что если A – подформула формулы A и если заменить любое из ее вхождений на эквивалентную формулу B, то формула A перейдет в формулу B, которая будет эквивалентная A.
Этот принцип вместе с тождествами для элементарных функций, к которым присоединяются все тождества, получаемые подстановкой вместо переменных любых формул, позволяет осуществлять эквивалентные преобразования и, тем самым, получить новые тождества.
Пример 6.3.Используя основные тождества, установить эквивалентность формул
и
.
Решение.
=(Раскрытие
стрелки Пирса, импликации, штриха
Шеффера)=
=
=
=(использование двойного отрицания, законы де Моргана, раскрытие эквиваленции и убираем лишние скобки)=
=
=
=
=
=
=
=(используем правила поглощения)=
=
=(используем
правила поглощения)=
=
.
Преобразуем формулу B, используя соответствующие эквивалентности:
=
=( раскрытие стрелки Пирса, импликации)=
=
=
=(законы де Моргана, раскрытие стрелки Пирса, двойное отрицание)=
=
=
=(используем правила поглощения)=
=
.
Тем самым доказываем эквивалентность формул AиB.
Булевы функции можно использовать для решения некоторого класса логических задач.
Пример 6.4.Некий любитель приключений отправился в кругосветное путешествие на яхте, оснащенной бортовым компьютером. Его предупредили, что чаще всего выходят из строя три узла компьютера –a,b,c, и дали необходимые детали для замены. Выяснить, какой именно узел надо заменить, он может по сигнальным лампочкам на контрольной панели. Лампочек тоже ровно три:x,yиz.
Инструкция по выявлению неисправных узлов такова:
1. если неисправен хотя бы один из узлов компьютера, то горит, по крайней мере, одна из лампочек x,y,z;
2. если неисправен узел a, но исправен узелс, то загорится лампочкаy;
3. если неисправен узел с, но исправен узелb, загорается лампочкаy, но не загорается лампочкаx;
4. если неисправен узел b, но исправен узелс, то загораются лампочкиxиy, или не загорается лампочкаx;
5. если горит лампочка xи при этом неисправен узела, либо все три узлаa,b,cисправны, то горит и лампочкаy.
В пути компьютер сломался. На контрольной панели загорелась лампочка x. Тщательно изучив инструкцию, путешественник починил компьютер. Какие узлы заменил путешественник?
Решение.Введем логические переменные, которые будут определять простые высказывания:
a– узелaисправный;
– узелaне исправный;
b– узелbисправный; ;
– узелbне исправный;
c– узелcисправный. ;
– узелcне исправный.
x– загорелась лампочкаx;
– не загорелась лампочкаx;
y– загорелась лампочкаy;
– не загорелась лампочкаy;
z– загорелась лампочкаz;
– не загорелась лампочкаz;
Используя условие задачи, составляем формулу, которая реализует следующую функцию:
.
По условию задачи на контрольной панели
загорелась лампочка x.
Значит, можно ввести следующие булевы
значения переменных:
.
Тогда наша функция упрощается до трех
переменных, которую можно преобразовать,
использовав соответствующие эквивалентности
и раскрывая импликацию.
![]()
![]()
=
=
=
=(правила
поглощения)=
=
.
Из последнего равенства можно сделать вывод: узел aисправный,b– нет иc– нет.
