Лекция 1 Тема: Алгебра высказываний.

advertisement
Лекция 1
Тема: Алгебра
высказываний.
Алгебра высказываний
1. Основные понятия. Логические операции
Под высказыванием мы понимаем предложение русского языка, о котором
можно сказать, истинно оно или ложно.
Высказывания мы будем обозначать заглавными буквами латинского алфавита,
возможно с индексами: A, B , X ,Y , C1, A4 ,...
Если высказывание А истинно, мы будем писать А=1; если высказывание А
ложно, мы будем писать А=0.
Примеры
1. А=«два умножить на два равно семи»
2. В=«два плюс два равно 4»
3. С=«если сентябрь – весенний месяц, то 5*5=25»
4.D=«число делится на 3 тогда и только тогда, когда сумма его цифр делится на 3»
5.E=«если после четверга следует пятница, то в году 13 месяцев»
A=0
B=1
C=?
D=1
E=?
Операции над высказываниями.
Отрицание
Определение 1
Высказывание "неверно, что А" называется отрицанием А и обозначается
A
Например, пусть A="2*2=5", тогда
A
= " неверно, что 2*2=5"
Задается действие отрицания с помощью таблицы истинности:
A
A
0
1
1
0
Конъюнкция
Из высказываний А, В можно образовать высказывание "А и В".
Например, "2*2=4 и 5+3=9"
Определение 2
Высказывание "А и В" называется конъюнкцией (или логическим умножением)
высказываний А и В.
Конъюнкция имеет много обозначений:
A  B A& B A  B AB
Конъюнкция задается с помощью таблицы истинности:
A B AB
0
0
0
0
1
0
1
0
0
1
1
1
Дизъюнкция
Из высказываний А, В можно образовать высказывание "А или В".
Например, "2*2=4 или 5+3=9".
Определение 3
Высказывание "А или В" называется дизъюнкцией (или логическим сложением)
высказываний А и В
и обозначается A v B
Дизъюнкция задается с помощью таблицы истинности:
A
B
AvB
0
0
0
0
1
1
1
0
1
1
1
1
Эквивалентность
Из высказываний А, В можно образовать следующее высказывание:
"А тогда и только тогда, когда В".
Например, треугольник является равносторонним тогда и только тогда, когда все
его углы равны между собой.
Синонимами служат фразы:
"А в том и только в том случае, когда В",
"А необходимо и достаточно для того, чтобы выполнялось В",
"А равносильно В",
"А эквивалентно B".
Определение 4
Высказывание "А равносильно В" называется эквивалентностью высказываний
А и В и обозначается:
AB
AB
A~ B
Эквивалентность
Эквивалентность задается таблицей истинности:
A
B
AB
0
0
1
0
1
0
1
0
0
1
1
1
Импликация
Из высказываний А и В можно образовать высказывание "если А, то В".
Например, если две прямые параллельны третьей, то они параллельны между
собой.
Синонимами служат следующие фразы:
"из А следует В",
"В является следствием А",
"А влечет В",
"А достаточное условие для В",
"В необходимое условие для А" и т.п.
Определение 5
Высказывание "если А, то В" называется импликацией высказываний А и В
и обозначается:
AB
A B
В этой ситуации высказывание А называется посылкой, а В – заключением.
Импликация
Задается импликация таблицей истинности:
A
B AB
0
0
1
0
1
1
1
0
0
1
1
1
Примеры
1. D="если сегодня среда, то завтра будет четверг"
D=1
2. Y="если после четверга следует пятница, то после пятницы следует воскресенье“
Y=0
3. Х="если два плюс два равно пяти, то три плюс два равно десяти“
X=1
4. Z="если 1+1=3, то после пятницы следует суббота“
Z=1
Импликация
Сделаем замечания, которые могут прояснить суть определения таблицы
истинности для импликации и, возможно, помогут получше ее запомнить:
1) если посылка ложна, то импликация всегда истинна, независимо от
заключения, то есть
0B 1
2) если заключение истинно, то импликация также истинна, независимо от
посылки, то есть
A11
Или обобщающая фраза: “из истины ложь не следует”
1 0  0
Пример
Формализовать высказывание:
F=«Хлеба уцелеют тогда и только тогда, когда будут
вырыты ирригационные канавы; если хлеба не
уцелеют, то фермеры обанкротятся и оставят фермы.»
Решение
Пусть
А=«хлеба уцелеют»
B=«будут вырыты ирригационные канавы»
С=«фермеры обанкротятся»
D=«фермеры оставят фермы».
Тогда
F  ( A  B)  ( A  C  D)
Пример
Построить таблицу истинности для высказывания
(A C )  B  A
A
B
C
C
AC
0
0
0
1
1
1
0
0
0
0
1
0
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
0
0
0
1
1
1
0
0
1
1
0
1
1
1
0
1
0
1
0
1
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
0
B A BA
F
Определение 6
Переменная А, принимающая два значения – 0 или 1, называется
логической (или булевой) переменной.
Обозначаться логические переменные будут заглавными
латинскими буквами с индексами или без них:
A, B , X ,Y , A2 ,C3 ,...
Порядок действий
1)Однотипные операции выполняются в порядке их следования.
Например,
A BC D
 A  B  C  D
2) Отрицание подразумевает скобки.
3) Конъюнкция связывает сильнее, чем дизъюнкция.
Например,
A  B  C  A   B  C
4) Дизъюнкция связывает сильнее, чем импликация.
Например,
A  B  C  D   A  B  C   D
5) Импликация связывает сильнее, чем эквивалентность.
Например,
A  B  C  A   B  C
Примеры
• 1)Избавиться от лишних скобок
(( A  ( B  C))  ( AB  C))
• Ответ A  B  C  ( AB  C)
• 2)Расставить порядок действий
4
A( B  C)  AC  B  C
5
1
7
2
3
6
Если высказывание F построено из логических переменных
A1 , A2 ,... , An , то будем обозначать это высказывание:
F  F  A1 , A2 ,..., An 
Теорема
n
Наборов длины n из 0 и 1 существует 2
Определение 2
Таблица истинности для высказывания F  A1 , A2 ,..., An  имеет вид
A1
A2 … An-1 An
F(A1, A2,…, An-1, An)
0
0
…
0
0
F(0,0,…,0,0)
0
0
…
0
1
F(0,0,…,0,1)
…
… …
…
…
…
1
1
…
1
0
F(1,1,…,1,0)
1
1
…
1
1
F(1,1,…,1,1)
2. Равносильные высказывания
Определение 1
Высказывания F(A1,A2,…,An) и G(A1,A2,…,An) называются
равносильными (или просто равными), если для любого набора
 1 , 2 ,..., n 
Обозначим
имеет место равенство:
F  1 , 2 ,..., n   G 1 , 2 ,..., n .
F  A1 , A2 ,..., An   G A1 , A2 ,..., An 
Другими словами, два высказывания равны, если у них совпадают
таблицы истинности.
Примеры
AB  AB
Доказательство
A
B AB
0
0
1
1
0
1
1
1
1
0
0
0
1
1
1
1
AB
Основные логические тождества
1) A  A  A
Идемпотентные законы:
2) A  A  A
3) A  B
BA
4) A  B  B  A
5) A  B  B  A
Коммутативные законы:
Ассоциативные законы:
6) A   B  C   A  B  C
7) A   B  C   A  B  C
8) A  B  C    A  B   C
Дистрибутивные законы:
9) AB  C   AB  AC
10) A  BC    A  B A  C 
Законы Моргана:
11) A  B  A  B
12) A  B  A  B
Закон двойного отрицания:
13) A  A
Закон противоречия:
14) A  A  0
15)
A A 1
Закон исключенного третьего:
Без названия:
16)
A  B  AB  A  B
17)
A B  A B
Законы поглощения:
16) A  AB  A
Доказательство
A  AB  A  (1  B)  A  1  A
17) A  AB  A  B
Доказательство
A  AB  ( A  A)( A  B)  1  ( A  B)  A  B
18)
A  A  B  AB
19) A  ( A  B)  A
Тождества, содержащие константы:
A0  A
A 1  1
A0  0
A 1  A
A0 A
A11
0 A1
1 A  A
A0 A
A 1 A
3. Дизъюнктивные нормальные формы (ДНФ)
Определение 1
Конъюнкция логических переменных
элементарной конъюнкцией.
или
их
отрицаний
называется
Пример
AC, AB, A  C , B C, A BC, B  C , A
Определение 2
Высказывание называется дизъюнктивной нормальной формой (ДНФ), если оно
представляет собою дизъюнкцию элементарных конъюнкций.
Общий вид ДНФ: K1  K2 ... Km
Примеры
AB  C
A  B  C 
A
A B
AC
AC
ABC  BC  A
Теорема
Любое высказывание приводимо к ДНФ.
Схема приведения высказывания к ДНФ
1) Избавиться от импликации и эквивалентности, используя законы
16), 17)
2) Донести отрицания до переменных, используя законы Моргана.
3) Раскрыть скобки, используя дистрибутивные законы.
4) Упростить полученное высказывание.
Пример
Привести высказывание к ДНФ
F  AC  B  A  C B 
 AC  B  A  C B 



 AC  B  A  C B  AC  B  A  C B 



 A  C B(C  B)  ACB  A(C  B) 
 A  C  B  A  C B  ACB  AC B 


 A  C BC  C B B  ABC C  ABCB 
 A  C B  BC 
 A C
 A  C B  ABC 
 A  C ( B  B) 
4.Построение высказываний по таблице
истинности. Совершенные дизъюнктивные
нормальные формы (СДНФ)
Определение 1
Пусть X   A1 , A2 ,..., An  – некоторое множество логических
переменных. Элементарная конъюнкция, в которую входят все
логические переменные, называется полной элементарной
конъюнкцией относительно множества X .
Пример
X   A, B, C
A, AC , ABC , B AC , B AC , ABC
СДНФ
Определение 2
• Дизъюнктивная нормальная форма называется совершенной
(СДНФ), если все составляющие ее элементарные
конъюнкции являются полными.
X   A, B, C
Примеры
AB  BCA  B
ABC
ABC  ABC  AB
ABC  ABC  ABC
ABC  ABC  ABC
Приведение высказывания к СДНФ
Теорема
Высказывание, не являющееся тождественно ложным, приводимо к
СДНФ.
Правило приведения высказывания к СДНФ
• СДНФ содержит столько полных элементарных конъюнкций, сколько
единиц в последнем столбце таблице истинности.
• Вид каждой полной элементарной определяется соответствующим
набором значений переменных, а именно, если переменная принимает
значение 0, то над ней в полной элементарной конъюнкцией ставится
отрицание, иначе – отрицание не ставится.
Пример
• Построить по таблице истинности СДНФ
F
A
B
C
0
0
0
1
0
0
1
0
0
1
0
1
0
1
1
0
1
0
0
0
1
0
1
0
1
1
0
1
1
1
1
1
F  ABC  ABC  ABC  ABC
Задача
• «Вернувшись домой, Мегрэ позвонил на набережную Орфевр.
• - Говорит Мегрэ. Есть новости?
• - Да, шеф. Поступили сообщения от инспекторов.
• Торранс установил, что если Франсуа был пьян, то либо Этьен
убийца, либо Франсуа лжет.
• Жуссье считает, что или Этьен убийца, или Франсуа не был пьян
и убийство произошло после полуночи.
• Инспектор Люка просил передать Вам, что если убийство
произошло после полуночи, то либо Этьен убийца, либо Франсуа
лжет.
• Затем звонила …
• - Все. Спасибо. Этого достаточно. – Комиссар положил трубку.
Он знал, что трезвый Франсуа никогда не лжет. Теперь он знал
все.»
• Что знал Мегрэ?
Решение задачи
•
•
•
•
•
•
Пусть
P=« Франсуа был пьян»
L=«Франсуа лжет»
I=«Этьен убийца»
U=«Убийство произошло после полуночи»
Тогда получим высказывание
P  I  L(I  PU )(U  I  L)  1
P  I  L(I  PU )(U  I  L) 
 I  ( P  L) PU (U  L) 
 I  PUL
•Так как
PUL  0 , то Этьен - убийца
Download