Главная » Просмотр файлов » Разработка языка запросов в бинарной модели знаний и транслятора этого языка в язык SQL (бакалаврская работа)

Разработка языка запросов в бинарной модели знаний и транслятора этого языка в язык SQL (бакалаврская работа) (544460), страница 5

Файл №544460 Разработка языка запросов в бинарной модели знаний и транслятора этого языка в язык SQL (бакалаврская работа) (Разработка языка запросов в бинарной модели знаний и транслятора этого языка в язык SQL (бакалаврская работа)) 5 страницаРазработка языка запросов в бинарной модели знаний и транслятора этого языка в язык SQL (бакалаврская работа) (544460) страница 52015-08-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 5)

С(*), где С String1;

▪ (K1, K2,…, Kn), где Kj String1 или Kj есть пара вида E: D с E, D String1;

С(α), где С String1 и α – атрибутное условие. Синтаксис атрибутных условий будет рассмотрен в п. 2.5. Синтаксис составных имен для типов данных будет рассмотрен позднее в п. 2.3.1.

Составные имена объектов имеют форму

[A1: e1, A2: e2,…, Am: em],

где Ai имена атрибутов, а ei имена индивидных объектов (1 i m).

Примеры 2.1:

▪ Студент, Профессор, Доцент, P@mt_ab21 – простые имена понятий;

▪ ФИО, ГодРожд, Price – имена атрибутов;

▪ Доцент | Профессор , Студент(*) – составные имена понятий;

▪ студент#1, студент#27, ‘староста группы А13-05’ – простые имена объектов;

▪ SurrСтудент = {студент#0, студент#1, студент#2,…};

▪ [ФИО: ‘А.П. Иванов’, ГодРожд: 1985] – составное имя объекта.

Замечание. В составном имени объекта ‘А.П. Иванов’ использованы одиночные кавычки, так как, если снять кавычки, то получится строчка, которая уже не является именем в системе БМЗ.

Множество всех строчек обычно рассматривают как примитивный (предопределенный) тип данных, обозначаемый String. На этом типе данных действует операция конкатенации: если x, y - произвольные строчки символов, то их конкатенация xy есть строчка, получаемая присоединением строчки у к строчке х. При этом конкатенацией строчек, взятых в одиночные кавычки, ‘x’ и ‘y’ считается строчка ‘xy’, а не ‘x’‘y’.

2.2. Бинарная Модель Данных

В системе БМЗ имеется подсистема «Бинарная Модель Данных» (БМД). В БМД используются следующие языки:

язык описания данных – ЯОД. Используется для спецификации универсумов понятий, т.е. фактически для определения структуры объектов – примеров и контрпримеров понятий. Поэтому предложения ЯОД называются структурными. Таким образом, ЯОД является языком структурной спецификации систем понятий;

язык для спецификации типов данных (значений) – ЯТД. Этот язык можно рассматривать как подъязык ЯОД;

язык запросов к базе данных – ЯЗД;

язык атрибутных условий – ЯАУ. Эти условия являются компонентами запросов.

языки для спецификации логических отношений между понятиями. Предложения этих языков называются логическими. Заметим, что язык атрибутных условий ЯАУ можно рассматривать как логический (условие является булевой комбинацией бинарных отношений между селекторами, которые являются атрибутами или итерациями атрибутов);

языки для спецификации модальных отношений (включая темпоральные отношения);

язык продукций – ЯП.

2.2.1. Спецификация типов данных

В БМЗ используются два вида имен для типов данных – простые (примитивные, предопределенные) имена и составные имена. Простыми именами для типов данных являются:

▪ Boolean = {true, false} . На этом типе данных действуют логические операции NOT x, x AND y, x OR y, x IMP y (x IMPy = false тогда и только тогда, когда x =false и y =true);

▪ Number = {0,1,2,…} (в ASCII представлении). На этом типе данных действуют стандартные бинарные операции (Number,Number)à Number: сложение x+y ; умножение x*y ; усеченная разность x-y (x-y=0, если х меньше y ; возведение в степень x**y; действуют также операции сравнения (Number,Number)àBoolean: , x<y ( x<y =true тогда и только тогда, когда x меньше y), x =<y, x>y, x>=y, x=/y (x не равно y);

▪ Integer = {0,1,-1,2,-2,…} и Real – вещественные числа (в ASCII представлении). На этих типах данных действуют те же операции, что и на типе Number (но вычитание не усеченное);

▪ Char – тип знаков, т.е. букв и символов клавиатуры в ASCII представлении:

A a B b C c D d E e F f G g H h I i J j K k L l M m N n O o P p Q q R r S s T t U u V v W w X x Y y Z z А а Б б В в Г г Д д Е е Ж ж З з И и Й й К к Л л М м Н н О о П п Р р С с Т т У у Ф ф Х х Ц ц Ч ч Ш ш Щ щ Ъ ъ Ь ь Ы ы Э э Ю ю Я я ~ ` @ # $ % & * / \ ^ _ - " # ; : < > ? . , | + ( ) '

▪ String – строчки символов клавиатуры (в ASCII представлении). На этом типе действует операция конкатенации x^y (к строчке x приписывается без пробела строчка y) и операция LNG: String à Nat(LNG(x) – длина сточки x . (Например, если x = ‘100$ abc’ и y = ‘De’, то LNG(x) = 10 и x^y = ‘100$ abc’’De’ .)

Составные имена для типов данных специфицируют производные типы данных, которые получаются из примитивных типов путем применения конструкторов типов.

2.2.2. Конструкторы типов данных

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

Замечание. Вообще, двойные кавычки, заключающие произвольное выражение exp, обозначают смысл (значение) этого выражения. Например, если переменная X приняла значение true, а переменная Y приняла значение false, т.е. “X” = true и “Y” = false, то “X ANDY” = false.

n-Местный конструктор F по спецификацям типов Alpha1, Alpha2,…, Alphan (синтаксически) дает спецификацию F(Alpha1,Alpha2,...,Alphan). Семантически, этот конструктор есть n-местная функция, которая для данных типов значений "Alphaj" определяет новый тип значений

"F(Alpha1,Alpha2,...,Alphan)".

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

Замечание. На любом типе данных Alpha действуют два оператора сравнения =, /= : (Alpha,Alpha) à Boolean: “x=yx” = “y” и “x/= yxy”. Выражение x/=y эквивалентно выражению NOT x=y : “NOT x=yсовпадает с x/=y”.

Конструктор (*).

Alpha à Alpha(*),

Alpha(*)” = {{x1,x2,...,xp} | xj "Alpha" (1 j p), p = 0,1,2,...}.

Другими словами, элементами типа Alpha(*) являются выражения, представляющие произвольные конечные множества, которые составлены из элементов типа Alpha. Точнее, элементами типа Alpha(*) являются выражения вида {e1,e2,...,ep}, которые можно рассматривать как (составные) имена для соответствующих конечных множеств, состоящих из имен – элементов типа Alpha. Поэтому, если элементы ej Alpha” в {e1,e2,...,ep} записать в другом порядке, то получим выражение, обозначающее то же самое множество, т.е. имеем кореферентные имена: {e1,e2,...,ep} ~ {ei1,ei2,...,eip}, где i1, i2,…, ip – числа от 1 до p, записанные в произвольном порядке. (Например, {a, b, c, d} ~ {d, a, c, b}.)

Конструктор объединения

Этот конструктор образует объединение типов:

Alpha, Beta --> Alpha | Beta,

Alpha | Beta” = {x | xAlpha” или x Beta}.

Конструктор {}.

Если Alpha – произвольный тип значений и e1, e2,...,en какие-либо элементы этого типа, то {e1,e2,...,en} есть спецификация конечного типа, состоящего из этих элентов, т.е. “{e1,e2,...,en}” – множество из элементов e1, e2,...,en .

Конструктор декартова произведения ( , ,…)

Этот конструктор дает декартово произведение типов:

Alpha1, Alpha2,..., Alphan à (Alpha1,Alpha2,...,Alphan),

“(Alpha1,Alpha2,...,Alphan)” = {(x1,x2,...,xn) | xj “Alphaj (1 j n)}.

Таким образом, элементами декартова произведения служат выражения – упорядоченные n-наборы, составленные из элементов типов Alphaj .

С конструктором декартова произведения ассоциированы операция "точка", с помощью которой можно находить компоненты элементов декартова произведения: если e = (e1,e2,...,en) и 1 j n, то e.j = ej ; если же j > n, то значение e.j не определено.

Конструктор «метка» .

Пусть L String1 – "метка", рассматриваемая как атрибут.

Alpha, L à L: Alpha,

“L: Alpha” = { L: x | x “Alpha”}.

Таким образом, элементами “Alpha” являются выражения вида L: e , где е – произвольный элемент типа Alpha.

На этом типе значений действует операция применения атрибута L : если переменная X приняла значение L: е, то X.L = e. Если конструктор «метка» используется в комбинации с декартовым произведением, то получается так называемое помеченное декартово произведение:

Alpha1, L1, Alpha2, L2,..., AlphaN, Ln à

(L1: Alpha1, L2: Alpha2,..., Ln: Alphan),

“(L1: Alpha1, L2: Alpha2,..., Ln: AlphaN)” =

{(L1: x1, L2 :x2,..., Ln:xn) | xj Alphaj (1 j n)}.

Метка, примененная как атрибут к элементу е = (L1: e1, L2 : e2,..., Ln: en) помеченного декартова произведения, позволяет получать ту компоненту, которая помечена этой меткой:

(L1: e1, L2 : e2,..., Ln: en).Lj = ej .

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

(/L: Alpha/, M: Beta, /N: Gamma/).

Эта спецификация дает тип данных

Характеристики

Список файлов ВКР

Разработка языка запросов в бинарной модели знаний и транслятора этого языка в язык SQL (бакалаврская работа).doc
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7045
Авторов
на СтудИзбе
259
Средний доход
с одного платного файла
Обучение Подробнее