Академический Документы
Профессиональный Документы
Культура Документы
» PRINCIPLES OF LOGIC
AND LOGIC PROGRAMMING
G. METAKIDES
European Commission Brussels, Belgium
A. NERODE
Mathematical Sciences Institute
Cornell University
Ithaca, NY, USA
A. SINACHOPOULOS
Universite Libre de Bruxelles
Belgium
1996
ELSEVIER
«ДД Г. МЕТЛКИДЕС
7 ’........А. НЕРОУД
, * . Л <-i, .- •: і . » » « ‘ ■. ' -,■ ,»4<« . \Ц ітД •« »-’•■, • • і»і
Л
ПРИНЦИПЫ ЛОГИКИ
И ЛОГИЧЕСКОГО
ПРОГРАММИРОВАНИЯ.
' Перевод с английского • ' ;i l !! В. А.
Захарова, С. Селезневой и В. В. Спануполс^
■■ \ под редакцией
В..лЖ Садовничего и В. А. Захарова
U? .-Г ;'
W'%- -і- ' ■■
■ ИЗДАТЕЛЬСТВО «ФАКТОРИАЛ» ■ $ г<. «е и д ;■ .• ?д;
МОСКВА, 1998
Издание осуществлено по инициативе и при поддержке Московского
государственного университета им. М. В. Ломоносова
Академик РАН
В. А. Садовничий
і ' /• ■ Чгл ' ’W
■ ■; ■ . *:<■■ Будущему информатике как мате-
*-У. • І ч.;. матической науке *.
• -'Ь-л !$Г. >'Л.!; *> Время покажет, в какой мере будет справед
ливо обратное.
ч; .и
ВВЕДЕНИЕ t
•»%.• '
Д/ ЛОГИКА ВЫСКАЗЫВАНИЙ
•” < t »ь<* •••
’’ .'• ;/■■ ■ і?''’"-.•
А Л В, V
где логическая связка А соответствует соединительному союзу «и». Таким
образом, высказывание Af\B утверждает, что х > 3 и х < 10, т. е. 3 < х < 10.
2. Отрицание формализуется при помощи символа Например,
рассмотрим высказывание
I. м•
С: 50 делится на 7П
->С обозначает, что 50 не делится на 7. а
АлВ-»С, А-*В~С .
.6. \
обозначают соответственно г
v,M = vM-.
Базис индукции.
Для каждого пропозиционального символа А верно, что VJ(A) = —
V>(A), так как Vt, V2— расширения F.
Индуктивный переход.
Предположим, что V^(a) = V2(a) и VJ(y>) = Тогда справедливы
соотношения:
=~ VJ(<T) =~ V2(y>) = V2(^);
V <^)= VJ(o-)U VJ(<p)= V2(ff)U»=K(.Vy>); ;
Ц(<7Лр)=ОДпВД=У2(<т)пад=72(<7Л^ '
V}(a -> y?) = V^a) VJ(y>) = V2(a) V2(<p) = V2(a <p)‘,
у;(ст W 95) = VJ(CT) ^V{(ip) = V2(a) v2(p) - V2(a w ^).
Таким образом, Vt и У, имеют одинаковые значения для каждого
высказывания, и поэтому совпадают. □ 1.3.4
Следствие 1.3.5 непосредственно вытекает из теоремы 1.3.4.
20 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
Следствие 1.3.5. Пусть а — высказывание, все атомы которого
содержатся в списке Aif...,Ak. Если два истинностных означивания Vlf V2
имеют одни и те же значения на множестве {А„ ..Ак}, то V^a) = У2(ст).
□ 1.3.5
Пример 1.3.6. Вычисление истинностного означивания по заданному
означиванию.
Пусть S — множество атомарных высказываний, S = {A,,A2}, F —такое
означивание, что
F(A,)=t, F(A2) = /.
По теореме 1.3.4 искомое истинностное означивание VF, расширяющее F,
определено однозначно.
Положим, что
УДА2):=/,
где := обозначает «равно по определению*.
Теперь мы можем вычислить значения истинностного означивания VF
для каждого множества высказываний, которые содержат только атомы А, и
А2:
VF(AX А А2) = УДА,) П УДА2) = t П f = /;
УДА, V А2) = УДА,) U УДА2) = t u f = t-
VF((A, A A2) - A2) = УДА, V A2) - УДА2) = t f = f-
и T. д. □ 1.3.6
Мы можем классифицировать высказывания логики высказываний в
соответствии с истинностными значениями, которые они приобретают.
Определение 1.3.7. Высказывание а называется логически истинным, или
тавтологией, если для каждого истинностного означивания V верно, что
V(a)—t. Мы будем пользоваться записью |= а для обозначения тавтологии.
В свою очередь, запись будет обозначать, что ст не является тавтологией, т.
е. существует истинностное означивание V, такое, что —
Высказывание ст называется выполнимым или подтверждаемым, если
существует такое истинностное означивание У, что У (ст) = t. При этом
про истинностное означивание У, для которого У(ст) = t, говорят, что оно
подтверждает высказывание ст.
Высказывание ст, такое, что для каждого истинностного означивания V
верно У(ст) = f, называется логически ложным, или невыполнимым, или
противоречием. □ 1.3.7
Замечание 1.3.8. Пусть V — истинностное означивание, и множество
Sv = {a: У(<т)=£]
состоит из всех высказываний языка, выполнимых при означивании V. Если
высказывание р принадлежит множеству Sv для каждого истинностного
означивания V, то р является тавтологией. Каждое множество Sv, где V —
истинностное означивание, составляет возможный мир (см. [Fitt69,
Chel8O]) множества высказываний PL. Каждый возможный мир является
аристотелевым в том смысле, что для каждого высказывания о только
одно из двух высказываний (7 И -47 может быть истинно в этом мире. И в
самом деле, мы имеем либо V(а) ~ t, либо V(а) — f, что равносильно V(~><т)
= t, сообразно аристотелеву принципу исключенного третьего, замечание
§1.1. ВВЕДЕНИЕ 21
1.4.4).
Возможные миры — основное понятие семантики Крипке. Семантика
Крипке используется при изучении модальной логики. В модальной логике
кроме логических связок содержатся специальные символы, как, например,
о, называемые модальными операторами, что расширяет выразительные
возможности языка. Поэтому в модальном языке кроме выражения А
встречается выражение оА, которое может интерпретироваться как «иногда
А истинно», или «А будет истинно в будущем».
Модальная логика позволяет нам выражать особые свойства, за-
трагивающие расположение и порядок выполнения операторов программы.
Рассмотрим, например, программу на языке ФОРТРАН, предназна-
ченную для вычисления п\ для всех целых чисел п от 1 до 10.
*=1
do 10 і = 1, . . ., 10 '•¥«. F •
-Ц'Р —k*j ПН’.Г -•« • " •
10 write(*, *)k ‘ ,‘f
en
d ПНї -X ‘АІИЧН;
Пусть А н В —высказывания модальной логики, '*
Заметим, что
УДА V -А) = УДА)U УД-nA) = УДА)U(~ УДА)) = t U (~ t) = = tU/ = t,
У2(A V -A) = УДА) U УД-А) = У2(A) U (~ УДА )) = / LI (~ /) = = f U t — t.
Произвольное истинностное означивание У на А совпадает либо с V{,
либо с V2.
Таким образом, согласно следствию 1.3.5 выполняется одно из двух:
У(А V-A)= УДА V-nA)= t или У(А V-А) = УДА V-А) = t
То есть высказывание истинно для любого истинностного означивания У.
Следовательно, оно является тавтологией.
Теперь докажем, что ((А —> В) —► А) —> А —тавтология. На Q — —
■ л.•
4
■ --'Нс• .'<> .
I J TV J
F,(A)=t,
F2(A)=t,
F3(A) = /,
F4(A) = /,
{А, В} имеется четыре различных означивания Fv F2, F3, Ft:
^ГДВ) = /, Jr
,■ .JM цц,-
^(B) = / • Ґ
■iffi I.
•Ж.» . П'і
я
§ 1.4. Таблицы истинности ЙїчГ ,
высказывание К не является тавтологией. □ 1.3.11
В предыдущем параграфе мы определили означивание атомов языка и,
затем, распространив означивание атомов на составные высказывания,
определили истинностные означивания. При помощи этого метода мы
можем установить, является ли высказывание тавтологией, противоречием,
или оно выполнимо. Однако, чем больше составляющих содержит
высказывание, тем более сложным становится этот метод.
Чтобы сделать его несколько проще, мы соберем все возможные
означивания атомов высказывания в таблицу, называемую таблицей
истинности высказывания. Итак, для составных высказываний ->А, А V В,
А ЛВ, А —» В и А*-* В мы имеем следующие таблицы:
§ 1.4. ТАБЛИЦЫ ИСТИННОСТИ 25
А В A AB
t t t
t
f f
t f f
f f f
А В c Af\B AhB^C
t t t t t
t t f t f
t t t
f f
t t
f f f
f t t f t
t t
f f f
t f t
f f
. t
f f f f
Для тройки атомов (А, В, С) тройка истинностных значений (/, t, f) обращает
А А В —> С в истину, тогда как тройка (t, t, /) обращает его в ложь. □ 1.4.2
Сокращенной таблицей истинности высказывания А А В —> С
называется его таблица истинности, в которой вспомогательный четвертый
столбец пропущен.
Сокращенная таблица истинности высказывания, содержащего п атомов,
состоит из 2П строк и п + 1 столбца.
При помощи таблицы истинности мы можем устанавливать, когда
§ 1.4. ТАБЛИЦЫ ИСТИННОСТИ 27
высказывание истинно, а когда — ложно. В силу следствия 1.3.5, если в
таблицах истинности для двух высказываний столбцы значений атомов и
последние столбцы совпадают, то эти два высказывания логически
эквивалентны.
Пример 1.4.3.
1. Высказывание ((А —> В) —» А) —> А является тавтологией.
t f f t t
f t t t
f
f t t
f f
2. Высказывание (Р -» Q) А (Р A ->Q) невыполнимо.
P Q -Q PQ P/^Q (P —» Q) A (P A->Q)
t t t
f f f
t t t
f f f
t t
f f f f
t t
f f f f
Замечание 1.4.4. Основываясь на определении 1.3.7 мы имеем:
1) высказывание является тавтологией тогда и только тогда, когда его
отрицание невыполнимо; а;! . .-../км п л,.( « *
V(AAB)=t, V(B-+C)=t. *
Con(Con(S)) С Con(S).
Предположим, что а Є Con(Con(S)). Пусть V — истинностное означивание,
такое, что для каждого у? є S имеет место V(</>)— t. Тогда для каждого г є
Con(S) верно, что V(r) = t. Из определения Con(S) следует, что И(ст) — t.
Это означает, что а Є Con(S). Следовательно, Con(Con(S)) С Con(S\
5. Если V Elnt(S2), то для каждого а Є S2 справедливо V(a)=t. Ввиду
того, что S] С S2, для каждого а € S\ верно, что V(cr) — t и, следовательно, V
e!nt(Sx).
6.Если ст Є Con(S), то для каждого Velnt(S) верно, что V(a) — — t. Тогда
■С f ■
Следовательно, (по индукции) сг, —> (сг2 —»(.. .(<тп —+ а)...)) = t. б) Пусть
г — наименьшее натуральное число, для которого верно
VfcTr)= /• Тогда
§ 1.5. ЛОГИЧЕСКИЕ СЛЕДСТВИЯ И ИНТЕРПРЕТАЦИИ 33
-• ^(стг->(аг+1->...(ап->¥?)...))=
= VM - V(<7r+, . -К - Ч>\ • ■) =.
= V(<Tr+I->...(<7n-4^)...)=t.
А. .. . ...
Ак <т(А], А2,..Afc)
% % .. .
%
а
2‘ ... (Тпк ...
<Т2 °2‘
ь
2* ДНФ(.Р)
встречается каждый атом F либо с отрицанием, либо без него1).
Конъюнктивная нормальная форма (КНФ), двойственная к ДНФ, имеет
вид
М‘ t
<71
1 /<71 /<72
"Tv;;,. А /
<72
<iV ■
За 36 4а 46
1 /(<71 V <72)
1 і у/
/<7 гл /<7 ьч 1 н-з /<7і /<72 1 /<72
.у
5а 56 6а 66
/(<71 -> <72) /(<71 О <T2)
f(ai о <7 )
2
ї’і
tA ■ . tB t(C A
Уі* і Г 5Л
«2
t(--A) I tc
За]""""
.... ri
fA tD
«з
* //O'
<8
>
t((A->#j^A).^4>
V К)
< f -V !
К ’ «|’Л Jf ,.
t(^M V К)
■Г
С
4) свойств дистрибутивности Л
А:
А А В w В A A, А V В «-» В V А;
относительно V и V относительно
А Л (В V С) <-» (А Л В) V (А Л С),
А V (В А С) (А V В) А(А V С);
5) свойств:
где А,, А2,А^, В{,..., В^, DI,D2,..., D^,FI,...,F^ — атомы.- Предположим, что
А, совпадает с F{.
Мы можем переписать эти дизъюнкты следующим образом:
Ci^{Ai}uq, где C1'={A2,...,Av-2?1,...)-BiJ)
/ C2 = bA,}uq, где C' = {D},D2,..., D4,-,F2,...,^}. ■
Тогда по правилу резолюции можно вывести дизъюнкт С = C'U С2.
Другими словами,
исходные высказывания: Сх = {AJ U С[, С2 = {^AJ U С2;
заключение: С/U С2 = (^--{A]}) U(C2 - {->А]}). (*)
Мы можем считать, что дизъюнкты С, и С2 «вступают в противоречие»,
так как С} содержит литерал Alf а С2 — литерал —>А]. Устранение причины
противоречия приводит к дизъюнкту (*), который разрешает конфликт.
Своим названием метод обязан этому разрешению1). Теперь мы формально
определим метод резолюций.
Определение 1.9.11 (резолюция, формальное описание). Пусть С, и С2 —
54 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
дизъюнкты, L — такой литерал, что L Е Сх и -'L Є С2. Тогда резольвентой
дизъюнктов Сх и С2 называется дизъ- ЮН КТ
D = (Ci~{L})U{C2~{-^L}).
□ 1.9.11
Пример 1.9.12. Исходные высказывания: С, = {ДQ}, С2 = = {-іД-’Q};
заключение: D = {Q, ->Q}. □ 1.9.12
Если мы имеем множество, содержащее более двух дизъюнктов, то
можно ввести понятие множества резольвент.
Определение 1.9.13. Пусть S = {Сх,..., Сп}. Множество Я(5) = S(J {D: D —
резольвента дизъюнктов Ct, С-, 1 i, j n} называется резольвентой S. □ 1.9.13
Пример 1.9.14. Пусть S — множество дизъюнктов, ■ ■;
< 1-23 р
і;.,'!»-
5 6
С,,..., СТ1, что для каждого Cit і — 1,..., п, либо Сг е S, либо С, Є R({Ц, Ск}), 1
у, к п. Дизъюнкт С считается резолютивно выводимым из множества
дизъюнктов S, и этот факт обозначается S hR С, если существует
резолютивный вывод из S, последний дизъюнкт которого — С. Очевидно,
что CeR*(S). □ 1.9.17
Пример 1.9.18. Найдем резольвенту множества дизъюнктов
£<72 ‘ «e'-'v'-
[= <7 => F в а.
Теорема компактности ■
. ............ [ .
f с 'і і ' !А ! • І■‘
. ' ru J» 1 . . \ і(-В) 3
ХичЧАд .
.-Г >,■ t(A V В) ••. . і я ;>• < м t • .
'■150 гАтр ■” Г'/ ' ’ / ■ 1'ЬДЬ>'
~ ц J и я sг-,'J ‘, л:: , ■>- .*» >. tA !>f
’ tB ".,1 :-п-. ; < : :.IV,
М’-К-ТГЭДЭГ. ; .»•> ■::
і•;?, 1 <:?
< - ■ f. ’AV '■! ".
>■■■’ . ■ ... . с г Л'і■■
/В w ЛІ
■ ,ij| і
1
«у.
0 1Л- • *£«!:’•;
‘А’ «І
Рис. 1.3 ’-•'.'■й .;■? о
Рассмотрим t(A V В). Левая ветвь этой таблицы противоречива, и далее
ее можно рассматривать. При анализе правой ветви нужно обратить
внимание на вершину t(->B). Правая ветвь таблицы оказывается также
противоречивой. Следовательно, А дедуктивно выводимо по Бету из -В и
(А V В). 0 1.11.2
Две последующие теоремы 1.11.3 и 1.11.4, относящиеся к конечным
множествам предположений, соответствуют теоремам корректности и
полноты из предыдущего параграфа 1.10.
Теорема 1.11.3 (теорема корректности дедуктивного вывода). Если
высказывание а дедуктивно выводимо по Бету из высказываний у?,, у?2,...,
у?п, то а является логическим следствием высказываний у?2, •••>¥’„■
Формальная запись:
¥>2, • • •> {^|, <Р2> • • •> ¥>n} f= °-
3 Г. Метакиденс, А. Нероуд
з«
68 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
истинностное означивание, подтверждающее {Ц, С2}, то либо У(р)=і, либо
V(~7>)=i. Предположим, что V(p)=£. Так как V(C2)=t и У(-»р) = /, то V(C2)~t.
Поэтому V'(C')= t. Если V(-^p)— t, то V(C[)~ t, и мы вновь приходим к
заключению V(С) = t. □ 1.13.2
Теорема 1.13.3 (корректности метода резолюций). Если R*(S) содержит
пустой дизъюнкт, то то S — невыполнимое множество дизъюнктов.
Формальная запись:
□ Є R*(S) => S невыполнимо.
Доказательство. Пусть С,,..., Ск — резолютивный вывод из S. Тогда,
применяя предыдущую лемму, по индукции можно доказать, что любое
истинностное означивание, подтверждающее S, подтверждает также С*.
Если заключение — это пустой дизъюнкт, то Ск совпадает с □. Так как
пустой дизъюнкт невыполним, то S невыполнимо. □ 1.13.3
При доказательстве полноты метола резолюций воспользуемся
следующей вспомогательной леммой 1.13.4.
Лемма 1.13.4. Пусть S — невыполнимое множество дизъюнктов, в
котором встречаются только литералы Ан А2,... ..., Ак. Пусть Зк'1 —
конечное множество дизъюнктов, резолютивно выводимое из S, в котором
встречаются только атомарные высказывания А{, А2,..., Afc_i. Тоеда Sk~l
невыполнимо.
Доказательство. Предположим, что Sk~1 выполнимо. Тогда найдется
истинностное означивание V множества литералов {Ац А2,..., АА_]},
подтверждающее Sk~l. Пусть Vt и V2 — два такие расширения V, что
^(AJ=i, V2(Ak) = f.
Множество дизъюнктов S невыполнимо, поэтому найдется дизъюнкт С\ Є S,
который не подтверждается V{. Тогда ->Ак Є ибо в противном случае обе
альтернативные возможности приводят к противоречию: ы
а) Ак и V{ подтверждает С,; I
б) Ак е С,, и 'Ц подтверждает Сх. 3
Аналогично мы можем заключить, что найдется дизъюнкт С2 Є S,
который не подтверждается и содержит атом Ак.
Рассмотрим Ь =(С|— {-и44})и(С2 — {Ак}). Дизъюнкт D является
резольвентой Cj и С2, и Следовательно, V подтвержда
ет D. Другими словами, имеет место один из следующих вариантов
а) V подтверждает С\ — {-iAfcJ. тогда подтверждает Сх. Получаем
противоречие.
б) V подтверждает С2~ {Ак}. Но тогда V2 подтверждает С2. Получаем
противоречие.
Следовательно, SIII-1 невыполнимо. □ 1.13.4
IIISj ; § 1.14. Упражнения
1.14.1. Докажите, что согласно определению высказывания сле-
дующие выражения являются высказываниями:
а) р: (А V (В Л С) w (А V В) Л (А V С));
б) g: ((А V В) —> С) —>(->А Л С));
§ 1.14. УПРАЖНЕНИЯ 69
Теорема 1.13.5 (полноты метода резолюций). Если S — невыполнимое
множество дизъюнктов, то из S резолютивно выводим пустой дизъюнкт.
Формальная запись:
S невыполнимо => OER‘(S).
S\~Ra^S\~ga<^S\~a<^S\=a. □ 1.13.6
в) г: ((A,AA2)V(-A3)).
Решение, а) Мы докажем, что выражение р является высказыванием,
построив р индуктивно в соответствии с определением 1.2.1:
1) А, В, С — высказывания по определению 1.2.1, 1;
2) (В Л С) — высказывание по определению 1.2.1, 2 и п. 1;
3) А V (В Л С) — высказывание по определения 1.2.1, 2, а также пп. 1 и
2; „ ;t.re '' Г ) Л> и
70 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
=- -- - • - =— ■— -— •— - — ■- ■ '— - і
4) (А V В) и (Л V С) — высказывания по определению 1.2.1, 2 ' и п. 1;
5) (А V В) Л (А V С) — высказывание по определению 1.2.1, 2 . И п. 4;
6) р: (АУ (В AC)«(AV В)Л(АУ С)) — высказывание по onped делению
1.2.1, 2 и 5. \
Задания б) и в) решаются аналогично.
1.14.2. Определите, какие из следующих выражений являются!
высказываниями, а какие — нет:
^((А, А А2) (А3 V А4)) = WF(A, Л А2) WF(A3 V А4) = = [^(А.) П WF(A2)]
[WF(А3) и 1УР(А4)1 =
— х- = [F(A1)nF(A2)]^[F(A3)UF(A4)] =
....
= /— « = t П (К) ‘<г;
1.14.5. Докажите, что следующие высказывания являются тавто-
логиями:
а) (АЛ-^А)—«А; В) А->->- А;
б) (А-+В) V (А-+-iB); г) [(A VB)- С) ~[А —»(В -» С)].
Решение, а) Рассмотрим означивание W(A) — t, а также его расширение
W'. Тогда
. W'[(A/\^A)-^A]=W'(A^^A)^W'(A) =
4 . . =[W'(A)nW'(^A)\^W'(A) =
-.........;-■=[И^)П(~И%4))]^1У'(А)= '
....=[W(A)n(~IV(A))]-^IV(A)= ;
•; /’ . - =[t п(~і)]-» і = І ; І ; і і
.............-■ =[!□/]•*♦(= -™-—і-, я-4
= /^і = t. ....дЛі...
Рассмотрим теперь означивание W(A) = f и его;:расшнреййе Wf.
Таким же способом мы можем заключить, что ;
РИ'[(АЛ-,А)->А] = t. , • л ..........................\ ,1
72 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
2) W(4) = t,W(B) = f; ;
v
3) W(A) = ff W(B)~ t- ' '' <
4) W(A)= fW(B) = f ,
Затем для каждого из указанных означиваний W найдем/соотіфіда вующие
истинностные означивания W', расширяющие Ж^.Няіїрі мер, для 1)
имеем
И"Н4 А В) А (4 —»В)л4] =
= W'[^(A hB)]nW'[(A —»B)A4] =
- • = (~Г(4АВ)ПГ(4-»В)ПГ(4) =
7 = (~(Г(4)пГ(В))П(Г(4)^1У'(В))пГ(А)«\
(~(W(4)nIV(B))n(IV(4)^IV(B))nIV(4)=i
’ = (~[t п t])n[t t]n t = ■ 'Ь
7■ ~ f П І П f = /П Z = /. 7
Аналогично вычисляются истинностные означивания для случаев 2), 3) и
4). В каждом из этих случаев мы получаем W'[-’(4 А В) А А (4 —> В) А 4]
— f. Таким образом, формула г) противоречива.
Пункты а), б) и в) решаются аналогично.
1.14.7. Заполните следующую таблицу истинности:
t t
t f
t
f
f f
§ 1.14. УПРАЖНЕНИЯ 73
t t t t t t t t
t t f f t t t t
t f t f t t t t
t f f f t t t t
f t t t t t t t
t t
f f f f f f
f f t f f t f f
f f f f f f f f
Итак, А V (В Л С) и (4 V В) Л (4 V С) логически эквивалентны.
Пункты а), в) и г) решаются аналогично.
1.14.9. С использованием таблиц истинности докажите, что сле-
дующие высказывания являются тавтологиями:
Кг a) (4vB)VCw4V(BvC); >(
б) (A AB)AC<-> АЛ(В Л С);
. в) А V В w В V А;
г) A w -і-tА;
д) AV(BAnB)wA;
е) А Л (В V -1В) w А;
•-.4; ж) AA(BVC)W(AAB)V(AAC);
з) A V(B ЛС)«-+(А VB)A(A VC);
и) -I(AVB)W(-IAA-IB); .. ; ,
к) -i(A Л В) w (->А V -«В), м -Sr: 1 ш 'r>.
74 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
jl
■н
1
м■ іІ,'
I
-■ А и’
>[(4^B)v(AA^] «[(А А В) V (А А С)] ' h <■!
‘: ?
' V ■• -
х
/(ЛАВ) tA •• . tA
«■ТНЖЙ/ ■ А
-
ДАЛС) tff Ч(А А В)^; І(А А су
ГЬ\К/)
О • ' ■ГІ"| <*
А ■• f-v‘ ® А.
tB tc / : *-
tAi j tA
і V/: ■' М
/Л fB tB НА >.. к) tc
:> шіос і :о ® (і
і ,МГ :>і; О лА. у
мял VM-.vp.cyr Ж.
’r t‘M ІГ>
Лі
t иП .V'.’ Г/
іЛ
fA /В '^ 0 fB tC
•' s
*’ U-S'Pv-j.Ojj »• < і ^Wi>
0Д 0 _J
. .'•h><U45-< Q 0
' Рис. 1.5 * ^’
r
Н-А-»(В^-А);Р ’ (Г
6) А V В — резольвента 1 и 2; ч.
7) А — резольвента 3 и 6;
8) ->А — резольвента 4 и 5;
9) □ — резольвента 7 и 8.
.А
Следовательно, множество S противоречиво.
9.25.25. Используя метод резолюции, докажите, что:
а) {А -> В, С D, D -> В, В V С V D} F А Л В;
б) {А Л В —► С, А —> В} И А —» С.
Решение, б) Нам достаточно доказать, что множество {А Л Л В —» С, А -+
В, ->(А —> С)} противоречиво. Представим высказывания множества {А Л
В —► С, А —> В, ->(А —» С)} в КНФ:
А Л В -> С -(А л В) V С ->А V ->В V С,
А-+ В ~ ->А\/ В,
->(А —» С) w ->(->А V С) w, Arj-і^Л-пС w А Л ->С.
Применим метод резолюций к множеству дизъюнктов {-«AV-xBV
V С, -»А V В, А, ■_,С}: лт*’■'?.па
1)-AV-BVC; . .•
2) ^А VB; '
3) A; ьА !■,! Ї,І
4) -С;
5) ->А V ->В —резольвента 1 и 4; "А " ‘'*’■ 1
‘:
6) -«В — резольвента из 3 и 5; VH-
7) В — резольвента 3 и 2; . ,> л:л .‘V
8) □ — резольвента 3 и 2.
1.14.26. Представьте следующие высказывания как множества
дизъюнктов:
/А
/В
Рис. 1.8
W(A —> В)~ W(A)^ W(B) = t. Это следует из того, что W(A —> В) может
быть ложным только в том случае, если W(A) — t и W(B) — f. Поэтому S (=
А —> В. Значит, SulA}FВ => Su{A} |= В.
По теореме полноты
1.14.35. Пусть <тпа2,...— бесконечная последовательность вы-
сказываний. Докажите, что если для любого г высказывание +1 —» —> ai
доказуемо по Бету, а аі —>cr.+ 1 не является доказуемым по Бету, то не
существует высказывания т, для которого справедливы одновременно
следующие утверждения:
а) Для каждого і высказывание т —» сг, выводимо по Бету;
б) {а,,а2,...}|=7.
Решение, а) Докажем, что если для всякого і высказывание т —► сг£
доказуемо по Бету, то {ст,, сг2,...} т. То есть множество
90 Глава 1. ЛОГИКА ВЫСКАЗЫВАНИЙ
высказываний {->т, ст15 ст2,...}
непротиворечиво. Другими словами, существует
такое означивание W, что:
W(->r) = W (а{) — W(a2) = ...= t.
Поскольку для любого і высказывание щ —> ai + l не является доказуемым по
Бету, для каждого натурального числа п существует такое означивание W,
что:
^(а„-стп + !) = /, или ^(стп)-1У(стп + 1) = /.
Тогда мы можем заключить, что
W(an) = t, W(an + l) = f ' (1)
Поскольку для каждого г Є N высказывание сті + ( —* ст,- доказуемо по Бету,
для любого означивания W' и для любого п є N справедливо W'(an + 1 —> ап) =
t, что равносильно W'(an + {) W'(an) — t. Следовательно,
И/'(<т ) = / или W'(a\ = t. МЮІЇЇЇ
Hbasdsf»/ \ n+і/ J \ п/
W(T)= t. (4)
Поэтому существует такое означивание W, что (1), (3) и (4) верны.
Следовательно, для всех п є N множество {-<т, ст,, ст,,..., ст п} непро-
тиворечиво. Согласно теореме компактности 1.11.10 это означает, что
множество {->т, стн ст2,...} также непротиворечиво.
б) Предположим {ст,, ст2,...} |= т. Покажем, что существует означивание
W и натуральное число k, такие, что VF(r —* стА) = / или, что то же самое,
W(r) = t и ИД ст,.) = . ,,
§ 1.14. УПРАЖНЕНИЯ 91
Так как {o'], сг2, ...}{= г, множество высказываний {-^т, сг н а2,...}
противоречиво. По теореме компактности существует такое натуральное
ЧИСЛО П, ЧТО конечное подмножество {-IT, СТ,, сг2, .. .стп} невыполнимо.
При этом, однако, найдется такое означивание W, что
■' Л. '.
и'і».
'■
>1
Тогда Wz(<Tn)^ lV(<7n+I) = f, то есть
W(an)=t, W(an+l) = f. . (5)
Поскольку <тп —> <тп_! доказуемо по Бету,
t = W(an -4 ап_,) = W(an) - W(an_ 1
что означает W(an) = f или И/(<тп_І)= t. Согласно (5) мы получим
(6)
Таким же образом, опираясь на тот факт, что все высказывания ст —»ст _ t,
1 < і < п — 1, доказуемы по Бету, мы получим
;
Л
' Глава 2
■-4фй... ЛОГИКА ПРЕДИКАТОВ «•.>.. ;•> ■!.. а
§ 2.1. Введение
Переменные
Кванторы ‘
Имеем
. &ф = {vt/f(g(x))^ v2/h{v^, v3/h(v3)^, x/z, vt/v2, v3/vl}: ’ - (0U{^/u>, v3/*>i})
t t
4
»
100 Глава 2. ЛОГИКА ПРЕДИКАТОВ
Замечание 2.3.4. 1. Согласно правилу обобщения, если
формула <р выводима из аксиом с помощью правил PrL, то формула
(Vx)</2 также выводима в этой аксиоматической системе.
В качестве примера предположим, что выводима следующая формула:
человек (х) —> смертен (х).
Тогда формула
(Vx) ( Человек (х) —» Смертен (х)) ../Д'' ,
также выводима.
Другими словами, мы всегда можем обосновать обобщенную формулу
(Vx)</?, опираясь на истинность формулы <£>. Некорректное применение
правила обобщения в обычных спорах часто вызывает множество ошибок.
Например, мы часто утверждаем, что чэм;и,
«все политики — обманщики»,
потому что мы знаем, что политики а и Ь — обманщики. Однако, это
утверждение логически неверно: чтобы обобщить утверждение на всех
политиков, а не только на а и Ъ, мы должны быть уверены, что следующая
формула выводима в нашей системе аксиом:
I;
политик (х) —+ обманщик (х),
что (хочется надеяться) неверно.
2. Сравнивая аксиоматические системы для PL и PrL, можно заметить,
что аксиомы и правило для PL содержатся среди аксиом и правил для PrL.
Однако, логика высказываний имеет дело с высказываниями, тогда как
логика предикатов рассматривает более сложные объекты — формулы
логики предикатов.
3. Квантор 3 не включен в систему аксиом, так как он выражается
посредством -> V как было сказано в разделе 2.1.
4. Опираясь на пункт 2) следствия 1.12.2, мы можем заключить, что все
тавтологии PL выводимы в логике предикатов, если вместо высказываний в
них подставить формулы PrL. Например, высказыванию А w выводимому в
PL, соответствует формула PrL
<-> -і-іуз, которая выводима в аксиоматической системе, описанной в
определении 2.3.3. Таким образом, мы можем применить все тавтологии PL
к формулам PrL (в соответствии с теоремой о полноте 1.12.1) и получить
формулы PrL, выводимые в аксиоматической системе для PrL. □ 2.3.4
В PrL справедлива теорема об эквивалентной замене, подобная теореме
для PL. Ее доказательство аналогично доказательству соответствующей
теоремы в PL. ,--, , .. • < з । . .. •
§ 2.3. АКСИОМАТИЧЕСКОЕ ОСНОВАНИЕ ЛОГИКИ ПРЕДИКАТОВ 101
Теорема 2.3.5 (теорема об эквивалентной замене для PrL). Если формула
А, получена из формулы А путем замены некоторых вхождений
подформулы В на формулу В1г и выполняется где хи ..хп —свободные
переменные формул В и Blt являющиеся в то же время связанными в А,
тогда
I- А □ 2.3.5
((Зх)у> А (Зя)ст),
выражающие полную дистрибутивность кванторов V и 3 относительно
связок V и А соответственно, не являются истинными. Действительно,
формулы
.г ч .. (Vx) (у? V <т)-> ((Vx)y? V (Vx)a)
является аксиомой.
7) Если формула Д1 получена из формулы А заменой одного или
§ 2.3. АКСИОМАТИЧЕСКОЕ ОСНОВАНИЕ ЛОГИКИ ПРЕДИКАТОВ 103
нескольких вхождении терма х на терм у, тогда формула
□ 2.4.6
содержащий ни одной предпосылки, т. е. дизъюнкт вида:
Замечание 2.4.7. В следующем разделе мы будем изучать предложения
логики предикатов, т. е. формулы без свободных переменных
(определения 2.2.13 и 2.2.17).
Наш интерес к предложениям вызван двумя причинами.
1. Дизъюнкты (определения 2.4.1, 2.4.4, 2.4.4 и 2.4.6), используемые в
логическом программировании, являются предложениями PrL, в которых
все переменные связаны кванторами всеобщности.
2. Для каждой формулы <р логики предикатов с множеством сво-
бодных переменных {□?!,. .., Х^.} мы имеем:
h (-(VxJ. ..(Vxfc)y>
(где (=>) выполняется в соответствии с правилом обобщения, а получаем,
применяя аксиому 4) и правило Modus Ponens).
Таким образом, мы можем изучать предложение (VxJ... (Vxfc) вместо
формулы р>. □ 2.4.7
Определение 2.4.8. Программой называется конечное множество
хорновских дизъюнктов. □ 2.4.8
Проиллюстрируем это определение на примере. ■’
Пример 2.4.9. Пусть даны следующие утверждения на русском языке:<
j
Sx‘. Питер — вор. •<•■ . ’«• нМЗЛимХ •’Ц?
■ Sp Мэри любит шоколад. ’
Sp Мэри любит вино. “• .< э э q - С
54: Питер любит деньги. ’ ‘ * ' ' ''>,!л4 " '
55: Питер любит х, если х любит вино.
Sp х может украсть у, если х — вор и х любит у.
Введя константы «Питер», «Мэри», «вино», «шоколад» и «деньги»,
переменные х, у и предикаты «вор» (одноместный), «любит» (двуместный)
и «может.украсть» (двуместный), мы можем составить следующую
программу: ''Pb'Vi-.'
Ср. вор(Питер) ;
’• Ср любит(Мэри, шоколад) Дг • ■ .» 7
' Ср любит(Мэри, вино) ;
Ср любит(Питер, деньги)
Ср. любит(Питер, х) 4— любит(х, вино); .
Ср. может_украсть(х, у)«— вор(х), любит(х, у).
§ 2.5. ИНТЕРПРЕТАЦИЯ В ЛОГИКЕ ПРЕДИКАТОВ 107
где , /J
N: множество натуральных чисел, *
і <: отношение «меньше или равно» на N,
1: натуральное число 1.
Установим следующее соответствие между элементами А и си» волами
языка £:
символ Q соответствует отношению на множестве N,
символ а соответствует натуральному числу 1.
Пусть переменные х и у формулы S принимают значения на мне жестве
N. Тогда формула S в интерпретации А имеет следующи смысл: ;
S: существует такое натуральное число ж, «н тйД 6 ■ что для каждого
натурального числа у 4
выполняется отношение X у.
Таким образом, S утверждает, что в А существует минимальны элемент.
Это, конечно, верно для А, так как 1 является минимал» ным элементом А.
Теперь определим другую интерпретацию того же самого языка J
•4' = (N, >, 1),
где предикат Q соответствует отношению «>» — «больше» на множестве
натуральных чисел, а константа а соответствует числу 1.
В этой интерпретации формула S имеет следующий смысл:
„ S: существует такое натуральное число х, что *. ;
для каждого натурального числа у выполняется отношение х > у.
В данном случае S утверждает, что в А' существует максимальный элемент,
а это, очевидно, неверно, так как А' не имеет максимального элемента.
В итоге, мы видим, что можно определять различные интерпретг ции для
одного и того же языка, приписывая при этом различны истинностные
значения предложениям. □ 2.5.
■ г:
£(l)eN. . ,чч ■ ■ Q 2.5.3
110 Глава 2. ЛОГИКА ПРЕДИКАТОВ
е(=) есть —' — равенство на множестве {2п | п Є No}„ , ., е(*) есть *' —
умножение на множестве {2п | п е N0},et; >ад е(+) есть +'— сложение на
множестве {2п | п Є N0}, ’TH > е(0) есть О' — нулевой элемент операции
+'. ’
Как отмечалось ранее, предложение языка может быть ♦истинным» в
одной интерпретации и «ложно» в другой. Например, предложение
(By) (Vx)(a: * у = х), утверждающее о
существовании единичного элемента операции истинно в Л и ложно в А'.
□ 2.5.4
Теперь мы дадим индуктивное определение истинности предложения в
интерпретации А.
Определение 2.5.5 (индуктивное определение истинности предложения в
данной интерпретации). Пусть
~ {Ло, > • • •> fo, fi > • • •, CQJ С],...} ,ff(
— некоторый язык, и Л — некоторая его интерпретация.
а) Интерпретацией основного терма t называется такой элемент E(t) Є
А, что
если t есть константа с, то e(t) = є(с);
если t имеет вид /(tu ..., t„), где і,,..tn — основные термы, ТОГда e(i) = e(/)
(e(tI),..., e(t„)).
б) Атомарное предложение tn) истинно в интерпрета
ции А тогда и только тогда, когда
> ;
• •' (£(*(), є(іп))Єє(Л£).
в) А |= <=> А <р\
г) А |= 9?! V 9?2 <=> А <р] или А |=
д) А = 9?] А 9?2 о А |= 9?i и А |= у>г\
е) А |= у?! —»</?2 <=> А у?] или А £ 9?2;
ж) А |= у?] w 9?2 о (А |= у?] и А |== р2) или М Н= Pi и Д 9з2);
з) Л|=(\/и)9?(и)ф> существует элемент а Є А такой, что Д'99(c), где с ^ £,
и Д' получена из А путем добавления элемента е(с) = а;
и) А |= (Vu)9?(u)<=> для любого элемента а е А выполняется Д' [= |=
99(c), где с $ £, и Д' получена из А путем добавления □ 2.5.5
Замечание 2.5.6. 1. Согласно определению 2.5.5 и замечанию 2.3.7 мы
имеем
языка £* — £и{с], ...}, где с,, с?,... $ £, фиксируя при этом следующую
интерпретацию символов с1? ...: д(с1) = а), — .
Интерпретация А* называется элементарным расширением интерпретации
Л. □ 2.5.11
Пример 2.5.12. Предположим, что
0,1}, А = (N, =,«,+,*, 0, ,
Тогда мы можем построить язык .Д' 7?,,’ '
£’ = {=, ^,+, *,0, 1,С,,С2, ...} ‘л'
и его интерпретацию , ;оф.іох.ш код
А* = (N, =, +, *, 0, 1,2, 3,...). □ 2.5.12
А* P(tlt..e(tk))ee(P) q
и e(ij),e(tk) є А*, є(Р)СА к
-Л S(P) fljj
* и e(t(),є(<*)є Д, є(Р)САк, ж]
■ : bи
так ° — предложение языка £ J?
как
114 Глава 2. ЛОГИКА ПРЕДИКАТОВ 1
|= P{t\.,..tk).
ф
Случаи а: -чр, а: <рУр',а: рлр'исг. <р —* р>’ рассматриваются
аналогично.
Пусть предложение а имеет вид (Згг)у?(я), где х — единственная
свободная переменная формулы (р. Тогда
A* h= (3)<^(ж) о j
для некоторого элемента а € Д’ и константы с є(с) = а ,/г
ч
КС| = Л = С« J
•:«.;Х'д •. Л
*г-'-
или, по определению 2.5.5 ж), .? •; 1 v ■ . .
А ]= (Эж)-’(ж = х). '■■■ <■
. -А;
Используя двойственность V и 3, получаем ......
А |= -’(Vz) (ж = z),
что противоречит рефлексивности отношения равенстве* □ 2.5.17
Пример 2.5.18. Стандартная интерпретация Мзыка £ = = {=><>+>*, 0> 1}
имеет вид: ..
Л = (N, 0, 1). ,,'jp э-
Рассмотрим другую интерпретацию языка С
Я rV $'• «г
S = (Q,=,^,+,*,O, 1). л ...
где Q — множество рациональных чисел.
Пусть предложение а имеет следующий вид (формальное определение
плотного порядка):
(Vz) (Vy)[-i(z = у) -> (3z)[->(2 = z) Л -п(г - у) Л (х <^) Л (z у)]].
Тогда А ст, но В |= о. -v * □ 2.5.18
116 Глава 2. ЛОГИКА ПРЕДИКАТОВ
Точно также, как в PL, в каждом языке PrL существуют предло- жения,
истинные во всех интерпретациях этого языка.
Определение 2.5.19 (Общезначимая формула). Если формула а языка £
истинна во всех интерпретациях £, то она называется общезначимой или
логически истинной. □ 2.5.19
Пример 2.5.20. Пусть — произвольное предложение языка С, и V* —
произвольная формула £. <
Тогда предложение Л
5: {{Р(а)},ЬР(а),Р(/(х))}}, N
где а -і- константа. Тогда
.Яо = {«}, ■ --.ntpij;'*• Т <Т>') ,йО < J / . . ,;І .s-
д.7. ^ = {а, f(a)}, nn'Stp: ’. XU. . ■ ’ у м к с
; ШХх'< #2 = {a, /(a), /(/(a))},. \' "Г
О (Л’ • • О € R bi? .
Таким образом, мы имеем эрбрановскую интерпретацию \н.
Положим A' ~{t 11 є Н}. Строим интерпретацию Д', беря в качестве
области интерпретации А', а в качестве интерпретаций функциональных и
предикатных символов — сужение на множестве А' соответствующих
интерпретаций из А. Из того, что А |= 92, и интерпретации всех термов,
встречающихся в 92, содержатся в Д', следует, что А' 92. Отсюда, по
определению Аи следует Аи [= 92.
Следовательно, предложение 92 действительно выполнимо в эр-
брановской интерпретации. □ 2.7.7
Согласно теореме 2.7.7, если предложение 92 не выполнимо в эр-
брано.вской интерпретации, то 9? не выполнимо, т. е. не существует
интерпретации, в которой -оно истинно.
Другими словами:
С помощью эрбрановских интерпретаций мы сводим проблему невы-
полнимости множества дизъюнктов к проблеме невыполнимости
множества основных примеров этих дизъюнктов на эрбрановском
универсуме. Так как в основные примеры дизъюнктов не входят
переменные, выполнимость может быть доказана с помощью методов
логики высказываний, таких как метод семантических таблиц и метод
резолюций.
Метод семантических таблиц Бета и метод резолюций являются
алгоритмическими доказательствами (в отличие от обычных методов
проверки выполнимости в PrL, пример 2.5.17). Этот результат в
£у>(с)
для всех с
Up
ДЛЯ новой с
>h‘P<(J. . !■ м' д : IVIV 11.I'M’:О
:Л‘ ■ С л.<5 ■, І!'-. Г..«KjM'UMOTs ■
, 4 . тЦ. ь :
■*> І ; t(г-
128 Глава 2. ЛОГИКА ПРЕДИКАТОВ
вершина 1
/((Vx)y?(x) -> (Эх)^(х))
вершина 2
вершина 3
л>, 'Ц’< у
t(Vx)(P(x)-> Q(x)) L ^H<W; ." jf V-;
тЮіЧ?; , ftfxMx)
> ■* .HjUKftTi? r:-',q ox s
■¥
/Q(c)
®
для новой с
7U-, .■ Рис. 2.3
Семантическая таблица
P;
. Йе) для всех с
для i(Vx)9?(z) (или двойственная
/Ю?Д.ІЛК ?
таблица для /(Зж)</?(ж))
Г'Щ .ИЙТ^ ■ позволяет нам объявлять
•■офт^н’} *(^(с) формулу 9?(с) истинной
(соответственно ложной) для
~ Q( ))
> c •Щі
Г'
всех констант с. Семантическая
'4 / \ таблица для t(3x)<p(x) позволяет
нам объявлять ■' <£>(с)
•,» Т.ЬМЇ І \
истинной только для тех
/Р(с) tQ(c) жир чр
констант, которые еще • не
И Jv'rt.
встречались в систематической
•;пів пи шріт - таблице.
* 0 , ЭИ RS' 0
Следующий
ЙН -«■ пример демонстрирует, что могло бы произойти без
,’Г Рис. 2.2
этого ограничения.
Пример 2.8.4. Рассмотрим предложение (3x)</?(x)-♦ -♦(Vx)yj(s). Это
предложение не общезначимо, так как существование х, такого что
формула <р(х) истинна, не влечет истинность у>(л) для всех х (например,
из существования х такого, что х > 3 не следует, что х > 3 верно для всех х).
Однако, см. рис. 2.3.
В вершине 5 мы не имели права использовать ту же константу, что и в
предыдущей вершине 4. Поэтому нам удалось «доказать», что
предложение (Зх)ф(х) —> (Ул)</?(з;) общезначимо, тогда как это,
очевидно, неверно. □ 2.8.4
Из-за таблиц 11 и 14 (см. рис. 2.1) систематическая таблица может быть
бесконечной, если в одной из ее ветвей не удается по-
5 Г. Метакиденс. А. Нероуд
130 Глава 2. ЛОГИКА ПРЕДИКАТОВ
£ [Л(со, co)] 1
.н' 1 ■!
'дтс- ® . до i[A
(c
1>С1)]
й і• .
'-;»п ''в.-.:?•*> >1
к
5
»
132 Глава 2. ЛОГИКА ПРЕДИКАТОВ
■
6
§ 2.8. МЕТОД СИСТЕМАТИЧЕСКИХ ТАБЛИЦ 133
ключительную вершину дерева Т с его корнем, называется ветвью дерева
Т. □ 2.8.9
Пример 2.8.10. 1
следующим условиям.
1. Корнем дерева Т является произвольная точка. Вершины, отличные
от корня представляют собой основные примеры атомов Рр...,Р л на
универсуме {д1;..., ап,..Каждая вершина имеет в точности две последующих
вершины, а именно Pf(a,i,. •а,*) и ~'РАаи, • • Ч aik)'
2. Каждая ветвь таблицы Т, содержащая в точности основные примеры
(дн,..., Дц),..., Рі{арї,..арк,} » .
представляет КОНЪЮНКЦИЮ .
»f ■4
S
ТИ
Н '■ЧГ.г * . Р(а) Р(а)
противор.
Q(a) 'Q(a) c 1 8
>
«7
«'ИИЛІИНТН
О;
'.Az P(a)
-оП Л1
^°> V .
Л ОА: Н ’■ Q(/(a)) Л. -<?(/(«))
[ ,:л ;л iirtz- КЄ’; ■
.11
., ® 3 , , ZNltOFi ® 2 <v.K •< ЬОіШНТЗН Kita
1
F
ЧГ ■* ' I м ( I I’fpl
§ 2.8. МЕТОД СИСТЕМАТИЧЕСКИХ ТАБЛИЦ 137
Пример 2.8.15.
г
> H = {k/(O.9(6)./(/(6))....}, ...
•„f- Г ‘7 ’ ,
а основные пртмеры образуют множество ;............
_ 'ПЭН ноджкя,
Семантическое-дерево ДЛЯ
4Ч Р(5(Ь))
ЮТ отв .инжО”';
ЙММ‘ ffs-
іГ
®2
jfife >1<J-SQ.
®3 ® 1 ПУХ ЛІОН !•>$(
,боД . и
і иятза ЙОЯМЕ-
□ 2.8.15
Как говорилось ранее, число шагов, необходимых для достижения
заключительной вершины противоречивой ветви, существенно зависит от
порядка использования атомов при построении дерева.
В замечании 2.8.11 мы упоминали о том, что семантические таблицы и
замкнутые систематические таблицы являются деревьями. По лемме
Кёнига (лемма 1.11.9) каждое конечно ветвящееся дерево с бесконечным
числом вершин имеет по крайней мере одну бесконечную ветвь.
Следовательно, если S невыполнимо, то построение его семантического
дерева приведет через конечное число шагов к обнаружению эрбрановской
интерпретации Ан такой, что S. Если S выполнимо, то результатом
соответствующего построения будет бесконечное дерево, V) каждая ветвь
которого будет определять эрбрановскую интерпретацию, на которой
выполняется S. Это заключение составляет содержание теоремы Эрбрана,
/\ .. эння.*' ;
ао ~ оо
,
Оп ~^ап
Теперь предположим, что S не опровергается семантическим деревом.
Тогда построение, описанное в нашем алгоритме никогда не закончится.
Однако, в этом случае по лемме Кёнига дерево содержит бесконечную
ветвь ж. Для каждого основного примера ап ветвь ж в качестве некоторой
своей вершины содержит либо ап, либо его отрицание -,ап.
Определяем эрбрановскую интерпретацию следующим образом.
Для каждого п-местного предикатного символа Р и термов ip • • м tn,
интерпретации которых принадлежат эрбрановскому универсуму для S,
интерпретация Р есть отношение
Ф»))>
где P(tj, ..tn) является какой-либо вершиной бесконечной ветви. Очевидно,
что на этой интерпретации выполнимы все дизъюнкты множества S.
Следовательно, множество S выполнимо. □ 2.8.16
Фактически, теорема Эрбрана предоставляет возможность при проверке
выполнимости предложения или множества дизъюнктов S использовать
методы логики высказываний, например, метод семантических таблиц или
метод резолюций. Если S невыполнимо, то существует множество
основных примеров дизъюнктов множества S, которое также будет
невыполнимым. Это конечное множество состоит из высказываний PL, и
его невыполнимость может быть обнаружена известными нам методами.
Таким образом, для каждого, множества дизъюнктов 'S мы начинаем
перечислять все основные» примеры дизъюнктов из S. Во время
выполнения этой процеду-J ры мы систематически проверяем
выполнимость каждого конечного^
§ 2.8. МЕТОД СИСТЕМАТИЧЕСКИХ ТАБЛИЦ 139
Р(Ь)
®3 - Р(5(Ь)) РЩ)
|Nt.
Q(/(p(b)), 5(b)) ';^Q(/(S(i>)b(b)) ® 2
I •' Я I
( 12 3
;(1)
(2) -В
(3) С
(4) -ДА ‘ <• ’’ ’’ '^5
■. (5) -ДВ . ,■
Л
- (6) В
(7) □ резолюция (3) и (5)
резолюция (2) и (6) ’
В этом месте мы должны отметить, что невыполнимое множество
основных примеров, определяемое нашим алгоритмом построения
семантических таблиц, не всегда минимально.
Так в предыдущем примере подмножество J
^Ьвщс'М-.с.в}} >!
<
'—v—/ \„---------------/ ... . , ,0,?. .
12 3
(О -в
4ГЦ (2) С
Н = {a, f(a, а), f(a, f(a, а)), а), а), /(/(а, а)Г/<а, а)),..
{Р(а, а), Р(а, /(а, а)), Р(/(а, а), а), Р(/(а, а), а)),..
• й_. з
ей
.в?; ’’чіст
§ 2.8. МЕТОД СИСТЕМАТИЧЕСКИХ ТАБЛИЦ 143
. C^ = {P(f(g(c)),g(d)),Q(a,b,x)} С* = С2.
j *
DS(S0MO3) = <Z) ||
! 4-
ітельно, S унифицируемо и его НОУ имеет вид"
НОУ = 0О0,0203 = {z/a, x/f(g(a)), y/g(a)} □ 2.9.9
.- sI
Пример 2.9.10. Дано множество формул:
s = {Q(y, у), Q(z, f(z))}. <
Определить, унифицируемо ли S. Если да, найти НОУ. Uh* ux WM
Шаг 0: Ь 0О — Е Г << ' Г! 'г : - і•U
' Шаг 1: S60 = S ’ъчд.... • у^іг.ох^иг‘ТЭЙТ-.ЮЭ
, ,..DS(S0O)=O5,={!,,Z}
.‘ 7 І * ПВ негативна *' > !■■/'/<
' Полагаем = {y/z}
Шаг S^,={Q(z,z),Q(z,f(z))}
DS(SW = DS2 = {z,f(zn ■* । «О’
' ет ‘ ПВ позитивна, z встречается в f(z). W
Следовательно, S не унифицируемо. □ 2.9.10
148 Глава 2. ЛОГИКА ПРЕДИКАТОВ
1
)> < ,ч * •. »• С2 = {->Р(и, v), Р(у, и)}. •; •; 3.. А,У- і I
Мы хотим сделать заключение '
C3 = {~'P(x,y),^P(z,y),P(x,z)}.
■
Соответствующее обозначение для С\, С2 и С3 в контексте PrL им< ет вид
(Vx)(Vy)(Vz)[P(x,y)AP(y,z)-*P(x,z)] для С]
.. (Vu)(Vv)[P(u, v)-*P(v, и)] для С2 ■. ' jj
■ r.,:^ (Vs)(Vy)(Vz)[P(s, y)AP(z, у)^Р(х, z)] для С3
Метод I. Мы работаем непосредственно в контексте PrL. і Дизъюнкты С,,
С2 и С3 эквивалентны предложениям
(Vs) (VT/) (Vz)[-P(s, у) V ^Р(у, z) V Р(х, z)J (1) •J.. л
' (Vu) (Vv)[~iP(u, v) V P(v, u)] 4 «гзэд (2)
-оно.. Olv (Vx) (Vz)f-1p(s, у) V ->P(z, у) V P(s, z)] «9UW (3)
' 1 r-r /AC RSH
( Проводим переименование переменных предложения (2J>
§ 2.8. МЕТОД СИСТЕМАТИЧЕСКИХ ТАБЛИЦ 149
Тогда:
VW б». . ' 'v; >іГ/У‘ЛМ ,1-ыда
а) : >V.
ПГ
№. ЦІХ> /ж/Питер >ї!
у)}
{-<любит(Пите|І,у)} •
,h.~"
іеньги
3(і
ї 0Ч|?<
Ct {-ілюбит(Питер, у)}
<н Т' \ / І;
у, ft. \ / у/деньги
... □ 2.10.14
. ?■. • |= □ 2.10.15
НЙЛКХЙЗ ИН Л^ьЄОЙ.3
§ 2.12 Упражнения
3) P(f(x, У), 9(z), а) и P(f(y, х), д(и), а); . су •• . е б) Р(х, х) и Р(х, у).
Решение, а) да (почему?); б) нет (почему?)., ,
5. 12.7. Докажите, что ,.ъ
а) если free(х, а, А), то Ь А(х/а) —♦(Зх)А; ..
б) h(Vx)A^A; •:
» Ь4-.(3»)Л; ‘
г) H(Vx)A->(Зі)А; > хн-^смкрі
■Л) ••о .
Тогда-Примеры на множестве Яо для S суть • ч! ’
■■> Z Sn^{{P(f(a),a,g(f(a),b))}}, SK={{P(f(b),a,g(f(b),b»}}.
'a)[(3a;)P(z)-.(Vx)Q(a;)]->(Vx)[P(x)^Q(a:)]; J
г^б)-(Vx)P(x)w(3x)(-«P(r)); - ■
:в) (Vx)(P(x) A Q(x)) ((Ух)Р(х) л (Vx)Q(x)\,
г) (Зх) (P(x) V Q(x)) (Зх)Р(г) V (Bx)Q(x);
д) (3x)(\/y)P(x, y) -> (Vj/)(3x)P(x, y).
§2.12. УПРАЖНЕНИЯ 165
Решение, а) См. рис. 2.7 По определению 2.3.7, предложение а)
доказуемо по Бету, то есть его можно доказать посредством ЗСТ.
в) См. рис. 2.8. Построенная таблица замкнута и противоречива,
следовательно, она содержит доказательство предложения в). J
166 Глава 2. ЛОГИКА ПРЕДИКАТОВ
Л[(Зх)Р(х) ^(Vx)Q(x)]
1
/[(Vs)№) -> Q(x))]