Научная статья на тему 'Развитие формальной системы теории семантически значимых отображений'

Развитие формальной системы теории семантически значимых отображений Текст научной статьи по специальности «Математика»

CC BY
123
37
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Бабанов Алексей Михайлович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Development of formal system for the semantically significant mappings theory

Article is the second publication devoted to formal system for the semantically significant mappings theory. In it aggregation operation and also new atom of calculus and new designation system for classes, variables and mappings, necessary for consideration of high degree relations, have found reflection.

Текст научной работы на тему «Развитие формальной системы теории семантически значимых отображений»

№ 293

Декабрь

ИНФОРМАТИКА И ПРОГРАММИРОВАНИЕ

2006

УДК 004.652: 681.3.016

А.М. Бабанов

РАЗВИТИЕ ФОРМАЛЬНОЙ СИСТЕМЫ ТЕОРИИ СЕМАНТИЧЕСКИ ЗНАЧИМЫХ ОТОБРАЖЕНИЙ

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

С момента первой публикации [1] теория семантически значимых отображений (ТСЗО) показала свою работоспособность, появились новые результаты [2-4], в том числе и обобщающие случай тернарных отношений. Естественно, что для удобства рассмотрения более сложных отношений пришлось пересмотреть синтаксис формальной системы, а затем и наборы атомов и аксиом исчисления. Последние должны быть представлены в обобщенной, но в то же время компактной форме. Этого удалось достигнуть введением переменных-агрегатов.

Формальная система определяется как неинтерпретиро-ванное исчисление, класс выражений (формул) которого задается посредством задания исходных (атомарных) формул и правил построения формул, а подкласс доказуемых формул (теорем) - посредством задания системы аксиом и правил вывода теорем из аксиом и уже доказанных теорем.

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

Синтаксис формальной системы

Алфавит исчисления нашей формальной системы составляют следующие символы.

I. Предметные переменные, обозначающие объекты некоторых классов:

хі є Хі■.

х1 є Х1, х2 є Х2,

Уі є У,, у2 є Гг, ут є Тт ,

, і є 2 .

є 21, 2г є 22

Индексы уникально идентифицируют роли, которые играют объекты соответствующего класса в рассматриваемых отношениях и отображениях. Упорядочивание ролей позволяет перейти от неупорядоченных кортежей {МАТЬ: Петрова, ОТЕЦ: Сидоров, РЕБЕНОК: Даша} к упорядоченным <Петрова, Сидоров, Даша> и тем самым существенно упростить язык формальной системы за счет исключения имен ролей.

Дополнительным соглашением, касающимся

предметных переменных и упрощающим понимание выражений языка, является использование для обозначений переменных и классов только букв х, у, г (для переменных) и X, У, 2 (для классов). Причем, как

правило, указанные буквы будут иметь следующую смысловую нагрузку:

- х и X используются для обозначения переменных и классов, объекты которых в рассматриваемом случае не имеют составляющих их компонентов, т.е. атомарны (переменные-атомы и классы-атомы);

- у и У используются для обозначения переменных и классов, объекты которых в рассматриваемом случае являются агрегатами других объектов и фактически представляют собой кортежи этих объектов (переменные-агрегаты и классы-агрегаты);

- г и 2 используются для обозначения переменных и классов, для объектов которых в рассматриваемом случае не принципиально, являются ли они атомами или агрегатами (они могут быть чем угодно).

Для повышения выразительности языка для переменных-агрегатов и классов-агрегатов вместо одного нижнего индекса будем иногда использовать список индексов составляющих эти агрегаты компонентов:

У,..

=< і

> , У1...п = 21 Х ...Х 2п .

В том случае, когда необходимо рассматривать несколько переменных, определенных на одном и том же классе, например 2, в индексе переменной после номера класса (роли) ставится слеш («/»), за которым указывается порядковый номер переменной, например г,./! е 2,.или г,./^ е 2,..

Переменные различны, если они отличаются буквой (х, у, г) или индексом (с учетом всех введенных ранее соглашений).

II. Индивидные символы или константы, представляющие конкретные объекты классов:

а1 е Х1, а2 е X2, ..., а1 е Х1,

Ь1 еУ^ Ь2 е У2 , ., Ьт е Ут ,

С1 е 2^ С2 е 22 , ..., Сп е 2п .

В отличие от переменных, обозначающих в каждый момент времени какой-то неопределенный объект класса, индивидные символы всегда ссылаются на один единственный конкретный объект и в каком-то смысле подобны константам. Соглашения, установ-

ленные для переменных х, у и і, распространяются на константы а, Ь и с соответственно.

III. Функциональные символы, представляющие функторы отображений: ф12>34, Ф>1234 , ф1234>. Для всех отображений используется одна буква ф и сложный индекс, в котором сначала по возрастанию указаны номера ролей классов, входящих в область определения отображения, а после знака «больше» («>») - номера ролей классов, входящих в область значений отображения. Отсутствие номеров до знака «больше» говорит об отображении, областью определения которого является множество истинностных значений {Истина, Ложь}. Отсутствие номеров после знака «больше» говорит об отображении, областью значений которого является множество истинностных значений {Истина, Ложь}.

В том случае, когда необходимо рассматривать несколько отображений, определенных на одних и тех же классах, в индексе отображения после вышеупомянутых списков классов (ролей) областей определения и значений ставится слеш («/»), за которым указывается порядковый номер отображения, например

ф12>34/1 или ф12>34/2 .

IV. Предикаты, или атомы исчисления, ограниченные следующими видами:

- предикат вида о1 = о2, где о1 и о2 - предметные переменные или константы (истинен тогда и только тогда, когда о1 и о2 указывают на один и тот же объект);

- предикат вида о2 = ф1>2 (о1), где о1 и о2 - предметные переменные или константы (истинен тогда и только тогда, когда объект о2 является образом объекта о1 при отображении ф1>2);

- предикат вида Я(о1, ..., оп), где о1 , ..., оп -предметные переменные или константы, является традиционным сокращением предиката Истина = ф1п> (о1, ., оп);

- предикат вида о =< о1, ..., оп > , где о, о1, ..., оп -предметные переменные или константы (истинен тогда и только тогда, когда объект о представляет собой кортеж объектов о1, ., оп).

Во всех атомах исчисления о1, . , оп могут представлять как объекты-атомы, так и объекты-агрегаты. Класс У, которому принадлежит объект о в последнем предикате, является Декартовым произведением классов 2, являющихся областями определения о,-: У = 21 х...х2п. За счет такого определения объект-агрегат может иметь произвольную сложность. Для сравнения объектов-агрегатов в формальную систему вводится дополнительная аксиома.

Правильно построенные формулы, а также понятия связанных и свободных переменных определяются аналогично исчислению предикатов первого порядка.

Традиционны также правила вывода, основным из которых является правило «модус поненс»: из формул ф и ф выводится формула у.

Аксиомы формальной системы

Открывает набор аксиом формальной системы ТСЗО новая аксиома равенства составных объектов:

Угп..^г1т У г 21 Уг22 ..Уг2т

(< г11, г12 , ..., х1т> =< г21, г22 , ..., г2т> О О г11 = г21 Л г12 = г22 Л ... Л г1т = г2т ) .

Вторую группу аксиом составляют общезначимые формулы, связанные с определениями операций над отображениями, которые вводятся в ТСЗО.

Аксиома инверсии:

Уг1Уг2(г2 — ф2>1(г1) г1 — Ф2>1(г2)) .

Аксиома композиции:

Уг1Угз(гз — Ф2>3(Ф1>2(г1)) О

О Зг2 (г2 — Ф1>2 (^) Л ¿3 — Ф2>3 (¿2 ))).

Аксиома объединения:

Уг1Уг2(г2 — (Ф1>2/1 ^Ф1>2/2)(г1)

О г2 — Ф1>2/1 (г1 ) V г2 — Ф1>2/2 (г1)) .

Аксиома пересечения:

Уг1Уг2(г2 — (Ф1>2/1 °Ф1>2/2)(г1) О

О г2 — Ф1>2/1 (г1 ) Л г2 — Ф1>2/2 (г1 )) .

Аксиома разности:

Уг1Уг2(г2 — (Ф1>2/1 Ф1>2/2)(г1) О

О г2 — Ф1>2/1 (г1 ) Л -г2 — Ф1>2/2 (г1)) .

Аксиомы проекций:

- на , ролей образов:

Уу1...тУут+1...т+1Уут+1...пУг1 ..•У2тУ2т+1 ..■У2т+,

( у т+1 ...m+i — Ф1 ...т>т+1...т+,...п

[> т + 1...т + ,](у1...т) О

О ^гт+,'+1. ..Згп (ут+1...п — Ф1...т>т+1...п (у1...т ) Л

Лу1...т —< ^ .-, гт >Л

Лут+1...п —< гт+1, ..., гт+,, гт+, +1, .", гп >Л Лут+1...т+, —< Zm+1, ..., гт+, >)) ;

- на у ролей прообразов:

Уу1... у УуХ...тУут+Х...пУг1..'УгУгт+1..Угп

(ут+1...п — Ф1 ... у...т>т+1...п [1.у >](у1... у ) О

у+1...^гт (ут+1...п — Ф1...т>т+1...п (у1...т ) Л

Лу1...т —< ^ ..., , zj+1, ..., гт >Л

Лут+1...п —< 2т+1, ..., 2п >Л

Лу1...у —< ^ ..., >));

- на , ролей образов и у ролей прообразов одновременно:

Уу1... у Уу1...тУут+1...т+,Уут+1...пУг1...УгуУгт+1...Угт+,

( ут+1 ...т+,

— Ф1

... j...m>m+1...m+i...n

[1...у > т + 1...т +,](у1 у ) О

О ^гу'+1...^гт^гт+,'+1...^гп (ут+1...п — Ф1...т>т+1...п (у1...т ) Л

Лу1...т —< z1, ..., , гу+Ъ ..., гт >Л

Лут+1...п —< гт+1, ..., гт+,, гт+, +1, ..., гп >Л

Лу1...у —< ^ ..., >Л

ут+1...т+, —< Zm+1, ..., гт+, >)) .

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

Аксиома агрегата:

Уу23Уг1Уг2Уг3(у23 — (Ф1>2^Ф1>3)(г1) О

О г2 — Ф1>2 (г1 ) Л г3 — Ф1>3(г1) Л у23 —< г2 , г3 >).

Третью группу аксиом составляют общезначимые формулы, представляющие тот факт, что одно отношение степени п определяет 2п отображений (аксиомы об отношениях и отображениях):

уг1уг2...угпг2, ..., гп) О

О г1 — Ф2...п>1(г2 , ..., гп )),

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Уг1..УгтУгт+1 ...УгпУу 1...тУу т+1...п

(Щги ..., гт , гт+и ..., гп) О

0 0 у1...т Фт+1.. .п>1...т (ут+1...п ) Л

Лу1...т —< ^ ..., гт >Лут+1...п —< Zm+1, ..., гп >) ,

Уг1..УгтУгт+1..УгпУу1...тУут+1...п

(Щги ..., гт , гт+1, ..., гп ) 0

0 0 ут+1...п Ф1...т>т+1...п (у1...т ) Л

Лу1...т —< ^ ..., гт >Лут+1...п —< Zm+1, ..., гп >) ,

Уг1Уг2...Угп Уу2...п z2, ..., гп ) 0

0 у2...п — Ф1>2...п (г1) Л у2...п —< г2 , ..., гп >).

Операции проекции и агрегации

Очевидно, требуют пояснения расширенная операция проекции и новая операция агрегации.

Рассмотрим отношение шестой степени

ЗАНЯТИЕ (ГРУППА, ПРЕПОДАВАТЕЛЬ, ДИСЦИПЛИНА, ДАТА, ВРЕМЯ, АУДИТОРИЯ). Для сокращения записи будем идентифицировать роли и соответствующие классы их порядковыми номерами в указанной схеме отношения.

Пусть одним из кортежей отношения ЗАНЯТИЕ является

<1401, Бабанов, Базы данных, 01.09.2006, 8:45, 104>.

Одним из 64 отображений, определяемых отношением ЗАНЯТИЕ, является

КТО-ЧТО: ДАТА х ВРЕМЯ х АУДИТОРИЯ ^ ГРУППА х ПРЕПОДАВАТЕЛЬ х ДИСЦИПЛИНА

или в веденных ранее обозначениях Ф456>123.

Одним из экземпляров этого отображения будет

<1401, Бабанов, Базы данных> = КТО-ЧТО

(01.09.2006, 8:45, 104).

Тогда среди экземпляров проекции Ф456>123[> 12] будет

<1401, Бабанов > = Ф456>123[> 12]

(01.09.2006, 8:45, 104),

а в целом это отображение говорит о том, кого можно встретить в указанное время в конкретной аудитории.

Среди экземпляров проекции Ф456>123[6 >] есть такой:

<1401, Бабанов, Базы данных> = Ф456>123[6 >] (104).

Это отображение позволяет узнать, кто, кого и чему учит в конкретной аудитории.

И, наконец, одним из экземпляров проекции Ф456>123[5 > 2] является

Бабанов = Ф456>123[5 > 2] (8:45).

С помощью этого отображения можно, например, узнать, кому из преподавателей приходится вести занятия рано утром.

Что касается операции агрегации, то в качестве примера можно рассмотреть отображение

РОДИТЕЛИ: РЕБЕНОК ^ МАТЬ х ОТЕЦ, являющееся агрегатом отображений

МАТЬ: РЕБЕНОК ^ МАТЬ и ОТЕЦ: РЕБЕНОК ^ ОТЕЦ.

На уровне экстенсионала это значит, что экземпляру сложного отображения

<Иванова, Сидоров> = РОДИТЕЛИ (Маша) соответствуют два экземпляра простых отображений

Иванова = МАТЬ (Маша)

и Сидоров = ОТЕЦ (Маша).

Применение формальной системы

В качестве примера использования введенной формальной системы рассмотрим доказательство методом резолюций теоремы об агрегате проекций:

Уу23Уг1(у23 — (Ф1>23 [> 2]^Ф1>23[> 3])(г1) ^

^ у23 — Ф1>23(г1)).

Для доказательства этой теоремы необходимо показать, что формула, составленная из посылки в конъюнкции с отрицанием заключения, противоречива.

Дизъюнктами этой формулы являются:

у23 — (Ф1>23[> 2]фФь23[> 3])(г1) , (1)

—у23 — Ф1>23(г1). (2)

Аксиома о проекции на роль образов в нашем случае примет вид

Уу23Уг1Уг2 (г2 — Ф1>23 [> 2](г1)

0 Зг3 (у23 — Ф1>23(г1) Л у23 —< г2 , г3 >)) .

Среди ее дизъюнктов будет

-г2 — Ф1>23 [> 2](г1) V у23 — Ф1>23(г1) (АП1).

Аксиома об агрегате для нашего случая будет выглядеть так:

Уу23Уг1Уг2Уг3 (у23 — (Ф1>23 [> 2]^Ф1>23[> 3])(г1) 0

0 г2 — Ф1>23[> 2](г1) Л г3 —

— Ф1>23[> 3](г1) Л у23 —< г2 , г3 >).

Она породит, в частности, дизъюнкт

у 23 — (Ф 1>23

[> 2]0Ф1>23[> 3])(21) V

V¿2 — Ф1>23[> 2](^) (АА1).

Доказательство. Каждый шаг применения принципа резолюций будем записывать в следующей форме: (<номер первого дизъюнкта>, <номер второго дизъюнкта>)[(<подстановка>)]: <полученная резольвента-дизъюнкт>:

(1, АА1): г2 — ФМ3 [> 2](^), (3)

(2, АП1): -г2 — Ф1>23[> 2](гх) (4)

(3, 4): □.

Теорема доказана.

Семантически близкие отношения

Многие теоремы формальной системы ТСЗО касаются нескольких отношений, между отображениями которых определяются взаимосвязи типа следствие и эквивалентность. При этом, естественно, рассматриваются не какие попало отношения, а особые, близкие по смыслу.

Одним из основных приложений ТСЗО является задача проектирования реляционной схемы БД. При ее решении важным вопросом является возможность представления отношения совокупностью отношений меньшей степени.

Выделяя в предметной области отношение Я степени п, определенное на п классах объектов 21, ..., 2п , не обязательно различных, полезно рассматривать

п-1

^ С'п семейств отношений степеней от 2 до п-1. От-

,=2

ношения одного семейства определены на одном из подмножеств семейства классов 21, ..., 2п . Рассмотрение этих отношений, близких по смыслу отношению Я, будет способствовать проектированию эффективной неизбыточной схемы БД.

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

классы, и может оказаться, что хранение некоторых из них решает все проблемы исходного отношения.

Рассмотрение отношений степеней, меньших п, становится еще более уместным, если наряду с фактами отношения Я пользователи имеют дело и с близкими по смыслу фактами меньшей степени. Например, нужно ли отдельно хранить бинарное отношение РОДИТЕЛЬ-РЕБЕНОК и тернарное МАТЬ-ОТЕЦ-РЕБЕНОК, чтобы ответить и на вопрос «кто является ребенком Черных?», и на вопрос «кого родили женщина по фамилии Черных и мужчина по фамилии Черных?».

Очевидно, что нас будет интересовать логическая близость отношений, хотя ясно, что она является следствием определенных семантически значимых закономерностей. В случае, когда одно отношение Я степени п определено на классах 21, ..., 2п , а второе -Я’ - на некотором подмножестве семейства классов 21, ..., 2п , например 21, ..., 2т , где т < п, будем говорить, что отношения Я и Я’ близки по смыслу (или семантически близки), если п1 т (Я) п Я'Ф 0 при любых реализациях отношений Я и Я’.

Можно выделить следующие частные случаи близких по смыслу отношений:

1. П1...т (Я) 3 Я'.

2. П1...т (Я) С Я'.

3. П1...т (Я) — Я'.

4. Ни одно из вышеуказанных условий не выполняется.

Приведем примеры семантически близких отношений. Рассмотрим тернарное отношение РОЖДЕНИЕ, определенное на классе объектов ЧЕЛОВЕК, элементы которого играют в кортежах отношения роли МАТЬ, ОТЕЦ и РЕБЕНОК.

Примером близкого ему по смыслу отношения для первого случая (п1 т(Я) з Я') является отношение МНОГОДЕТНАЯ-БРАЧНАЯ-ПАРА, в котором объекты класса ЧЕЛОВЕК играют роли ЖЕНА и МУЖ:

ПМАТЬ,ОТЕЦ (РОЖДЕНИЕ) 3

3 МНОГОДЕТНАЯ-БРАЧНАЯ-ПАРА.

Отношение РОДИТЕЛЬ-РЕБЕНОК представляет собой близкое по смыслу отношение второго вида (П1...т(Я) с Я'):

ПМАТЬ,РЕБЕНОК (РОЖДЕНИЕ) С

с РОДИТЕЛЬ-РЕБЕНОК и

ПОТЕЦ,РЕБЕНОК (РОЖДЕНИЕ) с

с РОДИТЕЛЬ-РЕБЕНОК.

Отношение ЖУРНАЛ-РОЖДЕНИЙ, в который в роддомах заносят идентификаторы матерей и рожденных ими детей, совпадает с проекцией отношения РОЖДЕНИЕ на роли МАТЬ и РЕБЕНОК:

ПМАТЬ,РЕБЕНОК (РОЖДЕНИЕ) —

=ЖУРНАЛ-РОЖДЕНИЙ .

Примером семантически близкого отношения четвертого вида является отношение БРАЧНАЯ-ПАРА, в котором объекты класса ЧЕЛОВЕК играют роли ЖЕНА и МУЖ:

П МАТЬ, ОТЕЦ (РОЖДЕНИЕ) П

пБРАЧНАЯ-ПАРА ф 0,

но ни одно из условий 1-3 в общем случае для него не выполняется.

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

Рассмотрим классический пример для случая многозначной зависимости - отношение ИСПОЛЬЗОВАНИЕ КНИГИ ПРЕПОДАВАТЕЛЕМ ПРИ ПОДГОТОВКЕ КУРСА. В реляционной теории утверждается, что в случае многозначной зависимости КУРС ->> ПРЕПОДАВАТЕЛЬ, КНИГА схема исходного отношения эквивалентна схеме с его проекциями

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(отношение восстанавливается естественным соединением по КУРСУ без потерь информации). В обоих этих отношениях-проекциях кортежи появляются по мере возникновения новых тернарных фактов.

Доказанная в ТСЗО теорема гласит, что с тем же эффектом можно хранить и более общие бинарные отношения.

Например, при составлении программы курса уже определен список основной литературы, а преподаватель по курсу будет назначен перед началом занятий. Тернарного факта, говорящего о том, что преподаватель использовал книгу при подготовке к курсу, еще нет, как нет и бинарного факта о назначении преподавателя на курс. Однако другие бинарные факты о необходимости использования книг по курсу уже могут быть сохранены в БД. Понятно, что в нашем случае отношение КУРС-КНИГА включает соответствующую проекцию тернарного отношения, и это не порождает нарушений в тернарных фактах, если выполняется дополнительное условие теоремы.

Более «мягкие» требования следствий отображений особенно актуальны в случае, когда информационные потребности задач предметной области вынуждают нас хранить и тернарное отношение КУРС-КНИГА-ПРЕПОДАВАТЕЛЬ и бинарное отношение КУРС-КНИГА в нашей интерпретации. Ясно, что дополнительное хранение проекции

пкурс,книГа (КУРС-КНИГА-ПРЕПОДАВАТЕЛЬ)

ПКУРС,ПРЕПОДАВАТЕЛЬ (КУРС-КНИГ^ШШОДДОАШЛК)

и

пКУРС КНИГА (КУРС-КНИГА-ПРЕПОДАВАТЕЛЬ)

не требуется. ЛИТЕРАТУРА

1. Бабанов А.М. Теория семантически значимых отображений // Вестник Томского государственного университета. 2003. № 280. С. 239-248.

2. Бабанов А.М. Формальная система теории семантически значимых отображений // Вестник Томского государственного университета. 2006.

№ 290. С. 261-263.

3. Бабанов А.М. Сравнительный анализ семантических моделей, применяемых для проектирования схем баз данных // Вестник Томского госу-

дарственного университета. 2006. № 290. С. 251-260.

4. Бабанов А.М., Магур П.С. Исследование функциональных отображений тернарного отношения с целью определения условий нормальной

формы Бойса-Кодда // Вестник Томского государственного университета. 2006. № 293. С. 140-142.

Статья представлена кафедрой теоретических основ информатики факультета информатики Томского государственного университета, поступила в научную редакцию «Информатика» 29 мая 2006 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.