- •1. Множества и бинарные отношения
- •Множества
- •Определения и примеры
- •1.1.1 Множество
- •Операции над множествами
- •Элементы комбинаторики
- •Бинарные отношения
- •Определения и примеры
- •2.1.2 Отображения
- •Операции над отношениями
- •Выполнение операций над отношениями
- •Свойства отношений
- •Эквивалентность и толерантность
- •2.4.1 Эквивалентность
- •2.4.3 Толерантность
- •2.4.6 Задача о наименьшем покрытии (ЗНП)
- •Алгоритм решения ЗНР
- •Отношения порядка
- •Строгий порядок
- •Свойства строгого порядка
- •Некоторые свойства дерева
- •Анализ отношений порядка
- •2.5.8 Решетки
- •2.5.10 Решетка
- •2.5.11 Булева решетка
- •Нормированные булевы решетки
- •Модели нормированной булевой решетки
- •Булевы функции (БФ)
- •Определения и примеры
- •Равенство булевых функций
- •3.3.1 СДНФ
- •3.3.3 СКНФ
- •3.3.5 Представление формул в СДНФ и СКНФ
- •Минимизация булевых функций
- •3.4.1 Импликанта
- •Полные системы булевых функций
- •2. Математическая логика
- •Логика высказываний
- •Основные понятия
- •4.1.7 Логическое следствие
- •4.1.8 Теоремы о логическом следствии
- •Логика предикатов
- •5.0.13 Связанные и свободные переменные
- •Предваренная нормальная форма
- •Стандартная нормальная форма
- •Подстановки и унификация
- •Метод резолюций для логики первого порядка
- •Исчисление высказываний
- •3. Графы
- •Определения и примеры
- •Определения графа
- •Части графа
- •Изоморфизм графов
- •Задание графов с помощью матриц
- •Матрица инциденций
- •Матрица соседства вершин
- •Матрица смежности
- •Типы графов
- •Обыкновенные графы
- •Графы Бержа
- •Помеченные и взвешенные графы
- •Другие способы задания графа
- •Связность графов
- •Маршруты, цепи, циклы
- •Число маршрутов
- •Компоненты связности
- •Нахождение компонент и бикомпонент
- •Кратчайшие цепи
- •Алгоритм Форда
- •Алгоритм Дейкстры
- •Обходы графа
- •Поиск в глубину на графе
- •Поиск в ширину на графе
- •Эйлеровы цепи и циклы
- •Эйлеровы пути
- •Гамильтоновы цепи и циклы
- •Цикломатика графов
- •Цикломатическое число
- •Деревья
- •Свойства дерева
- •Каркасы
- •Алгоритм нахождения каркаса графа.
- •Кратчайший каркас графа.
- •Алгоритм Прима.
- •Теорема о хорде каркаса.
- •Число каркасов графа.
- •Разрезы
- •Пространства суграфов
- •Пространство циклов
- •Пространство разрезов.
- •Потоки в сетях
- •Задача о максимальном потоке
- •Постановка задачи
- •Экстремальные части графа
- •Основные понятия
- •Покрытия
- •Задача о наименьшем покрытии
- •Паросочетания
- •Раскраска вершин графа
- •Хроматическое число
- •Оценки хроматического числа
- •Точные алгоритмы раскраски вершин
139
Глава 4
Логика высказываний
4.1 Основные понятия
Высказывание – это утвердительное (повествовательное) предложение, которое может быть либо истинным, либо ложным, но не тем и другим вместе. “Истина"или
“ложь приписанная некоторому высказыванию, называется истинностным значением высказывания.
Истинностные значения “истина"и “ложь"обозначаются, соответственно, И и Л, T и F (True, False), или 1 и 0. Чаще других мы будем использовать обозначения 1 и 0.
Символы p; q; r и т.д., которые используются для обозначения высказываний называются высказывательными (пропозициональными) переменнымии, атомарными формулами
или атомами.
Примеры 4.1.
1.Земля вертится (фактическая истина: высказывание выражает некоторый факт из физики и астрономии).
2.Если истинно утверждение: когда идет дождь, дорога мокрая, то истинно и следующее утверждение: если дорога сухая, то дождя нет. (“Идет дождь”, “дорога сухая”, “дорога мокрая” – атомарные формулы (атомы), “если – то" – логи-
140 |
Глава 4. Логика высказываний |
|
|
ческая связка). Истинностное значение всего предложения –
логическая истина. J
Из атомов можно строить соcтавные высказывания – формулы, используя логические связки или логические операции:
Операция |
Альтернативные обозначения |
отрицание |
:j » jnotjне |
конъюнкция |
^j&j ¢ j; jandjи |
дизъюнкция |
_j + j; jorjили |
импликация |
! j ½ j ¾ jif ¢ ¢ ¢ thenjесли ¢ ¢ ¢ то |
эквивалентность |
$ j ´ jiffjтогда и только тогда, когда |
Примеры 4.2.
1. Из атомарных высказываний
p : команда выиграла на своем поле q : команда проиграла на чужом поле
r : команда выходит в следующий круг соревнований можно построить составное высказывание
(p ^ (:q)) ! r :
если команда выиграла на своем поле и не проиграла на чужом поле, то она выходит в следующий круг соревнований. 2. Если студент сдал сессию без троек, или если он получил не более одной тройки и за него ходатайствует группа, то он будет получать стипендию (из легенды). J
Определение. Правильно построенная формула (ППФ) или просто формула в логике высказываний определяется следующим образом:
1.Атом – формула (1 и 0 – формулы).
2.Если F – формула, то и (:F ) – формула.
3.Если F и G – формулы, то
(F _ G), (F ^ G), (F ! G), (F $ G) – формулы.
4. Формулы порождаются только конечным числом применений правил 1 – 3.
Логические (пропозициональные) связки упорядочиваются по приоритетам (в порядке убывания):
4.1. Основные понятия |
141 |
|
|
|
|
:; ^; _; !; $.
Поэтому некоторые скобки в формулах можно опускать, например:
(p _ q) можно заменить на p _ q (внешние скобки обычно опускаются), (p ! (q ^ r)) – на p ! q ^ r, p ! (q ^ (:r)) – на p ! q ^ :r.
Истинностные значения формул определяются с помощью таблиц истинности логических операций:
Таблица 4.1. Таблица итинности логических операций
p |
:p |
0 |
1 |
1 |
0 |
p |
q |
|
p ^ q |
p _ q |
p ! q |
p $ q |
0 |
0 |
|
0 |
0 |
1 |
1 |
0 |
1 |
|
0 |
1 |
1 |
0 |
1 |
0 |
|
0 |
1 |
0 |
0 |
1 |
1 |
|
1 |
1 |
1 |
1 |
Истинностные значения формулы вычисляются по истинностным значениям атомов, входящих в эту формулу, и таблицам истинности логических связок.
Пусть F – данная пропозициональная формула и a1; : : : an – входящие в нее атомы. Интерпретацией формулы F является приписывание истинностных значений атомам
a1; : : : ; an, таких, что каждому ai приписано либо 1, либо 0 (но не оба вместе). Формула F “истинна "в некоторой интерпретации тогда и только тогда, когда F получает значение 1 в (при) этой интерпретации. В противном случае формула F является ложной в (при) этой интерпретации.
Если формула содержит n атомов, то она имеет 2n различных интерпретаций.
Пусть I – некоторая интерпретация формулы F .
Говорят, что I удовлетворяет формуле F , если F = 1 в I и I опровергает F , если F = 0 в I.
142 |
Глава 4. Логика высказываний |
|
|
Пример 4.3.
Найдем все интерпретации формулы (p ^ q) ! r:
Таблица 4.2. Интерпретации формулы (p ^ q) ! r
p |
q |
r |
p ^ q |
p ^ q ! r |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
|
|
|
|
|
З а м е ч а н и е. Интерпретация, при которой истинностное значение формулы есть 1, называется моделью этой формулы. I
Пример 4.4. Рассмотрим формулу F : (p ! Общезначимость q) ^ p ! q и найдем все ее интерпретации.
и противоречи- |
Число атомов в формуле n = 2; формула |
вость |
имеет 22 = 4 интерпретации: |
Таблица 4.3. Интерпретации общезначимой формулы |
||||||
|
|
|
||||
|
p q p ! q (p ! q) ^ p (p ! q) ^ p ! q |
|||||
|
0 |
0 |
1 |
0 |
1 |
|
0 |
1 |
1 |
0 |
1 |
|
|
1 |
0 |
0 |
0 |
1 |
|
|
1 |
1 |
1 |
1 |
1 |
|
Определение. Формула F общезначима тогда и только тогда, когда она истинна во всех возможных интерпретациях.
Таким образом, формула из примера 4.4 общезначима. Общезначимая формула называется также тавтологией (от греческого tauto – то же самое, logos – слово, мысль, речь, разум).
Формула необщезначима тогда и только тогда, когда она не является общезначимой.
Определение. Формула F противоречива (невыполнима) то-
4.1. Основные понятия |
143 |
|
|
|
|
гда и только тогда, когда она ложна при всех возможных интерпретациях.
Формула непротиворечива (или выполнима) тогда и только тогда, когда она не является противоречивой.
Формулу, которая не является ни общезначимой, ни противоречивой (невыполнимой), называют также нейтральной.
Из этих определений непосредственно следует:
²отрицание общезначимой формулы противоречиво;
²отрицание противоречивой формулы общезначимо.
Примеры 4.5.
1.p _:p – формула общезначима, выполнима и непротиворечива.
2.(p ! q) ^ p ^ :q – формула противоречива, невыполнима и необщезначима.
3.p ^ :p – формула противоречива, невыполнима и необщезначима.
4.p ! :p – формула необщезначима и непротиворечива (нейтральна). J
Если формула F истинна в интерпретации I; то говорят, что I удовлетворяет F; или F выполнена в I.
Если формула F ложна в интерпретации I, то говорят, что I опровергает F; или F опровергается в интерпретации I (отсюда следует, что любая интерпретация опровергает противоречивую формулу).
Если интерпретация I удовлетворяет формуле F , то I называется также моделью F .
Ввиду конечности числа интерпретаций, путем полного перебора всех возможных интерпретаций всегда можно решить, общезначима формула или противоречива (или нейтральна).
Эквивалентность Определение. Две формулы F и G называ-
формул ются эквивалентными (или F эквивалентна G; обозначается F = G) тогда и только
144 |
Глава 4. Логика высказываний |
|
|
тогда, когда истинностные значения F и G совпадают при каждой интерпретации.
Пример 4.6. Проверим эквивалентность формул p ! q и :p _ q:
Таблица 4.4. Эквивалентные формулы
p |
q |
p ! q |
:p _ q |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
Истинностные значения формул совпадают во всех интерпретациях, следовательно, p ! q = :p _ q. J
Пусть F; G и H – формулы. С помощью таблиц истинности можно проверить эквивалентность формул:
1.a)F _ G = G _ F ; b)F ^ G = G ^ F ;
2.a)(F _ G) _ H = F _ (G _ H); b)(F ^ G) ^ H = F ^ (G ^ H);
3.a)F _ (G ^ H) = (F _ G) ^ (F _ H);
b)F ^ (G _ H) = (F ^ G) _ (F ^ H);
4.a)F _ 0 = F ; b)F ^ 1 = F ;
5.a)F _ :F = 1; b)F ^ :F = 0.
Влогике эти пары эквивалентных формул часто называют законами:
1 – коммутативные законы для дизъюнкции и конъюнкции;
2 – ассоциативные законы для дизъюнкции и конъюнкции;
3 – дистрибутивные законы: дистрибутивность дизъюнкции относительно конъюнкции и дистрибутивность конъюнкции относительно дизъюнкции.
5 a) – закон исключенного третьего (tertium non datur – третьего не дано).
5 b) – закон противоречия.
Рассмотрим еще ряд эквивалентных формул, которые понадобятся нам при преобразованиях формул.
4.1. Основные понятия |
145 |
|
|
|
|
6.a)F _ 1 = 1; b)F ^ 0 = 0;
7.:(:F ) = F (закон отрицания);
8.a):(F _ G) = :F ^ :G; b):(F ^ G) = :F _ :G (законы де Моргана);
9.F $ G = (F ! G) ^ (G ! F );
10.F ! G = :F _ G;
11.a)F _ F = F ; b)F ^ F = F (идемпотентность);
12.a)F _ (F ^ G) = F ; b)F ^ (F _ G) = F (законы поглощения).
Пример 4.7. Доказать эквивалентность формул:
(p _ q) ^ (p _ r) ^ (p _ s) = p _ (q ^ r ^ s).
Применяя к левой части последовательно дистрибутивный закон 3a), а затем ассоциативный закон 2 b), получим
(p _ (q ^ r)) ^ (p _ s) = (p _ (q ^ r) ^ s) = p _ (q ^ r ^ s): J
Нормальные |
Вследствие ассоциативных законов скобки |
|
в формулах (F _ G) _ H или (F ^ G) ^ H |
||
формы |
||
могут быть опущены, то есть можно писать |
F_ G _ H и F ^ G ^ H.
Вобщем случае можно писать, не опасаясь двусмысленности
F1 _ F2 _ ¢ ¢ ¢ _ Fn, где F1; : : : ; Fn – формулы.
Такая формула – дизъюнкция формул – истинна, когда хотя бы одна из формул Fi истинна.
Аналогично, можно написать
F1 ^ F2 ^ ¢ ¢ ¢ ^ Fn.
Эта формула – конъюнкция формул – истинна, когда все формулы Fi истинны.
Порядок, в котором Fi встречается в конъюнкции или дизъюнкции, несуществен вследствие коммутативности операций ^ и _.
146 |
Глава 4. Логика высказываний |
|
|
Определение. Литерал – это атом или отрицание атома. Дизъюнкция литералов вида p _ :q _ ¢ ¢ ¢ _ t называется клозом или дизъюнктом (англ. clause – предложение). Конъюнкция литералов вида :p^q ¢ ¢ ¢^t называется импликантой (конъюнктой, конъюнктом, cube).
Определение. Формула F представлена в конъюнктивной нормальной форме (КНФ) тогда и только тогда, когда она имеет вид
F = F1 ^ F2 ^ ¢ ¢ ¢ ^ Fn; n > 1,
где каждая из формул Fi есть дизъюнкция литералов (клоз). Определение. Формула F представлена в дизъюнктивной нормальной форме (ДНФ) тогда и только тогда, когда она имеет вид
F = F1 _ F2 _ ¢ ¢ ¢ _ Fn; n > 1,
где каждая из формул Fi есть конъюнкция литералов (импликанта).
Приведение |
1. Используя законы |
|
F $ G = (F ! G) ^ (G ! F ) и F ! G = |
||
формул к |
||
нормальным |
:F _ G |
формам |
устраняем логические связки $ и !. |
|
|
|
2. Используя закон :(:F ) = F и законы |
|
де Моргана :(F _ G) = :F ^ :G, :(F ^ G) = |
:F _ :G, переносим знак отрицания непосредственно к ато- |
|
мам. |
|
3. Используя нужное число раз дистрибутивные законы, приводим формулу к нужной форме.
Пример 4.8.
Привести формулу к ДНФ и КНФ: (p ! q) ! r.
(p ! q) ! r = :(:p _ q) _ r = p ^ :q _ r (ДНФ) =
= |
(p _ r) ^ (:q _ r) |
(КНФ). |
J |