65321 ullman114 (2)

65321 ullman114 (2)



mogą być zaprzeczone lub arytmetyczne. W rozważanej regule występuje tylko jedno takie podzadanic: NOT Q(x, y). Przy tym przypisaniu otrzymuje ono postać NOT Q(l, 3). Krotka(1,3) występuje w relacji Q, zatem to pod-zadaniejest fałszywe, a krotka, powstająca z przypisania (1), nie zostaje dołączona do nagłówka.

Jako ostatni pozostał wariant (4). Przypisanie jest niesprzeczne: zmiennym x,y, : odpowiadają kolejno wartości: 1, 1 i 3. Podzadanie NOT Q<x, y) przybiera postać NOT Q(i, 1). Ponieważ krotka (1,1) nic należy do relacji Q, więc to podzadanie jest prawdziwe. Dla tego przypisania wartości otrzymujemy /*(l, l)jako wartość nagłówka P(x, y). Krotka (1,1) należy więc do relacji P. Ponieważ zostały zbadane już wszystkie przypisania wartości do zmiennych, więc jest to jedy na krotka wyniku.

4.2.5. Predykaty ekstcnsjonalne i intcnsjonalne

Często okazuje się, że jest warto odróżniać:

•    Predykaty ekstcnsjonalne, czyli tc. których relacje są przechowywane w bazie danych, od

•    Predykatów intensjonalnych, których relacje są wyliczane przez stosowanie jednej lub wielu reguł Datalogu.

Różnica polega na tym samym co różnica między operandami w wyrażeniach algebry relacji, które są ekstcnsjonalne (tzn. zdefiniowane przez ich ekstensje, inne określenie dla bieżącej instancji relacji), a relacjami wyliczonymi jako wynik pośredni lub końcowy pewnych podwyrażeń; te ostatnie nazywa się intensjonalnymi (tzn. zdefiniowanymi przez programistę).

Mówiąc o regułach Datalogu, będziemy określać relacje jako intensjo-nalne lub ekstcnsjonalne w zależności od tego, czy odpowiadający im predykat jest odpowiednio intensjonalny lub ekstensjonalny. Będziemy także używać skrótu IDB od „intensjonalna baza danych”, przy wskazywaniu intensjo-nalnych predykatów albo odpow iadających im relacji. W analogiczny sposób oznaczy my skrótowo EDB od „ekstensjonalna baza danych” przy predykatach lub relacjach ekstensjonalnych.

W przykładzie 4.16 Fi lm jest relacją EDB, zdefiniowaną przez swoją ekstensję. Podobnie predykat Film jest predykatem EDB. Predykat i relacja DługicFilmy są intcnsjonalne. Predykat EDB nie może występować w nagłówku reguły, chyba żc występuje również w jej treści. Z kolei predykat IDB może wystąpić w nagłówku reguły i w jej treści oraz w obu miejscach jednocześnie. Często tworzy się jedną relację przez szereg reguł, / tym samym predykatem w nagłówku każdej z nich. To postępowanie zostało zilustrowane w przy kładzie 4.21, przy opisywaniu sumy relacji.

Zastosowanie ciągu predykatów intensjonalnych umożliwia tworzenie coraz to bardziej skomplikowanych funkcji dla relacji EDB. Ten proces jest podobny do tworzenia wyrażeń algebry relacji za pomocą różnych operatorów. W następnych ro/działach poznamy również kilka przykładów stosowania predykatów intensjonalnych.

4.2.6. Ćwiczenia do podrozdziału 4.2

Ćwiczenie 4.2.1. Każde zapytanie z ćwiczenia 4.1.1 należy zapisać w Datalogu Należy korzystać wyłącznic z reguł bezpiecznych, ale można także korzystać z predykatów IDB. które są odpowiednikami podwyraźeń w bardziej skomplikowanych wyrażeniach algebry relacji.

Ćwiczenie 4.2.2. Wszystkie zapytania z ćwiczenia 4.1.3 należy zapisać w Datalogu Tak samo jak poprzednio należy stosować ty lko reguły bezpieczne, ale można także stosować predykaty IDB.

HĆwiczcnic 4.2.3. Warunek, za pomocą którego definiuje się bezpieczeństwo reguły, wystarcza do tego, aby predykatowi nagłówka odpowiadała relacja skończona, jeśli tylko predykatom podzadań odpowiadają relacje skończone. Ale sam warunek bezpieczeństwa jest mocniejszy. Należy podać taki przykład reguły z Datalogu, która nie spełnia warunku bezpieczeństwa, ale jeśli relacje podzadań tej reguły są skończone, to i relacja utworzona dla wynikowego predykatu tej reguły też jest skończona.

4.3. Od algebry relacji do Datalogu

Działanie wszystkich operatorów algebry relacji można przedstawił równoważnie w postaci jednej lub kilku reguł Datalogu. W bieżącym roz dziale po kolei omówimy pod ty m kątem wszystkie operatory. Potem opisze my sposób takiego połączenia reguł Datalogu. które pełni te same funkcje c< wy'rażę nie algebraiczne.

4.3.1. Przecięcie

Przecięcie dwóch relacji można przedstawić jako regułę, w której wystę pują podzadania odpowiadające relacjom z tymi samymi zmiennymi jaki argumentami.

PRZYKŁAD 4.20

Skorzystamy tu z relacji R i S, przedstawionych na rys. 4.1. Ich schemat składają się z czterech atrybutów: nazwisko, adres, płeć oraz datiaUro dzenia. Przecięcie R i Sopisuje następująca reguła Datalogu.


Wyszukiwarka

Podobne podstrony:
^ Parametry ziemia-satelita (cd.) ■ Orbity mogą być eliptyczne lub kołowe •    Rotacj
EP 2 034 830 BI towego, jelit, serca i mózgu. Urazy niedokrwienne mogą być związane z, lub spowodowa
ij należy do O dla j=l,....,n(s) Próby mogą być uporządkowane lub nie. Wszystkie jednostki w próbie
65171 Obraz6 Żywopłoty jednogatunkowe i wielogatunkowe Żywopłoty mogą być jednogatunkowe lub wielog
W Polsce miasta mogą być gminą lub miastem na prawach powiatu. Obowiązki na tych poziomach samorządo
Scan2 1 Torebki na kandyzowane migdały rozdawane we Włoszech z okazji urodzin dziecka mogą być różo
Фото3957 mogą być symetryczne lub z odsadzką jednostronną. Powinny być murowane na zaprawie
IV. Wyznaczniki moralności czynu.l. Dobroć moralna a słuszność. Intencje mogą być dobre lub złe.
UWAGA 4: Przedmioty mogą być zmontowane lub zapakowane razem z ich własnymi środkami inicjującymi po
Impulsy mogą być dodatnie lub ujemne, pojedyncze lub grupowe, powtarzane okresowo lub nieokresowe it
MIKROFALE W IERCONE Wiercone np metodą CFA Mogą być betonowane lub wypełnione metodą iniekcyjną zbro
Do oceny wyników kontrolnych stosujemy reguły interpretacyjne, któro mogą być proste lub złożone. Pr

więcej podobnych podstron