авторефераты диссертаций БЕСПЛАТНАЯ БИБЛИОТЕКА РОССИИ

КОНФЕРЕНЦИИ, КНИГИ, ПОСОБИЯ, НАУЧНЫЕ ИЗДАНИЯ

<< ГЛАВНАЯ
АГРОИНЖЕНЕРИЯ
АСТРОНОМИЯ
БЕЗОПАСНОСТЬ
БИОЛОГИЯ
ЗЕМЛЯ
ИНФОРМАТИКА
ИСКУССТВОВЕДЕНИЕ
ИСТОРИЯ
КУЛЬТУРОЛОГИЯ
МАШИНОСТРОЕНИЕ
МЕДИЦИНА
МЕТАЛЛУРГИЯ
МЕХАНИКА
ПЕДАГОГИКА
ПОЛИТИКА
ПРИБОРОСТРОЕНИЕ
ПРОДОВОЛЬСТВИЕ
ПСИХОЛОГИЯ
РАДИОТЕХНИКА
СЕЛЬСКОЕ ХОЗЯЙСТВО
СОЦИОЛОГИЯ
СТРОИТЕЛЬСТВО
ТЕХНИЧЕСКИЕ НАУКИ
ТРАНСПОРТ
ФАРМАЦЕВТИКА
ФИЗИКА
ФИЗИОЛОГИЯ
ФИЛОЛОГИЯ
ФИЛОСОФИЯ
ХИМИЯ
ЭКОНОМИКА
ЭЛЕКТРОТЕХНИКА
ЭНЕРГЕТИКА
ЮРИСПРУДЕНЦИЯ
ЯЗЫКОЗНАНИЕ
РАЗНОЕ
КОНТАКТЫ


Pages:     | 1 | 2 || 4 | 5 |   ...   | 6 |

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ Восточно-Сибирский государственный технологический университет Л.В. Найханова, И.С. Евдокимова МЕТОДЫ И АЛГОРИТМЫ ...»

-- [ Страница 3 ] --

ассоциация индивидуализация.

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

подобие, перевод, характеризация, идентификация (тождество), квалификация и номинация (именование) и т.д. [76].

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

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

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

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

- отношение агрегации между понятием «часть» х и агрегированным понятием у «целое»;

- отношение характеризации между атрибутами физической модели данных и их признаками;

- отношение типизации между термином логической модели данных и его типом;

- отношение перевода между понятиями проблемной среды и терминами логической модели данных, между терминами логической и физической моделей данных;

- отношение конкретизации между термином физической модели данных и его лексической характеристикой.

Для представления закономерностей введем параметрический и два вида составных предикатов. Посредством параметрического предиката будем описывать отношения агрегации и характеризации, задавая при этом схему понятия (сущности) через перечисление его свойств (атрибутов) и признаков этих свойств:

Ppar(х, t(p1,v k11), …, t(pi,vji), …, t(pm,v k2 m)), (3.1) i где х – сущность в терминах физической модели данных;

t(pi,vj ) – терм, задающий отношение характеризации в виде соответствия между pi – идентификатором атрибута физической модели данных и его j-тым признаком vji;

m – количество атрибутов, составляющих сущность х.

Составные предикаты используются для описания отношений типизации, перевода и конкретизации.

Первый составной предикат описывает отношения типизации, перевода и конкретизации между двумя объектами биноминативного предложения:

Ps(x, y, tr), (3.2) где x – первый объект биноминативного предложения, y – второй объект биноминативного предложения, tr – тип отношения r между ними.

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

Ps(t(x1,…,xn), y, tr), (3.3) где t(x1,…,xn) – терм, задающий множество понятий естественного языка (x1,…,xn), которые в совокупности определяют второй объект биноминативного предложения y, tr – тип отношения r между ними.

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

Для описания знаний первой группы используются составные предикаты с r r отношениями: типизации t tip агрегации и обобщения t agr, которые позволяют задать понятия, составляющие логическую модель данных, и их свойства. Вторая группа r описывается составным предикатом с отношением перевода t tr. С помощью этого предиката устанавливается соответствие между терминами логической и физической моделей данных. Для описания третьей группы используются составной предикат с r отношением конкретизации t con и параметрический предикат. Посредством составного предиката уточняется термин физической модели данных. Каждому термину могут быть приписаны: тип данных, запись данных и лексическая характеристика. Параметрический предикат задает схему понятия – термина физической модели, а валентные признаки понятия позволяют создать семантическую сеть понятий.

Приведем примеры предикатов, которые соответствуют метаописанию модели данных «Контингент студентов»:

r r 1) Ps ( x, y, t tip ) - предикат, задающий отношение типизации t tip, например, предикат Три группы предикатов, соответствующие знаниям об элементах базы данных, приведены в Приложении В.

Ps (студент, сущность, t tip ) утверждает, что термин студентl и является сущностью r базы данных, а предикат Ps (фамилия, атрибут, t tip ) утверждает, что термин фамилияl r является атрибутом базы данных;

r r 2) Ps (t ( x1,..., x k ), y, t tip ) - предикат, также задающий отношение типизации t tip, r например, предикат Ps (t (телефон, домашний ), атрибут, t tip ) утверждает, что термины телефон и домашнийl и в совокупности составляют атрибут базы данных;

r r 3) Ps ( x, y, t tr ) - предикат, задающий отношение перевода t tr, например, предикат Ps (студент, student, t tr ) утверждает, что термин студентl соответствует термину r studentf физической модели данных;

r r 4) Ps (t ( x1,..., x k ), y, t tr ) - предикат, задающий отношение перевода t tr, например, r предикат Ps (t (телефон, домашний), nhtel, t tr ) утверждает, что термины телефон и l f домашний и в совокупности соответствуют термину nhtel физической модели данных;

5) Ppar ( x, t ( p1, v 11 ),..., t ( pi, v ij ),..., t ( p m, v k 2 )) - предикат, задающий отношение агрегации m k t agr между таблицей х и pi столбцом базы данных в терминах tf, а также – отношение r характеризации между pi атрибутом сущности х и ее признаком vij. Например, предикат:

Ppar (ChildStud, t ( NChild, d ), t (CodeEducInst, v), t (CodeStudent, v), t ( Family, h), t ( Name, h), t ( BirthDay, h), t (CodeSex, v)) утверждает, что таблица ChildStudf и включает в себя атрибуты NChild, CodeEducInst, CodeStudent, Family, Name, BirthDay, CodeSex, каждый из которых имеет признак одного из трех типов: дифференциальный – d, характеристический – h или валентный – v, а предикат f Ppar ( SprSex, t (CodeSex, d ), t ( Sex, h)) утверждает, что таблица SprSex и включает в себя атрибуты CodeSex, Sex, которые имеют дифференциальный и характеристический признаки соответственно.

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

SprSex CodeSex: int NOT NULL Sex: char(7) NOT NULL ChildStud CodeEducInst: int NOT NULL (FK) CodeStudent: int NOT NULL (FK) NChild: int NOT NULL Family: char(18) NULL Name: char(18) NULL BirthDay: datetime NULL CodeSex: int NULL (FK) CodeZ: int NULL DateZ: datetime NULL Рис. 3.1. Фрагмент физической модели данных «Контингент учащихся»

Представление таблиц в виде такого параметрического предиката позволяет также показать их взаимосвязь. Для примера рассмотрим предыдущие два предиката:

1 Ppar (ChildStud, t ( NChild, d ), t (CodeEducInst, v), t (CodeStudent, v), t ( Family, h), t ( Name, h), t ( BirthDay, h), t (CodeSex, v)), 2 Ppar ( SprSex, t (CodeSex, d ), t ( Sex, h)) Они имеют общий атрибут CodeSex, при этом в таблице SprSex этот атрибут является дифференциальным, а в таблице ChildStud – валентным. Это говорит о том, что таблицы SprSex и ChildStud связаны через этот атрибут и при этом таблица SprSex является главной, а ChildStud – зависимой;

r r 6) Ps ( x, y, t con ) - предикат, задающий отношение конкретизации t con. Например, r предикат Ps ( BirthDay, дата, t con ) утверждает, что термин физической модели данных BirthDay имеет лексическую характеристику «признак синтаксической группы» - ДАТА.

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

r · первая группа знаний - множество предикатов типизации вида Ps ( x, y, t tip ) и r Ps (t ( x1,..., x k ), y, t tip ) ;

· вторая группа знаний - множество параметрических предикатов i m Ppar ( x, t ( p1, v ),..., t ( pi, v ),..., t ( p m, v )), задающих отношения агрегации и характеризации, k1 j k r а также множество предикатов конкретизации Ps ( x, y, t con ) ;

r · третья группа знаний - множество предикатов перевода Ps ( x, y, t tr ) и r Ps (t ( x1,..., x k ), y, t tr ).

3.1.2. Описание знаний проблемной среды Знания проблемной среды можно разделить на две категории: знания, которые имеют прямое отношение к базе данных;

знания, имеющие косвенное отношение к базе данных.

Знания, имеющие прямое отношение к базе данных, представляют собой понятия на естественном языке, которые находятся в отношении перевода с терминами логической и физической модели данных. Логические операции, операторы SQL-запроса, агрегатные функции составляют знания об языке SQL-ориентированных баз данных.

К знаниям, имеющим прямое отношение к базе данных, относятся:

- знания об определениях терминов логической модели данных и понятий естественного языка, релевантных проблемной среде;

- специальные знания, относящиеся к устройству рассматриваемой системы (транслятора), или знания о себе.

К знаниям, имеющим косвенное отношение к базе данных, относятся:

- знания о синонимах терминов логической модели данных и понятий естественного языка, релевантных проблемной среде;

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

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

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

1) отношение тождества между понятием проблемной среды и понятием логической модели данных;

2) отношение подобия между понятием логической модели данных и понятием синонимом проблемной среды;

3) отношение подобия между понятием естественного языка, релевантным проблемной среде, и лексемой – синонимом данного понятия;

4) отношение номинации между понятием проблемной среды и множеством понятий логической модели данных;

5) отношение номинации между понятием проблемной среды и множеством понятий проблемной среды, часть из которых может принадлежать множеству терминов логической модели данных или множеству понятий, релевантных проблемной среде;

6) отношение типизации между специальным понятием проблемной среды и его типом;

7) отношение перевода между специальным понятием проблемной среды и служебным термином базы данных SQL;

8) отношение агрегации понятий проблемной среды и термина логической модели данных.

Для представления закономерностей проблемной среды будем использовать составные предикаты (3.2) и (3.3), а также составной предикат вида:

r (3.4) Ps(x, y, r(verb),t(z1, …,zk), t nom ), где х - понятие проблемной среды, y - понятие логической модели данных (yl) или понятие проблемной среды (ys), t(z1,…,zk) – терм, задающий множество понятий логической модели данных или проблемной среды (z1,…,zk), которые совместно с y составляют определение понятия х, r(verb) – отношение связи между y и t(z1,…,zk), r выраженное глаголом естественного языка verb, t nom –отношение номинации между х и его определением.

Приведем примеры видов предикатов, которые необходимы для представления закономерностей проблемной среды2:

r r - Ps ( x, y, t tg ) или Ps (t ( x1,..., x n ), t ( y1,..., y k ), t tg ) - предикаты, задающие отношение r r тождества t tg, например, предикат Ps (t (ФИО), t (фамилия, имя, отчество), ttg ) утверждает, что понятия ФИО и фамилия, имя, отчество являются тождественными понятиями в данной проблемной среде;

r r Ps ( x, y, t an ) или Ps (t ( x1,..., x n ), t ( y1,..., y k ), t an ) - предикаты, задающие отношение r подобия t an. Во-первых, между термином логической модели данных хl и понятием r синонимом ys. Так, например, предикат Ps (студент, учащийся, t an ) утверждает, что понятие учащийся является синонимом термина студент. Во-вторых, между понятием естественного языка хl и понятием-синонимом ys понятия х, например, предикат r Ps (список, перечень, t an ) утверждает, что понятие список является синонимом понятия перечень;

r r - Ps(x, t(z1, …,zk), t nom ), - предикат, задающий отношение номинации t nom между понятием проблемной среды х и термом t ( z1,..., z k ). Отношение номинации говорит о том, что понятие х определяется через множество понятий логической модели данных ( z1,..., z k ). Например: предикат Ps (контактные данные, t ( телефон, факс, e mail ), t nom ) r Полная версия предикатов проблемной среды приведена в Приложении Г.

утверждает, что концепт понятия контактные данные составляют понятия z1, z2, z3 l (телефон, факс, e-mail);

Ps(x, y, r(verb),t(z1, …,zk), t rfun ), - предикат, задающий отношение номинации между понятием х и тремя следующими аргументами предиката y, r(verb), t ( z1,..., z k ). При этом r(verb) задает функциональное отношение между понятием y и термом t ( z1,..., z k ) посредством глагола verb. Глагол определяет смысл между понятием y и понятиями естественного языка z1,..., zk, которые могут принадлежать множеству терминов логической модели данных zil или множеству понятий, релевантных проблемной среде zjs.

Например, предикат Ps ( льготник, студент, r (иметь), t (социальный признак), t nom ) утверждает, что r концепт понятия льготник определяется через понятие студент и понятие студент имеет свойство «социальный признак»;

r r - Ps ( x, y, t tip ) - предикат, задающий отношение типизации t tip, например, предикат утверждает, что термин большеs и является операцией оператора r Ps (больше, операция, ttip ) r SQL, а предикат Ps (средний, вычислительная процедура, t tip ) утверждает, что термин среднийs является вычислительной процедурой оператора SQL;

r r - Ps ( x, y, t tr ) - предикат, задающий отношение перевода t tr, например, предикат Ps (больше,, t tr ) утверждает, что термин больше соответствует логической операции «»,а r r предикат Ps (выдать, select, t tr ) утверждает, что термин выдать соответствует операнду Select оператора языка запросов SQL;

r r - Ps(x, t(z1, …,zk), t agr ), - предикат, задающий отношение агрегации t agr между понятием - атрибутом логической модели данных хl и термом t ( z1,..., z k ). Вектор значений ( z1,..., z k ) определяет объем понятия х. Например: предикат Ps(социальный признак, t(сирота, инвалид 1 группы, инвалид 2 группы, инвалид 3 группы, из многодетной семьи, участник ликвидации аварии Чернобыльской АЭС, участник войны в Афганистане, участник войны в Чечне, мать-одиночка), tragr) утверждает, что понятия сирота, инвалид и т.д. составляют объем понятия социальный признакl.

Таким образом, знания проблемной среды можно разделить на четыре основные группы:

- первая группа включает в себя знания об определениях терминов логической модели данных и понятий естественного языка, релевантных проблемной среде, которые описываются предикатами отношения номинации вида: Ps(x, y, r(verb),t(z1, …,zk), t rfun ) и r Ps(x, t(z1, …,zk), t nom ), а также предикатами, задающими отношение агрегации Ps(x,t(z1,.,zk), r t agr );

- вторая группа знаний включает в себя специальные знания проблемной среды, r r которые описываются предикатами типизации Ps ( x, y, t tip ) и перевода Ps ( x, y, t tr ) ;

- третья группа знаний включает в себя знания о синонимах терминов логической модели данных и понятий естественного языка, релевантных проблемной среде, которым r соответствуют предикаты с отношениями тождества вида или Ps ( x, y, t tg ) r Ps ( x, y, t an ) ;

r Ps (t ( x1,..., x n ), t ( y1,..., y k ), t tg ) и подобия четвертая группа знаний включает в себя знания, составляющие базовую модель и не относящиеся к проблемной среде. К этой группе знаний относятся предикаты r Ps ( x, y, t an ), задающие отношение подобия между понятиями-синонимами, которые не являются терминами логической модели данных.

Предикаты проблемной среды приведены в Приложении Г.

3.2. Базовые механизмы проблемного анализа Таким образом, представленное формальное описание лингвистического обеспечения определяет множество базовых объектов формальной системы транслятора, которые впоследствии составят множество Г при доказательстве различных утверждений для ~ построения SQL – запроса. Анализ графа зависимостей G позволит построить граф G гомеоморфного исходному, вершины которого будут содержать термины физической модели данных. Построение гомеоморфного графа зависимостей будем выполнять в две ~ стадии. На первой стадии построим граф G, выполнив анализ каждой вершины gG и l определив её принадлежность терминам логической модели данных t. Термины t ~ ~ запишем в вершины g G и сформируем для вершин вектор. На второй стадии ~ ~ преобразуем граф G в граф G путем исключения дублирующихся вершин и заменой l f терминов логической модели данных t на термины физической модели t.

3.2.1. Метод построения преобразования ~ ~ Построим граф G, гомеоморфный графу G, затем преобразуем его в граф G.

~ Для построения графа G необходимо найти транзитивное замыкание преобразований ~~ ~ ~ вершин g * g, где gG, g G,, = l f, G - граф, гомеоморфный исходному G.

Если транзитивное замыкание не найдено, то это соответствует ситуации, которая означает, что вершина несет в себе вспомогательную информацию для формирования SQL-запроса.

Длина транзитивного замыкания может быть равна или больше единицы. Первый случай соответствует ситуации, в которой существует прямое соответствие между ~ вершиной g и термином g. Во втором случае возможны ситуации, когда запросы могут содержать не прямое соответствие с терминами логической модели, а косвенное. При косвенном соответствии они могут выражаться через синонимы или через другие понятия проблемной среды, описываемые множеством s.

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

Определим вектор следующим кортежем: =z1, z2, z3, где z1 - признак, определяющий принадлежность множеству терминов логической модели данных l;

~ z2 - тип вершины g : 1 – атрибут логической модели данных, 2 - сущность логической модели данных, 3–операнд оператора SQL, 4- операция оператора SQL, 5 - вычислительная процедура, 6 - значение атрибута базы данных;

z3 - тип признака понятия для атрибута логической модели данных (d дифференциальный, h-характеристический, v-валентный) или null в случае, если вершина является сущностью.

3.2.1.1. Построение транзитивных замыканий При решении данной задачи может существовать три гипотезы о соответствии лексем запроса понятиям базы данных или проблемной среды. Можно утверждать, что лексема запроса gG может быть:

1) специальным понятием проблемной среды;

2) термином логической модели данных t l;

3) понятием проблемной среды t s.

~ Построение транзитивного замыкания g * g выполним последовательно для каждой гипотезы, задавая исходную ситуацию, которой описывается одна вершина gG.

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

Доказательство первой гипотезы. Эта гипотеза предполагает, что лексема в вершине g является специальным понятием проблемной среды. Для её доказательства во множество включим предикаты, задающие отношение типизации r t tip, и докажем выражение d 0 методом линейной резолюции. Входную ситуацию опишем предикатом:

~ r d0= Ps ( x, y, t tip ). Если доказательство пройдет успешно, то в вершину g, соответствующую вершине g, заносится оператор, операнд или вычислительная процедура языка SQL, r согласно отношению перевода t tr, а в z2 – значение «3», «4» или «5» соответственно. Затем перейдем к рассмотрению следующей вершины графа G. В случае неуспеха, полученного при доказательстве построенной формулы, доказывается вторая гипотеза.

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

Входная ситуация, описывающая текущую вершину дерева G, имеет следующий вид:

r d0 = Ps ( x, y, t tip ), например, r (3.5) d0 = Ps (студент, y, t tip ) или r (3.6) d0 = Ps (перечень, y, t tip ).

В этом случае множество предикатов формируется из предикатов типизации, описывающих логическую модель данных (3.2) и (3.3), например:

={ r r,,…, Ps (фамилия, атрибут, t tip ) Ps (студент, сущность, t tip ) r, …,,…, Ps ( группа, сущность, t tip ) r Ps (специально сть, сущность, t tip ) r Ps (t (телефон, домашний ), атрибут, t tip ) }.

На данном множестве факт (3.5) будет доказан успешно, поэтому осуществится переход к анализу следующей вершины графа G. При доказательстве факта (3.6) получим неуспех и перейдем к доказательству следующей гипотезы.

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

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

1) лексема является понятием, тождественным некоторому термину логической модели данных;

2) лексема является частью агрегированного или видом обобщенного понятия;

3) лексема является составной частью определения некоторого понятия;

4) лексема является синонимом некоторого термина логической модели данных или понятия естественного языка, релевантного проблемной среде.

При доказательстве гипотез нижнего уровня во множество включим предикаты проблемной среды. Первая гипотеза нижнего уровня доказывается аналогично доказательствам, описанным выше. Множество в этом случае включает в себя все r предикаты, описывающие отношение тождества t tg. Если доказательство прошло успешно, то осуществляется переход на доказательство второй гипотезы верхнего уровня.

Вторая гипотеза нижнего уровня говорит о том, что лексема в вершине графа является значением атрибута базы данных, который является обобщенным или агрегированным понятием. Множество в этом случае составляют предикаты с r r отношениями агрегации t agr и обобщения t ob. Если доказательство прошло успешно, то в элемент z2 вектора вершины g записывается значение «6», которое указывает, что понятие является значением базы данных, а перед вершиной g добавляется новая вершина ~ ~ g. В добавленную вершину g записывается агрегированное или обобщенное понятие логической модели данных. Для доказательства корректности проверяется вторая гипотеза верхнего уровня.

Третья гипотеза нижнего уровня утверждает, что лексема является составной частью определения некоторого понятия. Для её доказательства формируется множество, r состоящее из предикатов с отношениями номинации t nom. Если доказательство прошло ~ успешно, то осуществляется запись в g аргумента y предиката Ps(x, y, r(verb),t(z1, …,zk), ~ r ) и добавляется k g вершин ниже текущей, в которые записываются значения k t nom аргументов терма t(z1, …,zk) и осуществляется, как в предыдущих двух случаях, переход на доказательство второй гипотезы верхнего уровня. Таким образом, длина транзитивного замыкания при доказательстве первой, второй и третьей гипотез нижнего уровня равна двум.

Если первые три гипотезы нижнего уровня потерпели неудачу, то доказывается четвертая, которая имеет итеративный характер. Многошаговость построения ~ транзитивного замыкания g * g заключается в последовательном переборе всех синонимов для лексемы, находящейся в текущей вершине g. Для поиска синонима формируется множество, состоящее из предикатов с отношениями подобия t an. Для r каждого синонима доказываются первые две гипотезы верхнего уровня, а в случае неуспеха – первые три гипотезы нижнего уровня третьей гипотезы. Доказательство продолжается до тех пор, пока одна из гипотез не окажется истинной или пока не будет перебран весь список синонимов текущей лексемы.

~ Граф G, полученный в результате доказательства гипотез, будет гомеоморфен графу G и будет содержать в вершинах термины логической модели данных или термины языка ~ SQL, с приписанными к каждой вершине g векторами.

3.2.1.2. Описание системы продукций Доказательство гипотез связано с проверкой условий применимости каждой отдельной гипотезы. Для удобства разобьем все множество предикатов Г на подмножества, которые будут использоваться в процедуре доказательства вышеописанных гипотез.

1. Подмножество Г1 включает в себя множество предикатов типизации и перевода, составляющих вторую группу знаний проблемной среды.

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

3. Для доказательства третьей гипотезы формируются следующие подмножества:

а) подмножество Г3 - множество предикатов тождества, входящих в состав третьей группы знаний проблемной среды;

b) подмножество Г4 - множество предикатов агрегации первой группы знаний проблемной среды;

с) подмножество Г5 - множество предикатов номинации первой группы знаний проблемной среды;

d) подмножество Г6 - множество предикатов, задающих отношение подобия, третьей и четвертой групп знаний проблемной среды.

~ Система продукций формирования графа G, гомеоморфного графу G, включает в { } Tr себя множество продукций трансляции Pr1tr = pri i =1,13, которые проверяются при доказательстве описанных выше гипотез.

Система продукций для доказательства первой гипотезы Доказательство первой гипотезы связано с проверкой условий применимости Tr Tr Tr продукций pr1, pr2, pr3. Для доказательства предположения, что лексема в вершине g является специальным понятием проблемной среды, формируется множество 1 = 1 q i = { Ps ( x, y, t tip ) }{ Ps ( x, y, t tr ) }qi, где qipri ( i = 1,3 ) - условие применимости. Методом r r линейной резолюции доказывается выражение Г 1 d 0, где d0 задается предикатом вида r Ps ( x i, y, t tip ), в котором хi – понятие, находящееся в вершине g.

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

Первая ситуация. Лексема xi является операндом, имеет вектор i с элементами z1, z2, z3 и ее можно заменить на соответствующее понятие из множества специальных понятий проблемной среды тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией следующих фактов:

1) лексема xi находится в отношении типизации с понятием y1 - PS(xi, y1, trtip);

2) понятие y1 имеет значение «операнд» - PE(y1, операнд);

3) лексема xi находится в отношении перевода с понятием y2 - PS(xi, y2, trtr).

Утверждению о том, что существует лексема xi, которая находится в отношении типизации с понятием «операнд» и имеет вектор i с элементами z1, z2, z3, соответствуют предикаты: ( xi:Х) PS(xi, операнд, trtip) и Ppar(i, t(z1, Null), t(z2, 3), t(z3, Null)).

В этом случае элементы pr1Tr продукции записываются в виде:

q1Tr = PS(xi, y1, trtip) PE(y1, операнд) PS(xi, y2, trtr) ( xi:Х) PS(xi, операнд, trtip) Ppar(i, t(z1, Null), t(z2, 3), t(z3, Null));

~ r1Tr = add[(Ppar(i, t(z1, Null), t(z2, 3), t(z3, Null)) ( g i, y2)].

Вторая ситуация. Лексема xi является операцией, имеет вектор i с элементами z1, z2, z3 и её можно заменить на соответствующее понятие из множества специальных понятий проблемной среды тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией следующих фактов:

- лексема xi находится в отношении типизации с понятием y1 - PS(xi, y1, trtip);

- понятие y1 имеет значение «операция» - PE(y1, операция);

- лексема xi находится в отношении перевода с понятием y2 - PS(xi, y2, trtr).

Утверждению о том, что существует лексема xi, которая находится в отношении типизации с понятием «операция» и имеет вектор i с элементами z1, z2, z3, соответствуют предикаты: ( xi:Х)PS(xi, операция, trtip) и Ppar(i, t(z1, Null), t(z2, 4), t(z3, Null)).

Элементы продукции pr2Tr записываются в виде:

q2Tr = PS(xi, y1, trtip) PE(y1, операция) PS(xi, y2, trtr) ( xi:Х) PS(xi, операция, trtip) Ppar(i, t(z1, Null), t(z2, 4), t(z3, Null));

~ r2Tr = add[(Ppar(i, t(z1, Null), t(z2, 4), t(z3, Null)) ( g i, y2)].

Третья ситуация. Лексема xi является вычислительной процедурой, имеет вектор i с элементами z1, z2, z3 и ее можно заменить на соответствующее понятие из множества специальных понятий проблемной среды тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией следующих фактов:

- лексема xi находится в отношении типизации с понятием y1 - PS(xi, y1, trtip);

- понятие y1 имеет значение «вычислительная процедура» - PS(xi, y1, trtip);

PE(y1, вычислительная процедура);

- лексема xi находится в отношении перевода с понятием y2 - PS(xi, y2, trtr).

В данном случае утверждение описывается продукцией pr3 Tr:

q3Tr = PS(xi, y1, trtip) PE(y1, вычислительная процедура) PS(xi, y2, trtr) ( xi:Х) PS(xi, вычислительная процедура, trtip) Ppar(i, t(z1, Null), t(z2, 5), t(z3, Null));

~ r3Tr = add[(Ppar(i, t(z1, Null), t(z2, 5), t(z3, Null)) ( g i, y2)].

~ Таким образом, в случае успешного доказательства первой гипотезы в вершину g, i соответствующую вершине gi, будет занесено понятие y2 из множества специальных понятий проблемной среды y2s и сформирован соответствующий ей вектор i.

Система продукций для доказательства второй гипотезы При доказательстве второй гипотезы необходимо рассмотреть две ситуации. Первая ситуация касается случая, когда вершина g является сущностью. Вторая ситуация – когда вершина g является атрибутом логической модели данных. При этом множество предикатов Г включает в себя подмножество предикатов типизации Г2 и условие применимости qipri ( i = 4,5 ), т.е. = Г2 qi = { Ps ( x, y, t tip ) }{ Ps (t ( x1,..., x k ), y, t tip ) } qi.

r r Доказательство осуществляется аналогично доказательству предыдущей гипотезы, а входная ситуация d0 задается в виде:

d0 = Ps ( x i, y, t tip ) Ps (t ( x i ), y, t tip ).

r r (3.7) Рассмотрим подробнее возможные ситуации для второй гипотезы.

Первая ситуация. Лексема xi является сущностью и имеет вектор i с элементами z1, z2, z3 тогда и только тогда, когда имеет место следующая конъюнкция фактов:

- лексема xi находится в отношении типизации с понятием y1 - PS(xi, y1, trtip) или PS(t(xi), y1, trtip);

- понятие y1 имеет значение «сущность» - PE(y1, сущность).

Тогда элементы продукции можно представить в виде pr4Tr:

q4Tr = (PS(xi, y1, trtip) PS(t(xi), y1, trtip)) PE(y1, сущность) ( xi:Х) PS(xi, сущность, trtip) Ppar(i, t(z1, 1), t(z2, 2), t(z3, null));

r4Tr = add[Ppar(i, t(z1, 1), t(z2, 2), t(z3, null))].

Вторая ситуация. Лексема xi является характеристическим атрибутом и имеет вектор i с элементами z1, z2, z3 тогда и только тогда, когда имеют место ситуации, составляющие следующую конъюнкцию фактов:

- лексема xi находится в отношении типизации с понятием y1 (PS(xi, y1, trtip) или PS(t(xi), y1, trtip));

- понятие y1 имеет значение «атрибут» (PE(y1, атрибут)).

Продукция представляется в виде pr5Tr:

q5Tr = (PS(xi, y1, trtip) PS(t(xi), y1, trtip)) PE(y1, атрибут) ( xi:Х) PS(xi, атрибут, trtip) Ppar(i, t(z1, 1), t(z2, 1), t(z3, h));

r5Tr = add[Ppar(i, t(z1, 1), t(z2, 1), t(z3, h))].

В случае успешного доказательства второй гипотезы вершине gi будет приписан соответствующий ей вектор i.

Система продукций для доказательства третьей гипотезы Доказательство третьей гипотезы связано с доказательством четырех гипотез нижнего уровня.

Первая гипотеза нижнего уровня. Для доказательства предположения, что лексема в вершине g является тождественным понятием некоторому термину логической модели Г=3q6Tr={ Ps ( x, y, t tg ) }q6Tr, r данных, формируется множество предикатов где { Ps ( x, y, t tg ) }- подмножество предикатов, задающих отношение тождества, а q6Tr – условие r применимости продукции pr6Tr. Входная ситуация d0 в этом случае задается предикатом r вида Ps ( xi, y, t tg ), где хi – понятие, находящееся в вершине g.

Если доказательство прошло успешно, то в вершину g заносится соответствующее ей понятие yj, для доказательства корректности которого осуществляется переход на доказательство второй гипотезы верхнего уровня. Для этого необходимо найти Tr транзитивное замыкание d 0 d1, в котором применение продукции pr6Tr позволит pr получить новое состояние d1= Ps ( x i, y, t tip ) Ps (t ( x i ), y, t tip ), где xi – понятие yj вершины g.

r r Утверждение о том, что существует лексема xi, которая является тождественным понятием некоторому термину логической модели данных, соответствует предикат ( xi:Х)PS(xi, zj, trtg), а в продукции pr6 условие применимости q6 и программа r6 будут иметь следующий вид: q6 = PS(xi, zj, trtg) ( xi:Х) PS(xi, zj, trtg);

r6 = add[(xi, zj)].

В случае успешного доказательства понятие xi, расположенное в вершине gi, будет заменено на тождественное понятие zj и осуществлен переход на продукцию pr4Tr для доказательства второй гипотезы верхнего уровня. Для него входная ситуация переопределяется как d0=d1.

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

Первая ситуация касается случая, когда лексема xi является обобщенным или агрегированным понятием и будет иметь вектор i с элементами z1, z2, z3 тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией следующих фактов:

- лексема хi принадлежит терму z - Pf(tin(хi), y, f23), где f23 – ссылка на процедуру, которая осуществляет поиск лексемы хi в терме t ( y1,..., y k ) предикатов, задающих r отношение агрегации Ps ( x, t ( y1,..., y k ), t agr ), и возвращает в качестве y – имя агрегированного понятия;

- терм z является агрегированным понятием - PS(y, t(y1, …, yk), tragr);

- вершина не имеет вектор i - ¬ Ppar(i, t(z1, null), t(z2, 6), t(z3, null), t(z4, null)).

Для данного случая входная ситуация d0 задается в виде:

d0 = Ps ( y, t ( xi ), t agr ) Ps ( y, t ( xi ), t ob ).

r r (3.9) А множество включает в себя предикаты, задающие отношения агрегации t agr и r обобщения t ob, а также условие применимости продукции q7Tr:

r Г = 4 q7Tr ={ Ps ( x, t ( y1,..., y k ), t agr ) } { Ps ( x, t ( y1,..., y c ), t ob ) }q7Tr.

r r (3.10) Tr Tr Tr Данной ситуации соответствует продукция pr7 =q7, r7, в которой:

q7Tr = Pf(tin(хi), y, f23) PS(y, t(y1, …, yk), tragr) ¬ Ppar(i, t(z1, null), t(z2, 6), t(z3, null)) ( xi:X) PS(y, t(хi), tragr) Ppar(i, t(z1, null), t(z2, 6), t(z3, null));

~ r7Tr = add[Ppar(i, t(z1, null), t(z2, 6), t(z3, null)) ( g, y)].

Вторая ситуация. Эту ситуацию рассмотрим на примере, когда имеется три случая:

первый - лексема xi является фамилией, второй – именем, третий - отчеством. Рассмотрим подробнее каждый из них.

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

- лексема xi входит в синтаксическую группу y1 - Pf(tin(хi), y1, f24), где f24 – ссылка на процедуру, которая осуществляет проверку вхождения лексемы xi в терм t ( y1,..., y k ) (в состав синтаксической группы) предикатов, задающих отношение характеризации, а y возвращает имя синтаксической группы;

- y1 имеет значение «ФИО» - PE(y1, ФИО);

- лексема xi является y2 элементом в синтаксической группе ФИО - Pf(tin(хi, ФИО), y2, f25), где f25 – ссылка на процедуру, которая определяет положение лексемы хi в синтаксической группе ФИО и возвращает в качестве переменной y2 ее порядковый номер;

- y2 имеет значение 1 - PE(y2, 1);

- вершина не имеет вектор i - ¬ Ppar(i, t(z1, null), t(z2, 6), t(z3, null)).

Входная ситуация d0 задается в виде:

r (3.11) d0 = Ps (t ( xi ), y, t ch ), где y – название синтаксической группы.

Множество входных дизъюнктов включает в себя условие применимости продукции q8Tr, а также множество предикатов, задающих отношение характеризации t ch, r которые описывают синтаксические группы, полученные на этапе синтаксического анализа:

Г = 7 qi ={ Ps (t ( x1,..., x k ), y, t ch ) }qi, ( i = 8,10 ). (3.12) r Тогда утверждению о том, что существует лексема xi, которая является значением атрибута фамилия, будут соответствовать предикаты: ( xi:X) Ps (t ( xi ), ФИО, t ch ) Ppar(i, r t(z1, null), t(z2, 6), t(z3, null)), а продукция описывается парой pr8Tr =q8Tr, r8Tr, где q8Tr = Pf(tin(хi), y1, f24) PE(y1, ФИО) Pf(tin(хi, ФИО), y2, f25) PE(y2, 1) ¬ Ppar(i, t(z1, null), t(z2, 6), t(z3, null), t(z4, null)) ( xi:X) Ps (t ( xi ), ФИО, t ch ) Ppar(i, t(z1, null), t(z2, 6), r t(z3, null));

~ r8Tr = add[Ppar(i, t(z1, null), t(z2, 6), t(z3, null)) ( g, фамилия)].

Во втором случае проверяется факт принадлежности лексемы xi атрибуту имя, в котором продукция pr9Tr состоит из:

q9Tr = Pf(tin(хi), y1, f24) PE(y1, ФИО) Pf(tin(хi, ФИО), y2, f25) PE(y2, 2) ¬ Ppar(i, t(z1, null), t(z2, 6), t(z3, null), t(z4, null)) ( xi:X) Ps (t ( xi ), ФИО, t ch ) Ppar(i, t(z1, null), t(z2, 6), r t(z3, null), t(z4, null));

~ r9Tr = add[Ppar(i, t(z1, null), t(z2, 6), t(z3, null)) ( g, имя)].

В третьем случае проверяется факт принадлежности лексемы xi атрибуту отчество, которому соответствует продукция pr10Tr:

q10Tr= Pf(tin(хi), y1, f24) PE(y1, ФИО) Pf(tin(хi, ФИО), y2, f25) PE(y2, 3) ¬ Ppar(i, t(z1, null), t(z2, 6), t(z3, null), t(z4, null)) ( xi:M) Ps (t ( xi ), ФИО, t ch ) Ppar(i, t(z1, null), t(z2, 6), r t(z3, null));

~ r10Tr = add[Ppar(i, t(z1, null), t(z2, 6), t(z3, null)) ( g, отчество)].

~ Если доказательство гипотезы прошло успешно, то добавляется новая вершина g, перед вершиной g, для анализа которой осуществляется переход на доказательство второй гипотезы верхнего уровня.

Третья гипотеза нижнего уровня. Эта гипотеза предполагает, что лексема xi является составной частью определения некоторого понятия тогда и только тогда, когда имеет место один из двух случаев: лексема хi находится в отношении номинации trnom с термом t(z1, …,zk) или лексема хi находится в отношении номинации trnom с переменной y и термом t(z1, …,zk).

Для первого случая множество предикатов Г (3.13) включает в себя подмножество предикатов номинации Г51 и условие применимости q11Trpr11Tr:

Г = 51 q11Tr={Ps(x, t(z1, …,zk), trnom)}q11Tr, (3.13) а входная ситуация d0 задается в виде:

d0 = Ps(xi, t(z1, …,zk), trnom). (3.14) Продукция в этом случае представляется в виде pr11Tr:

q11Tr = Ps(xi, t(z1, …,zk), trnom) ( xi:X) Ps(xi, t(z1, …,zk), trnom);

~ ~ ~ r11Tr = add[( g1, z1) ( g 2, z2) … ( g k, zk);

elim (g)].

Для второго случая:

Г = 52 q12 Tr ={Ps(x, y, r(verb),t(z1, …,zk), trnom)} q12Tr;

(3.15) d0 = Ps(xi, t(z1, …,zk), trnom) Ps(xi, y, r(verb),t(z1, …,zk), trnom).

(3.16) Tr Этому случаю соответствует продукция pr12 :

q12Tr = Ps(xi, y, r(verb),t(z1, …,zk), trnom) ( xi:X) Ps(xi, y, r(verb),t(z1, …,zk), trnom);

~ ~ ~ ~ r12Tr = add[( g1, y) ( g 2,z1) ( g 3,z2) … ( g k 1, zk);

elim (g)].

Если доказательство гипотезы прошло успешно, то программа r удаляет вершину g, перед ней добавляет новых k вершин, а затем переходит на первую добавленную вершину для проверки второй гипотезы верхнего уровня.

Четвертая гипотеза нижнего уровня. Эта гипотеза утверждает, что лексема xi, расположенная в вершине g, является синонимом понятию логической модели данных или понятию проблемной среды. Для поиска синонима формируется множество входных r дизъюнктов =6 q13Tr ={ Ps ( x, y, t an ) }q13Tr, состоящее из предикатов с отношениями r подобия t an и условия применимости q13Tr, а входная ситуация задается в виде предиката подобия d0 = Ps(xi, y, tran). Данной гипотезе соответствует продукция pr13Tr:

q13Tr = Ps(xi, y, tran) ( xi:X) Ps(xi, y, tran);

r13Tr = add[(xi, y)].

В результате успешного доказательства гипотезы понятие xi заменится на соответствующий синоним y. Затем произойдет переход на проверку всех предыдущих гипотез, начиная с первой гипотезы верхнего уровня. Доказательство будет продолжаться до тех пор, пока одна из гипотез не окажется истинной или пока не будет перебран весь список синонимов текущей лексемы.

~ Таким образом, граф G, полученный в результате доказательства гипотез, и ~ исходный граф G являются гомеоморфными. Граф G будет содержать в вершинах термины логической модели данных или термины языка SQL, с приписанными к каждой ~ вершине g векторами i.

3.2.1.3. Преобразование графа зависимостей терминов логической модели в граф зависимостей терминов физической модели – преобразование ~ Построенный граф G может иметь вершины с одинаковыми значениями. Так, например, если две вершины g i, g i +1 G исходному графу имели значение «домашний» и «телефон» соответственно, то при доказательстве третьей гипотезы нижнего уровня в ~ ~~ соответствующие вершины g i, g i+1 G будет записано одинаковое значение, например, ~~ «Дом_телефон». Для удаления дублирующих вершин g G необходимо проверить ситуацию, которая утверждает, что вектор i эквивалентен вектору i+1 тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией следующих фактов:

~ ~ - вершина g i имеет значение xi - Ps( g i, xi);

~ ~ вершина g i+1 имеет значение xj - Ps( g i+1, xj);

~ вершина g i имеет векторов i - Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3));

~ вершина g имеет векторов - P (, t(z, y ), t(z, y ), t(z, y ));

- i+1 par i 1 5 2 6 3 i + - xi эквивалентно xj - PЕ(xi, xj).

~ ~~ Тогда исходное состояние d0 будет задаваться парой вершин g i, g i+1 G и соответствующих им векторов i, i+1:

~ ~ d0 = Ps( g i, xi) Ps( g i+1, xj) Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)) Ppar(i, t(z1, (3.17) y5), t(z2, y6), t(z3, y7)).

А элементы продукции записываются в виде pr14Tr:

~ ~ q14 Tr= Ps( g i, xi) Ps( g i+1, xj) Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)) Ppar(i, t(z1, y5), t(z2, y6), t(z3, y7), t(z4, y8)) PЕ(xi, xj) PЕ(y1, y5)PЕ(y2, y6)PЕ(y3, y7);

~ r14Tr= elim[ g i ].

~ ~ Дальнейшее преобразование графа G в граф G заключается в переименовании ~~ терминов логической модели данных, расположенных в оставшихся вершинах g G, на ~ ~ термины физической модели данных. При этом каждой вершине g G приписывается i вектор i =xi1, xi2, xi3, xi4, xi5, где:

xi1 – тип вершины: 1- таблица, 2 – столбец, 3 – оператор;

4 - значение;

xi2 – идентификатор таблицы, если x1=2 или 4, в противном случае null;

xi3 - идентификатор столбца, если x1=4, в противном случае null;

xi4 - null или 1 - признак добавленной вершины;

xi5 - вид связи: 1 – связь «таблица – таблица», 2 – связь «атрибут – значение», 3 – связь «атрибут – логическая операция – значение», 4 – связь «вычислительная процедура – атрибут», 5 – связь «атрибут – атрибут», 6 – связь «таблица – атрибут».

Признак добавленной вершины x4 и вид связи x5 вектора i заполняются в процессе анализа пары смежных вершин на тип взаимосвязи при построении операторов SQL (раздел 3.3).

~ Для построения графа G необходимо сформировать множество предикатов, которое включает в себя подмножество предикатов перевода 8, основу которого составляют предикаты физической модели данных, входящие во вторую группу знаний метаописания базы данных и условие применимости q15Trpr15Tr:

Г = 8 q15Tr ={ Ps ( x, y, t tr ) }{ Ps (t ( x1,..., x k ), y, t tr ) } q15Tr.

r r (3.18) Доказательство осуществляется аналогично доказательству предыдущих гипотез, а d задается в виде:

d0 = ( Ps ( xi, y, t tr ) Ps (t ( xi ), y, t tr ) ) Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)).

r r (3.19) При доказательстве данной гипотезы необходимо рассмотреть четыре ситуации.

~ Первая ситуация касается случая, когда вершина g i является сущностью, а вторая – когда ~ ~ вершина g является атрибутом логической модели данных, третья – когда вершина g i i ~ является оператором и четвертая – когда вершина g i является значением базы данных.

~ Первая ситуация. Вершина g i является сущностью, и ее можно заменить на соответствующий термин физической модели данных с вектором i =xi1, xi2, xi3, xi4, xi тогда и только тогда, когда имеет место закономерность, описываемая конъюнкцией следующих фактов:

~ - вершина g i имеет вектор i - Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3));

- z2 имеет значение «2» - PE(y2, 2).

Тогда элементы продукции pr15Tr записываются в виде:

~ q15Tr = Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)) PE(y2, 2) Ps ( g i, y, t tr ) Ppar(i, t(xi1, y5), t(xi2, r y6), t(xi3, y7), t(xi4, Null), t(xi5, Null));

~ r15Tr = add[( g i, y) Ppar(i, t(xi1, 1), t(xi2, Null), t(xi3, Null), t(xi4, Null), t(xi5, Null))].

Второй ситуации соответствует продукция pr16Tr =q16Tr, r16Tr, где ~ ~ q16Tr = Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)) PE(y2, 1) Pf(tin( g i ), y4, f25) Ps ( g i, y, t tr ) r ~ Ppar(i, t(xi1,), t(xi2, y6), t(xi3, y7), t(xi4, Null), t(xi5, Null)), где Pf(tin( g i ), y4, f25) – функциональный предикат, в котором f25 – ссылка на процедуру F25, возвращающую в ~ переменной y4 – имя таблицы атрибута g i ;

~ r16Tr = add[( g i, y) Ppar(i, t(xi1, 2), t(xi2, y4), t(xi3, Null), t(xi4, Null), t(xi5, Null))].

Третьей ситуации соответствует продукция pr17Tr =q17Tr, r17Tr, где q17Tr = Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)) (PE(y2, 3) PE(y2, 4) PE(y2, 5)) Ppar(i, t(xi1, y5), t(xi2, y6), t(xi3, y7), t(xi4, Null), t(xi5, Null));

r17Tr = add[Ppar(i, t(xi1, 3), t(xi2, Null), t(xi3, Null), t(xi4, Null), t(xi5, Null))].

Четвертой ситуации соответствует продукция pr18Tr =q18Tr, r18Tr, где ~ q18Tr = Ppar(i, t(z1, y1), t(z2, y2), t(z3, y3)) PE(z2, 6) Pf(tin( g i ), y4, f26) Pf(tin(y4), y5, ~ f ) P (, t(x, y ), t(x, y ), t(x, y ), t(x, Null), t(x, Null)), где P (t ( g ), y, f ) – 25 par i i1 5 i2 6 i3 7 i4 i5 f in 4 i функциональный предикат, в котором f26 – ссылка на процедуру F26, возвращающую в ~ переменной y – понятие, расположенное в предыдущей вершине g i1 ;

r18Tr = add[Ppar(i, t(xi1, 4), t(xi2, y5), t(xi3, y4), t(xi4, Null), t(xi5, Null))].

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

3.3. Формирование SQL-запроса или построение преобразования ~ Для построения 4 необходимо выполнить преобразования: G G Q, где ~ G - граф зависимостей в терминах физической модели данных, G - граф SQL-запроса, Q SQL-запрос в виде команды SELECT.

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

Полнота множества гипотез определяется сложностью связей вершин (таблиц, расположенных в вершинах графа) между собой. Сложность связей вершин зависит от ~ взаимосвязей таблиц в модели данных. Таким образом, мы имеем граф G, отображающий запрос пользователя, к каждой вершине которого приписан вектор, а также граф, ~ ~ отображающий модель данных. Граф G задан множеством вершин g и множеством дуг ~ ~~ ~~ {( gi, g j )| g i, g j G }. Граф задан множеством предикатов Ppar, описывающих физическую модель данных. Тогда необходимо рассмотреть две гипотезы, связанные с типом ~ взаимосвязи пары смежных вершин графа G и соответствующих вершин графа Е:

~ - прямая связь, когда паре смежных вершин графа G соответствуют смежные вершины графа Е;

~ - непрямая связь, когда паре смежных вершин графа G соответствуют несмежные вершины графа Е.

Гипотеза первая «Прямые связи вершин графа Е». Здесь необходимо рассмотреть три ситуации, зависящие от комбинации типов вершин. Будем считать, что первая ситуация ~ касается случая, когда вершинами графа G могут быть только идентификаторы таблиц.

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

лежат на расстоянии одной дуги.

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


~ Третья ситуация касается случая, когда вершинами графа G могут быть только идентификаторы таблиц, идентификаторы столбцов и значения столбцов. Связи между смежными вершинами, содержащими идентификаторы таблиц и столбцов, обрабатываются аналогично предыдущему случаю. Если смежные вершины содержат идентификатор столбца и значение столбца, то это означает, что связь уже существует.

Необходимость соблюдения полноты множества ситуаций гипотезы предполагает рассмотрение всех возможных ситуаций, представляющих собой декартово произведение типов вершин TТ, где Т={таблица, атрибут, значение}. Нами не рассмотрены ситуации, описывающие отношения «таблица – значение», и отношения, обратные вышеприведенным: «атрибут-таблица», «значение–таблица», «значение-атрибут».

Обратные отношения типов вершин не имеет смысла рассматривать, так как операция конъюнкции ассоциативна, а пара элементов хi1i и хj1j i-той и j-той вершин в условии применимости продукции описывается именно конъюнкцией хi1 и хj1. Остальные ~ отношения при обработке графа G невозможны, так как пара «значение – значение» будет составлять синтаксическую группу «однородные члены предложения», поэтому между ними связи не будет, а пара «таблица – значение» невозможна в связи с доказательством третьей гипотезы нижнего уровня.

~ Гипотеза вторая «Непрямые связи вершин графа G ». Гипотеза описывает ситуации, ~ ~~ когда паре смежных вершин gi, gi +1 G могут соответствовать пара el, ek несмежных вершин графа Е, т.е. расстояние между вершинами el, ek больше одной дуги.

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

3.3.1. Продукции по формированию SQL-запроса Рассмотрим продукции для ситуаций первой гипотезы.

~~ Для первой ситуации строится утверждение о том, что между парой вершин g i, g j существует прямая связь тогда и только тогда, когда имеют место следующие факты, которым в соответствие поставлены предикаты:

~ 1) вершина g i имеет вектор i (Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, Null)));

~ 2) вершина g имеет вектор (P (, t(x, l ), t(x, l ), t(x, l ), t(x, l ), t(x, Null)));

j par j j1 5 j2 6 j3 7 j4 8 i j 3) хi1 имеет значение «1» - (PE(xi1, 1));

4) хj1 имеет значение «1» - (PE(xj1, 1));

~ ~ 5) таблица g i имеет атрибут y1 с признаком «d» (Pf(tin( g i ), y1, f27), где f27 - ссылка на процедуру F27, которая осуществляет поиск атрибута с признаком «d» в параметрическом ~ предикате Ppar ( g i, t ( p1, v 11 ),..., t ( pi, v ij ),.., t ( p m, v km2 )) и в переменной y1 возвращает его имя);

k ~ ~ 6) атрибут y принадлежит таблице g (P (t (y, g ), y, f ), где f — ссылка на 1 f in 1 2 28 j j ~ процедуру F28, которая осуществляет проверку принадлежности атрибута y1 таблице g j в ~ предикате Ppar ( g j, t ( p1, v11 ),..., t ( pi, v ij ),.., t ( p m, v k 2 )) и возвращает в качестве результата y m k значения «истина» или «ложь»);

или ~ ~ 1) таблица g j имеет атрибут y1 с признаком «d» (Pf(tin( g j ), y1, f27));

~ ~ 2) атрибут y принадлежит таблице g (P (t (y, g ), y, f ));

1 f in 1 2 i i 3) признак принадлежности y2 имеет значение «истина» (PE(y2, истина)).

~~ Утверждению о том, что между парой вершин g i, g j существует прямая связь, ~~ соответствуют предикаты: P (t( g, g ), y, tr ) P (, t(x, l ), t(x, l ), t(x, l ), t(x, l ), S 2 sv par i i1 1 i2 2 i3 3 i4 i j t(xi5, 1)).

В этом случае элементы продукции pr19Tr записываются в виде:

q19Tr = Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, Null)) Ppar(j, t(xj1, l5), t(xj2, l6), ~ ~ t(xj3, l7), t(xj4, l8), t(xi5, Null)) PE(xi1, 1) PE(xj1, 1) ((Pf(tin( g i ), y1, f27) Pf(tin(y1, g j ), y2, ~ ~ ~~ f ) )( P (t ( g ), y, f ) P (t (y, g ), y, f )) P (y, истина) P (t( g, g ), y, tr ) 28 f in 1 27 f in 1 2 28 E 2 S 2 sv j i i j Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, 1));

~ ~~ r19Tr = add[ (Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, 1)) ( g i,PS(t( g i, g j ), y2, trsv))].

В случае успеха осуществляется обновление вектора i путем добавления вида связи ~ «таблица – таблица» и обновление вершины g i, в которую заносится предикат связи таблиц программы r19Tr.

Вторую и третью ситуации можно описать продукцией pr20Tr =q20Tr, r20Tr, где q20 Tr = Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, Null)) Ppar(j, t(xj1, l5), t(xj2, l6), ~ t(xj3, l7), t(xj4, l8), t(xi5, Null)) PE(xi1, 1) PE(xj1, 2) ((Pf(tin( g i ), y1, f27) Pf(tin(y1, xj2), y2, ~ ~ f ))(P (t (x ), y, f ) P (t (y, g ), y, f )) P (y, истина) P (t( g, x ), y, tr ) 28 f in j2 1 27 f in 1 2 28 E 2 S 2 sv i i j Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, 1));

~ ~ r20Tr =add[(Ppar(i, t(xi1, l1),t(xi2, l2),t(xi3, l3),t(xi4, l4),t(xi5, 1)) ( g i,PS(t( g i, x j2 ),y2,trsv))].

Ситуациям второй гипотезы соответствует конъюнкция фактов первой гипотезы, за исключением последнего факта, в котором признак принадлежности y2 должен иметь значение «ложь» (PE(y2, ложь)). Этот факт опровергает наличие прямой связи между ~ ~ ~ таблицами g i и g j, а новый функциональный предикат (Pf(tin( g i ), y3, f29) позволяет ~ определить таблицу y, имеющую прямую связь с таблицей g. Тогда первой ситуации 3 i Tr Tr Tr будет соответствовать продукция pr21 =q21, r21, где:

q21Tr = Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, Null)) Ppar(j, t(xj1, l5), t(xj2, l6), ~ ~ t(xj3, l7), t(xj4, l8), t(xi5, Null)) PE(xi1, 1) PE(xj1, 1) ((Pf(tin( g i ), y1, f27) Pf(tin(y1, g j ), y2, ~ ~ ~ f ) )( P (t ( g ), y, f ) P (t (y, g ), y, f )) P (y, ложь) (P (t ( g ), y, f ) 28 f in 1 27 f in 1 2 28 E 2 f in 3 j i i ~~ PS(t( g i, g j ), y2, trsv) Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, 1));

~ r Tr = add[( g ) P (, t(x, 1),t(x, l ),t(x, l ),t(x, 1),t(x, 1))].

21 par i1 i1 i2 2 i3 3 i4 i i ~~ Tr Программа r21 посредством операции разбиения дуги g i, g j добавляет между ~ ~ ~ вершинами g i и g j новую вершину g i1 и приписывает ей вектор i1, в котором указывает, ~ ~~ ~~ что g i1 является добавленной таблицей (xi4=1). Это порождает новые дуги g i, g i1 и g i1, g j, для идентификации которых осуществляется переход на доказательство первой гипотезы.

Второй и третьей ситуациям соответствует продукция pr22Tr=q22Tr, r22Tr:

q22Tr = Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, Null)) Ppar(j, t(xj1, l5), t(xj2, l6), ~ t(xj3, l7), t(xj4, l8), t(xi5, Null)) PE(xi1, 1) PE(xj1, 2) ((Pf(tin( g i ), y1, f27) Pf(tin(y1, xj2), y2, ~ ~ f ))(P (t (x ), y, f ) P (t (y, g ), y, f )) P (y, ложь) (P (t ( g ), y, f ) 28 f in j2 1 27 f in 1 2 28 E 2 f in 3 i i ~ PS(t( g i, x j2 ), y2, trsv) Ppar(i, t(xi1, l1), t(xi2, l2), t(xi3, l3), t(xi4, l4), t(xi5, 1));

~ r Tr = add[( g ) P (, t(x, 1),t(x, l ),t(x, l ),t(x, 1),t(x, 1))].

22 par i1 i1 i2 2 i3 3 i4 i i Таким образом, строится транзитивное замыкание посредством поиска связи между таблицами в графе Е. Если доказательство ситуаций успешно, то осуществляется переход на доказательство первой гипотезы и так далее, пока не произойдет транзитивное замыкание, т.е. последняя дабавленная вершина в граф G будет иметь прямую связь с j ~ ой вершиной графа G, при этом ни одна из ситуаций второй гипотезы не будет успешно доказана.

3.3.2. Алгоритм доказательства гипотез Для доказательства сформируем формулу d0, где d 0 - входная ситуация. Ситуация d0 для обеих гипотез формируется одинаково на основе анализа элементов векторов i и j и терминов физической модели данных, расположенных в рассматриваемых смежных ~ вершинах графа G. Для первой ситуации у векторов i и j элементы должны иметь следующие значения:

- хi1 имеет значение «1»;

- хj1 имеет значение «1»;

- остальные элементы векторов i и j имеют значение null.

Для второй ситуации элементы векторов i и j должны иметь следующие значения:

- хi1 имеет значение «1»;

- хj1 имеет значение «2»;

- хj2 имеет значение у, где у – идентификатор таблицы, содержащей идентификатор столбца, расположенного в j-той вершине;

- остальные элементы векторов i и j имеют значение null.

Для третьей ситуации элементы векторов i и j имеют следующие значения:

- хi1 имеет значение «2»;

- хj1 имеет значение «4»;

- хi2 имеет значение у, где у – идентификатор таблицы, содержащей идентификатор столбца, расположенного в i-той вершине;

- хj2 имеет значение у, где у – идентификатор таблицы, содержащей идентификатор столбца, расположенного в j-той вершине;

- хj3 имеет значение z, где z – идентификатор столбца, содержащий значение j-той вершины;

- остальные элементы векторов i и j имеют значение null.

В этом случае значения элементов хi2, хj2 векторов i и j совпадают.

Рассмотрим формирование множества для каждой гипотезы.

Для первой гипотезы множество будет включать множество параметрических предикатов, описывающих физическую модель данных и продукции pr19Tr, pr20Tr нахождения связи между таблицами SQL–запроса.

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

Для доказательства первой гипотезы необходимо просмотреть все пары смежных ~ вершин графа G, применяя соответственно каждой ситуации правила pr19Tr, pr20Tr нахождения связи между таблицами SQL–запроса.

Для доказательства второй гипотезы необходимо найти путь от i-той таблицы к j-той ~ таблице и преобразовать граф G в граф G, в котором будут добавлены все промежуточные таблицы. Для новых таблиц необходимо сформировать вектор. В связи с тем, что граф Е задан множеством предикатов, то путь от i-той таблицы к j-той таблице Pri Pri Pri будем искать как транзитивное замыкание d0 * d k или d0 d1 d 2... d k.


Первое применение продукции priTr ( i = 21,22 ) позволит получить новое состояние d1, в котором будет определена таблица, с которой связана исходная таблица, следующее применение продукции priTr позволит получить состояние d2, в котором будет определена таблица, с которой связана предыдущая таблица и так далее, пока не найдем таблицу, которая является вершиной у2. Здесь исходная ситуация d0 и индекс продукции i учитывают три случая комбинации типов вершин, описанных выше. В действия продукции priTr входит добавление вершины в граф G и формирование вектора.

3.3.3. Формирование оператора SQL Из множества SQL-операторов нас интересует класс операторов Select, касающихся только выборки информации из таблиц базы данных. Эти операторы имеют следующий синтаксис [92-94, 23]:

SELECT select_list FROM table_source [ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ] Обязательная часть оператора соответствует наиболее простому варианту запроса.

При её построении необходимо сформировать список выводимых идентификаторов столбцов (select_list) и список идентификаторов таблиц (table_source), в которые входят выводимые столбцы. Однако чаще встречается оператор SELECT, обладающий следующим синтаксисом:

SELECT select_list FROM table_source WHERE search_condition В этом случае необходимо сформировать условную и объектную части SQL-запроса.

Объектную часть составляют ключевые слова «SELECT» со списком выводимых идентификаторов столбцов (select_list) и «From» со списком идентификаторов таблиц (table_source), в которые входят выводимые столбцы. В условную часть запроса входят ключевое слово WHERE и фильтр (search_condition) отбора объектов, принадлежащих select_list.

Рассмотрим метод формирования объектной и условной частей.

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

В список table_source включаются все без исключения таблицы, содержащиеся в вершинах графа G и элементах кортежа вектора.

Формирование условной части. Условная часть запроса search_condition может включать два типа фильтра. Первый связан с отображением связи добавленных вершин, второй – с отображением условий, заданных в запросе, например, х5, х – атрибут базы данных, а «5» - его значение.

Первый тип формируется на основе анализа графа G и элементов xi4 вектора i, ~ приписанным к вершинам. Так как граф G и граф G гомеоморфны, то добавленные путем разбиения некоторых дуг вершины составляют часть A( G ), подграфы графа G, состоящие ~ из связанных между собой не добавленных вершин, изоморфны графу G. Таких частей A( G ) в графе G может быть несколько, т.е. они составляют множество подграфов В={Ai( G )| i=1..n, n-количество подграфов добавленных вершин}. Таким образом, задача анализа состоит в поиске каждого Ai( G ) и формировании для него фильтра. Тогда количество фильтров будет равно n.

Поиск осуществляется на основе анализа значения элемента xi4 вектора i, если он имеет значение «1», это означает, что вершина добавленная. Как только встретилась такая вершина, необходимо сформировать первое условие i-того фильтра. Это условие на равенство уточненных атрибутов базы данных. Уточненный атрибут состоит из идентификатора атрибута, разделителя «точки» и идентификатора таблицы.

Идентификатор атрибута записан в элементе xi2 вектора i. При этом слева записывается атрибут вершины верхнего уровня, а справа - вершины нижнего уровня. Таких условий в i том фильтре может быть несколько. Количество зависит от мощности множества вершин подграфа Ai( G ) и количества совпавших дифференциальных атрибутов рассматриваемых таблиц.

Аналогичным образом рассматриваются все n подграфов A( G ). Совокупность n фильтров и составит первый тип условной части.

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

Система продукций по реализации данного метода приведена в приложении Д.

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

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

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

распознавание типов вершин в графе зависимостей и формирование вектора;

преобразование понятий проблемной среды в термины логической модели данных;

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

По данной главе построены множества продукций для решения поставленных в главе задач, которые приведены в приложении Д.

Все частичные функции, представленные в виде вычислительных процедур, составляют библиотеку ассоциированных процедур К третьего элемента системы общения с базами данных Z = M, В, K.

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

- параметрическим предикатом, позволяющим задать интенсионал понятий физической модели данных и построить взаимосвязь между понятиями;

- составным, необходимым для задания отношений абстрагирования и отношений биноминативных предложений;

- эквиваленции, необходимым для задания тождественных понятий;

- функциональным, позволяющим вводить ассоциированные функциональные процедуры.

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

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

Литература 1. Андреев А.М., Березкин Д.В., Брик А.В. Лингвистический процессор для ИПС // Компьютерная хроника. -1998.- №11. – С. 79-100.

2. Лингвистические процессоры и представление знаний: Сб. науч. тр./ Под ред. А.С. Нариньяни. – Новосибирск: ВС СО АН СССР, 1981. – 138 с.

3. Апресян Ю.Д., Богуславский И.М., Иомдин Л.Л. и др. Лингвистический процессор для сложных информационных систем. -М.: Наука, 1992. - 256 с.

4. Брябин В.М., Любарский Ю.Я., Микулич Л.И. и др. Диалоговые системы в АСУ // Под ред. Д.А. Поспелова. – М.: Энергоатомиздат, 1983. – С. 85-120.

5. Файн В.С. Распознавание образов и машинное понимание естественного языка. – М.: Наука, 1987.

6. Золотов Е.В., Кузнецов И.П. Расширенные системы активного диалога. – М.: Наука, 1982.

7. Мельчук И.А. Опыт теории лингвистических моделей “смысл-текст”. – М.:

Наука, 1982.

8. Искусственный интеллект: В 3 кн. Кн.1. Системы общения и экспертные системы: Справочник / Под ред. Э.В. Попова. – М.: Радио и связь, 1990. – 464 с.

9. Искусственный интеллект: Применение в интегрированных производственных системах / Под ред. А.И. Дашенко, Е.В. Левнера. – М.:

Машиностроение, 1991. – 539 с.

10. Леонтьева Н.Н. Информационная модель системы автоматического перевода // НТИ. Сер. 2. 1985. №10.

11. Леонтьева Н.Н., Кудряшова И.М., Малевич О.Б. Семантические заготовки к пониманию целого текста. (МГПИИЯ им. М. Тореза): Сб. научн. Тр. Вып.

271.- М., 1986.

12. Леонтьева Н.Н. Русский общесемантический словарь (РОСС): структура, наполнение. // НТИ. Сер. 2. 1997. N 12. – С. 5-20.

13. Машинный перевод и прикладная лингвистика. Проблемы создания системы автоматического перевода. - М., 1987. – 152 с. – (Научные труды МГПИИЯ. Вып. 271).

14. Моделирование языковой деятельности в интеллектуальных системах / Под ред. А.Е. Кибрика и А.С. Нариньяни. - М.: Наука, 1987.

15. Нариньяни А.С. Лингвистические процессоры ЗАБСИБ (1-я и 2-я части).

Препринт ВЦ СО АН СССР, №199. 1979.

16. Жигирев Н.Н., Корж В.В., Оныкий Б.Н. Самонастраивающийся словарь ключевых слов и нейронная сеть Хопфилда для классификации текстов // Тр. 2-й Всерос. науч.-тех. конф. “Нейроинформатика-2000”. Ч. 2. – М., 2000.

– С.58-61.

17. Перспективы развития вычислительной техники / Под ред. Ю.М. Смирнова.

– М.: Высш. шк., 1987. – 278 с.

18. Преображенский А.Б. Лингвистический процессор для реализации общения с базами данных // Изв. АН СССР. Техн. кибернетика. – 1982. - №5. - С. 121 129.

19. Шенк Р. Концептуальная обработка информации. – М.: Мир, 1976.

20. Шумский С.А., Яровой А.В., Зорин О.Л. Ассоциативный поиск текстовой информации // Тр. Всерос. науч.-тех. конф.“Нейроинформатика-1999”. Ч. 3.

– М., 1999. – С. 101-109.

21. Семантическая нейронная сеть как формальный язык описания и обработки смысла текстов на естественном языке / З.В. Дударь, Д.Е. Шуклин // Радиоэлектроника и информатика. -Харьков: Изд-во ХТУРЭ, 2000. - №3.- С.

72-76.

22. Система управления базами данных ДИСОД / Е.С. Броневщук, В.И.

Бурдаков, Л.И. Гуков и др. / Под общ. рук. В.И. Дракина. – М.: Финансы и статистика, 1987. – 263 с.

23. Ульман Д. Основы баз данных. – М.: Мир, 1983. – 289 с.

24. Шабанов-Кушнаренко Ю.П. Теория интеллекта. Математические средства.

– Харьков: Изд-во Харьк. ун-та, 1984. – 144 с.

25. Попов Э.В. Общение с ЭВМ на естественном языке. – М.: Наука, 1982.

26. Котов Р. Г. Прикладная лингвистика и информационная технология. –М.:

Наука, 1987. -180 с.

27. Лопатин В. В. Русская словообразовательная морфемика: Проблемы и принципы описания. - М.: Наука, 1977.-127 с.

28. Богданов С. И. Форма слова и морфологическая форма.- СПб.: Изд-во С. Петерб. ун-та, 1997.-204 с.

29. Белоногов Г.Г., Кузнецов Б.А. Языковые средства автоматизированных информационных систем. - М.: Наука, 1983.- 380 с.

30. Белоногов Г. Г., Котов Р. Г. Автоматические информационно-поисковые системы. –М.: Сов. радио, 1968.- 415 с.

31. Бидер И. Г., Большаков И. А., Еськова Н. А. Формальная модель русской морфологии. М.: Изд-во ????.- С. 111-112.

32. Кузнецова А. И., Ефремова Т. Ф. Словарь морфем русского языка. - М.: Рус.

язык, 1986.

33. Попов Э.В. Экспертные системы: решение неформализованных задач в диалоге с ЭВМ. - М.: Наука, Гл. ред. физ.-мат. лит., 1987. - 288 с.

34. Кимельман М., Яхин А.. Kitty: Управляемый правилами генератор преобразователей деревьев: Сб.ВК-180. - М.: РАН, 1995. - 250с.

35. Замулин М.А.. Системы программирования баз данных и знаний. Новосибирск: Наука, 1990.- 352 с.

36. Шабанов-Кушнаренко Ю.П. Теория интеллекта. Математические средства. Харьков: Вища школа, 1984. - 143 с.

37. Бондаренко М.Ф., Осыка А.Ф. Автоматическая обработка информации на естественном языке. - Киев: УМК ВО, 1991. - 140 с.

38. Мозг: /Пер. с англ. Алексеенко Н.Ю.;

Под ред. и с предисл. П.В. Симонова.

-М.:Мир, 1982. - 280с.с ил.

39. Уинстон П. Искусственный интеллект. - М. : Мир, 1980. – 520 с.

40. Bloomfield L. Holt, Runehart and Winston. Русский перевод: Язык. Блумфилд Л.- М.: Прогресс, 1968. – 350 с.

41. Искусственный интеллект: В 3 кн. Кн.2. Модели и методы: Справочник /Под ред. Д.А.Поспелова. - М.: Наука, 1990. – 472 с.

42. Гаврилова Т.А., Хорошевский В.Ф. Базы знаний интеллектуальных систем. СПб.: Питер, 2000. – 573 с.

43. Минский М. Фреймы для представления знаний. - М.: Энергия, 1979. -342 с.

44. Бениаминов Е.М. Основания категорного подхода к представлению знаний.

Категорные средства // Изв. АН СССР. Техн. Кибернетика. - N 2.- 1988. – 242 с.

45. Голдблатт Р. Топосы. Категорный анализ логики. М.: Мир 1983. - 361с.

46. Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. Т.1. Синтаксический анализ.- М.: Мир, 1978. - 612 с.

47. Обработка текста и когнитивные технологии: Сборник / Под ред. В.Д.

Соловьева. – Пущино, 1999.- Вып. 3. – 456 с.

48. Рубашкин В.Ш. Представление и анализ смысла в интеллектуальных информационных системах. - М.: Наука, 1989. – 670 с.

49. Карпова Г. Д., Пирогова Ю. К., Кобзарева Т. Ю., Микаэлян Е. В.

Компьютерный синтаксический анализ: описание моделей и направлений разработок. Итоги науки и техники. Серия: Вычислительные науки. Т.6. М.: ВИНИТИ, 1991.

50. Перспективы развития вычислительной техники: В 11 кн.: Справ. Пособие / Под ред. Ю. М. Смирнова. Кн. 2. Интеллектуализация ЭВМ / Е. С. Кузин, А.И. Ройтман, И. Б. Фоминых, Г. К. Хахалин. - М.: Высш. шк., 1989.

51. Исследования по семантике: Межвуз. научный сборник / Отв. ред. Л.М.

Васильев / Башкирск. гос. ун-т. - Уфа, 1975. - Вып. 1. - 179 с.

52. Исследования по семантике: Межвуз. научный сборник / Отв. ред. Л.М.

Васильев / Башкирск. гос. ун-т. - Уфа, 1976. - Вып. 2. - 145 с.

53. Исследования по семантике: Семантические классы языковых единиц /Отв.

ред. Л.М. Васильев / Башкирск. гос. ун-т. - Уфа, 1980. - Вып. 5. - 111 с.

54. Исследования по семантике: Общие вопросы семантики / Отв. ред. Л.М.

Васильев / Башкирск. гос. ун-т. - Уфа, 1983. - Вып. 9. - 144 с.

55. Исследования по семантике: Семантика языковых единиц разных уровней / Отв. ред. Р.М. Гайсина / Башкирск. гос. ун-т. - Уфа, 1988. - Вып. 13. - 147 с.

56. Исследования по семантике: Семантика и функционирование лингвистических единиц / Отв. ред. Гайсина Р.М.;

Башкирск. гос. ун-т. Уфа, 1989. - Вып. 14. - 127 с.

57. Использованные статьи и ссылки сети Интернет:

58. Кузнецов С.Д. Методы оптимизации выполнения запросов в реляционных СУБД // Итоги науки и техники. Серия: Вычислительные науки. Т.1.- М.:

ВИНИТИ, 1989.- С. 76-153.

59. Тузов В.А. Компьютерная семантика русского языка //Тр. Междунар.

семинара Диалог'2001 по компьютерной лингвистике и ее приложениям. М.: РосНИИ искусственного интеллекта, 2001.- Т.2.- С. 356-363.

60. Дударь З.В., Шуклин Д.Е. Семантическая нейронная сеть как формальный язык описания и обработки смысла текстов на естественном языке // Радиоэлектроника и информатика. Харьков: Изд-во ХТУРЭ, 2000.- №3.- С.

72-76.

61. Нариньяни. А.С. Проблема понимания запросов к базам данных решена // Тр. междунар. семинара по компьютерной лингвистике. – Казань,1995. С.206-215.

62. Нариньяни А.С., Яхно Т.М. Экспериментальная система анализа “снизу вверх” // Кибернетика.- Киев, 1978. - №2.

63. Левин Д.Я., Нариньяни А.С. Экспериментальный минипроцессор:

семантически ориентированный анализ // Взаимодействие с ЭВМ на естественном языке. - Новосибирск, 1978.

64. Нариньяни А.С. Лингвистические процессоры ЗАПСИБ. Ч.1. Задачи проекта. Препринт ВЦ СО АН СССР. №199, 1979.

65. Диненберг Ф.Г., Кучин С.И., Трапезников С.П. INTERBASE - система конструирования ЕЯ-интерфейса к dBASE III PLUS// Искусственный интеллект-90: Тр.12-й Всесоюзной конференции: секционные и стендовые доклады. - Минск, 1990. - Т.2. - С. 161-163.

66. Кононенко И.С. Экспериментальная система понимания коротких текстов:

Тез. докл. IV Всеpoc. конф. по ИИ.- Рыбинск, 1994.- Т. 2.- С. 339-343.

67. Богуславский И.М., Цинман Л.Л. Семантический компонент лингвистического процессора // Семиотика и информатика,1990.- С.5-30.

68. Малкина О.И., Сошников Д.В. Создание интерактивных систем адаптивного тестирования в среде Интернет с использованием технологий искусственного интеллекта. Новые информационные технологии: 9-я международная студенческая школа-семинар, Судак, 2001: Тез. докл. - М.:

МГИЭМ, 2001. - С.390-392.

69. Сошников Д. В. Инструментарий JULIA для создания распределенных интеллектуальных систем на основе фреймово-продукционного представления знаний // Тр.МАИ. – 2002.- №7.

70. Бениаминов Е.М., Болдина Д.М. Система представления знаний Ontolingua принципы и перспективы // НТИ. Сер.2. 1999. № 10.

71. Бениаминов Е.М., Манушина М.Ю. Принципы построения открытого языка шаблонных выражений в системе представления знаний // НТИ. Сер.2.

2000. № 7.

72. Попов Э.В. Естественно-языковые системы: прошлое, настоящее и будущее. VI национальная конференция ИИ-2000, Переславль-Залесский, 24-27 октября 2000. - М.: ИФМЛ, 2000.- С. 17.

73. Сошников Д.В. Построение распределенных интеллектуальных систем на основе распределенной фреймовой иерархии. Информационные технологии в образовании: Междунар.науч.-практ. конф. Тез. докл. - Шахты, 2001.

74. Майкевич Н.В. От информационного пространства к пространству знаний.

Онтологии в Интернет // Тр. конференции КИИ`98.- Пущино,1998.- С.152 158.

75. Андреева А.М., Березкин Д.В., Смирнов А.М. Об одном способе построения синтаксического анализатора текстов на естественном языке. // Изв. Вузов // Приборостроение. – 1977.- Т. 40.- №5. – С. 34-42.

76. Марков В.М. Биноминативные предложения. Смысловая организация и референционные особенности компонентов // Русский язык:

лингвистические исследования, Ч.2.- М: Вестник ЦМО МГУ, 1998.- №1, http://www.cie.ru/vestnik/archiva/a6#a 77. F. Hayes-Roth, N. Jacobstein. The State of Enowledge-Based Systems.

Communications of the АСМ, March, 1994, V.37, n.3, PP.27-39.

78. Р. Harmon. The Size of the Commercial AI Market in the US. Intelligent Software Strategies. 1994, V.10, n.1, PP. 1-6.

79. Expert system saves 20 million L on pipeline management. C&I July, 1994, р.31.

80. Guarino N. Formal Ontology and Information Systems. In Proceeding of International Conference on Formal Ontology in Information Systems (FOIS’98), N. Guarino (ed.), Trento, Italy, June 6-8, 1998. Amsterdam, IOS Press, pp. 3- 15.



Pages:     | 1 | 2 || 4 | 5 |   ...   | 6 |
 





 
© 2013 www.libed.ru - «Бесплатная библиотека научно-практических конференций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.