Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Математическая логика и теория алгоритмов. Учебное пособие-1

.pdf
Скачиваний:
0
Добавлен:
15.08.2026
Размер:
932 Кб
Скачать

Алгебра высказываний

Обозначим высказывания:

A– «Я пойду завтра на первое занятие».

B– «Я встану рано».

C– «Я пойду вечером на танцы».

D– «Я лягу спать поздно».

E– «Я в состоянии обойтись пятью часами сна».

Предложения, приведенные в рассуждении, являются интерпретациями формул:

F1 = (A B) ˄ (C D),

F2 = (D ˄ B) → E,

F2 = E ,

G = A C .

Вопрос о правильности рассуждения можно переформулировать так: следует ли логически формула G из формул F1, F2, F3.

Решение. Предположим противное: существует интерпретация такая, что F1, F2, F3 – истинны, а G – ложно, то есть [ A C] = 0. Отсюда следует,

что [A] = 1, [C] = 1. Из условия [F1] = 1 следует, что [B] = 1, [D] = 1. Из условия [F2] = 1 следует, что [E] = 1 и [E] = 0. Из условия [F3] = 1 следует, что [E] = 1. Полученное противоречие доказывает, что предположение не-

верно и [ A C] = 1. Рассуждение верно.

Определим теперь понятие равносильности формул алгебры высказываний.

Определение. Формулы F и G называются равносильными (F = G), если при любой интерпретации этих формул соответствующие высказывания принимают одинаковые истинностные значения:

I ([F(I)] = [G(I)]).

Выяснить, равносильны ли две формулы, можно построением таблиц истинности для этих формул.

Пример. Доказать равносильность формул X Y = X ˅ Y.

Доказательство:

Построим таблицы истинности для формул X Y и X ˅ Y.

X

Y

X Y

 

 

 

 

 

Y

X

 

 

X

0

0

1

 

1

 

1

0

1

1

 

1

 

1

1

0

0

 

0

 

0

1

1

1

 

0

 

1

11

Глава 1

Сравнив третий и пятый столбцы таблицы, можно сделать вывод о том, что рассматриваемые формулы равносильны.

Упражнение. Докажите равносильность формул:

1)X Y = (X Y) ˅ (Y X);

2)X Y = X Y ;

3)X Y = X Y .

Связи между понятиями «равносильность», «тавтология» и «логическое следование» устанавливается следующими теоремами. Пусть F и G произвольные формулы алгебры высказываний.

Теорема.

(F = G) ↔ (|= (F G)).

Теорема.

(F = G) ↔ ((F => G) ˄ (G => F)).

Теорема. Отношение равносильности на множестве формул является отношением эквивалентности, то есть для любых формул F и G имеем:

1)F = F (отношение рефлексивно);

2)(F = G) → (G = F) (отношение симметрично);

3)((F = G) ˄ (G = H)) → (F = H) (отношение транзитивно).

1.4. Свойства операций с высказываниями

Приведем таблицу основных равносильностей, выражающих свойства операций конъюнкции и дизъюнкции:

 

P ˄ P = P

 

P ˅ P = P

P ˄ Q = Q ˄ P

P ˅ Q = Q ˅ P

(P ˄ Q) ˄ R = P ˄ (Q ˄ R)

(P ˅ Q) ˅ R = P ˅ (Q ˅ R)

P ˄ (Q ˅ R) = (P ˄ Q) ˅ (P ˄ R)

P ˅ (Q ˄ R) = (P ˅ Q) ˄ (P ˅ R)

P ˄ (P ˅ Q) = P

P ˅ (P ˄ Q) = P

 

P ˄ 1 = P

 

P ˅ 0 = P

 

P ˄ 0 = 0

 

P ˅ 1 = 1

 

P

 

= 0

 

 

 

P

 

= 1

 

 

P

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P Q

P

Q

P Q

P

Q

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Здесь 1 означает любую тавтологию, 0 – любое противоречие. В следующей таблице приведены равносильности, выражающие связь между операциями алгебры высказываний, которые полезно использовать для упрощения формул и построения специальных форм, о которых будет идти речь далее.

12

Алгебра высказываний

P Q =

 

Q

 

 

 

 

 

 

P

P Q = P

 

 

Q

P Q = (P Q) ˄ (Q P)

 

 

 

 

 

 

 

 

 

 

 

 

 

P P

 

 

 

 

Пример. Применив равносильные преобразования, упростить фор-

мулу

(P Q) → ( P Q).

Решение.

(P Q) → ( P Q) = (P Q) (Q P) → ( P Q) =

=(P Q)(Q P) (P Q) = (P Q)(Q P) (P Q) =

=P Q Q P P Q = PQ QP P Q =

=(PQ P) (QP Q) = P(Q 1) Q(P 1) = P1 Q1 = P Q.

1.5. Нормальные формы формул алгебры высказываний

Определение. КонъюнктивнымодночленомотпеременныхX1, X2, …, Xn называется конъюнкция каких-либо из этих переменных или их отрицаний.

Определение. Дизъюнктивным одночленом от переменных X1, X2, …, Xn называется дизъюнкция каких-либо из этих переменных или их отрицаний.

Примеры:

1. Конъюнктивными одночленами переменных X1, X2, X3 являются

X2, X2 X1, X1, X2, X3.

2. Дизъюнктивными одночленами этих переменных являются

X1,

X1

X2 ,

X1

 

X2

X3.

Определение. Конъюнктивной нормальной формой (КНФ) формулы F называется формула вида D1 ˄ D2 ˄ … ˄ Dk (k ≥ 1), равносильная F. Здесь Di – дизъюнктивные одночлены переменных, входящих в F.

Определение. Дизъюнктивнойнормальнойформой(ДНФ) формулыF называетсяформулавидаK1 ˅K2 ˅… ˅Km (m ≥ 1), равносильнаяF. ЗдесьKi – конъюнктивные одночлены переменных, входящих в F.

Алгоритм приведения к КНФ (ДНФ):

1. Заменить импликацию и эквиваленцию по формулам

13

Глава 1

X Y = X ˅ Y,

XY = (X Y) (Y X).

2.Довести отрицание до переменных по формулам

X Y = X Y,

XY = X Y.

3.Раскрыть скобки по формулам

(X ˄ Y) ˅ Z = (X ˅ Z) (Y ˅ Z) – (для получения КНФ), (X ˅ Y) ˄ Z = (X ˄ Z) ˅ (Y ˄ Z) – (для получения ДНФ).

4. Упростить полученную формулу, использовав равносильности:

X ˄ X = X, X ˅ X = X, X = X, и т. п.

Примеры: Привести к КНФ формулу (X Y) → Z.

Решение.

(X Y ) Z X Y Z X Y Z (X Y ) Z

= ( X Y ) Z = ( X Z ) (Y Z ).

Привести к ДНФ формулу X Y.

Решение.

X Y = (X Y)(Y X) = ( X ˅ Y)(Y ˅ X)

XY YY X X YX XY YX.

Совершенные нормальные формы Определение. Конъюнктивный (дизъюнктивный) одночлен от пере-

менных X1, X2, …, Xn называется совершенным, если в него входят Xi или Xi для всех i = 1, …, n.

Определение. Конъюнктивная (дизъюнктивная) нормальная форма называется совершенной (СКНФ (СДНФ)), если все её одночлены совершенные.

Алгоритмы получения СКНФ (СДНФ):

1.Формула приводится к КНФ (ДНФ).

2.Если в КНФ какой-либо дизъюнктивный одночлен D не содержит переменную X, то D заменяется равносильной ей формулой

D = D ˅ (X X ) = (D ˅ X) (D ˅X ).

14

Алгебра высказываний

Процесс продолжается до тех пор, пока каждый дизъюнктивный одночлен не станет совершенным.

Если в ДНФ какой-либо конъюнктивный одночлен K не содержит переменную X, то K заменяется равносильной ей формулой:

K = K ˄ (X ˅X ) = K ˄ X ˅ K ˄X .

Процесс продолжается до тех пор, пока каждый конъюнктивный одночлен не станет совершенным.

3. Упрощаем полученную формулу, используя равносильности:

X ˅ X = X, X ˄ X = X.

Приведем примеры использования этих алгоритмов для получения СДНФ и СКНФ.

Получить СДНФ и СКНФ формулы (X Y) → Z.

Решение.

1. Построение СДНФ. Используем ДНФ для данной формулы, полученную ранее:

(X Y) → Z = (X Y ) ˅ Z.

Оба конъюнктивных одночлена K1 = X Y и в ней не являются совершенными, так как в K1 не входит переменная Z, а в K2 не входят переменные X и Y. Поэтому в K1 вводим переменную Z:

X Y ( X Y )(Z Z ) ( X YZ ) ( X Y Z ).

В K2 вводим переменные X и Y:

Z = Z (X ˅X ) (Y ˅Y ) = (Z X ˅ Z X )(Y ˅Y ) =

= ZXY ˅ Z X Y ˅ ZXY ˅ Z X Y .

Подставляем полученные для K1 и K2 формулы в исходную формулу. Приведя «подобные» по формуле X ˅ X = X, получим требуемую

СДНФ:

( X Y ) Z ( X YZ ) ( X Y Z ) ZXY Z XY Z X Y.

2. Построение СКНФ. Приводим исходную формулу к КНФ, используя уже полученную ранее ДНФ:

(X Y) → Z = ( X Y) ˅ Z = (X ˅ Z) (Y ˅ Z).

Оба дизъюнктивных одночлена D1 = X ˅ Z и D2 = Y ˅ Z в ней не являются совершенными, так как в D1 не входит переменная Y, в D2 не входит переменная X. Поэтому в D1 вводим переменную Y, а в D2 – переменную X:

15

Глава 1

X Z X Z YY ( X Z Y )( X Z Y );

Y Z Y Z X X (Y Z X )(Y Z X ).

Подставляем полученные для D1 и D2 формулы в исходную формулу: ( X Y ) Z ( X Z Y )( X Z Y )(Y Z X )(Y Z X ).

Приведя в формуле «подобные», получим требуемую СКНФ:

( X Y ) Z ( X Z Y )(Y Z X )(Y Z X ).

Существование и единственность СДНФ и СКНФ

Обозначим

X

 

X ,

если 1;

 

 

 

если 0.

 

 

 

X ,

Высказывание, полученное в результате интерпретации формулы F(X1, X2, …, Xn), прикоторойпеременныеXi заменяютсявысказываниямиAi, будем обозначать F(A1, A2, …, An). Если при этом [Ai] = αi, то обозначим

[F(A1, A2, …, An)] = F1, α2, …, αn).

Лемма. Для любой формулы F(X1, X2, …, Xn) алгебры высказываний справедливо представление

F(X1, X2 , , Xn )

(F( 1, 2 , , n ) X1 1 Xn n ),

 

( 1, 2 , , n )

где αi {0, 1}.

Доказательство:

Рассмотрим произвольную интерпретацию (A1, A2, …, An) формул, стоящих в левой и правой частях доказываемого равенства. Пусть при этом [Ai] = ξi. Тогда истинностное значение высказывания в левой части F1, ξ2,

…, ξn).

Рассмотрим истинностное значение высказывания в правой части:

 

 

 

(F( 1, 2 , , n ) 1 1

n n )

( 1, 2 , , n )

 

 

 

 

 

(F( 1, 2 , , n ) 1 1

n n )

 

( 1, 2 , , n ) ( 1, 2 , , n )

(F( 1, 2 , , n ) 1 1 n n )

= (F1, ξ2, …, ξn) ˄ 1 ˄ … ˄ 1) ˅ 0 = F1, ξ2, …, ξn).

16

Алгебра высказываний

Здесь воспользовались равенствами

 

 

 

1,

если ;

 

 

если .

 

 

 

0,

Такимобразом, убедилисьв равносильности формулвлевой и правой части доказываемого представления. Лемма доказана.

Теорема. Для любой формулы F(X1, X2, …, Xn) алгебры высказываний, не являющейся противоречием, существует и единственна СДНФ:

F(X1, X2 , , Xn ) =

 

(X1 1 Xn n ).

 

F ( 1, 2 , , n ) 1

Доказательство:

1. Существование СДНФ следует из леммы:

F(X1, X2 , , Xn )

 

(F( 1, 2 , , n ) X1 1 Xn n )

 

( 1, 2 , , n )

 

 

(X1 1 Xn n ).

F( 1, 2 , , n ) 1

2.Докажем единственность полученной СДНФ. Предположим существование двух различных СДНФ для формулы F, то есть пусть

F = K1 ˅ K2 ˅ … ˅ Kp.

Если K1 X1 1 X2 2 Xn n , топриинтерпретацииI = (A1, A2, …, An) формулы F такой, что [Xi] = αi, имеем

[K1] 1 1 2 2 n n 1.

Так как отношение равносильности транзитивно, то

K1 ˅ K2 ˅ … ˅ Kp = K1' K2' Kq' .

и при данной интерпретации среди одночленов K 'j должен быть такой,

который обращается в истинное высказывание. Пусть это будет

K 'j X1 1 X2 2 Xn n .

Таким образом, 11 22 nn 1, откуда следуют равенства αi = βi для всех i = 1, 2, …, n. Получаем

K 'j X1 1 X2 2 Xn n K1.

17

Глава 1

Аналогично показывается, что среди конъюнкций K 'j есть K2 и так до Kp. И наоборот, среди конъюнкций Ki есть все конъюнкции K 'j .

Таким образом, доказано, что количество членов в обеих СДНФ совпадает и СДНФ тоже совпадают (с точностью до перестановки их конъюнктивных одночленов). Теорема доказана.

Аналогично доказывается теорема о существовании и единственности СКНФ.

Теорема. Для любой формулы F(X1, X2, …, Xn) алгебры высказываний, не являющейся тавтологией, существует и единственна СКНФ:

 

 

 

 

 

 

 

 

 

F( X1, X2 , , Xn )

( X1 1

X2 2 Xn n ).

 

F ( 1, , n ) 0

 

 

 

 

 

 

 

Алгоритмы построения СДНФ и СКНФ формул:

1.Составляем таблицу истинности данной формулы.

2.Записываем СДНФ формулы

F(X1, X2 , , Xn )

 

(X1 1 Xn n ).

 

F ( 1, 2 , , n ) 1

Записываем СКНФ формулы

 

 

 

 

 

 

 

 

 

F( X1, X2 , , Xn )

( X1 1

X2 2 Xn n ).

 

F ( 1, , n ) 0

 

 

 

 

 

 

 

Пример. Построить СДНФ и СКНФ формулы

F(X, Y) = (X Y) ↔ X.

Решение. Составим таблицу истинности для данной формулы.

X

Y

X Y

(X Y) ↔ X

0

0

1

0

0

1

1

0

1

0

0

0

1

1

1

1

1. Запишем СДНФ формулы

F(X ,Y )

(X 1 Y 2 ) X1 Y1 X Y.

F( 1, 2 ) 1

2.Запишем СКНФ формулы

18

Алгебра высказываний

 

 

 

 

 

 

) (X

 

Y

 

)(X

 

Y1)(X 1 Y

 

)

F(X ,Y )

(X

1

Y

2

0

0

0

0

 

F ( 1, 2 )=0

= (X ˅ Y) (X ˅Y ) ( X ˅ Y).

Замечание. Для формулы F от n переменных сумма количества компонент в СДНФ и количества компонент в СКНФ равна 2n.

Задачи к главе 1. Алгебра высказываний

1.Какие из следующих предложений являются высказываниями?Москва – столица России.

2 + 2 – 5.

В романе Пушкина «Евгений Онегин» 136245 букв.Да здравствуют музы!

Сегодня плохая погода.

2.Определите значения истинности следующих высказываний:7 – простое число и 9 – простое число;число 2 четное или это число простое;

2·2 = 4, и 2·2 ≤ 5, и 2·2 ≥ 4;если 3·3 = 9, то 7 + 4 = 11;

неверно, что 6 > 3;неверно, что все простые числа нечетны;

неверно, что некоторые грибы несъедобны;15 делится на 5 тогда и только тогда, когда 12 ≤ 4.

3.Пусть через A обозначено высказывание «9 делится на 3», через B

высказывание «8 делится на 3». Определите значения истинности следующих высказываний:

A B, AB, A B , AB ,

A˄B , (A ˅ B) ↔ B, B → ( A˅ B), (A ˄B ) →A .

4. Следующие составные высказывания расчлените на простые и запишите символически, введя буквенные обозначения для простых составляющих:

Если число делится на 2 и не делится на 3, то оно не делится на 6.

Произведение трех чисел равно нулю тогда и только тогда, когда одно из них равно нулю.

Если какие-либо два из трех векторов a,b,c коллинеарны, то их

смешанное произведение равно нулю.

Логарифм некоторого положительного числа будет положительным, если основание логарифма и логарифмируемое число будут больше 1

19

Глава 1

или если основание логарифма и логарифмируемое число будут заключены между 0 и 1.

5. Определите истинностное значение последнего высказывания, исходя из истинностных значений предыдущих высказываний:

[A B] = 1, [A B] = 0, [B A] =

[A ˄ B] = 1, [A B] = 0, [B A] =

[A ˅ B] = 1, [A B] = 1, [ B A] =

[A B] = 1, [(A B) ˄ ( AB )] =

6.Для каждого из приведенных высказываний определите, достаточно ли приведенных сведений, чтобы установить его истинностное значение:

A ˄ (B C), [B C] = 0; A ˅ (B C), [B] = 0;

(A ˄ B) → (A ˅ C), [A] = 1; (A B) ˅ (A ˄ C), [A] = 0.

7.Существуют ли три таких высказывания A, B, C, чтобы одновременно выполнялись для них следующие условия:

[A ˄ B] = 1, [A ˄ C] = 0, [A ˄ B ˄C ] = 0;

[A ˄B ] = 1, [B ˅ C] = 1, [ B A ˅ C] = 0; [B ˅ C] = 0, [C A] = 0, [A B] = 0;

[B A] = 1, [A ˅ C] = 0, [A B ˄C ] = 0;

8. Составьте таблицы истинности для следующих формул и укажите тип формулы:

(P Q) → ((P Q ) →P ); P ˄ (Q ˄ ( P ˅Q ));

((P ˅Q ) → Q) ˄ ( P ˅ Q).

9. Докажите, что следующие формулы выполнимы, не составляя для них таблиц истинности:

(P Q) → (Q P);

P Q R ˄ Q;

((P Q) ˄ (Q R)) → (P ˅ R).

10. Докажите, что следующие формулы опровержимы, не составляя для них таблиц истинности:

G F; ((X → (Y ˄ Z)) → (Y X ) →Y ; ((P Q) ˄ (R Q ) ˄ (P ˅ Q) → R.

11. Докажите, что следующие формулы являются тавтологиями:

P → (P ˅ Q);

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]