1.4. Равносильные формулы
Две формулы исчисления высказываний Ф1(P1,...,PN) и Ф2(P1,...PN) называются равносильными, если они принимают одинаковое значение для любых значений P1,...PN. Две равносильные формулы имеют одну и ту же таблицу истинности и, наоборот, формулы, имеющие одну и ту же таблицу истинности, равносильны.
Условие равносильности формул выражает
Теорема 1.1. Формулы Ф1(P1,...PN) и Ф2(P1,...PN) равносильны тогда и только тогда, когда их эквивалентность
Ф1(P1,...PN) Ф2(P1,...PN) |
|
является тавтологией.
Отношение равносильности обозначается символом . Например, из законов (1.12) и (1.13) следуют равносильности:
(P1 \/ P2) & P3 (P1 & P3) \/ (P2 & P3), |
(1.30) |
(P1 & P2) \/ P3 (P1 \/ P3) & (P2 \/ P3). |
(1.31) |
Из законов (1.14) и (1.15) следуют равносильности:
(P1 & P2) P1 \/P2, |
(1.32) |
(P1 \/ P2) P1 &P2. |
(1.33) |
Из тавтологий (1.23,...,1.29) следуют равносильности:
P1 & P2 (P1 \/P2), |
(1.34) |
P1 \/ P2 (P1 &P2), |
(1.35) |
P1 P2 (P1 P2) & (P2 P1), |
(1.36) |
P1 P2 (P1 &P2), |
(1.37) |
P1 P2 P1 \/ P2, |
(1.38) |
P1 & P2 (P1 P2), |
(1.39) |
P1 \/ P2 P1 P2. |
(1.40) |
Полезно также использовать следующие равносильности с логическими константами:
P \/ 1 1, |
(1.41) |
P \/ 0 P, |
(1.42) |
P & 1 P, |
(1.43) |
P & 0 0. |
(1.44) |
Для упрощения формул исчисления высказываний полезны следующие равносильности, называемые правилами склеивания:
(P1 & P2) \/ (P1 &P2) P1, |
(1.45) |
(P1 \/ P2) & (P1 \/P2) P1; |
(1.46) |
правила поглощения:
P1 \/ (P1 & P2) P1, |
(1.47) |
P1 & (P1 \/ P2) P1; |
(1.48) |
формулы Блейка - Порецкого:
(P1&P2)\/(P3&P2) (P1&P2)\/(P3&P2)\/(P1&P3), |
(1.49) |
(P1\/P2) & (P3\/P2) (P1\/P2)&(P3\/P2)&(P1\/P3) |
(1.50) |
и формулы равносильности:
P1 \/ (P1 & P2) P1 \/ P2, |
(1.51) |
P1 & (P1 \/ P2) P1 & P2, |
(1.52) |
P &P 0, |
(1.53) |
P \/P 1, |
(1.54) |
P & P P, |
(1.55) |
P \/ P P. |
(1.56) |
P P. |
(1.57) |
Часто требуется упростить формулу исчисления высказываний, т.е. получить формулу равносильную исходной, но содержащую по возможности меньшее число пропозициональных букв и символов логических операций. Например, дана формула
(X1\/X2\/X3)&(X1\/X2\/X3)&(X1\/X3)&(X2\/X3\/X4)&
(X1\/X2\/X3)& (X1\/ X3\/X4)&(X1\/X2).
Применим к первым двум подформулам (X1\/X2\/X3)&(X1\/X2\/X3) равносильность (1.46), считая P1 = X1\/X3 и P2 = X2, тогда их можно заменить одной подформулой (X1\/X3), что дает более простую формулу, равносильную исходной:
(X1\/X3)&(X1\/X3)(X2\/X3\/X4)&(X1\/X2\/X3)&(X1\/X3\/X4)&(X1\/X2).
К подформулам (X1\/X3) и (X1 \/X3) снова применим равносильность (1.46) и получаем еще более простую формулу, равносильную исходной:
X1& (X2\/X3\/X4)&(X1\/X2\/X3)&(X1\/X3\/X4)& (X1\/X2).
Коммутативность конъюнкции позволяет переписать последнее выражение, а равносильность (1.48) – выполнить дальнейшее упрощение
X1&(X1\/X2\/X3)&(X1\/X3\/X4)& (X1\/X2) & (X2\/X3\/X4)=
X1& (X2\/X3\/X4).
Если в формуле используются операции импликации и эквивалентности, то, как правило, их следует преобразовать с помощью равносильностей (1.36), (1.37) и (1.38).
Например:
((X1X2) \/ (X1X4)) (X1 (X2 \/ X3)) =
(X1 \/ X2 \/X1 \/ X4) (X1 \/ X2 \/ X3) =
(X1 \/ X2 \/ X4) (X1 \/ X2 \/ X3) =
(X1 \/ X2 \/ X4) \/X1 \/ X2 \/ X3 =
(X1 & (X2 \/ X4)) \/X1 \/ X2 \/ X3 =
(X1 &X2 &X4) \/ X1 \/ X2 \/ X3 =
(X2 &X4) \/ X1 \/ X2 \/ X3 =
X1 \/ X2 \/ X3 \/X4.