2010
ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА Управление, вычислительная техника и информатика
№ 2(11)
ИНФОРМАТИКА И ПРОГРАММИРОВАНИЕ
УДК 681.03
А.М. Бабанов, А.С. Скачкова
МЕТОДИКА ДОКАЗАТЕЛЬСТВА ТЕОРЕМ ДЛЯ ФОРМАЛЬНОЙ СИСТЕМЫ ERM-МОДЕЛИ
В статье на примере одной из теорем теории семантически значимых отображений рассматривается методика доказательства. В ходе доказательства со всей очевидностью возникла потребность в уточнении аксиоматики формальной системы [1]. Приведен новый полный набор аксиом.
Ключевые слова: семантическая модель данных, ERM-модель, теория семантически значимых отображений, доказательство теорем, метод резолюций.
Модель «Сущность - Связь - Отображение» или, сокращенно, ERM-модель (от английского «Entity - Relationship - Mapping») является семантической моделью данных и, обладая широким спектром выразительных возможностей, позволяет отразить большинство особенностей предметной области еще в рамках близкого человеку семантического моделирования [2]. Второй отличительной особенностью этой модели является наличие в ее основе теории семантически значимых отображений (ТСЗО). Эта теория, доведенная до строгой математической формальной системы, обеспечивает надежные правила проверки ERM-схем на противоречивость, безупречные правила пополнения ERM-схем дополнительными ограничениями целостности, вытекающими из ограничений целостности, заданных непосредственно проектировщиком, а также правила эффективной и полной трансформации ERM-схем в СУБД-ориентированные схемы (в частности - в реляционную).
Все эти правила базируются на аксиомах и доказанных теоремах формальной системы ТСЗО. В предыдущих статьях [1, 3] предложены первоначальные варианты формальной системы. Нет ничего удивительного в том, что каждый вариант фиксирует некоторое текущее представление об этой системе, достаточное для рассмотренных на этом этапе теорем. По мере доказательства новых теорем происходит постоянное совершенствование правил построения формул и аксиоматического базиса формальной системы. Каждая вновь доказанная теорема, с одной стороны, расширяет систему, обеспечивая базис для новых теорем, с другой стороны, позволяет совершенствовать набор упомянутых ранее правил ERM-модели.
По-видимому, нет необходимости в дальнейшем обосновании важности доказательства новых теорем для развития ERM-модели. Настоящая статья предлагает детальное рассмотрение методики такого доказательства и послужит в качестве наставления для настоящих и будущих исследователей ERM-модели.
Формальная система ТСЗО построена на базе исчисления предикатов первого порядка, доказательства теорем проводятся методом резолюций.
1. Высказывание гипотезы и формулировка теоремы на языке формальной системы ТСЗО
К настоящему моменту исследователями ЕИМ-модели накоплен значительный банк гипотез ТСЗО, ожидающих своего доказательства. Одним из источников этих гипотез является непрекращающийся анализ закономерностей во взаимоотношениях между понятиями ЕКМ-модели и ТСЗО. Другим важным источником гипотез является теория реляционных БД, теоремы которой часто отражают такие закономерности данных, которые можно выразить в терминах ТСЗО.
Одним из важнейших понятий реляционной модели является понятие функциональной зависимости (ФЗ). Оно играет основную роль в процессе нормализации отношений, определяет важный класс ограничений целостности. Выводимость одних и тех же ФЗ - важное условие эквивалентности двух схем. ФЗ выводятся в соответствии с аксиомами Армстронга, для удобства также используются три правила, являющиеся следствием этих аксиом. В ЕИМ-модели есть понятие, очень близкое понятию «функциональная зависимость» - «функциональное отображение». Взаимно-однозначное соответствие этих понятий позволяет получить гипотезы и теоремы ТСЗО на основе аксиом Армстронга.
В качестве примера, поясняющего методику доказательства, рассмотрим правило декомпозиции ФЗ теории реляционных БД. Пусть А, В и С являются произвольными подмножествами множества атрибутов отношения Я. Тогда, если имеется ФЗ А ^ В,С, то справедливы ФЗ А ^ В и А ^ С.
Формулировка теоремы декомпозиции ТСЗО, аналогичной правилу декомпозиции, будет выглядеть следующим образом. Если отображение со сложным образом функционально, функциональны и все его проекции на любые роли образов и их совокупности.
Для доказательства теоремы в первую очередь необходимо сформулировать посылку и заключение теоремы на языке нашей формальной системы - языке исчисления предикатов первого порядка. Имена переменных и функторов вводятся в соответствии с алфавитом формальной системы, описанной в [1].
В нашем случае посылкой будет высказывание о функциональности исходного сложного отображения.
Аксиома функциональности отображения в общем виде выглядит так:
^z/1, ^2/ 2 , ^2/3(2/2 = Ф( 2ц) Л 2/3 = ф(2/1) ^ 2/2 = 2/3) .
Приведем ее к виду, соответствующему контексту теоремы. В данной теореме речь идет об отображении со сложным образом, поэтому вместо 22 и 2^, которые в соответствии с алфавитом формальной системы могут означиваться как простыми, так и сложными объектами, следует использовать у/1 и у/2 (они предназначены для переменных-агрегатов). В результате посылка теоремы примет следующий вид:
^У/^ ^У/2 , У2/1(У/1 =Ф(2/1) Л У/2 =Ф(2/1) ^ У/1 = У/2 ).
Это можно прочитать так: «Для любых У/1, У/2 и 2^, если У/1 и У/2 являются образами 2а при отображении ф, то они совпадают». В данном случае в качестве прообраза используется хл, так как не принципиально, является ли он атомом или агрегатом, индекс «/1» указывает на порядковый номер переменной - 1, порядковый индекс роли не имеет значения и поэтому не указан. Для обозначения образов выбрано имя переменной У, что подчеркивает тот факт, что образы отображения ф в случае нашей теоремы всегда являются сложными.
В заключении теоремы говорится о функциональности проекции отображения. Конкретизируем аксиому функциональности, заменив отображение ф на его проекцию на группу ролей образов 1. В соответствии с используемым алфавитом проекция получит обозначение ф[>1]. При проекции на группу ролей 1 не важно, состоит эта группа из одной роли или нескольких, поэтому для обозначения образов используется переменная 2. Поскольку образами проекции являются объекты, играющие роль 1, индексы переменных для образов приобретают вид «1/1» и «1/2», где первая единица идентифицирует роль (группу ролей), а второе число -порядковый номер переменной. Соглашения об именовании переменных и функторов формальной системы помогают понять смысл выражений языка и избавляют от ошибок при формулировке теорем.
Таким образом, заключение нашей теоремы примет следующий вид:
^/^2ш^/2(гш =Ф[> 1](2/1) л 21/2 =Ф[> 1](2/1) ^ 2Ш = г1/2) .
2. Определение необходимых для доказательства аксиом и теорем ТСЗО
Прежде чем продолжить изложение методики доказательства теорем ТСЗО приведем уточненные выражения аксиом формальной системы ТСЗО.
Аксиома равенства составных объектов
Аксиома состоит из двух общезначимых формул, первая из которых говорит о том, что из равенства составных объектов следует равенство их соответствующих компонентов, вторая утверждает обратное.
УУ/1ЧУ/2^21/1^22/1...'^2т/1^21/2^22/2...^2т/2
(У/1 =< 21/1, 22/1,..., 2т/1 > ЛУ/2 =< 21/2, 22/2,..., 2т/2 > ЛУ/1 = У/2 ^
^ 21/1 = 21/2 Л 22/1 = 22/2 Л... Л 2т/1 = 2т/2) и
УУ/1^У’/2^21/1^22/1...'^2т/1^21/2^22/2...^2т/2
(У/1 =< 21/1, 22/1,..., 2т/1 > ЛУ/2 =< 21/2, 22/2,..., 2т/2 >Л Л21/1 = 21/2 Л 22/1 = 22/2 Л ... Л 2т/1 = 2т/2) ^
^ У/1 = У/2.
Аксиома конкатенации объектов
Необходимость в этой аксиоме обусловлена тем фактом, что в ТСЗО, в отличие от традиции, сложившейся в математике, множество, состоящее из двух множеств, рассматривается как множество из их элементов. Эта аксиома также состоит из двух общезначимых формул:
УУ/1УУ/2УУ/3^21/1^22/1...^2т/1^21/2^22/2...^2т/2
(У/1 =< 21/1, 22/1,..., 2т/1 > ЛУ/2 =< 21/2 , 22/2 ,..., 2т/2 > ЛУ/3 =< У/1, У/2 >^
^ У/3 =< 21/1, 22/1,..., 2т/1, 21/2, 22/2,..., 2т/2 >) и
УУ/1УУ/2УУ/3^21/1^22/1...^2т/1^21/2^22/2...^2т/2
(У/1 =< 21/1, 22/1,..., 2т/1 > ЛУ/2 =< 21/2, 22/2,..., 2т/2 >Л
Л У/3 =< 21/1, 22/1,..., 2т/1, 21/2, 22/2,..., 2т/2 >^
^ У/3 =< У/1 У/2 >) .
Аксиома инверсии:
V2lV22(22 = Ф->1(21) ^ 21 = Ф2>1(22)) .
Аксиома композиции:
V21V23(23 =Ф2>3(Ф1>2(21)) ^322(22 =Ф1>2(21) Л23 =Ф2>3(22))).
Аксиома объединения:
^^22(22 = (Ф1>2/1 иФ1>2/2)(21) ^ 22 =Ф1>2/1(21) V 22 =Ф1>2/2(21)) .
Аксиома пересечения:
^21^22(22 = (ф1>2/1 °ф1>2/2)(21) ^ 22 = Ф1>2/1(21) Л 22 =Ф1>2/2(21)) .
Аксиома разности:
^1^2(22 = (ф1 >2/1 ф1>2/2 )(21) ^ 22 =ф1>2/1(21) Л —22 = ф1>2/2 (21 )) .
Аксиомы проекций:
- на , ролей образов:
V7 V7
1...т т+1...т+,
(2т+1...т+,' =Ф1...т>т+1...т+,...п [> т + 1. т + ,](21...т) ^
^ 3Ут+1...п32т+,+1...п (Ут+1...п = ф1...т>т+1...т+,...п (21...т ) Л
ЛУт+1...п =< 2т+1...т+,, 2т+,+1...п >)) ;
- на у ролей прообразов:
^1... ]^2т+1...п (2т+1...п = ф1 ... у...т>т+1...п [1...У >](21...у ) ^
^ 3У1...т32у +1...т (2т+1...п =ф1...у...т>т+1...п (У1...т ) Л
ЛУ1...т =< 21...у , 2у+1...т >));
- на , ролей образов и у ролей прообразов одновременно:
^1... у ^2т+1...т+,'
(2т+1...т+, = Ф1...у...т>т+1...т+,...п [1...у > т + + ,](21...; ) ^
^ 3У1...т3Ут+1...п32у+1...т32т+,+1...п (Ут+1...п = ф1...у...т>т+1...т+,...п (У1...т) Л ЛУ1...т =< 21...у , 2у+1...т >Л Ут+1...п =< 2т+1...т+,, 2т+,+1...п >)) .
Поскольку порядок ролей не принципиален, мы позволили себе для проекций использовать первые , ролей образов и первые у ролей прообразов.
Аксиома агрегата:
^У2Ъ^21 (У23 = (ф1>2фф1>3)(21) ^
^322 323(22 = Ф1>2 (21) Л 23 =фм(21) ЛУ23 =<22, 23 >)) .
Аксиомы об отношениях и отображениях:
^^...^п (Я(2^ ^..^ 2п ) ^
^3У2...п (21 =Ф2...п>1(У2...п ) Л У2...п =< 22 , "^ 2п >)) ,
V21...V2mV2m+1...V2n (Я(21,..., 2т , 2m+1,..., 2п ) ^
^ 3У1...т3Ут+1...п (У1...т = фт+1...п>1...т (Ут+1...п ) Л ЛУ1...т =< 21,..., 2т > ЛУт+1...п =< 2m+1,..., 2п >)),
V21...V2mV2m+1...V2n (Я(21,..., 2т , 2m+1,..., 2п ) ^
^ 3-У1...т3Ут+1...п (Ут+1...п = ф1...т>т+1...п (У1...т ) Л ЛУ1...т =< 21,..., 2т > ЛУт+1...п =< 2m+1,..., 2п >)),
V21V22...V2n (Я(2l, 22,..., 2п ) ^
^3У2...п (У2...п =Ф1>2...п (21) Л У2...п =< 22,..., 2п >)) .
Аксиома функциональности отображения:
У2/1, V2/2 > V2/3 (2/2 = ф(2/1) Л 2/ 3 = ф(2/1) ^ 2/2 = 2/3 ) .
Аксиома полноты отображения:
Vz/1 (2 /1 = экземпляр (ООО (ф)) ^ 32/2( 2/2 = ф( 2/1))) .
Аксиома следствия отображений:
V2/1V2/2 (2/2 = Ф(2/1 ) ^ 2/2 = У(2/1 )) .
Аксиома эквивалентности отображений:
VZ/lVZ/2 (2/2 =Ф(2/1) ^ 2/2 = ^(2/1)).
После уточнения аксиоматического базиса нашей формальной системы вернемся к методике доказательства.
Доказательство новых теорем базируется на аксиомах и уже доказанных теоремах ТСЗО. При этом для наглядности их обобщенные формулировки на языке исчисления предикатов первого порядка видоизменяются с учетом контекста доказываемой теоремы. Для нашей теоремы, кроме уже использованной в формулировке аксиомы функциональности, понадобятся также аксиома проекции и аксиома равенства сложных объектов.
1. Аксиома проекции на , ролей образов:
Уz Уz
1...т т+1...т+,
(2т+1...т+, =Ф1...т>т+1...т+,...п [> т + 1-т + ,](21...т) ^
^ ^ 3Ут+1...п32т+,+1...п (Ут+1...п = ф1...т>т+1...т+,...п (21...т ) Л
ЛУт+1...п =< 2т+1...т+,, 2т+,+1...п >)) .
В данной теореме понадобится проекция на одну группу ролей образов. Таким образом, аксиома примет следующий вид:
УгпУ21п{21п =ф[>1](г/1) ^3уп3г2п(уп =ф(гл) лул =< ^ г2/1 >)).
2. Аксиома равенства сложных объектов:
'^у/\^у/2^21/\^22/1..^2ш/\^21/2^22/2..'^2ш/2 (у/1 =< 21/1, 22/1,..., 2ш/1 >Лу/2 =< 21/2, 22/2,..., 2ш/2 > Лу/1 = у/2 ^
^ 21/1 = 21/2 Л 22/1 = 22/2 Л ... Л 2ш/1 = 2ш/2) .
Для доказательства достаточно рассматривать ее вариант с размерностью картежа ш = 2. В таком случае аксиома будет выглядеть следующим образом:
УУ/1УУ/2^21/1^22/1^21/2^22/2 (у/1 =< 21/1, 22/1 > Лу/2 =< 21/2, 22/2 > Лу/1 = у/2 ^
^ 21/1 = 21/2 Л 22/1 = 22/2) .
3. Общие принципы доказательства
Рамки статьи не позволяют подробно описать все детали метода резолюций, составляющего основу методики доказательства. Недостающую информацию можно получить в [4]. Мы же ограничимся лишь принципиальными моментами, в основном касающимися специфики применения метода резолюций в нашей методике.
Полную формулировку нашей теоремы составляют:
• общезначимые формулы аксиом
- проекции - А1:
^/1^1/1(21/1 =ф[>1](2/1) ^3уп322/1(уп =ф(2/1) Лу/1 =< ^/^ 22/1
- равенства сложных объектов - А2:
УУ/1УУ/2^21/1^22/1^21/2^22/2 (у/1 =< 21/1, 22/1 > Лу/2 =< 21/2, 22/2 > Лу/1 = у/2 ^
^ 21/1 = 21/2 Л 22/1 = 22/2) ;
• предполагаемая истинной по условию теоремы посылка - А3:
vУ/l, ^у/2, ^2/1(у/1 =ф(2/1) Л у/2 =ф(2/1) ^ у/1 = у/2);
• заключение теоремы - В:
У2/^2шУ21/2(21/1 =ф[> 1](2/1) Л 2ш = ф[> 1](2/1) ^ 21/1 = 21/2), истинность которого и требуется доказать.
Другими словами, надо показать, что формула А1 л А2 л А3 ^ В есть общезначимая формула.
Метод резолюций предназначен для доказательства противоречивости формулы. Таким образом, наша задача превращается в задачу доказательства того, что формула А1 л А2 л А3 л —В невыполнима.
Метод резолюций [4] как процедура опровержения применяется к «стандартной форме» формулы и базируется на следующих принципах:
1. Формула логики первого порядка может быть сведена к предваренной нормальной форме, в которой матрица не содержит никаких кванторов, а префикс есть последовательность кванторов.
2. Поскольку матрица не содержит кванторов, она может быть сведена к конъюнктивной нормальной форме.
3. Сохраняя противоречивость формулы, в ней можно элиминировать кванторы существования путем использования скулемовских функций.
Пусть формула F находится в предваренной нормальной форме Q1 x1...Qnxn(M), где М есть конъюнктивная нормальная форма. Положим, Qr есть квантор существования в префиксе Q1 x1...Qnxn ,1 < г < п . Если никакой квантор всеобщности не стоит в префиксе левее Qг, мы выберем новую константу с, отличную от других констант, входящих в М, заменим все xг, встречающиеся в М, на с и вычеркнем Qгxг из
префикса. Если QSl,...,Qs - список всех кванторов всеобщности, встречающихся левее Qг, 1 < s1 < s2 <... < sm < г , мы выберем новый т-местный функциональный символ f, отличный от других функциональных символов, заменим все xг в М на f (х х ...,xSm) и вычеркнем Qrxr из префикса. Затем весь этот процесс применим для всех кванторов существования в префиксе; последняя из полученных формул есть скулемовская стандартная форма - для краткости, стандартная форма формулы F. Константы и функции, используемые для замены переменных квантора существования, называются скулемовскими функциями.
Дизъюнкт есть дизъюнкция литер. Иногда, когда это удобно, мы будем рассматривать множество литер как синоним дизъюнкта. Дизъюнкт, содержащий г литер, называется г-литерным дизъюнктом. Однолитерный дизъюнкт называется единичным дизъюнктом. Когда дизъюнкт не содержит никаких литер, мы называем его пустым дизъюнктом. Так как пустой дизъюнкт не содержит литер, которые могли бы быть истинными при любых интерпретациях, то пустой дизъюнкт всегда ложен. Пустой дизъюнкт обозначается посредством □.
Считаем, что множество дизъюнктов £ есть конъюнкция всех дизъюнктов из £, где каждая переменная в £ считается управляемой квантором всеобщности. Благодаря этому соглашению, стандартная форма может быть просто представлена множеством дизъюнктов.
Отметим, что формула может иметь более чем одну стандартную форму. Ради простоты, когда мы преобразуем формулу F в стандартную форму £, мы будем заменять кванторы существования скулемовскими функциями настолько простыми, насколько возможно.
Дальше, если мы имеем F = ^ л ... л ¥п , мы можем отдельно получить множества дизъюнктов где каждый представляет стандартную форму Fi, , = 1, ..., п. Затем пусть £ = £1 и... и £п. F противоречива тогда и только тогда, когда £ противоречива. Таким образом, чтобы получить множество дизъюнктов для всей конъюнктивной формы, мы сначала находим множества дизъюнктов для каждой ее части, а затем объединением полученных множеств образуем множество дизъюнктов всей формулы.
Другими словами, мы можем получить множества дизъюнктов по отдельности для каждой аксиомы, участвующей в доказательстве теоремы, ее посылки и отрицания заключения. А затем рассматривать их все как одно множество дизъюнктов теоремы.
Основная идея метода резолюций состоит в том, чтобы проверить, содержит ли £ пустой дизъюнкт □. Если £ содержит □, то £ невыполнимо. Если £ не содержит □, то проверяется следующий факт: может ли □ быть получен из £.
Пусть £ - множество дизъюнктов. Резолютивный вывод С из £ есть такая конечная последовательность С1, С2, ..., Ск дизъюнктов, что каждый С, или принадлежит £ или является резольвентой дизъюнктов, предшествующих С,, и Ск = С. Вывод □ из £ называется опровержением (или доказательством невыполнимости) £.
4. Приведение формул теоремы и аксиом к скулемовской стандартной форме
Рассмотрим процедуру приведения формулы к скулемовской стандартной форме на примере аксиомы о проекции (подробнее процедура описана в [4]):
Исходная формула имеет следующий вид:
У2пУ21/1(21/1 =ф[>1](2/1) ^3уп322/1(уп =ф(2/1) Лу/1 =< ^/^ 22/1 >)).
1. Устранить логические связки -о и ^ по следующим правилам:
а о Ь = (а ^ Ь) л (Ь ^ а),
а ^ Ь = —а V Ь .
В результате получится следующая формула:
У2/1^21/1
((—21/1 =ф[> 1](2/1) ^У/1Зг2/1(У/1 =ф(2/1) Л у/1 =< 2l/l, 2 2/1 >)) л
л(— (ЗУ/1З22/1(У/1 =ф(2/1) Л у/1 =< 21/1, 2 2/1 >)) V 21/1 =ф[> 1](2/1))).
2. Перенести знак отрицания непосредственно к литерам, используя правило
——а = а, законы де Моргана: —(а лЬ) = — а v—Ь , —(а VЬ) = — а л— Ь и формулы
для кванторов: — (Ух(Е(х))) = Зх(—Е(х)) и —(Зх(Е(х))) = Ух(—Е(х)). В результа-
те получается:
^/1^1/1
((—21/1 =ф[> Ч(2/1) vЗУ/1З22/1(У/1 =ф(2/1) Л у/1 =< ^/^ 22/1 >)) л
Л(УупУ22/1(^у/1 =ф(2/1) v 'У/1 =< 2Ш, 22/1 > V21/1 =ф[>1](2/1))).
3. Вынести кванторы в префикс формулы по соответствующим правилам:
Qx(Е(х)) V О = Qx(Е(х) V О),
Qx(Е(х)) л О = Qx(Е(х) л О),
Ух(Е(х))лУх(О(х)) = Ух(Е(х)лО(х)),
Зх( Е (х)) V Зх(О( х)) = Зх( Е (х) V О (х)),
Qlх(Е(х)) л Q2 х(О(х)) = Ql xQ2у(Е(х) л О(у)),
Qlх(Е(х)) V Q2 х(О(х)) = Ql xQ2у(Е(х) V О(у)).
Так как переменные у/1 и 22/1 встречаются два раза, в первом вхождении переименуем их в у/2 и 22/2 соответственно. Таким образом, после вынесения кванторов формула примет следующий вид:
V2/1У21/13y/2322/2Уy/lУ22/l ((-21/1 =Ф[> Ч(2/1) V (У/2 =Ф(2/1) Л У/2 =< 21/1, 22/2 >)) Л
л(_У/1 =Ф(2/1) ^У/1 =< 21/1, 2 2/1 >V21/1 =Ф[>1](2/1))).
4. Привести матрицу формулы к конъюнктивной нормальной форме. Из [4] формула F находится в конъюнктивной нормальной форме, когда она представляет собой конъюнкцию формул F1, ... Fn, где каждая из Fi есть дизъюнкция литер. Для приведения формулы к конъюнктивной нормальной форме используются ди-атрибутивные законы:
а Л (Ь V с) = (а Л Ь) V (а Л с) и а V (Ь Л с) = (а V Ь) Л (а V с).
Конъюнктивная нормальная форма рассматриваемой формулы:
'У2/\У21/^3y/2322/7Уy/\У22/1 ((-21/1 = ф[> 1](2/1) V У/2 =ф(2/1)) Л
Л(-21/1 =ф[> 1](2/1) V У/2 =< 21/1, 22/2 >) Л
Л-У/1 = ф(2/1) V >У/1 =< 21/1, 22/1 ^2Ш =ф[>1](2/1))).
5. Привести формулу к скулемовской нормальной форме. Для каждого квантора существования проверить все кванторы всеобщности, стоящие в префиксе левее его. Если таковых нет, то переменная заменяется новой константой, иначе переменная заменяется скулемовской функцией от всех переменных, связанных этими кванторами всеобщности:
'У2/1У21/l'Уy/l'У22/l ((-21/1 = Ф[> Ч(2/1) V f (2/1, 21/1) = Ф(2/1)) Л
Л(-21/1 = ф[> 1](2/1) V f (2/1, 21/1) =< 21/1,8(2/1, 21/1) >) Л
л(_У/1 =Ф(2/1) ^У/1 =< ^ 2 2/1 >V21/1 =Ф[>1](2/1))).
После приведения формулы к скулемовской нормальной форме отбрасываются кванторы всеобщности и формула разбивается на дизъюнкты. Аксиома проекции породила три дизъюнкта:
-21/1 = ф[> Ч(2/1) V f (2/1, 21/1) = ф(2/1)
-21/1 = Ф[> 1](2/1 ) '^1'(2/1, 21/1) =< ^ 8(2/1, 21/1) >
-У/1 =Ф(2/1) ^У/1 =< 21/1, 22/1 >V21/1 =Ф[> 1](2/1) .
5. Формирование исходного множества дизъюнктов теоремы
Алфавит формальной системы ТСЗО упрощает понимание выражений языка и важен на этапе формулировки теорем и аксиом. Однако во время доказательства можно заменить имена переменных на более простые. После приведения всех формул к скулемовской нормальной форме и замены переменных (подстановки указаны в фигурных скобках) для данной теоремы получим следующие дизъюнкты.
Из аксиомы проекции:
{х/2/1,У1 /2Ш}: -У1 = ф[> 1](х) V f (X,У1) = ф(х),
{х / 2/1, У1 / 21/1}: -У1 =ф[> 1] (х) V f (X, У1) = < У1,8(X, У1) > ,
{х / 2/1, У1 / 21/1, У / У/1, У2 / 22/1}: -У = ф(х) V |У = < У1, У2 >VУl =ф[>1](х) . Аксиома равенства сложных объектов породит 6 дизъюнктов, из которых для доказательства понадобятся только 2:
{х / У/l, х1 / 2l/l, х2 / 22/1, У / У/2, У1 / 21/2, У2 / 22/2}:
-х =< х[, х2 > V-У =< У1, У2 > V-х = У V х = У1 и
{х / У/1, х1 / 2l/l, х2 / 22/1, У / У/2 , У1 / 21/2, У2 / 22/2}:
-х =< х1, х2 > V У =< У1, У2 > V-X = У V х2 = У2 .
Из посылки:
{х / 2/1, У / У/1, 2 / У/2}: -У = ф( х) V |2 = ф( х) V У = 2 .
Из отрицания заключения:
{а / с1/1, с / с/1}: а = ф[> 1](с),
{Ь/с1/2,с/с/1}:Ь =ф[> 1](с),
{а / с1/1,Ь /с1/2}: -а = Ь .
Таким образом, получается список из 9 дизъюнктов теоремы:
1. -У1 =ф[> 1](х) V f (х, У1) = Ф(х),
2. -У1 =ф[> 1](х)Vf(x,У1) = <У1,8(х,У1) >,
3. -У = ф(х) V -У =< У1, У2 > VУ1 = ф[> 1](х),
4. -х =< х1, х2 > V-У =< У1, У2 > V-х = У V X = У1,
5. -х =< х1, х2 > V-У =< У1, У2 > V-х = У V х2 = У2 ,
6. -У = ф(х) V -2 = ф(х) V У = 2 ,
7. а = ф[> 1](с),
8. Ь = ф[> 1](с),
9. -а = Ь .
6. Доказательство невыполнимости полученного множества дизъюнктов методом резолюций
Теперь методом резолюций докажем, что полученное множество дизъюнктов невыполнимо. Доказательство представляет собой последовательность порождений резольвент для множества дизъюнктов. Каждая резольвента строится по правилу резолюций [4].
Для записи шагов доказательства используется следующий синтаксис:
<номер нового дизъюнкта-резольвенты>.(<номер первого дизъюнкта-посылки>,<номер второго дизъюнкта-посылки>) {<подстановка-унификатор>}: <полученный дизъюнкт - резольвента>.
1. (1, 7) {а / У1, с / х}: Дс, а) =ф(с),
2. (1, 8) {Ь / У1, с / х}: f (с, Ь) = ф(с),
3. (6, 10) {f (c, a) / y, c / x}: — z = ф(с) v f (c, a) = z ,
4. (12, 11) {f (c,6)/z}: f (c,a) = f (c,b),
5. (2, 7) {a/yj,c/x}: f (c,a) =<a,g(c,a) > ,
6. (2, 8) {b /y1, c/ x}: f (c,b) =< b,g(c,b) > ,
7. (4, 13) {f (c,a)/x,f (c,b)/y}: —f (c,a) =< ^,X2 >v—f (c,b) =< У1,У2 >vX1 = У1,
8. (16, 14) {a/x1,g(c,a)/x2}: —f(c,b) =<У1,У2 >va = У1,
9. (17, 15) {b / у1, g (c, b)/У2}: a = b ,
10. (18, 9) □.
Последним шагом доказательства получен пустой дизъюнкт, а, значит, наше исходное множество дизъюнктов невыполнимо. То есть формула А1 лА2 лА3 л— B противоречива, а, значит, формула A1 лА2 лA3 ^ B общезначима. Другими словами, наша теорема доказана.
Заключение
Приведенная в статье методика доказательства теорем поможет исследователям ERM-модели и ТСЗО развивать их формальную систему, что, в конечном счете, послужит совершенствованию самих ERM-модели и ТСЗО.
ЛИТЕРАТУРА
1. Бабанов А.М. Развитие формальной системы теории семантически значимых отображений // Вестник ТГУ. 2006. № 293. С. 135 - 139.
2. Бабанов А.М. Семантическая модель «Сущность - Связь - Отображение» // Вестник ТГУ. УВТиИ. 2007. № 1. С. 77 - 91.
3. Бабанов А.М. Формальная система теории семантически значимых отображений // Вестник ТГУ. 2006. № 290. С. 261 - 263.
4. Чень Ч., Ли Р. Математическая логика и автоматическое доказательство теорем. М.: Наука, 1983. 360 с.
Бабанов Алексей Михайлович
Скачкова Анна Сергеевна
Томский государственный университет
E-mail: [email protected]; [email protected] Поступила в редакцию 1 февраля 2010 г.