Опубликован: 24.04.2007 | Доступ: свободный | Студентов: 720 / 35 | Оценка: 4.60 / 4.30 | Длительность: 25:56:00
Специальности: Программист
Лекция 3:

Исчисление высказываний

< Лекция 2 || Лекция 3: 12345 || Лекция 4 >

Теорема 18 (О полноте ИВ). Всякая тавтология есть теорема исчисления высказываний.

Мы предложим несколько альтернативных доказательств этой теоремы. Но прежде всего мы должны приобрести некоторый опыт построения выводов и использования аксиом.

Лемма 1. Какова бы ни была формула D, формула {(D\to D)} является теоремой.

Докажем лемму, предъявив вывод формулы (D\to D) в исчислении высказываний.

  1. ({D\to((D\to D)\to D))}\hm\to{((D\to(D \to D))\to(D\to D))} [аксиома 2 при A=D, B=(D\to D), C=D ];
  2. D\to((D\to D)\to D) [аксиома 1];
  3. (D\to(D\to D))\to(D\to D) [из 1 и 2 по правилу MP];
  4. D\to(D\to D) [аксиома 1];
  5. (D\to D) [из 3 и 4 по правилу MP].

Как видно, вывод даже такой простой тавтологии, как (D\to D), требует некоторой изобретательности. Мы облегчим себе жизнь, доказав некоторое общее утверждение о выводимости.

Часто мы рассуждаем так: предполагаем, что выполнено какое-то утверждение A, и выводим различные следствия. После того как другое утверждение B доказано, мы вспоминаем, что использовали предположение A, и заключаем, что мы доказали утверждение A\to B. Следующая лемма, называемая иногда "леммой о дедукции", показывает, что этот подход правомерен и для исчисления высказываний.

Пусть \Gamma — некоторое множество формул. Выводом из \Gamma называется конечная последовательность формул, каждая из которых является аксиомой, принадлежит \Gamma или получается из предыдущих по правилу MP. (Другими словами, мы как бы добавляем формулы из \Gamma к аксиомам исчисления высказываний — именно как формулы, а не как схемы аксиом.) Формула A выводима из \Gamma, если существует вывод из \Gamma, в котором она является последней формулой. В этом случае мы пишем \Gamma\vdash A. Если \Gamma пусто, то речь идет о выводимости в исчислении высказываний, и вместо \varnothing\vdash A пишут просто \vdash A.

Лемма 2 (о дедукции). Пусть \Gamma — множество формул. Тогда \Gamma\vdash A\to B тогда и только тогда, когда \Gamma\cup\{A\}\vdash B.

В одну сторону утверждение почти очевидно: пусть \Gamma\hm\vdash
(A\to B). Тогда и \Gamma, A\vdash(A\to B). (Для краткости мы опускаем фигурные скобки и заменяем знак объединения запятой.) По определению \Gamma, A\vdash A, откуда по MP получаем \Gamma, A\vdash B.

Пусть теперь \Gamma,A\vdash B. Нам надо построить вывод формулы A\to B из \Gamma. Возьмем вывод C_1,C_2,\ldots,C_n формулы B=C_n из \Gamma, A. Припишем ко всем формулам этого вывода слева посылку A:

(A\to C_1), (A\to C_2),\dots,(A\to C_n).
Эта последовательность оканчивается на (A\to B). Сама по себе она не будет выводом из \Gamma, но из нее можно получить такой вывод, добавив недостающие формулы, и тем самым доказать лемму о дедукции.

Будем добавлять эти формулы, двигаясь слева направо. Пусть мы подошли к формуле (A\to C_i). По предположению формула C_i либо совпадает с A, либо принадлежит \Gamma, либо является аксиомой, либо получается из двух предыдущих по правилу MP. Рассмотрим все эти случаи по очереди.

(1) Если C_i есть A, то очередная формула имеет вид (A\hm\to A). По лемме 1 она выводима, так что перед ней мы добавляем ее вывод.

(2) Пусть C_i принадлежит \Gamma. Тогда мы вставляем формулы C_i и C_i\to(A\to C_i) (аксиома 1). Применение правила MP к этим формулам дает (A\to C_i), что и требовалось.

(3) Те же формулы можно добавить, если C_i является аксиомой исчисления высказываний.

(4) Пусть, наконец, формула C_i получается из двух предыдущих формул по правилу MP. Это значит, что в исходном выводе ей предшествовали формулы C_j и (C_j\hm\to C_i). Тогда в новой последовательности (с добавленной посылкой A ) уже были формулы (A\to C_j) и (A\to(C_j\hm\to C_i)). Поэтому мы можем продолжить наш \Gamma -вывод, написав формулы

((A\to(C_j\to C_i))\to((A\to C_j)\to (A\to C_i)) (аксиома 2);

((A\to C_j)\to (A\to C_i)) (modus ponens);

(A\to C_i) (modus ponens).

Итак, во всех четырех случаях мы научились дополнять последовательность до вывода из \Gamma, так что лемма о дедукции доказана.

20. Докажите, что для любых формул A,B,C формула

(A\to B)\to((B\to C)\to (A\to C))
выводима в исчислении высказываний. (Указание: используйте лемму о дедукции и тот факт, что {A\to B}, {B\to C}, A
\hm\vdash C.)

21. Докажите, что если \Gamma_1\vdash A и \Gamma_2,A\vdash
B, то \Gamma_1\hm\cup\Gamma_2\hm\vdash B. (Это свойство иногда называют "правилом сечения" (cut);говорят, что формула A "отсекается" или "высекается". Сходные правила играют центральную роль в теории доказательств, где формулируется и доказывается "теорема об устранении сечения" для различных логических систем.)

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

Заметим, что мы пока что использовали только две первые аксиомы исчисления высказываний. Видно, кстати, что они специально подобраны так, чтобы доказательство леммы о дедукции прошло.

Другие аксиомы описывают свойства логических связок. Аксиомы 3 и 4 говорят, какие следствия можно вывести из конъюнкции ( A\land B \vdash A и A\land B \vdash B ). Напротив, аксиома 5 говорит, как можно вывести конъюнкцию. Из нее легко следует такое правило: если \Gamma\vdash A и \Gamma\vdash B, то \Gamma\vdash(A\land B) (применяем эту аксиому и дважды правило MP). Часто подобные правила записывают так:

\frac{\Gamma\vdash A \qquad \Gamma\vdash B}{\Gamma\vdash A\land B}
(над чертой пишут "посылки" правила, а снизу — его "заключение", вытекающее из посылок).

< Лекция 2 || Лекция 3: 12345 || Лекция 4 >