Лекция 1. Математическая логика и теория алгоритмов

### I. Логические исчисления

1. Логика высказываний
2. Понятие формальной теории
3. Исчисление высказываний (ИВ)
4. Теорема дедукции
5. Непротиворечивость и полнота ИВ
6. Методы проверки выводимости формул ИВ
7. Контрольные вопросы
8. Понятие предиката
9. Логические эквивалентности с кванторами
10. Термы и формулы в исчислении предикатов (ИП)
11. Аксиомы и правила вывода в ИП
12. Теоремы об ИП первого порядка
13. Контрольные вопросы

### 1. Логика высказываний

Под высказыванием принято понимать языковое предложение, о котором имеет смысл говорить, что оно истинно или ложно. Примерами высказываний могут служить следующие предложения:

- За окном идет снег.
- Завтра будет Новый год.
- Столица России – Москва.

Не всякое предложение может быть истинным или ложным, а значит, быть высказыванием. Так, вопросительное или повелительное предложение не является высказыванием.

Например, повествовательное предложение "Я лгу" не может быть высказыванием (парадокс лжеца). Действительно, если бы это предложение было верным, то по смыслу оно было бы ложным. А если бы предложение было бы ложным, то по смыслу оно должно быть истинным. Но ни то, ни другое для высказывания невозможно, так как оно не может быть одновременно и истинным, и ложным. Этот пример показывает, насколько внимательно следует относиться к принимаемым определениям (в данном случае - к определению высказывания).

В логике высказываний интересуются не содержанием, а истинностью или ложностью высказываний. Истинностное значение – истина или ложь – будем обозначать И и Л соответственно. Для соединения высказываний в более сложные высказывания используют следующие логические операции (связки).

Отрицанием высказывания A называется высказывание, истинное тогда и только тогда, когда высказывание A ложно. Обозначается ¬A. В естественном языке отрицание ¬A соответствует следующим конструкциям:

- Не A (или то, что получится в результате вставки частицы "не" перед глаголом – основным или вспомогательным)
- A не имеет места
- A не верно

Конъюнкцией двух высказываний A и B называется высказывание, истинное тогда и только тогда, когда истинны оба высказывания. Обозначается . В естественном языке конъюнкция соответствует следующим конструкциям:

- A и B
- Не только A, но и B
- B, хотя и A
- B, несмотря на A
- Как A, так и B
- A вместе с B
- A, в то время как B

Дизъюнкцией двух высказываний A и B называется высказывание, ложное тогда и только тогда, когда оба высказывания ложны. Обозначается . В естественном языке дизъюнкция соответствует следующим конструкциям:

- A или B, или оба
- A или B
- A, если не B
- A и / или B( в юридических текстах )

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

- Если A, то B
- Коль скоро A, то B
- В случае A имеет место B
- Для B достаточно A
- Для A необходимо B
- A, только если B
- B, если A
- A влечет B
- A имплицирует B

Эквиваленцией двух высказываний A и B называется высказывание, истинное тогда и только тогда, когда истинностные значения A и B совпадают. Обозначается . В естественном языке эквиваленция соответствует следующим конструкциям:

- A, если и только если B
- Если A, то B, и обратно
- A, если B, и B, если A
- Для A необходимо и достаточно B
- A равносильно B
- A тогда и только тогда , когда B

Можно попытаться прочесть полученные высказывания, когда A - это высказывание "Солнце взошло", а B - высказывание "Птицы смолкли".

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

Последовательность символов в логике высказываний называется формулой, если она удовлетворяет следующему определению:

1. любая высказывательная переменная – формула;
2. если A и B – формулы, то – формулы;
3. других формул нет.

Для упрощения записи вводится приоритет операций и лишние скобки опускаются.

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

Пример 2. Выражение не является формулой, поскольку логическая связка → связывает два выражения . Первое выражение не является формулой, поскольку не получено по правилам 1–3, т.е. не удовлетворяет определению формулы.

Пример 3. Перевести следующее высказывание в логическую символику: Я заплачу за работу по ремонту телевизора, если он будет работать.
Выделим отдельные высказывания, встречающиеся в данном высказывании и обозначим их переменными:

- А= ”Я заплачу за работу по ремонту телевизора”,
- В= ”Телевизор будет работать”.

Высказывания А и В связаны между собой импликацией, поэтому формула, соответствующая высказыванию, выглядит так .

Если каждой высказывательной переменной, входящей в формулу, придать истинностное значение И или Л, то формула будет определять истинностную функцию, т.е. функцию, определенную на множестве высказывательных переменных со значениями в множестве {И, Л}. Если, кроме того, принять И=1, Л=0, то любую формулу логики высказываний можно интерпретировать как формулу логики переключательных функций. По аналогии с переключательными функциями, для любого высказывания можно построить таблицу истинности.

Пример 4. Построим таблицу истинности для формулы .

Упорядоченный набор высказывательных переменных назовем списком переменных формулы A, если все переменные формулы A содержатся в этом наборе. В списке переменных формулы A часть переменных может быть фиктивной, т.е. может не входить явно в формулу A. Очевидно, что если список переменных для формулы A содержит k переменных, то таблица истинности для формулы A будет содержать 2 k строк.

Пусть формула A зависит от списка переменных . Дадим несколько определений:

- Формула A называется тавтологией (тождественно-истинной формулой – ИФ), если при любых значениях (интерпретации) переменных списка она принимает значение И.
- Формула A называется выполнимой (условно-истинной формулой – УИФ), если при некоторой значениях переменных списка она принимает значение И.
- Формула A называется тождественно ложной (противоречием) формулой – ЛФ , если при любых значениях переменных списка она принимает значение Л .
- Формула A называется опровержимой ( условно - ложной формулой ), если при некоторых значениях переменных списка она принимает значение Л .
- Формула В логически следует из формулы А (), если формула В имеет значение И при всех интерпретациях, при которых формула А имеет значение И.
- Формулы А и В логически эквивалентны (), если они являются логическим следствием друг друга. Логически эквивалентные формулы имеют одинаковые значения при любой интерпретации.

Теорема. Имеют место следующие логические эквивалентности: .
Доказательство проводится сравнением таблиц истинности двух формул.
Теорема доказана.

Теорема. Справедливы следующие логические эквивалентности для алгебры высказываний (1 и 0 – тождественно истинное и тождественно ложное высказывания соответственно):

1. Закон двойного отрицания
2. Законы коммутативности
3. Законы ассоциативности
4. Законы дистрибутивности
5. Законы идемпотентности
6. Законы де Моргана
7. Законы нуля и единицы
8. Законы поглощения
9. Закон противоречия
10. Закон исключенного третьего

Теорема доказана.

Теорема (о логическом следствии двух формул). тогда и только тогда, когда – тавтология. тогда и только тогда, когда – противоречие.
Доказательство. Докажем первое утверждение.

- Необходимость. Пусть формула принимает значение И при некоторой интерпретации. Обозначим это , когда и . Пусть , когда . Таким образом формула - общезначима.
- Достаточность. Пусть . Тогда если , то и . таким образом, Q является логическим следствием формулы .

Теорема доказана.

### 2. Понятие формальной теории

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

Способ построения научной теории в виде системы аксиом (постулатов) и правил вывода, позволяющих формальным логическим путем получать утверждения (теоремы) данной теории, называется аксиоматическим методом.
Наиболее убедительным примером применения аксиоматического метода явился математический трактат "Начала" древнегреческого математика Евклида (ок. 300 г. до н.э.). По примеру Евклида нидерландский философ Бенедикт Спиноза применил аксиоматический метод в своём основном труде «Этика, доказанная в геометрическом порядке» (1675), а великий русский учёный Михаил Ломоносов аксиоматически изложил основы физической химии.
Более двух тысяч лет учёные старались выяснить, какими же правилами вывода пользуются люди в логически правильных рассуждениях. Крупные достижения были сделаны и древнегреческими философами (Аристотель), и средневековыми европейскими схоластами, и учёными-логиками конца 19 - начала 20 века.
При описании логических исчислений будем придерживаться аксиоматического метода, т.е. способа построения научной теории, при котором какие-то положения теории избираются в качестве исходных (аксиом), а все остальные выводятся из нее чисто логическим путем, посредством доказательств. Положения, доказываемые на основе аксиом, называются теоремами.

Чтобы задать формальную аксиоматическую теорию T , необходимо определить:

1. некоторое счётное множество символов (алфавит) – символов теории Т (конечные последовательности символов теории Т называются выражениями или словами теории Т);
2. подмножество выражений теории Т, называемых формулами;
3. подмножество формул теории Т, называемых аксиомами;
4. конечное множество отношений между формулами, называемых правилами вывода.

Если формула A и формулы находятся в некотором отношении Rk , то A называется непосредственным следствием из формул , полученным по правилу Rk . Это обозначается так , при этом формулы называются посылками, формула A – заключением.

Выводом формулы A из формул в теории называется всякая последовательность формул такая, что и для любого i формула Ai есть либо аксиома теории , либо одна из формул Fj , либо непосредственное следствие из ранее полученных формул. Если в теории T существует вывод формулы A из формул , то записывают это так , при этом формулы называются гипотезами вывода.

Если , то формула А называется теоремой теории (т.е. выводима только из аксиом, без гипотез). Вывод теоремы называется доказательством.

### 3. Исчисление высказываний (ИВ)

Одним из важных примеров аксиоматической теории может служить исчисление высказываний (один из возможных способов формализации логики высказываний). Исчисление – основанный на четких правилах формальный аппарат оперирования со знаниями определенного вида, позволяющий дать точное описание некоторого класса задач, а для отдельных подклассов этого класса и алгоритм решения.
Логическое исчисление строится на базе некоторого формализованного языка. Задается набор исходных символов, из которых с помощью четко определенных правил строятся формулы рассматриваемого исчисления. Некоторые из этих формул выбираются в качестве аксиом, из которых с помощью правил преобразования получают новые формулы, называемые теоремами. После того как к исчислению добавляется интерпретация, придающая значение ее исходным символам и формулам, исчисление превращается в язык, описывающий некоторую предметную область.

Определим исчисление высказываний (ИВ) как формальную аксиоматическую теорию L следующим образом :

1. Алфавит ИВ образуют буквы A, B, C,... и т . д . ( возможно с индексами ), которые называются пропозициональными переменными , логические символы ( связки, ¬ , → ),а также вспомогательные символы скобок (, ).
2. Множество формул ИВ определяется индуктивно :
   - все пропозициональные переменные являются формулами ИВ ;
   - если A и B формулы ИВ , то – формулы ИВ ;
   - других формул нет.
3. Аксиомы ИВ (классическое определение):
4. Единственным правилом вывода в ИВ является правило отделения (modus ponens): если A и – выводимые формулы , то B – также выводимая формула . Символическая запись :

Здесь А, В – любые формулы. Таким образом, множество аксиом теории L бесконечно, хотя задано тремя схемами аксиом. Множество правил вывода также бесконечно, хотя оно задано только одной схемой.
Договоримся далее опускать внешние скобки у формул. Другие логические связки вводятся определениями: . Любая формула, содержащая эти связки, рассматривается как синтаксическое сокращение собственной формулы теории L .

Выводимость формул в теории L доказывается путем предъявления конкретного вывода, т.е. последовательности формул, удовлетворяющих определению. Для удобства формулы последовательности вывода располагаются друг под другом в столбик, а справа указывается на каком основании формула включена в вывод. В качестве примера приведем доказательства двух теорем.

Теорема 1. .
Доказательство:

  1. |  | A 1:B ← (A→A)
  2. |  | A 2: B ← (A→A);C ← A
  3. |  | MP 1,2
  4. |  | A 1: B ← A
  5. |  | MP 4,3

Теорема доказана.
Теорема 2. .
Доказательство:

  1 | A | гипотеза
  2 |  | A 1
  3 |  | MP 1,2

Теорема доказана.

Всякую доказанную выводимость можно использовать как новое (производное) правило вывода. Последняя доказанная теорема (Теорема 2) называется правилом введения импликации: .

### 4. Теорема дедукции

Дедукция – это процесс логического вывода, представляющий собой переход от посылок к заключениям, следствиям на основе применения правил логики. Основная теорема устанавливающая связь между импликацией и логическим выводом носит название теоремы дедукции. Ее суть состоит в следующем: если из посылок А выводимо по правилам логики некоторое заключение В, то импликация доказуема, т.е. выводима уже без всяких посылок (гипотез) из одних аксиом, которые являются логически истинными предложениями. Эта теорема имеет большое познавательное значение, поскольку в процессе дедукции позволяет вводить вспомогательные допущения (гипотезы), а затем освобождаться от них.
Теорема дедукции. Пусть Г – множество формул, А и В – формулы. Если , то и обратно.
Доказательство. Докажем эту теорему конструктивно, т.е. предложим алгоритм построения вывода из имеющегося вывода . Пусть вывод В из Г, А, причем En = В. Покажем индукцией по , что .
10. i =1 Покажем, что . Возможны три случая:

1. E1 - аксиома. Тогда следующий вывод доказывает необходимую выводимость.

     1. | E1 | аксиома
     2. |  | A1
     3. |  | MP 1,2

2. . Тогда рассмотрим вывод:

     1. | E 1 | гипотеза
     2. |  | A 1
     3. |  | MP 1,2

3. E 1=А. Тогда по правилу введения импликации имеем или

20. Пусть теперь для всех i < k . Покажем, что . Возможны четыре случая:

1. ;
2. ;
3. ;
4. Eк получена по правилу modus ponens из формул и .

Для первых трех случаев доказательство аналогично случаю i = 1. Для четвертого случая по индукционному предположению имеется вывод для всех i < k и вывод . Достроим вывод.
Таким образом, для всех k . При k = n получаем или .
В обратную сторону доказательство также конструктивное. Пусть имеется вывод , состоящий из n формул. Достроив его следующим образом, получим вывод .
Теорема доказана.
Следствие 1. Если , то и обратно.
Доказательство. Положим в теореме дедукции .
Следствие доказано.
Следствие 2 (Правило транзитивности). .
Доказательство.

  1. |  | гипотеза
  2. |  | гипотеза
  3. | A | гипотеза
  4. | В | MP 3,1
  5. | С | MP 4,2
  6. |  | пункты 1-5
  7. |  | теорема дедукции

Следствие доказано.
Следствие 3 (Правило сечения). .
Доказательство.

  1. |  | гипотеза
  2. | A | гипотеза
  3. |  | MP 2,1
  4. | В | гипотеза
  5. | С | MP 4,3
  6. |  | пункты 1-5
  7. |  | теорема дедукции

Следствие доказано.

### 5. Непротиворечивость и полнота ИВ

В этом разделе приведем теоремы, касающиеся свойств исчисления высказываний в целом. Приведем необходимые определения.

- Формальная аксиоматическая теория называется полной, если в ней доказуема любая тавтология.
- Формальная аксиоматическая теория называется непротиворечивой,если в ней не существует вывода формулы A такой, что одновременно доказуемы формулы A и ¬ A.
- Система аксиом формально непротиворечивой теории называется независимой, если никакая из аксиом не выводима из остальных по правилам теории вывода.
- Формальную аксиоматическую теорию называют полной в узком смысле, если добавление любой невыводимой формулы в качестве схемы аксиом приводит к противоречивой системе.
- Формальная теория разрешима, если существует алгоритм, который для любой формулы теории определяет,является ли эта формула теоремой.
- Теория называется полуразрешимой, если существует алгоритм, который для любой формулы F выдает ответ «Да», если F – теорема, и может быть не выдает никакого ответа, если F не является теоремой.

Теорема. – тавтология
Доказательство. Докажем только необходимость утверждения. Нетрудно проверить, что аксиомы A 1, A 2, A 3, являются тавтoлогиями, а правило вывода modus ponens сохраняет тождественную истинность формул, т.е. из И (истинные, т.е. их значение=1) формул по правилу вывода получаются только И формулы.
Теорема доказана.
Следствие. Теория L – формально непротиворечива.
Доказательство. Поскольку все теоремы теории L – тавтoлогии, то отрицание тавтологии не есть тавтология. Следовательно, в теории L не существует одновременно теоремы и ее отрицания.
Следствие доказано.
Теорема. Система аксиом теории L независима.
Теорема не требует доказательства.
Теорема. Теория L является разрешимой теорией.
Доказательство. Чтобы узнать выводима ли некоторая формула в исчислении высказываний, достаточно проверить тождественную истинность (т.е. то, что формула является тавтологией) этой формулы, что можно сделать за конечное число шагов.
Теорема доказана.

### 6. Методы проверки выводимости формул ИВ

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

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

Алгебраический метод более совершенный. Он базируется на применении законов булевой алгебры. Поскольку разные формулы могут принимать одинаковые значения, то для проверки И можно использовать наиболее простую формулу, например ДНФ (или КНФ), для которых известны методы построения и вычисления значений формулы.

Метод Куайна представляет собой модификацию тривиального метода. Пусть – множество высказывательных переменных в формуле F . Возьмем первую переменную X 1 и придадим ей, например, значение 1 (или 0). Подставим это значение в формулу F и выполним вычисления, которые могут возникнуть при такой подстановке. После выполнения вычислений получим формулу F ’ с меньшим количеством переменных и применяем к ней описанную процедуру. Если на каком-то шаге получена формула, которая является тавталогией или противоречием независимо от значений высказывательных переменных, входящих в эту формулу, то алгоритм на этом шаге можно остановить. Таким образом, алгоритм Куайна приводит к рассмотрению меньшего количества интерпретаций, чем тривиальный алгоритм. Рассмотрим пример работы метода Куайна.
Пример 1. Проверить выводимость формулы методом Куайна.

1. Положим X =0. Тогда при любой интерпретации (значении) Y и Z .
2. Пусть теперь X =1. Тогда . Для полученной формулы повторим процедуру метода Куайна.
   - Положим Y =0. Тогда при любой интерпретации Z .
   - Положим Y =1. Тогда при любой интерпретации Z .

Таким образом, данная формула является тавтoлогией, а значит выводима в ИВ.
Пример 2. Проверить выводимость методом Куайна.
Сначала применим теорему дедукции к данной выводимости. По теореме дедукции можно проверять выводимость . Далее поступаем как в примере 1.
Пример 3. Проверить выводимость методом Куайна.
Сначала применим теорему дедукции к данной выводимости. По теореме дедукции можно проверять выводимость .

- Положим Х=0. Тогда при любой интерпретации Y и Z.
- Пусть теперь Х=1. Тогда .

При Y = Z = 1 получаем,что формула ложна. Таким образом, формула не является тавтoлогией, а значит не выводима.

Теперь рассмотрим метод редукции распознавания тождественно истинных формул в ИВ. Он особенно удобен, когда в записи формул встречается много импликаций. Суть метода заключается в следующем. Пусть формула F имеет вид импликации, например, . Допустим, что в некоторой интерпретации формула F принимает значение 0. Тогда в соответствии с таблицей истинности для импликации имеем A=1, B=0. Таким образом, проверка формулы F сводится к проверке формул А и В. После этого данный процесс применяется к формулам А и В и т.д.
Пример 4. Проверить выводимость формулы методом редукции.
Пусть в некоторой интерпретации формула имеет значение 0. Тогда:

- ;
- .

Применим теперь метод редукции к формуле . Если она в некоторой интерпретации имеет значение 0, то:

- ;
- .

Для формулы метод редукции дает .
Из получаем, что . Однако это приводит к противоречию с . Таким образом, исходная формула не может быть ложной ни при какой интерпретации, т.е. формула является тавтoлогией, а следовательно выводима в ИВ.
Пример 5. Проверить выводимость формулы методом редукции.
По теореме дедукции будем доказывать выводимость . Далее поступаем как в примере 4.
Пример 6. Проверить выводимость формулы методом редукции.
Сначала применим теорему дедукции к данной выводимости. По теореме дедукции можно проверять выводимость .
Пусть в некоторой интерпретации формула имеет значение 0. Тогда:

- ;
- .

Отсюда и Х=1, Z=1. Tаким образом, существует интерпретация (значения) переменных (X=1,Y=1,Z=1),при которой формула является ложной. Значит формула не выводима в ИВ.

Наиболее известный классический алгоритм проверки выводимости формул в ИВ называется методом резолюций. В основе метода резолюций положена следующая теорема (доказательство от противного).
Теорема. , где В – любое противоречие, то .
Доказательство. - тавтoлогия. Преобразуем эту формулу.
. Следовательно, – тавтoлогия, тогда и только тогда, когда .
Теорема доказана.

B качестве формулы В при доказательстве от противного по методу резолюций принято использовать пустую формулу, которую будем обозначать . Пустая формула не имеет никакого значения и не является истинной ни при какой интерпретации и, по определению является противоречием.

Метод резолюций работает с особой стандартной формой формул, которые называются предложениями. Предложение – это дизъюнкция переменных или их отрицаний (литералов). Любая формула исчисления высказываний может быть преобразована во множество предложений следующим образом. Сначала формула приводится к КНФ, а затем конъюнкция дизъюнкций литералов разбивается на множество предложений.
Пример 7. Найдем множество предложений, соответствующих формуле .
Приведем формулу к КНФ: .
Таким образом, множество предложений состоит из двух формул и .
Рассмотрим теперь правило резолюции, т.е. правило вывода, которое используется в методе резолюций. Пусть А и В – два предложения в ИВ и пусть , а , где Р – переменная, а А1,В1 – любые предложения (в частности, может быть пустые или состоящие только из одного литерала). Правило вывода называется правилом резолюции. Предложения А и В называются резольвируемыми (или родительскими), предложение – резольвентой, а формулы – контрарными литералами.
Теорема. Правило резолюции логично, т.е. резольвента является логическим следствием резольвируемых предложений.
Доказательство. Пусть I( A )=И и I( B )=И при некоторой интерпретации. Тогда:

- Eсли I(Р)=И, то и , а значит .
- Если же I(Р)=Л,то и , а значит .

Теорема доказана.

Пусть нужно установить выводимость . Воспользуемся доказательством от противного и будем доказывать выводимость с помощью метода резолюций . Для этого каждая формула множества Г и формула ¬ F независимо преобразуются в множества предложений. В полученном совокупном множестве предложений отыскиваются резольвируемые предложения, к ним применяется правило резолюции (ПР) и резольвента добавляется во множество до тех пор, пока не будет получено пустое предложение. При этом возможны два случая:

- Среди текущего множества предложений нет резольвируемых. Это означает, что теорема опровергнута, т.е. формула F не выводима из множества формул Г.
- В результате очередного применения правила резолюции получено пустое предложение. Это означает, что теорема доказана, т.е. .

Пример 8. Докажем методом резолюций теорему .
Преобразуем во множество предложений отрицание целевой формулы:

.

Таким образом, множество предложений состоит из . Tеперь производим резольвирование:

1. X
2. Y
3. Z
5. ПР из 2 и 4
6. ПР из 3 и 5

Поскольку получено пустое предложение, то исходная формула выводима в ИВ.
Пример 9. Докажем методом резолюций выводимость .
Преобразуем во множество предложений отдельно гипотезу и отдельно отрицание целевой функции. Гипотеза дает предложения . Отрицание целевой формулы дает следующие предложения , поскольку:

Таким образом общее множество предложений . Далее резольвируем как в примере 8.
Пример 10. Проверим методом резолюций выводимость .
Применим к выводимости теорему дедукции. Получим . Еще раз применим теорему дедукции. Это дает .
Преобразуем к множеству предложений гипотезы и отрицание целевой формулы. Таким образом, получим предложения .

Tеперь производим резольвирование:

1. X
4. Y ПР из 1 и 2
5. Z ПР из 1 и 3

Таким образом, дальнейшее резольвирование невозможно (т.к. нет резольвируемых предложений) и выводимость формулы не доказуема.
Пример 11. Перевести рассуждение в логическую символику и проверить результат на правильность: Он сказал, что придет, если не будет дождя. Но идет дождь. Значит, он не придет.
Выделим отдельные высказывания и обозначим их.

- А=”Он придет”
- В=”Идет дождь”

Рассуждение состоит их двух гипотез:

1. Он сказал, что придет, если не будет дождя = ;
2. Но идет дождь = B;

Вывод из этих гипотез - Значит, он не придет = .
Таким образом, в логической символике рассуждение выглядит так: .
Проверим правильность рассуждения методом резолюций.
Множество предложений, соответствующее двум гипотезам и отрицанию вывода, состоит из следующих предложений . Среди предложений нет резольвируемых, поэтому рассуждение ложное.

### 7. Контрольные вопросы

1. Что такое высказывание?
2. Какие логические операции Вы знаете?
3. Каким образом строится формула в исчислении высказываний?
4. Дайте определение тавтологии, выполнимой формулы, тождественно ложной формулы, опровержимой формулы.
5. Что такое логически эквивалентные формулы?
6. Дайте определение выводимой формулы.
7. Сформулируйте теорему дедукции.
8. Какие формулы в исчислении высказываний являются выводимыми?
9. Какие методы для проверки выводимости формул Вы знаете?
10. Сформулируйте правило резолюции.

### 8. Понятие предиката

В исчислении высказываний (ИВ) важным было лишь истинностное значение высказываний, при этом внутреннее строение высказываний на рассматривалось. Выполняя, логические вычисления можно было определить истинностное значение сложных высказываний, в зависимости от истинности или ложности входящих в них простых высказываний. Однако при этом внутренний смысл высказываний не рассматривался. Возможности языка исчисления высказывания оказываются очень бедными для описания и изучения даже простейших заключений науки и практики.
Рассмотрим простой пример. Из истинных высказываний «5 < 8» и «8 < 10» можно сделать вывод, что «5 < 10». При этом истинность следствия зависит не только от истинности посылок, но и от их внутреннего строения. Изменив вторую посылку на истинное высказывание «8 ≠ 10», уже нельзя сделать вывод, что «5 < 10». Таким образом, даже на таком простом примере видно, что существенную роль при логическом выводе играет внутреннее строение высказываний, а не только их значение истинности.

Для того чтобы сделать более понятной структуру сложных высказываний, пользуются специальным языком – языком исчисления предикатов (ИП) первого порядка.
Каждое высказывание представляет собой некоторое суждение о предмете высказывания (субъекте) или взаимосвязи нескольких субъектов. В предыдущем примере высказывания касались отношения порядка между определенными натуральными числами. Предметы (субъекты), о которых делается суждение, могут быть самой различной природы. Множество субъектов, о которых делаются высказывания, называется предметной областью . Для обозначения субъектов будем использовать предметные переменные.

Предикат – это языковое выражение, обозначающее какое-то свойство субъекта или отношение между субъектами. В современной логике предикатами называются функции, значениями которых служат высказывания. Предикатом мощности n (n-местным предикатом) ,определенным на предметной области , называют отображение набора предметных переменных во множество высказываний.
Приведем примеры предикатов:

- Q ="5" - нульместный предикат,определенный на множестве натуральных чисел N;
- P(x1)="Натуральное число x1 четное" - одноместный предикат, определенный на множестве натуральных чисел N;
- D(x1,x2)="Натуральное число x1 делится (без остатка) на натуральное число x2" - двуместный предикат, определенный на множестве пар натуральных чисел NxN;
- M(x)="x-мужчина" - одноместный предикат, определенный на множестве всех людей.

Придавая конкретные значения из предметной области переменным, участвующим в предикатах, можно получить высказывания, которые принимают логическое значение истина или ложь, в зависимости от значения переменных.
Поскольку предикаты – это отображения со значениями во множестве высказываний, где введены логические операции, то эти операции естественным образом определяются и для предикатов. Пусть P , Q – предикаты мощности n , определенные на предметной области . Тогда логические операции для предикатов вводятся следующим образом:
Пример 1. Пусть в множестве натуральных чисел N определены два предиката:

- P(x)="Натуральное число х делится на 2";
- Q(x)="Натуральное число х делится на 3";

Тогда:

- = "Натуральное число х делится на 2 или на 3";
- = "Натуральное число х делится на 6";

Таким образом, .

Предикаты P, Q мощности n , определенные на предметной области называются логически эквивалентными (равносильными), если для любого набора предметных переменных .
Пример 2.Пусть предметная область – это множество слов {a, abbab, bbabb, aa}. На этом множестве заданы два предиката:

- P(x)="Слово x содержит букву b";
- Q(x)="Слово x имеет длину 5";

На данном множестве эти два предиката равносильны.
Теорема. Справедливы следующие логические эквивалентности для n -местных предикатов (1 и 0 – тождественно истинный и тождественно ложный предикаты соответственно)

1. Закон двойного отрицания

2. Законы коммутативности

3. Законы ассоциативности

4. Законы дистрибутивности

5. Законы идемпотентности

6. Законы де Моргана

7. Законы нуля и единицы

8. Законы поглощения

9. Закон противоречия

10. Закон исключенного третьего

Теорема не требует доказательства.

Существуют такие виды высказываний, которые нельзя записать в виде формулы исчисления высказываний. Например:

- Все дети должны смеяться.
- Все люди смертны.
- Никто не забыт,ничто не забыто.

Корректность таких высказываний определяется не только истинностью соответствующих логических связок, но и пониманием таких слов, как «все», «всякий» и т.д. В логике предикатов наряду с операциями логики высказываний основную роль играют операции, называемые кванторами. Именно использование кванторов делает логику предикатов более богатой и гибкой по сравнению с логикой высказываний. Дадим определения операциям кванторов.

Пусть P – предикат мощности n , определенный на предметной области . Поставим ему в соответствие ( n -1)-местный предикат («для всякого »). Этот ( n-1)-местный предикат переменных получен из исходного навешиванием квантора всеобщности. Говорят, что переменная xi связана квантором всеобщности. В естественном языке предикату соответствуют фразы:

- Для любого х (имеет место) А
- А(х) при произвольном х
- Для всех x (верно) A(x)
- A(x), каково бы ни было x
- Для каждого x (верно) A(x)
- Всегда имеет место A(x)
- Каждый обладает свойством A
- Свойство A присуще всем
- Всё удовлетворяет A
- Любой объект является A
- Всякая вещь обладает свойством A

Пусть P– предикат мощности n , определенный на предметной области . Поставим ему в соответствие ( n -1)-местный предикат («существует xi, что »). Этот ( n -1)-местный предикат переменных получен из исходного навешиванием квантора существования. Говорят, что переменная xi связана квантором существования. В естественном языке предикату соответствуют фразы:

- Для некоторых x (имеет место) A(x)
- Для подходящего x (верно) A(x)
- Существует x, для которого (такой, что) A(x)
- Имеется x, для которого (такой, что) A(x)
- Найдется x, для которого (такой, что) A(x)
- У некоторых вещей есть признак A
- Хотя бы для одного x (верно) A(x)
- Кто-нибудь относится к (есть) A
- По крайней мере, один объект есть A

Пример 3. Пусть имеется предикат на множестве натуральных чисел N . Очевидно, что для любых х и у из данной предметной области предикат D ( x , y ) – истинный, т.е. . Если данный предикат определить на множестве действительных чисел, то , но .
Пример 4. Пусть имеется предикат на множестве целых чисел Z . Тогда можно получить новые одноместные предикаты:

- = "Для всякого y, x-y>0". Очевидно, что этот предикат тождественно ложный;
- = "Существует x, x-y>0". Этот предикат тождественно истинный.

Пример 5. Записать в логической символике фразу: «Кто ищет, тот всегда найдет».
Можно перефразировать данное предложение следующим образом – «Каждый, кто ищет, тот всегда найдет». Обозначим предикаты, определенные на предметной области, состоящей из всех людей:

- A(x) = "x ищет";
- В(x) = "x найдет";

Тогда фраза в логической символике будет выглядеть следующим образом: .

### 9. Логические эквивалентности с кванторами

Теорема. Разноименные кванторы не всегда коммутируют.
Доказательство. Пусть имеется двуместный предикат D ( x , y )= « x делится на y » на множестве натуральных чисел. Тогда очевидно, что и .
Теорема доказана.
Теорема. Имеют место следующие логические следования и эквивалентности:

1. Законы де Моргана

2. Коммутация одноименных кванторов

3. Законы дистрибутивности

4. Законы ограничения действия

Теорема доказана.

Формула А находится в предваренной форме, если она имеет следуюший вид: , где

- – некоторые кванторы;
- В – бескванторная формула;
- приставка - префикс;
- формула В – матрицa.

Теорема. Для любой формулы исчисления предикатов существует логически эквивалентная ей формула в предваренной форме.
Доказательство. Для того, чтобы привести формулу к предваренной форме, используют следующие шаги:

- Исключают импликации;
- Для внесения ¬ (отрицания) внутрь скобок применяют законы де Моргана и закон двойного отрицания;
- Для переноса кванторов применяют законы дистрибутивности, законы ограничения действия кванторов и равносильности с переименованием кванторов ( Q 1 Q 2 – кванторы существования или всеобщности):

Теорема доказана.
Пример. Рассмотрим построение предваренной формы для формулы .
.

### 10. Термы и формулы в исчислении предикатов (ИП)

Чтобы наглядно показать чем отличаются термы и формулы, рассмотрим следующий пример.
Пусть имеется предикат на множестве натуральных чисел N . Определим две функции и следующим образом:

Функция f (x, y) определяет истинностное значение предиката при определенных значениях предметных переменных x и y . Значение функции g (x, y) принадлежит той де предметной области, что и предметные переменные x и y. Для записи функций типа функции f (x, y) используются формулы, а для записи функций типа функции g (x, y) – термы.

Дадим точные определения формулы и терма в исчислении предикатов. Сначала определим алфавит формул и термов. В алфавит входят:

1. Предметные переменные ;
2. Функциональные переменные – арность (местность);
3. Предикатные переменные – арность (местность);
4. Логические символы (дополнительные );
5. Служебные символы (,).

Последовательность символов в исчислении предикатов называется термом, если она удовлетворяет следующему определению:

1. любая предметная переменная, любая нульарная функциональная переменная является термом;
2. если – термы, то –терм;
3. других термов нет.

Пример. Выражение является термом, а выражение не является термом.
Придадим теперь функциональным символам следующие значения:

- - умножение двух чисел,
- - возведение в степень,
- – сложение двух чисел.

Тогда терм выглядит так: . Полагая , получаем, что терм равен 9. Таким образом, если заданы значения всех функциональных и предметных переменных, входящих в терм, то чтобы получить значение терма следует выполнить все операции сопоставленные переменным.

Дадим теперь определение формулы исчисления предикатов. Последовательность символов в исчислении предикатов называется формулой, если она удовлетворяет следующему определению:

1. Каждый предикатный символ арности нуль является формулой;
2. Eсли – n-арный предикатный символ и – термы, то – формула. Все входящие в эту формулу предметные переменные – свободные;
3. Eсли – формулы, то - формулы. Свободные вхождения переменных в остаются свободными в формулах ;
4. Если переменная x – свободная в F , то – формула. Вхождения других переменных (отличных от x ) остаются свободными в формуле ;
5. других формул нет.

Одна и та же переменная может иметь в одной и той же формуле как свободные, так и связанные вхождения. Формула, не содержащая свободных вхождений переменных, называется замкнутой. Квантор существования вводится определением .

### 11. Аксиомы и правила вывода в ИП

Поскольку ИП является расширением ИВ, то и множество аксиом ИП является расширением множества аксиом ИВ. Логическими аксиомами для ИП являются аксиомы ИВ и аксиомы ИП:

Правилами вывода в ИП служат:

- правило вывода (modus ponens,MP) : ;
- правило обобщения : .

Понятие выводимой формулы определяется так же, как и в исчислении высказываний.
Пример. Доказать выводимость в исчислении предикатов
Следующий вывод доказывает выводимость данной формулы:
Очень полезными оказываются производные правил вывода, которые позволяют сократить длину вывода формулы. Рассмотрим некоторые из них для исчисления предикатов.
Правило индивидуализации (ПИ). Если А(х) не содержит терм t, то .
Доказательство.

  1. |  | гипотеза
  2. |  | P1
  3. |  | MP 1,2

Правило доказано.
Правило существования (ПС). Если терм t свободный для переменной х в формуле А(х), то .
Доказательство.

  1. |  | P1
  2. |  | - тавтология
  3. |  | MP 1,2

Правило доказано.

### 12. Теоремы об ИП первого порядка

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

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

Дадим некоторые определения:

- Формула А выполнима в данной модели, если существует набор значений свободных переменных формулы А;
- Формула А истинна в данной модели, если она принимает значение Истина на любом наборе значений своих свободных переменных ;
- Формула A общезначима или (тождественно истинна в логике предикатов), если она истинна в любой интерпретации;
- Формула A выполнима (в логике предикатов), если существует модель, в которой A выполнима;
- Формула А – тавтология в ИП, если тавтологией является формула, полученная из А опусканием всех кванторов и термов вместе со всеми соответствующими скобками и переменными. Например, аксиома является тавтологией, поскольку формула тавтология.

Теорема.Если формула А – тавтология в ИП, то А является теоремой в ИП и может быть введена с использованием лишь аксиом A1,A2,A3 и правила вывода МР(Modus Ponens).
Теорема не требует доказательства.
Теорема. (Теорема Геделя о полноте исчисления предикатов). Формула доказуема в исчислении предикатов тогда и только тогда, когда формула общезначима.
Доказательство.Покажем только необходимость утверждения, поскольку доказательство достаточности более сложное. Аксиомы ИП являются общезначимыми формулами. При использовании правил вывода для общезначимых формул можно получить только общезначимую формулу.
Теорема доказана.
Теорема. (Теорема Черча о неразрешимости исчисления предикатов). ИП является полуразрешимой теорией.
Теорема не требует доказательства.

### 13. Контрольные вопросы

1. Что такое предикат? Приведите примеры предикатов различной местности.
2. Каким образом строится формула с предикатами?
3. Как навешиваются кванторы всеобщности и существования?
4. Сформулируйте основные эквивалентности с кванторами.
5. Что такое свободная переменная? Что такое связанная переменная?
6. Какая формула называется замкнутой?
7. Что такое предваренная форма?
8. Сформулируйте теорему о предваренной форме.