6.4. Системы Гильберта

Опишем формальную теорию, которая называется системой K:

Аксиомы

1) Если А(Р1, …, Рn) – тавтология исчисления высказываний, а В1, …, Вn – модальные формулы, то А(В1, …, Вn) – аксиома системы K (пропозициональные тавтологии).

2) Для любых формул А и В формула (А ® В) ® (А ® В) является  аксиомой системы K (аксиома нормальности).

Правила вывода

;          .

Формальная теория, содержащая систему K, называется системой Гильберта.

Строгие системы Гильберта

Добавляя аксиомы к системе K, получаем её усиления. Эти аксиомы соответствуют различным (указанным далее в квадратных скобках) свойствам шкал Крипке (речь о свойствах пойдёт далее):

Т:           А ® А [рефлексивность];

D:          А ® àА [определённость всюду];

4:           А ® А [транзитивность];

В:          А ® àА [симметричность];

5:           àА ® àА [с аксиомой Т – отношение эквивалентности].

Система К вместе с аксиомой Т обозначается через KТ или S. Такое определение записывается как:

S = K + {А ® А}.

Аналогично, добавляя к K другие аксиомы, получаем следующие системы Гильберта:

K4 = K + {А ® А };

S4 = K + {А ® А, А ® А};

S5 = K + {А ® А, àА ® àА}.

Выводимость. Пусть H – система Гильберта. (Согласно определению, она должна содержать аксиомы и правила вывода системы K).

Определение. Запись HA означает, что существует последовательность формул А1, …, Аn  таких, что

1) An = A;

2) Каждая формула Ai является либо аксиомой системы H, либо получена аз некоторых формул последовательности A1, …, Ai-1 с помощью правил вывода системы H.

В этом случае А называется теоремой в H, а последовательность A1, …, Anвыводом формулы (или доказательством теоремы) А. Число n называется длиной вывода (доказательства).

Пример 1

Последовательность:

A & B ® A, (A & B ® A), (A & B ® A) ® ((A & B) ® A), (A & B) ® A

является доказательством длины 4 теоремы (A & B) ® A.

Корректность и полнота систем Гильберта

Можно показать, что KA имеет место тогда и только тогда, когда А – тавтология; утверждение A равносильно тому, что А – тавтология относительно класса

всех рефлексивных шкал Крипке; S4A равносильно тому, что А – тавтология относительно класса транзитивных шкал.

Свойства шкал Крипке

Мы раньше доказывали, что аксиома Т (q ® q) является тавтологией относительно шкалы F = (W, R) тогда и только тогда, когда R – рефлексивно. Можно доказать, что аксиома 4 (q ® q) является тавтологией относительно F = (W, R), если и только если R транзитивно. Аксиома D(q ® àq) будет тавтологией относительно (W, R) тогда и только тогда, когда Dom R = W (т.е. "tÎW$uÎW (tRu)). Возникает вопрос о способе нахождения свойства шкал, относительно которых заданная формула является тавтологией. Опишем один из путей решения этой проблемы, принадлежащий Салквисту. С этой целью рассмотрим символы: 1, 0, &, Ú, , à как примитивные (не связанные между собой). Но А ® В будет по-прежнему сокращением для формулы: Ø(А & ØВ).

Строго позитивными будем называть формулы: р, p, p, …, где р – атом. Позитивной называется формула, не использующая Ø. Негативная формула – это отрицание некоторой позитивной формулы. Несвязной называется формула, полученная из негативных и строго позитивных формул с помощью операций & и à. Формулой Салквиста называется отрицание некоторой несвязной формулы. Например:

формула  р ® р эквивалентна  формуле Салквиста Ø([p] & [Øp]);

р ® р – формуле Салквиста Ø([р] & [Øр])

и формуле Салквиста Ø([р] & àà[Øр]);

àр ® àр – формулам Салквиста Ø(à[р] & [Øàр]) и  Ø(à[р] & à[Øàр]);

àр ® àр – формуле Салквиста Ø(à[р] & [Øàр]).

Однако (p®p) не эквивалентна никакой формуле Салквиста.

Теорема Салквиста. В 1973 году Салквист установил, что каждой формуле Салквиста соответствует некоторое свойство шкалы. Перед формулировкой этой теоремы введём определения и докажем лемму.

Пусть F = (W, R) – шкала Крипке, и пусть h, h¢ : P ® P(W) – оценки. Полагая h£h¢, если h(p) £ h¢(p) для всех p Î P, получим отношение порядка на множестве оценок. Если h£h¢, то h называется сужением h¢, а h¢ – расширением h.

Лемма. Пусть А – позитивная формула, F = (W, R) – шкала Крипке, h £ h¢ – оценки, t Î W – произвольный мир. Тогда, если (W, R, h), t |= A, то (W, R, h¢), t |= A.

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

(W, R, h), t |= р  Þ  t Î h(p)  Þ  t Î h¢(p)  Þ  (W, R, h¢), t |= р.

Если А = 1, или А = 0, то утверждение справедливо. Случаи  А & В  и  А È В  проверяются легко. Случай ØА не возникает в силу позитивности формулы А. Докажем утверждение для ÿА (аналогично для àА), в предположении, что для А оно верно. Пусть (W, R, h), t |= А. Тогда для всех u Î W, для которых tRu, будет верно (W, R, h), t |= А. Для А утверждение верно, значит, (W, R, h¢), t |= А. Следовательно, (W, R, h¢), t |= А, что и требовалось доказать.

Мы можем переводить модальные формулы в формулы языка первого порядка.

Пусть х – переменная. Переводом формулы А будет некоторая формула А*(х) языка первого порядка, имеющая не более одной свободной переменной и определённая по индукции:

1) атом р Î Р переводится в р*(х), где р* – символ унарного отношения;

2) 1* = 1; 0* = 0;

3) (ØА)* = Ø(А*);

4) (А & В)* = А* & В*; (А Ú В)* = А* Ú В*;

1) (А)*(х) = ("y(xRy ® A*(y)));

2) (àА)*(х) = ($y(xRy & A*(y))).

Здесь R –  отношение доступности. Например:

(р ® р)*(х) = Ø(р & Øр)*(х) = Ø(р*(х) & Øр*(х)) = Ø("y(xRy ® p*(y)) &  Øр*(х));

( (p Ú àq))*(x) = "y(xRy ® (pÚ àq)*(y)) = "y(xRy ® (p*(y) Ú $z(yRz & q*(z)))).

Теорема (о соответствии Салквиста). Каждой формуле Салквиста А соответствует некоторое свойство первого порядка шкал Крипке. Шкала Крипке будет обладать этим свойством тогда и только тогда , когда А будет тавтологией относительно этой шкалы. Существует алгоритм получения этого свойства из формулы А.

Замечание. Салквист установил, что после добавления формулы Салквиста к системе K в качестве аксиомы получается корректная и полная формальная теория.

Доказательство теоремы. Пусть А – несвязная формула. Например:

А = à(àq & à([Øc] & à[p])) & àà[p],

где р – позитивная формула. Здесь А построена из строго позитивных p, p, q и негативной Øc формул с помощью & и à. Предположим, что ØА не является тавтологией относительно шкалы F = (W, R). Тогда существует модель (W, R, h) и мир tÎW такие, что M, t |= A. Для нашего примера:

M, t |= à(àq & à(Øc & à[p])) & àà[p].

Это означает, что существует схема из шести миров, соответствующих ромбикам, связанных с помощью путей в графе R с миром t. Для этих миров ti справедливы утверждения: M, ti |= Bi, где Bi – либо строго позитивные, как  … р, либо негативные, как Øс.

Далее будем использовать префиксную форму записи R(x, y) для xRy. Таким образом, R(x, y) = 1, если и только если (x, y) Î R.

Чтобы получить имена миров, будем использовать стандартный перевод А*(t). В нашем примере А*(t) будет утверждением о существовании миров t1, …, t6, удовлетворяющих следующим условиям:

R(t, t1), R(t1, t2), R(t1, t3), R(t3, t4), R(t, t5), R(t5, t6); M, t2 |= q; M, t3 |= Øс; M, t4| = p; M, t4 |= p.

По лемме, если мы ‘сузим’ h, сделав атомы истинными в меньшем подмножестве миров, то негативные формулы, например Øс, все останутся верными в их собственных мирах в схеме (в нашем примере в t3). Существует наименьшая оценка h, которая сохраняет все полученные формулы истинными в их мирах. Можно доказать, что наименьшая оценка, делающая истинной А в мире t будет из тех, которые делают истинными все строго позитивные формулы  … р в их мирах.

В нашем случае истинность р в мире t4 означает, что в каждом мире, доступном за 2 шага из t4, истинна формула р. Значит, р будет истинной для всех х, удовлетворяющих формуле:

$y(R(t4, y) & R(x, y)).

Аналогично р будет означать истинность р для таких х, что R(t6, x). Формула q верна для всех таких х, что х = t2. Таким образом, если мы сделаем p и q верными только в тех мирах, которые строятся по строго позитивным формулам, то А будет верным в мире t.

Эта интерпретация h¢ называется ленивой. Она определяется с помощью формул языка первого порядка:

Мы делаем р истинным в мирах х тогда и только тогда, когда формула:

p*(x) = $y(R(t4, y) & R(y, x)) Ú R(t6, x)

истинна в шкале. А q истинна в x, если и только если x = t2. Значит, q*(x) = (x = t2).

Преобразуем далее формулу A*(t):

1) перемещаем кванторы $ti в начало формулы;

2) заменяем р*(х) нашим ленивым выражением $y(R(t4, y) & R(y, x)) Ú R(t6, x);

1) заменяем р*(y) на формулу $z(R(t4, z) & R(z, y)) Ú R(t6, y);

2) аналогично для подформул р*(z), р*(t), р*(t4) и т.д.;

3) заменяем все q*(х) на x = t2, q*(y) на y = t2 и т.д.;

4) вместо (р)* подставляем 1.

Полученную в результате формулу обозначим: a(t). Эквивалентны следующие свойства:

1) (W, R, h), t |= A для некоторых t Î W и h;

2) (W, R, h), t |= A для некоторых t Î W и t1, …, t6;

3) (W, R), t |= a(t) для некоторого t Î W (в смысле классической логики).

В этом случае формула ØА будет тавтологией относительно шкалы (W, R) тогда и только тогда, когда (W, R) |= Ø$ta(t). Мы построили алгоритм, который каждой формуле А сопоставляет формулу a(t), которой должна удовлетворять шкала (W, R).

Опишем шаги алгоритма Салквиста, сопоставляющего формуле ØА формулу Ø$ta(t) для шкалы (W, R), относительно которой формула ØА будет тавтологией.

Будем предполагать, что ØА – формула Салквиста. Например, в случае

ØА = (р ® р) = Ø([р] & [Øр])

на входе будет формула Ø([р] & [Øр]), а на выходе – формула "x R(x, x).

Алгоритм Салквиста

Вход: Формула ØА, где А – несвязная.

Выход: Свойство шкал, соответствующее ØА.

Действия:

1) Выделить негативные и строго позитивные части формулы А.

2) Нарисовать схему, показывающую, что означает выполнение А в мире t; включить имена миров (например, t1, t2, …), провести между ними рёбра отношения R и отметить миры, на которых верны строго позитивные формулы р.

3) Определить ленивую оценку, делающую строго позитивные оценки истинными в их мирах.

4) Для перевода А в А*(t) сделать следующее:

· поставить впереди формулы А*(t) кванторы $s, где s пробегает имена миров, соответствующих ромбикам à;

· найти строго позитивные подформулы и заменить их на 1;

· заменить все оставшиеся предикаты р*(х), q*(y), …, соответствующие атомам;

· произвести упрощения, если можно.

В результате работы алгоритма Салквиста получаем некоторую формулу a(t), истинность которой означает, что формула А верна в шкале (W, R) в некотором мире t относительно некоторой оценки.

Значит, формула ØА будет тавтологией тогда и только тогда, когда (W, R) удовлетворяет формуле Ø$ta(t) (как модель языка первого порядка, состоящего из единственного бинарного предикатного символа R).

Тем самым, теорема доказана.

Замечание. Ленивая оценка определяет формулы р*(х) следующим образом: Рассматриваем подформулы  р, р, р, …,  для которых существуют миры среди t, t1, t2, … . Пути к соответствующим мирам будут давать формулы:

р*(х) = (x = t) Ú R(t, x) Ú $x1(R(t, x1) & R(x1, x)) Ú …

Ú $x1$x2…$xm(R(t, x1) & R(x1, x2) & … & R(xm, x)).

Пример 2

Найдём формулу Øa(t) для формулы ØА = (р ® р). С этой целью представим А как р & Øр. Делаем 1 шаг перевода А*(t) = р*(t) & Øр*(t). Заменяем строго позитивную формулу р*(t) на 1, ибо ленивая оценка делает её истинной. Поскольку р*(t) даёт ленивое определение р*(х) = R(t, x), то А*()=1 & Øр*(t)=ØR(t, t). Получаем: Øa(t) == R(t, t). Если А – тавтология, то (W, R) |= Ø$ta(t). Следовательно, (W,R) |= "tR(t, t).

Пример 3

Пусть ØА = (р ® р). Легко видеть, что А = р & Øр. Отсюда А*(t) = р*(t) & Øр*(t). Оценка р*(t) = 1 даёт ленивое определение р*(х) = R(t, x). Ленивая оценка превращает формулу Øр*(t) в истинную:

Ø"x(R(t, x) ® р*(x)) = Ø"x"y(R(t, x) ® (R(x, y) ® р*(y))).

Следовательно, a(t) = Ø"x"y(R(t, x) & R(x, y) ® R(t, y)). Утверждение (W, R) |= Øa(t) превращается в

(W, R) |= "t"x"y(R(t, x) & R(x, y) ® R(t, y)).

Пример 4

Рассмотрим формулу  Øр ® àØр. Она эквивалентна формуле Ø(Øр & ØàØр). Получаем формулу Салквиста Ø([Øр] & à[p]). Положим А = [Øр] & à[p]. Стандартный перевод равен:

А*(t) = Øp*(t) & $t1(R(t, t1) & p*(t1)).

Переводим $t1 в начало формулы:

А*(t) = $t1(Øp*(t) & R(t, t1) & p*(t1)).

Из условия истинности p*(t1) получаем ленивое определение: р*(х) =R(t1, x). Следовательно, А*(t) = $t1(ØR(t1, t) & R(t, t1)). Формула ØА будет тавтологией относительно (W, R) тогда и только тогда, когда

(W, R) |= Ø$t$t1(ØR(t1, t) & R(t, t1)).

Получаем, что отношение R симметрично:

"t"t1(R(t, t1) ® R(t1, t)).

Пример 5

Пусть А – формула, рассмотренная при доказательстве теоремы Салквиста. Найдём А*(t) в случае, когда с = p Ú q:

A = à(àq & à([Ø(p Ú q)] & à[p])) & àà[p].

Мы получили формулу:

А*(t) = R(t, t1) & R(t1, t2) & R(t1, t3) & R(t3, t4) & R(t, t5) & R(t5, t6) & q*(t2) & Øc*(t3) & p*(t4) & p*(t6).

Ленивое определение получаем из условия: p*(t4) & p*(t6) = 1. Мы установили, что

р*(х) = $y(R(t4, y) & R(y, x)) Ú R(t6, x);

q*(x) = (x = t2).

Поставив с*(t3) = p*(t3) Ú q*(t3) в формулу для А*(t), получим:

А*(t) = R(t, t1) & R(t1, t2) & R(t1, t3) & R(t3, t4) & R(t, t5) & R(t5, t6) & Ø(p*(t3) Ú q*(t3));

a(t) = $x1$x2$x3$x4$x5$x6(R(t, t1) & R(t1, t2) & R(t1, t3) & R(t3, t4) & R(t, t5) & R(t5, t6) & Ø("x(R(t3, x) ® p*(x)) Ú (t3 = t2)) = $x1$x2$x3$x4$x5$x6(R(t, t1) & R(t1, t2) & R(t1, t3) & R(t3, t4) & R(t, t5) & R(t5, t6) & Ø("x(R(t3, x) ® $y(R(t4, y) & R(y, x)) Ú R(t6, x)) Ú (t3 = t2))

Пример 6

По заданной формуле Ø(àà[p] & à[q] & [Ø(p Ú q)] найдём свойство шкал (W, R), относительно которых эта формула является тавтологией. Положим:

А = àà[p] & à[q] & [Ø(p Ú q)];

a(t) = $t1$t2$t3R(t, t1) & R(t1, t2) & p*(t2) & R(t, t3) & q*(t3) & (Ø(p*(t) Ú q*(t))).

Из условий истинности:

p*(t2) = "x(R(t2, x) ® p*(x)),

q*(t3) = "x(R(t3, x) ® q*(x)),

найдём ленивые определения:

p*(x) = R(t2, x); q*(x) = R(t3, x).

Подставляя их в  a(t) и учитывая, что p*(t2) = 1 и , q*(t3) = 1, получим:

a(t) = $t1$t2$t3R(t, t1) & R(t1, t2) & R(t, t3) & Ø("x(R(t, x) ® R(t2, x)) Ú R(t3, x)).

Утверждение (W, R) |= Ø$ta(t) приводит к формуле 1-го порядка:

"t"t1"t2"t3(ØR(t, t1) Ú ØR(t1, t2) Ú ØR(t, t3) Ú "x(R(t, x) ® R(t2, x)) Ú R(t3, x).

Упражнения

Найти свойства шкал Крипке, соответствующих формулам:

1) А ® àА                 (Ответ: $u(wRu));

2) àА ® àА               (Ответ: wRu & wRu ® vRu);

3) àА ® А                 (Ответ: wRv & wRu ® v = u);

4) А ® А              (Ответ: wRv ® $u(wRu & uRv));

5) àА ® àА             (Ответ: wRv & wRx ® $u(vRu & xRu)).