Выберете лекцию

 

Лекция №1

Лекция №2

Лекция №3

Лекция №4

Лекция №5

Лекция №6

Лекция №7

Лекция №8

Лекция №9

Лекция №10

Лекция №11

Лекция №12

Лекция №13

Лекция №14

Лекция №15

Лекция №16

Литература

 

Лекция 3. Логика высказываний

Математическая логика рассматривает языки, позволяющие сформировать символьное представление (систему формальных обозначений) для рассуждений, встречающихся как в математике, так и при описании реальных ситуаций.

Изучение математической логики начинается с логики или исчисления высказываний.

Исчисление высказываний (ИВ) изучает предложения которые могут быть или истинными, или ложными. Рассмотрим три истинных утверждения:

1). «За четверть часа до своей смерти он был еще жив».

2). « Если верно, что когда идет дождь, то дорога мокрая, тогда справедливо если дорога сухая, то дождя нет».

3). «Земля вертится».

Чтобы убедится в правильности достаточно поменять смысл слов т.е. это предложение является истинной языка. Чтобы принять 2-е предложение достаточно поменять смысл некоторых слов, а также знать, что фрагменты фразы: «Идет дождь» и «дорога мокрая» являются высказываниями, которые могут быть или истинными, или ложными. Второе предложение останется истинным если заменить 2 высказывания другими. Третье предложение является истинной языка, т.е. выражает некоторый факт.

Рассмотрим словарь исчисления, который состоит из бесконечно  счетного  множества  высказываний,  обозначенных строчными буквами из логических связок. Высказывания представляют собой предложения которые могут быть или истинными, или ложными. Синтаксис логики высказываний безотносителен к ее связи с фразами естественного языка. Словарь исчисления позволяет строить сложные или составные высказывания из исходных, соединяя последние связками. Правила построения описывает те выражения, которые являются объектами языка, фразами, т.о. фразы- составное высказывание построенное по определенным правилам:

1).Любое высказывание является формулой.

2). Если X и Y формулы, то X, X&Y, XY, X®Y, X«Y являются формулами.

3). Формулы однозначно получаются с помощью двух предыдущих правил.

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

Для определения истинности составных формул можно, так же как в булевой алгебре, использовать таблицы истинности. При этом каждое высказывание, или иначе атом, имеют одно из двух истинностных значений: «истинна» (И или 1) и «ложь» - (Л или 0). Истинностное значение любой составной формулы можно вычислить, исходя из истинностных значений атомов. Приписывание истинностных значений16 формулам называется интерпретацией формулы.

В качестве примера рассмотрим истинностную  таблицу6 формул X&Y, XY, X®Y.

X

Y

X&Y

XY

X®Y

0

0

0

0

1

0

1

0

1

1

1

0

0

1

0

1

1

1

1

1

Пусть дана формула G=X&Y. Атомами этой формулы являются X и Y. Формула G истинна, если атомам X и Y приписаны значения 1(И) и 1(И) соответственно. Приписывание7 истинностных значений {1, 1} атомам {X, Y} соответственно называется интерпретацией формулы G. Так как каждому из атомов можно приписать 1 или 0, то имеется 22=4 интерпретаций формулы G. Таблица, в которой указаны истинностные значения формулы G при всевозможных истинностных значениях атомов, называется истинностной таблицей формулы G.

Говорят, что формула G истинна при любой интерпретации, тогда и только тогда, когда G получает значение И в этой интерпретации; в противном случае говорят, что G ложна при этой интерпретации. Если формула G12 истинна при всех ее интерпретациях, то такую формулу называют общезначимой формулой или тавтологией. Формула G необщезначима тогда и только тогда, когда она не является общезначимой.

Формула является противоречивой17 тогда и только тогда, когда она ложна при всех своих интерпретациях. Говорят, что формула непротиворечива (или выполнима), тогда и только тогда, когда она не является противоречивой.

Для преобразования формул18 используются эквивалентные формулы. Две формулы F и G эквивалентны тогда и только тогда, когда истинностные значения F и G совпадают при каждой интерпретации F и G. К таким формулам относятся коммуникативные, ассоциативные, дистрибутивные законы, а также законы де Моргана. Пусть 1 обозначает формулу, которая всегда истинна, а 0 - формулу, которая всегда ложна. Тогда мы имеем набор эквивалентных формул, приведенных в таблице 1, где F, H, G - формулы.

Таблица 15

1. FG=(FG)&(GF)                                       2. FG=FG

3. FG= GF                                                           4. F&G=G&F

5. (FG)H=F(GH)                                          6. (F&G)& H=F&(G&H)

7. F(G&H)=(FG)&(FH)                                  8. F&(GH)=(F&G)(F&H)

9. F0=F                                                                    10. F&1=F

11. F1=1                                                                   12. F&0=0

13. FF=1                                                               14.  F&F=0

15. (F)=F

16. (FG)=F&G                                             17. (F&G)= FG

18. FF=1                                                               19. F&F=0

 

Важными понятиями в логике являются понятия нормальных форм. Так, формула F8 находится в конъюнктивной форме, тогда и только тогда, когда F имеет вид F1&F2&...&Fn, n1, где каждая из F1, F2,..., Fn - дизъюнкция атомов или их отрицаний. Формула F9 находится в дизъюнктивной форме, тогда и только тогда, когда F имеет вид F1F2...Fn, n1, где каждая из F1, F2,..., Fn - конъюнкция атомов или их отрицаний.

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

Пример 1. Пусть необходимо получить дизъюнктивную нормальную форму для формулы (PQ)R.

Шаг 1. Используя таблицу 1 преобразуем исходную формулу в эквивалентную, т.е. (PQ)R=(PQ)Q. На этом шаге мы дважды использовали правило 2.

Шаг 2. Применяя к полученной формуле правило 16 из таблицы 1 получим:

(PQ)Q==(P&(Q))Q.

Шаг 3. Используя правило 15 будем иметь требуемую нормальную форму: (P&(Q))Q=(P&Q)Q.

Пример 2. Получить конъюнктивную нормальную форму для формулы

(P& (QR))S.

Шаг 1. Как и в предыдущем примере вначале используем  правило 2. В результате получим: (P& (QR))S= (P& (QR)) S.

Шаг 2. К полученной, в результате преобразований, формуле применим правило 17:

 (P& (QR)) S=( P (QR)) S.

Шаг 3. Используем правило 16: ( P (QR))S=( P(Q&R))S.

Шаг 4. Применяем правило 15: ( P((Q)&R))S=( P(Q&R))S.

Шаг 5. Для получения конъюнктивной нормальной формы применим правило 7:

( P(Q&R)) S=(PS)&( (Q&R) S).

При использовании рассуждений часто нужно решить, следует ли одно утверждение из нескольких других. Это приводит к понятию «логического следствия». Пусть даны формулы F1, F2,..., Fn и формула G. Говорят, что G есть логическое следствие формул F1, F2,..., Fn,, тогда и только тогда, когда для всякой интерпретации I, в которой F1&F2&...&Fn истинна, G также истинна.

На практике для вывода логических следствий из некоторого множества формул (посылок) используют следующие две теоремы, которые приводим без доказательства.

Теорема 110. Пусть даны формулы F1, F2,..., Fn и формула G. Тогда G есть логическое следствие F1, F2,..., Fn,, тогда и только тогда, когда формула ((F1&F2&...&Fn)G) общезначима.

Теорема 211. Пусть даны формулы F1, F2,..., Fn и формула G. Тогда G есть логическое следствие F1, F2,..., Fn,, тогда и только тогда, когда формула (F1&F2&...&Fn&G) противоречива.

Если формула G является логическим следствием формул F1, F2,…, Fn, то формула ((F1...Fn)G) называется теоремой, а G - заключением теоремы.

Для того, чтобы показать, что G является логическим следствием F=F1, F2,..., Fn можно использовать несколько методов25.

1. Метод истинностных таблиц. В этом случае необходимо показать, что G истинна в каждой интерпретации F.

2. На основе теоремы 1. Это делается путем расширения истинностной таблицы, позволяющей определить истинностные значения формулы FG.

3. На основе теоремы 2, доказывая общезначимость формулы FG путем преобразования ее в конъюнктивную нормальную форму.

4. На основе теоремы 2. В этом случае надо показать, что формула F&G противоречива. Это можно сделать либо используя истинностную таблицу, либо посредством преобразования F&G в дизъюнктивную нормальную форму.

Пример 3. Рассмотрим формулы F1:(PQ); F2:Q, G:P. Покажем различными способами, что G является логическим следствием F1 и F2.

Способ 1. На основе истинностной таблицы6 необходимо показать, что G истинна в каждой интерпретации формулы (PQ)&Q. Построим истинностную таблицу для этой формулы и формулы G.

P

Q

PQ

Q

(PQ)&Q

P

1

1

1

0

0

0

1

0

0

1

0

0

0

1

1

0

0

1

0

0

1

1

1

1

Из таблицы видно, что существует только одна истинностная интерпретация7 для формулы (PQ)&Q, а именно {P, Q}. Заключение G истинно в этой интерпретации. Отсюда заключаем, что P есть логическое следствие F1 и F2.

Способ 2. Расширим предыдущую таблицу посредством вычисления истинностных значений формулы ((PQ)&Q)P.

P

Q

PQ

Q

(PQ)&Q

P

((PQ)&Q)P

1

1

1

0

0

0

1

1

0

0

1

0

0

1

0

1

1

0

0

1

1

0

0

1

1

1

1

1

Данная таблица показывает, что формула ((PQ)&Q)P истинна при всех интерпретациях, и следовательно она общезначима. Согласно теореме 110 P есть логическое следствие F1 и F2.

Способ 3. Необходимо доказать общезначимость формулы ((PQ)&Q)P путем преобразования ее в конъюнктивную нормальную форму8.

Шаг 1. В соответствии с правилом 2 таблицы 15 получим:

((PQ)&Q)P=((PQ)&Q)P=((PQ)&Q)P.

Шаг 2. По правилу 8 таблицы 1 имеем:

((PQ)&Q))P=((P&Q)(Q&Q))P.

Шаг 3. В соответствии с правилом 19 таблицы 1 преобразуем последнюю формулу:

((P&Q)(Q&Q))P==((P&Q)0)P.

Шаг 4. Преобразуем последнюю формулу по правилу 9:

((P&Q)0)P=(P&Q)P.

Шаг 5. Применим правила 16 и 15 таблицы 1:

(P&Q)P=(PQ)P=(PQ) P.

Шаг 6. Используя правила 5 и 18 таблицы 1 будем иметь:

(PQ) P= Q(PP)=Q1.

Шаг 7. В соответствии с правилом 11 таблицы 1 получим: Q1=1.

Отсюда следует, что формула ((PQ)&Q)P общезначима.

Способ 4. Докажем противоречивость формулы (PQ)&Q&P, в соответствии с теоремой 211, путем преобразования ее в дизъюнктивную нормальную форму9.

Шаг 1. По правилу 2 таблицы 15 будем иметь:

(PQ)&Q&P=(PQ)&Q&P.

Шаг 2. Используя правило 8 таблицы 1 получим:

(PQ)&Q&P=(P&Q&P)( Q&Q&P).

Шаг 3. Применяя правило 19 таблицы 1 окончательно получим:

(P&Q&P)( Q&Q&P)=00=0.

Следовательно, формула (PQ)&Q&P противоречива.

В логике атом или отрицание атома называют литерой. Часто для удобства множество литер рассматривается как синоним дизъюнкта. Например, PQR={P, Q, R}. Когда дизъюнкт не содержит никаких литер, его называют пустым дизъюнктом. Пустой дизъюнкт будем обозначать через . Для проверки невыполнимости множества дизъюнктов используется следующий метод. Пусть S - множество дизъюнктов. Тогда возможно применение следующих правил.

1. Правило тавтологии12. Вычеркиваются все тавтологичные дизъюнкты из S. Оставшееся множество S1 невыполнимо тогда и только тогда, когда и S невыполнимо.

2. Правило однолитерных дизъюнктов. Если существует единичный дизъюнкт L в S, то S1 получается из S вычеркиванием тех дизъюнктов в S, которые содержат L. Если S1 пусто, то S выполнимо. В противном случае строят множество S2, выбрасывая из S1 вхождения L. S2 невыполнимо тогда и только тогда, когда и S невыполнимо. Если L - единичный дизъюнкт, то при вычеркивании L он превратится в .

3. Правило чистых литер. Литера в основном дизъюнкте из S называется чистой в S тогда и только тогда, когда литера L не появится ни в каком основном дизъюнкте из S. Если литера L чистая в S, то вычеркиваются все основные дизъюнкты, содержащие L. Оставшееся множество S невыполнимо тогда и только тогда, когда и S невыполнимо.

4. Правило расщепления. Если множество S представимо в виде (A1L)&...&(AmL)&...&(B1L)&...&(BnL)&R, где Ai, Bi, R свободны от L и L, то получим множества расщепления S1=A1&...&Am и S2=B1&...Bn&R. При этом S невыполнимо тогда и только тогда, когда (S1S2) невыполнимо.

Мощным правилом вывода в логике является метод резолюций. Основная идея метода состоит в том, чтобы проверить, содержит ли множество предложений S пустой дизъюнкт. Если S содержит пустой дизъюнкт, то S невыполнимо. Если же S не содержит пустой дизъюнкт, то осуществляется попытка его получения из S. В логике высказываний данный метод имеет более простой вид.

Пусть даны дизъюнкты: C1: P и C2: PQ. Используя правило однолитерных дизъюнктов, из C1 и C2 можно получить дизъюнкт C3: Q. Правило однолитерных необходимо для того, чтобы определить имеется ли контрарная пара литеры (например, P) в C1  и литеры (например,  P) в C2. Если такая пара имеется, то она вычеркивается из C1 и C2 для того, чтобы получить дизъюнкт C3, который есть Q. Контрарность означает следующее: если A - атом, то две литеры A и A контрарны друг другу, а множество { A, A } называется контрарной парой.

 Обобщением данного правило является правило резолюций: для любых двух дизъюнктов C1 и C2, если существует литера L1 в C1, которая контрарна литере L2 в C2, то, вычеркнув L1 и L2 из C1 и C2 соответственно, построим дизъюнкцию оставшихся дизъюнктов. Построенный дизъюнкт называется резольвентой C1 и C2. Важным свойством резольвенты является то, что любая резольвента двух дизъюнктов C1 и C2 есть логическое следствие C1 и C2. Суть вывода на основе резольвенты заключается в получении пустого дизъюнкта из S.

Пример 4. Рассмотрим следующие дизъюнкты: C1: PR и C2: PQ.

Дизъюнкт C1 имеет литеру P, которая контрарна литере P в C2. Следовательно, вычеркивая P и P из C1  и C2 соответственно и составляя дизъюнкцию оставшихся дизъюнктов R и Q получим резольвенту RQ.

Любая резольвента двух дизъюнктов Cи C2 есть логической следствие этих дизъюнктов. Пусть S - множество дизъюнктов. Резолюцонным выводом C из S называется такая конечная последовательность C1, C2,…Ck дизъюнктов, что каждый Ci или принадлежит S или является резольвентой дизъюнктов, предшествующих Ci, причем Ck=C. Вывод  из S называется опровержением или доказательством невыполнимости S.

Пример 5. Рассмотрим множество S.

S=

Из (1) и (2) получим резольвенту P - (4). Из (4) и (3) получаем резольвенту , которая и есть логической следствие S. Следовательно, S невыполнимо.

Таким образом исходными элементами в логике высказываний являются атомы. Из атомов можно построить формулы, которые используются для того, чтобы выразить различные предложения и умозаключения. В простой логике атом представляет повествовательное предложение, которое может быть или истинно или ложно, но не то и другое вместе. Атом рассматривается как единое целое. Его структура и состав не анализируются. Однако есть много предложений, которые не могут быть рассмотрены таким простым способом. Например, рассмотрим следующее умозаключение:

Каждый человек смертен.

Так как Конфуций человек, то он смертен.

Приведенное рассуждение интуитивно корректно. Однако если мы введем обозначения:

Р: Каждый человек смертен,

Q: Конфуций - человек,

R: Конфуций смертен,

то R не есть логическое следствие Р и Q в рамках логики высказываний. Это происходит потому, что в логике высказываний структура Р, Q и R не используется. Рассмотрим логику первого порядка, которая по сравнению с логикой высказываний имеет еще три логических понятия (называемые термами, предикатами и кванторами). Большая часть повседневного и математического языка может быть формализована логикой первого порядка.

Так же, как и в логике высказываний, сначала определим атомы логики первого порядка. Прежде чем дать формальное определение атома, рассмотрим несколько примеров. Допустим, что мы желаем представить утверждение «х больше 5». Сначала определим предикат БОЛЬШЕ(х, у), который означает «х больше у». Заметим, что предикат может отражать как отношение, так и функцию). В первом случае выражение «х больше 5» представляется следующим образом БОЛЬШЕ(х, 5). Аналогично можно представить отношение «x любит у» предикатом вида ЛЮБИТ(х, у). Тогда выражение «Петр любит Лену» может быть представлено предикатом ЛЮБИТ(Петр, Лена). В логике первого порядка возможно использование функциональных символов. Например, мы можем использовать запись плюс(х, у), чтобы обозначить «х+у», и отец(х), что означает «Отец человека х». Предложение «х+1 больше y» и «Отец Пети любит Петю» можно символически представить в виде БОЛЬШЕ(плюс(х, 1), y) и ЛЮБИТ(отец (Петя), Петя). В приведенных примерах все выражения БОЛЬШЕ(х, 5), ЛЮБИТ(Петя, Лена), БОЛЬШЕ(плюс(х, 1), y) и ЛЮБИТ(отец(Петя), Петя) являются атомами логики первого порядка, где БОЛЬШЕ и ЛЮБИТ - предикатные символы; х - переменная; 5, Петя и Лена - индивидные символы или константы; и отец и плюс - функциональные символы.