Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Реляційне обчислення.
На відміну від реляційної алгебри, яка вказує, як отримати необхідне відношення з наявних відношень, реляційне обчислення вказує властивості шуканого відношення без конкретизації процедури його отримання. Математичною основою реляційного обчислення є обчислення предикатів – один з розділів математичної логіки. В теорії числення предикатів під предикатом розуміється функція, значення якої є висловлюваннями. Висловлювання може бути істинним або хибним. Щоб задати n-місцевий предикат P(x1,..., xn), слід вказати множини D1,..., Dn – області зміни предикатних змінних x1,..., xn. Синтаксично завдання n-місцевого предиката здійснюється зазначенням формули логіко-математичної мови, що містить n змінніі. У найбільш поширеному випадку мова містить предикатні змінні x, y, z,... функціональні символи f, g, h,... з різною кількістю аргументних місць і предикатні символи P, Q, R,... також з різною кількістю аргументних місць. Із змінних і функціональних символів конструюються терми мови, змістовно інтерпретовані як імена об'єктів дослідження. Якщо P є n-місцевий предикатний символ, n ≥ 0, а t1,..., tn – терми, то P(t1,..., tn) є, за визначенням, атомарна формула. Змістовно P(t1,..., tn) означає, що істинне висловлювання, свідчить, що t1,..., tn пов'язані відношенням P. З атомарних формул за допомогою пропозиціональних зв'язків і кванторів конструюються формули мови. Звичайний набір зв'язок складається з операторів порівняння, а набір кванторів включає кон'юнкцію, диз'юнкцію, імплікацію, заперечення, квантор «для всіх», квантор «існує». Входження змінної x в формулу ϕ називається зв'язаним, якщо x входить в частину ϕ виду ∃ xϕ або ∀ xϕ. Інші входження називаються вільними. Для баз даних обчислення предикатів існує у двох формах: реляційного обчислення кортежів і реляційного обчислення доменів. У реляційному обчислення кортежів завдання полягає в знаходженні таких кортежів, для яких предикат є істинним. Це обчислення засноване на змінних кортежу, тобто таких, для яких допустимими значеннями можуть бути тільки кортежі даного відношення. Описову частину обчислення можна подати у вигляді RANGE OF < змінна> IS < список>. Тут < змінна> – це ідентифікатор змінної кортежу, < список> – конструкція виду X1[, X2[,..., Xn]...]. Список містить елементи, кожен з яких є або відношенням, або виразом над відношеннями. Область допустимих значень < змінної> утворюється шляхом об'єднання значень всіх елементів списку. Вираз реляційного обчислення, формує запит на мові обчислення кортежів, спрощено можна записати у вигляді (Y1[, Y2[..., Yь]...]) [WHERE wff]. Тут Y1 – це запис виду {< змінна> ⏐ < змінна>.< атрибут> } [AS < атрибут> ] Відповідно wff – well-formed formula (правильно побудована формула) – це предикат, який записується одним з наступних типів: < умова> NOT wff < умова> AND wff < умова> OR wf f IF < умова> THEN wff EXISTS < змінна> (wff) FORALL < змінна> (wff) (wff) Наприклад, припустимо, що є три відношення О1, О2, О3, Отношение О1 отношение О2 отношение О3
в першому з яких зазначаються відомості про викладачів (викладач, кафедра, факультет), у другому – відомості про студентів (студент, курс, група), в третьому – відомості про кількість годин консультацій (викладач, студент, години). Створимо список викладачів, які працюють на кафедрі К1: RANGE OF S IS O1 (S. ПР) WHERE S. КАФ='К1' Створимо список викладачів, студентів четвертого курсу та годин: RANGE OF P IS O2 RANGE OF V IS O3 (V) WHERE EXISTS P (V. СТУД=P. СТУД AND P. КУРС=4) Цей же список можна сформувати наступним чином: RANGE OF P IS O2 RANGE OF V IS O3 RANGE OF VP IS (V) WHERE EXISTS P (V. СТУД=P. СТУД AND P. КУРС=4) (VP)
В реляційному обчисленні доменів використовуються змінні, значення яких беруться з доменів, а не з кортежів відношень. Обчислення доменів підтримує додаткову форму умов, називаємо умовою приналежності. В загальному вигляді умова приналежності записується у вигляді R(A1: p1, A2: p2,...), де Aі – атрибут відношення R, а pі – змінна домену або літерал. Умова вважається істинним тоді і тільки тоді, коли у відношенні R є кортеж зі значеннями pі для атрибутів Aі. Для наведених вище в прикладі першого списку вирази обчислення доменів будуть мати вигляд (S) WHERE О1 (КАФ: 'К1') Тут S – змінна домен атрибута ПР, оголошена яким-небудь чином, подібно оператору RANGE обчислення кортежів. На закінчення зауважимо, що якщо реляційне обчислення обмежується тільки безпечними (тобто мають сенс) виразами, то реляційне обчислення доменів еквівалентно реляційному обчисленню кортежів, а воно в свою чергу – реляційної алгебри.
|