Отыскание нормальных форм формул логики высказываний
Формулы алгебры высказываний могут быть приведены к нормальным формам: дизъюнктивной и конъюнктивной.
Конъюнктивным (дизъюнктивным) одночленом от переменных Х1, Х2,…,Хn называется конъюнкция (дизъюнкция) этих переменных или их отрицаний. Дизъюнктивной (конъюнктивной) нормальной формой называется произвольная дизъюнкция (конъюнкция) конъюнктивных (дизъюнктивных) одночленов. Сокращенная запись: ДН-форма (или ДНФ) и КН-форма (или КНФ) соответственно. Одночлен от некоторых переменных называется совершенным, если каждая из этих переменных входит в него ровно один раз, со знаком отрицания или без него.
Нормальная форма от некоторых переменных называется совершенной, если каждый входящий в нее одночлен является совершенным одночленом от тех же самых переменных. Сокращенная запись: СДН-форма (или СДНФ) – совершенная дизъюнктивная нормальная форма, СКН-форма (или СКНФ) – совершенная конъюнктивная нормальная форма.
Например, (X1ÙØX2ÙХ3)Ú(Х1ÙХ3)ÚØХ2 – дизъюнктивная (но не совершенная) нормальная форма от трех переменных Х1, Х2, Х3, а (Х1ÚØХ2)Ù(ØХ1ÚХ2)Ù(ØХ1ÚØХ2) – совершенная конъюнктивная нормальная форма от двух переменных Х1 и Х2.
Для того чтобы формулу равносильными преобразованиями привести к ДНФ, нужно руководствоваться следующим алгоритмом:
1) избавиться от операции импликации и эквивалентности, выразив их через логические связки Ø, Ù и Ú по законам: X®Y ºØXÚY, X«Y º (ØXÚY)Ù(ØYÚX);
2) довести знаки отрицания до независимых переменных, используя законы де Моргана: Ø(XÚY) ºØXÙØY, Ø(XÙY)ºØXÚØY;
3) применяя закон дистрибутивности (XÚY)ÙZº(XÙZ)Ú(YÙZ) , преобразовать формулу к дизъюнкции конъюнктивных одночленов;
4) постоянно избавляться от двойных отрицаний: ØØХºХ.
Пример 1.1.
Привести равносильными преобразованиями формулу Ø(XÚZ)Ù(X®Y) к дизъюнктивной нормальной форме.
Решение. Преобразуем формулу к ДНФ, руководствуясь приведенными правилами:
Ø(ХÚZ)Ù(X®Y)º (ØXÙØZ)Ù(ØXÚY)ºØXÙ(ØZÙ(ØXÚY))º ØXÙ((ØZÙØX)Ú(ØZÙY))º( ØXÙØZÙØX)Ú(ØXÙYÙØZ) º(ØXÙØZ)Ú(ØXÙYÙØZ).
Пример 1.2.
Привести равносильными преобразованиями формулу примера 1.1 к конъюнктивной нормальной форме.
Решение. Формулу равносильными преобразованиями можно привести к КНФ, руководствуясь приведенными четырьмя правилами, с той лишь разницей, что в правиле 3) следует использовать другой (двойственный) закон дистрибутивности: (XÙY)ÚZº(ХÚZ)Ù(YÚZ).
Преобразуем данную формулу:
Ø(ХÚZ)Ù(X®Y)º(ØXÙØZ)Ù(ØXÚY)º(ØXÙØZ)Ú(ØXÙYÙØZ)º((ØXÙØZ)ÚØX)Ù
Ù((ØXÙØZ)ÚY)Ù((ØXÙØZ)ÚØZ)ºØXÙ((ØXÚY)Ù(ØZÚY))ÙØZºº(ØXÙ(ØXÚY))Ù((ØZÚY)ÙØZ)ºØXÙØZ.
Пример 1.3.
Применяя равносильные преобразования, найти СДНФ для формулы из примера 1.1
Решение. Чтобы привести формулу к СДНФ, нужно сначала равносильными преобразованиями привести ее к какой-нибудь ДНФ (см. пример 1.1). При этом нужно убрать члены дизъюнкции, содержащие переменную вместе с ее отрицанием, а из одинаковых членов дизъюнкции удалить все, кроме одного. Если какой-либо конъюнктивный одночлен в ДНФ содержит не все переменные из числа входящих в исходную формулу, то его умножают на единицы, представляемые в виде дизъюнкций XiÚØXi каждой недостающей переменной Xi с ее отрицанием ØXi (закон исключенного третьего). Затем раскрывают скобки внутри каждого такого конъюнктивного одночлена, применяя закон дистрибутивности конъюнкции относительно дизъюнкции. Наконец, если среди членов полученной дизъюнкции окажутся одинаковые конъюнктивные одночлены, то из каждой серии таковых следует оставить по одному.
Приведем данную формулу к СДНФ, начав преобразования с ДНФ, полученной при решении примера 1.1:
Ø(ХÚZ)Ù(X®Y)º(ØXÙØZ)Ú(ØXÙYÙØZ)º((ØXÙØZ)Ù(YÚØY))Ú(ØXÙYÙØZ)º º(ØXÙØZÙY)Ú(ØXÙØZÙØY)Ú(ØXÙYÙØZ) º(ØXÙYÙØZ)Ú(ØXÙØZÙØY).
Пример 1.4.
Применяя равносильные преобразования, найти СКНФ для формулы из примера 1.2.
Решение. Правила приведения формулы к СКНФ двойственны соответствующим правилам приведения к СДНФ. Найчав с какой-нибудь КНФ данной формулы, нужно в каждом ее дизъюнктивном одночлене, в котором присутствуют не все переменные из числа входящих в данную формулу, добавить (через дизъюнкцию) нули, представляемые в виде конъюнкции XiÙØXi каждой недостающей переменной Xi с ееотрицанием ØXi. Затем внутри каждого такого дизъюнктивного одночлена раскрыть скобки, используя закон дистрибутивности дизъюнкции относительно конъюнкции. Если среди членов полученной конъюнкции окажутся одинаковые дизъюнктивные одночлены, то из каждой серии таковых следует оставить по одному.
Приведем данную формулу к СКНФ, начав преобразование с КНФ, полученной при решении примера 1.2:
Ø(ХÚZ)Ù(X®Y)ºØXÙØZº(ØXÚ(YÙØY))Ù(ØZÚ(XÙØX))º(ØXÚY)Ù(ØXÚØY)Ù
Ù(XÚØZ)Ù(ØXÚØZ)º(ØXÚYÚ(ZÙØZ))Ù(ØXÚØYÚ(ZÙØZ))Ù(XÚØZÚ(YÙØY))Ù
Ù(ØXÚØZÚ(YÚØY))º(ØXÚYÚZ)Ù(ØXÚYÚØZ)Ù(ØXÚØYÚZ)Ù(ØXÚØYÚØZ)Ù Ù(XÚYÚØZ)Ù(XÚØYÚØZ)Ù(ØXÚYÚØZ)Ù(ØXÚØYÚØZ)º º(ØXÚYÚZ)Ù(ØXÚYÚØZ)Ù(ØXÚØYÚZ)Ù(ØXÚØYÚØZ)Ù(XÚYÚØZ)Ù(XÚØYÚØZ).
1.4. Тождественно истинные и тождественно ложные формулы.
Проблема разрешимости
Проблема разрешимости для логики высказываний заключается в том, чтобы установить, является ли произвольная формула тождественно истинной.
Это условие выражает теорема: формула является тождественно истинной тогда и только тогда, когда в ее КНФ в любой из дизъюнктивных одночленов одновременно входят какая-либо переменная и ее отрицание.
Согласно другой теореме, формула является тождественно ложной тогда и только тогда, когда в ее ДНФ в любой из конъюнктивных одночленов одновременно входят какая-либо переменная и ее отрицание.
Следовательно, приведя формулу равносильными преобразованиями к КНФ, можно установить, является ли она тождественно истинной, а приведя ее к ДНФ, можно установить, является ли она тождественно ложной.
Пример 1.5.
Доказать, что формула F =(P ®Q) ®((RÚP) ®(RÚQ)) является тождественно истинной.
Применяя равносильные преобразования, приведем формулу к КНФ:
(P®Q)®((RÚP)®(RÚQ))ºØ(P®Q)Ú((RÚP) ®(RÚQ))º (PÙØQ)ÚØ(RÚP)Ú Ú(RÚQ) º (PÙØQ) Ú(ØRÙØP) Ú(RÚQ) º (P ÚØR)Ù (PÚ ØP) Ù(ØQÚØR)Ù
Ù(ØQÚØP)Ú(RÚQ)º (PÚØR)Ù(ØQÚØR)Ù(ØQÚØP)Ú(RÚQ) º º (PÚØRÚRÚQ)Ù(ØQÚØRÚRÚQ)Ù(ØQÚØPÚRÚQ).
В первую дизъюнкцию входят R и ØR. Во вторую – Q и ØQ, R и ØR. в третью – Q и ØQ. Следовательно, можно утверждать, что исходная формула является тождественно истинной.
Так как всякой формуле соответствует таблица истинности, то тождественная истинность или тождественная ложность формулы может быть установлена двумя путями:
1) приведением с помощью равносильных преобразований к КНФ или ДНФ;
2) составлением таблицы истинности.
Пример 1.6.
Установить, является ли тождественно истинной данная формула логики высказываний: F(P, Q) = (PÙ(P®Q)) ®Q.
1) Применяя равносильные преобразования, приведем формулу к КНФ:
(PÙ(P®Q)) ®Q º(PÙ(ØPÚQ))®QºØ(PÙ(ØPÚQ)ÚQ º º ØPÚØ(ØPÚQ))ÚQº ØPÚ(PÙØQ)ÚQ º (ØPÚQ)Ú(PÙØQ)º º (ØPÚQÚP)Ù(ØPÚQÚ ØQ).
В первую дизъюнкцию входят P и ØP. Во вторую – Q и ØQ, поэтому формула является тождественно истинной, F(P, Q) º 1.
2) Составим таблицу истинности F(P, Q) (таблица 2).
Таблица 2
P | Q | P®Q | PÙ(P®Q) | (PÙ(P®Q))®Q |
Из таблицы 2 видно, что F(P, Q) º 1.