Лекция 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 AB 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 Высказывание "А равносильно В" называется эквивалентностью высказываний А и В и обозначается: AB AB A~ B Эквивалентность Эквивалентность задается таблицей истинности: A B AB 0 0 1 0 1 0 1 0 0 1 1 1 Импликация Из высказываний А и В можно образовать высказывание "если А, то В". Например, если две прямые параллельны третьей, то они параллельны между собой. Синонимами служат следующие фразы: "из А следует В", "В является следствием А", "А влечет В", "А достаточное условие для В", "В необходимое условие для А" и т.п. Определение 5 Высказывание "если А, то В" называется импликацией высказываний А и В и обозначается: AB A B В этой ситуации высказывание А называется посылкой, а В – заключением. Импликация Задается импликация таблицей истинности: A B AB 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) если посылка ложна, то импликация всегда истинна, независимо от заключения, то есть 0B 1 2) если заключение истинно, то импликация также истинна, независимо от посылки, то есть A11 Или обобщающая фраза: “из истины ложь не следует” 1 0 0 Пример Формализовать высказывание: F=«Хлеба уцелеют тогда и только тогда, когда будут вырыты ирригационные канавы; если хлеба не уцелеют, то фермеры обанкротятся и оставят фермы.» Решение Пусть А=«хлеба уцелеют» B=«будут вырыты ирригационные канавы» С=«фермеры обанкротятся» D=«фермеры оставят фермы». Тогда F ( A B) ( A C D) Пример Построить таблицу истинности для высказывания (A C ) B A A B C C AC 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 BA F Определение 6 Переменная А, принимающая два значения – 0 или 1, называется логической (или булевой) переменной. Обозначаться логические переменные будут заглавными латинскими буквами с индексами или без них: A, B , X ,Y , A2 ,C3 ,... Порядок действий 1)Однотипные операции выполняются в порядке их следования. Например, A BC 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 Другими словами, два высказывания равны, если у них совпадают таблицы истинности. Примеры AB AB Доказательство A B AB 0 0 1 1 0 1 1 1 1 0 0 0 1 1 1 1 AB Основные логические тождества 1) A A A Идемпотентные законы: 2) A A A 3) A B BA 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) AB 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 Тождества, содержащие константы: A0 A A 1 1 A0 0 A 1 A A0 A A11 0 A1 1 A A A0 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 AC AC 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 , то Этьен - убийца