Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Слэйгл Д. Искусственный интеллект. Подход на основе эвристического программирования

.pdf
Скачиваний:
13
Добавлен:
25.10.2023
Размер:
12.47 Mб
Скачать

А В Т О М А Т И Ч Е С К ОЕ Д О К А З А Т Е Л Ь С Т В О Т Е О Р Е М

101

зольвенты. Резолюция единичных элементов является частным случаем семантической резолюции, которая при определенных условиях ограничивает резолюцию одним из q\ возможных способов, причем il— не обязательно еди­ ничные элементы.

5.2.СТРАТЕГИИ . И С П О Л Ь З У Е М Ы Е ПРИ Д О К А З А Т Е Л Ь С Т В Е Т Е О Р Е М

НА ОСНОВЕ П Р И Н Ц И П А Р Е З О Л Ю Ц И И

Стратегией в доказательстве теорем с использованием принципа резолюции является эвристика, аналогичная порождающей процедуре для деревьев игр. Действитель­ но, стратегия «сначала вширь» аналогична порождающей процедуре «сначала вширь». Программы для нахождения доказательства или отыскания следствий, основанные на принципе резолюции, должны иметь стратегию (правило) для выбора очередного действия, т. е. для выбора тех предложений и литер, для которых нужно определить множитель или резольвенту. Ниже описаны три страте­ гии: «сначала вширь», «предпочтение единичным элемен­ там» (unil-preference) и стратегия «опорного множества». Стратегия «опорного множества» применима только при поиске доказательства, в то время как две другие стра­ тегии могут использоваться в обоих типах доказатель­ ства теорем. При нахождении доказательства стратегия включает условие окончания, например наличие проти­ воречия или какой-либо другой критерий окончания.

Стратегия «сначала вширь» рассматривается нами по трем причинам. Она несложна для понимания, является основной стратегией,'-используемой в программе Ли для. отыскания следствий, и использовалась Робинсоном в теоретических целях, например в данном им доказатель­ стве полноты принципа резолюции для нахождения доказательств. Стратегия начинается с порождения всех

множителей для

первоначально

заданных

предложений.

Определяется, что первоначально

заданные

предложения

и их множители имеют уровень 0. Исходя из этих

предло­

жений нулевого

уровня, стратегия порождает

уровень

1 путем получения резольвент и множителей этих новых резольвент. Из предыдущих (уровня 0и уровня 1) предло-

102

ГЛАВА S

 

жений стратегия порождает уровень 2, полѵчая резоль­ венты H множители этих новых резольвент. Затем страте­ гия порождает уровень 3 и т. д.

Стратегия «предпочтение единичным элементам» (Вое и др., 1964) производит дедуктивный вывод предложений, содержащих возможно меньшее число литер. Одним из преимуществ этой стратегии является то, что короткие предложения легче обрабатывать, чем длинные. Главным же достоинством этой стратегии для нахождения доказа­ тельства является то, что предложение, содержащее про­

тиворечие, которое программа стремится

получить,

мо­

жет рассматриваться как

предложение, не

состоящее

из

литер. Хотя эта стратегия

не применялась для отыскания

следствия, она могла бы оказаться полезной и для этой цели, так как интересные следствия, как правило, корот­ ки. По определению предложение /-го порядка есть пред­ ложение, состоящее из / литер. Таким образом, единич­ ны}! элемент является предложением 1-го порядка.

Стратегия «предпочтение единичным элементам», как свидетельствует ее название, дает наивысший приоритет резолюции единичных элементов. Кроме того, эта страте­ гия приписывает второй по величине приоритет ре­ золюции двух предложений, резольвента которых имеет наименьшее ожидаемое число литер. Ожидаемое число литер для одного предложения /г-го порядка и одного предложения /-го порядка равно h + / — 2, так как во время поиска резолюции по крайней мере две литеры вы­ черкиваются. Таким образом, например, стратегия уста­ новит следующий порядок нахождения резольвент: еди­ ничный элемент с единичным элементом, единичный эле­ мент с предложением 2-го порядка, единичный элемент

с предложением

3-го порядка, единичный элемент с пред­

ложением 6-го порядка, затем

предложение 2-го порядка

с предложением

3-го

порядка,

предложение 3-го порядка

с предложением 4-го

порядка,

предложение 2-го порядка

с предложением

6-го порядка

и т. д.

Стратегия «предпочтение единичным элементам» на­ чинает с поиска резольвент единичного элемента с еди­ ничным элементом. Например, в табл. 5.5 процедура по­ иска доказательства с использованием этой стратегии пы­ тается, но безуспешно, сопоставить Р2 и РЗ. Далее она

А В Т О М А Т И Ч Е С К ОЕ Д О К А З А Т Е Л Ь С Т В О Т Е О Р Е М

103

Таблица 5.5. Стратегия «предпочтение единичным элементам»

Имя

 

 

 

 

 

 

 

 

 

Основание

предло­

 

 

 

 

Предложение

 

 

жении

 

 

 

 

 

 

 

 

 

 

 

 

PI

— Часть

(,ѵ,

ѵ) V

часть (ѵ, у) \ /

часть (.ѵ, у)

Задано

 

 

Р2

Часть

(палец,

кисть

руки)

 

 

То же

 

РЗ

Часть

(кисть

руки,

рука)

 

 

»

 

 

Р4

Часть

(рука,

человек)

 

 

 

 

 

 

Р5

— Часть

(палец,

человек)

 

 

Отрицание

дока­

 

 

 

 

 

 

 

 

 

 

зываемого

 

 

 

 

 

 

 

 

 

 

 

утверждения

Р6

— Часть

(кисть

руки, у) V часть (палец, у)

г[Р2,

PlaJ

 

Р7

Часть

(палец,

рука)

 

 

 

 

/•[РЗ,

Рба]

 

Р8

— Часть

(кисть

руки,

человек)

 

г[Р5,

Р6Ь]

 

Р9

— Часть

(х,

палец) V

часть

(х, кисть руки)

r[P2,

PI h]

 

Р10

— Часть

(рука,

у) V

часть

(кисть

руки, у)

r|P3,

Pia]

 

Р Н

Часть

(кисть

руки,

человек)

 

 

r[P4,

PlOa]

Р12

Противоречие

 

 

 

 

 

 

л[Р8,

P l i ]

пытается доказать

попарно идентичность

четырех

эле­

ментов от Р2 до Р5, но не достигает успеха. Следующей

ее попыткой

является сопоставление элемента

Р2 с

пер­

вой литерой

предложения 3-го порядка P l .

Это удается,

в результате

чего

получается предложение 2-го порядка

Р6. Затем стратегия сопоставляет элементы с этим

но­

вым предложением

2-го порядка вместо того,

чтобы

сра­

зу рассматривать предложение 3-го порядка. Резоль­ вентой РЗ и первой литеры Р6 является элемент Р7. По­

пытка сопоставить

с Р7 другие элементы

не приводит

к успеху. Поэтому

стратегия возобгозляет

сопоставле­

ние элементов с предложением 2-го порядка Р6 и получает Р8. Попытка сопоставить другие элементы с Р8 не при­ водит к успеху. Тогда стратегия возвращается к сопо­ ставлению элементов с предложением 2-го порядка Р6. Не добившись успеха, стратегия вновь проводит сопостав­ ление с предложением 3-го порядка PI и получает пред­ ложение 2-го порядка Р9. Затем, прежде чем продолжать

104 ГЛАВА 5

сопоставление с предложением 3-го порядка, стратегия пытается сопоставить элементы с новым предложением 2-го порядка Р9. В результате этого сопоставления тре­

буемый результат

не достигается, поэтому

стратегия

возобновляет попытку сопоставить элементы с

предложе­

нием 3-го порядка

P l . Это сопоставление дает

предложе­

ние 2-го порядка Р10. Как обычно, следующим шагом стратегии является не продолжение сопоставления с предложением 3-го порядка, а сопоставление элементов с новым предложением 2-го порядка. Это сопоставление приводит к образованию элемента Р11. Затем стратегия, прервав сопоставление с предложением 2-го порядка Р10, сопоставляет другие элементы с новым элементом Р11. В результате получается противоречие Р12, которым и завершается доказательство. Вычислительная машина вы­ дает доказательство на печать (табл. 5.5), опустив при этом несущественные предложения Р7 и Р9.

Стратегия опорного множества используется в про­ грамме Boca и др. для нахождения доказательства, но она не применима к нахождению следствия. Экспериментатор называет некоторые (например, заданные) предложения «аксиомами», а все другие предложения относит к «опор­ ному множеству». Программа никогда не ищет резольвен­ ту от двух аксиом (или их множителей). Все другие ре­ золюции допустимы. Вое и др. экспериментально пока­ зали, что стратегия, сочетающая в себе стратегию «опор­ ного множества» со стратегией «предпочтение единичным элементам», часто более эффективна, чем стратегия «предпочтение единичным элементам», взятая отдельно. Доказано (Слэйгл, 1967; первоначально Вое и др. доказали несколько более слабую теорему), что стратегия «пред­ почтение единичным элементам» является полной в сле­ дующем смысле. Если аксиомы правомерны (логически совместны), то противоречие (предполагается, что оно существует) может быть найдено за конечное число ша­ гов; при этом не допускаются резольвенты каких-либо двух аксиом (или их множителей). В табл. 5.6 предложе­ ние Р5 является единственным предложением, входящим в опорное множество.

Стратегия «опорного множества» не будет пытаться подбирать для разрешения пары литер из аксиом PI—Р4.

А В Т О М А Т И Ч Е С К ОЕ Д О К А З А Т Е Л Ь С Т В О Т Е О Р Е М

 

 

105

Таблица

5.6.

Стратегия

«опорного множества» (предполагается,

что Р5 — единственное предложение, составляющее

опорное

 

множество литер)

 

 

 

 

 

 

 

 

 

Имя

 

 

 

 

 

 

 

 

 

 

 

предло­

 

 

 

 

Предложение

 

 

Основание

жения

 

 

 

 

 

 

 

 

 

 

 

PI

— Часть

(х, v) V

часть (ѵ, у) \ / часть (х,

у)

Задано

 

Р2

Часть

(палец,

кисть

руки)

 

 

То же

 

РЗ

Часть

(кисть

руки,

рука)

 

 

»

 

Р4

Часть

(рука,

человек)

 

 

 

 

 

Р5

— Часть

(палец,

человек)

 

 

Отрицание

 

 

 

 

 

 

 

 

 

 

доказываемого

 

 

 

 

 

 

 

 

 

 

утверждения

Р6

— Часть

(палец,

v) V

часть (ѵ,

человек)

 

г [ Р ! с ,

Р5]

Р7

— Часть

(кисть

руки,

человек)

 

 

г[Р2,

Рба]

Р8

— Часть

(палец,

рука)

 

 

 

г[Р4,

Р6Ь]

Р9

— Часть (кисть руки, ѵ)\/ — часть (ѵ, человек^

г[Р1с,

Р7]

Р10

— Часть

(рука,

человек)

 

 

г[РЗ,

Р9а]

Р11

Противоречие

 

 

 

 

 

 

/•[Р4,

Р10]

5.3. П Р О Г Р А М Л и ,

И С П О Л Ь З У Ю Щ А Я

П Р И Н Ц И П

 

Р Е З О Л Ю Ц И И Д Л Я Н А Х О Ж Д Е Н И Я Д О К А З А Т Е Л Ь С Т В

Вое и др. (1964) составили программу для нахождения

доказательств

с

использованием

принципа

резолюции.

На самом деле они предложили несколько программ, но мы опишем только одну из них. Вначале программа была составлена с использованием процедуры «сначала вширь», а затем по очереди были введены стратегии «предпочтения единичным элементам», «опорного множества» и резо­ люция единичных элементов. По мере того как вносилось каждое из этих изменений, действие программы последо­ вательно улучшалось. В то время как для доказательства одной теоремы при использовании стратегии «сначала вширь» требовалось 30 мин, при использовании страте­ гии «предпочтение единичным элементам» на одну теоре­ му затрачивалось уже менее 1 с. По затратам машинного времени и объема памяти эта программа значительно более эффективна, чем программы для нахождения доказательств

105

Г Л А ВА 5

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

5.4. ПРОГРАММА,

И С П О Л Ь З У Ю Щ А Я

П Р И Н Ц И П

Р Е З О Л Ю Ц И И

Д Л Я ОТЫСКАНИЯ

С Л Е Д С Т В И Й

Программа, написанная Р. Ли (1967), использует принцип резолюции для отыскания следствий, вытекаю­ щих из заданных аксиом. Здесь будет описан наилучший из существующих вариантов этой программы. В ка­ честве конкретного примера (подробно разбираемого ни­ же) предположим, что программе заданы в качестве аксиом первые четыре предложения табл. 5.7. С помощью этих предложений аксиоматически вводится ассоциативная си­

стема

с

левой

идентичностью

и

инверсная

 

слева.

Почти сразу же программа начинает

выдавать на

печать

следствия

(заключения),

которые

могут быть

получены

из этих

аксиом.

Первые

следствия

очевидны,

но

затем

следствия становятся все более и более сложными. Пред­ ложения, действительно напечатанные программой, вклю­ чают предложения С5 — С13 табл. 5.7. Среди них имеют­ ся, например, такие интересные следствия, как «инверсия слева является также инверсией справа» (предложение СЮ) и «если существует левая идентичность, то суще­ ствует и правая идентичность» (предложение С13).

Приведем теперь несколько деталей, касающихся про­ граммы. В программе используются стратегия «сначала вширь» и резолюция единичных элементов. Резолюция не производится, если ожидаемое число литер в резоль­ венте превышает некоторый параметр п, скажем четыре. Например, не будет производиться резолюция предложе­ ния, состоящего из четырех литер, относительно предло­ жения, состоящего из трех литер, так как ожидаемое

А В Т О М А Т И Ч Е С К ОЕ Д О К А З А Т Е Л Ь С Т В О ТЕОРЕМ

 

 

107

Таблица

5.7.

Пример

 

нахождения

целевой

последовательности

программой

поиска

следствий1

 

 

 

 

 

 

 

Имя

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

предло­

 

 

 

 

 

 

Предложение

 

 

 

Основание

жении

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Cl

-

Р (х,

у,

и) V -

Р

(У, г, и) V -

Р (X,

в, w)

Ассоциативность

 

 

V Р(и,

г,

 

ш)

 

 

 

 

 

 

 

 

 

С2

-

Р (X,

у,

u) у

Р (у,

г,

V) V -

Я (н, Z, It)

То же

 

 

 

VP

(X,

 

w)

 

 

 

 

 

 

 

 

 

СЗ

Р (е,

X,

X)

 

 

 

 

 

 

 

 

 

 

Левая

идентич­

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ность

 

С4

P{i

(X),

X,

е)

 

 

 

 

 

 

 

 

 

Левая

инверсия

С5

Р(х,

е,У)

V

Р « г

>

и>)\/Р(и,

 

z, w)

rlCIb,

СЗ]

С6

Р(і(х),

е,

и)\/Р(и,

 

X,

е)

 

 

 

г [С4,

С5Ь]

С7

-

Р

(i [X).

 

 

 

 

 

y.u)V-P(y,z,e)V-P(" z, к)

r[C2d,

Сба]

 

 

V Р {w, X, е)

 

 

 

 

 

 

 

 

 

С8

Р(х,

z,

е)Ѵ

Р (е,

г,

w)V

Р

(и. * e)

л[С4,

С7а]

С9

Р(х,

г,

е) У

P{z,

X,

е)

 

 

 

 

r[C3,

С8Ь]

СЮ

Р(х,

«(*).

е)

 

 

 

 

 

 

 

Р (х,

г[С4,

С9а]

СП

— Р

(х) ,*>,;» V Я (г, z, w)V

г1С2а,

СЮ]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

V, w)

С12

— Р (е,

X,

w)V

Р

 

е> w)

 

 

 

 

r[C4,

Cl 1а]

С13

Р (X,

е,

х)

 

 

 

 

 

 

 

 

 

 

г [СЗ,

С 12а]

1 Представлены только

те

предложения,

которые существенны для целевой

псследооа'. ельности.

 

 

 

 

 

 

 

 

 

 

 

 

число

литер

будет 4 +

3 — 2 =

5.

Программа

исполь­

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

гими словами, для двух следствий

резольвента

никогда

не ищется.

Однако программа добавляет к

аксиомам

«интересные»

следствия, так что

интересные

следствия

при поиске резольвенты могут быть сопоставлены с дру­ гими следствиями. Ли ввел в свою программу критерий «интересное™» следствия. Грубо говоря, следствие рас­ сматривается как интересное, если оно после выполнения возможных упрощений не превращается в тривиальное следствие некоторой аксиомы или ранее полученного

108

Г Л А З А 6

интересного следствия. Критерий Ли здесь не будет под­ робно излагаться, так как он является довольно специ­ фическим. Проблема определения «интересноетн» следст­ вия является весьма существенной для отыскания следст­ вий и заслуживает интенсивных исследований.

Следствие, порожденное программой, отбрасывается, если оно является единичным предложением, которое представляет собой тривиальное следствие некоторой аксиомы или интересного следствия, полученного ранее. Например, вновь порожденное следствие Р(е,.е, е) будет отброшено, если некоторая аксиома или полученное ра­ нее интересное следствие было Р(е, х, х), где х—пере­ менная, а е — константа.

Программа была испытана при доказательстве 45 тео­ рем, взятых из книги В. Ледермана (1964). Для каждой «книжной теоремы» Ли задавал программе аксиомы и гипотезы (посылки), соответствующие теореме, и про­ грамма пыталась получить формулировку теоремы в ка­ честве следствия. Заметим, что это отличается от порожде­ ния «книжной теоремы», исходя из одних только аксиом. Программа породила целевые следствия в 41 из 45 тео­ рем. Для каждой из 41 теоремы программа решила, что предложение, представляющее собой вывод, было инте­ ресным. Основной причиной неудач, по-видимому, было слишком большое число вводимых предложений, так как очевиден тот факт, что в каждой из четырех неудачных попыток требовалось более чем 14 аксиом и гипотез.

Для иллюстрации того, как работает программа, пред­

положим, что рассматривается

следующая теорема.

В

ассоциативной

системе

с левой

идентичностью

и

ин­

версией

слева

из существования левой идентичности

вы­

текает

и существование

правой

идентичности.

Экспе­

риментатор задает программе первые четыре пред­ ложения табл. 5.7. Целевое следствие есть Р(х, е, х) (предложение С13 в табл. 5.7). В табл. 5.7 представлены только те предложения, которые существенны относи­ тельно целевого следствия. Программа сначала проверя­ ет предложения Cl и С2. Так как она ожидает, что ре­ зольвента будет иметь шесть литер, она не рассматри­ вает эти предложения, поскольку параметр, определяющий верхнюю границу числа литер, равен 4. От предложений

А В Т О М А Т И Ч Е С К ОЕ Д О К А З А Т Е Л Ь С Т В О ТЕОРЕМ

Cl и СЗ могут быть образованы три резольвенты, одна­ ко только одна из них, в которой вычеркнута вторая ли­ тера предложения Cl, является существенной для по­ рождения целевого следствия. Программа порождает много других предложений на этом уровне, находя ре­ зольвенты, скажем Cl и С4, С2 н СЗ и т. д. Однако в со­ ответствии со стратегией аксиоматической резолюции программа не ищет резольвенты предложений, порожден­ ных одно от другого. Она будет искать резольвенту С5 и аксиомы. Как и ранее, С5 не может дать резольвенту при сопоставлении с Cl пли С2, потому что критерий уста­ навливает число литер, которые должна содержать ре­ зольвента. Оно будет сопоставляться с СЗ и С4. Затем для получения резольвенты можно сопоставить Сб и С4. Резольвента будет Р(е, е, е). Так как это единичное пред­ ложение, то Р(е, е, е) просто-напросто вычеркивается. Этим устанавливается тривиальность следствия предло­ жения СЗ и производится его исключение из памяти. Программа рассматривает С9 как первое интересное след­ ствие и добавляет его к аксиомам. Затем программа по­ рождает СЮ и признает его интересным. Несколько позже

программа порождает С13

и решает, что это

предложе­

ние интересно. Это и есть

целевое следствие.

 

Из работы Ли может быть сделано несколько выводов. Была составлена программа для нахождения следствий, получаемых из заданных аксиом. Программа демонстри­ рует то, что проф. Д ж . Маккартн называет «здравым смыслом», т. е. программа может выводить простые логи­ ческие следствия из того, что ей сообщается. Такая форма здравого смысла является важной составной частью че­ ловеческого интеллекта. При этом должна использовать­ ся более мощная стратегия поиска, чем стратегия «сначала вширь». Большую помощь здесь может оказать исполь­ зование резолюции единичных элементов. Полезно также отбрасывание вновь порожденного следствия, если оно является единичным элементом, который представляет собой тривиальное следствие некоторой аксиомы или ра­ нее полученного интересного следствия. Это лучше, чем проверка каждого следствия, для определения того, яв­ ляется ли оиотривиальиым следствием некоторой аксиомы или полученных ранее следствий. Важно снабдить про-

110

Г Л А ВА 5

грамму"для нахождения следствий специальным меха­ низмом, который направлял бы ее в те области исполь­ зуемых данных, в которых относительно часто встреча­ ются интересные следствия. Шаг в этом направлении был сделан путем установления границы для ожидаемого числа литер в любой резольвенте. Введение стратегии аксиоматической резолюции помогло в этом отношении, однако пока не ясно, почему это так. Эта стратегия помога­ ет также присоединять к аксиомам интересные следствия.

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

5.5.ВЫВОДЫ

Для вычислительных машин могут быть составлены программы, которые доказывают теоремы (находят дока­ зательства и следствия), например первые теоремы в абст­ рактной теории групп. Создание таких программ имеет важное значение для развития всей теории решения задач, так как дедуктивные построения используются не только в математике, но и при решении большинства типов за­ дач. В гл. 10 показано,как идеи, развитые в области авто­ матического отыскания доказательств, могут быть непо­ средственно приложены к автоматическим дедуктивным системам, отвечающим на вопросы. Разработка механиз­ мов, обеспечивающих возможность использования вычи­ слительных машин для доказательства теорем, способст­ вует также развитию математической логики. В частности, эти работы привели к формулированию принципа резо­ люции, который оказался эффективным, правильным и полным. Теоремы о полноте были доказаны для несколь­ ких ограниченных форм принципа резолюции, включая резолюцию с «опорным множеством», гиперрезолюцию и семантическую резолюцию.

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

Соседние файлы в папке книги из ГПНТБ