ullman113 (2)

ullman113 (2)



to, by reguły / podzadaniami arytmetycznymi lub zaprzeczonymi (tzn. ze* spójnikiem NOT na początku) miały znaczenie zgodne z intuicją Ograniczenie, nazywane warunkiem bezpieczeństwa, brzmi następująco:

• Każda zmienna, która występuje w regule, musi występować w pewnym niezaprzeczonym podzadaniu relacyjnym.

A zatem, jeśli zmienna występuje w nagłówku, w podzadaniu zaprzeczonym lub podzadaniu arytmetycznym, to musi również w tej regule występować gdzieś w podzadaniu relacyjnym, niezaprzeczonym.

PRZYKŁAD 4.17

Rozważmy regułę z przykładu 4.16:

DługiFilm (t, y) <- Film (t, y, 1,    _)

AND 1 i. 100

Pierwsze podzadanie jest niezaprzeczone i relacyjne oraz zawiera wszystkie zmienne występujące w regule. A obie zmienne z nagłówka: t oraz y występują również w pierwszym podzadaniu w treści reguły. Z kolei zmienna /, która występuje w podzadaniu arytmetycznym, pojawia się również w pierwszym podzadaniu.

PR/.YKLAD4 18

W regule, którą przedstawiono poniżej, są trzy odstępstwa od zasady bezpieczeństwa:

P(x, y) 4- Q(x, z) AND NOT (R(w, x, z) AND c < y

1.    Zmienna y występuje w nagłówku, ale nie występuje w żadnym podzadaniu, które jest zarówno relacyjne, jak i niezaprzeczone. Zauważmy, że zapis x <y nic ogranicza zakresu wartości zmiennej y do zbioru skończonego. W związku z tym, jeśli znajdziemy takie wartości a, b. c, odpowiadające kolejnym zmiennym w, x, z, dla których pierwsze dwa podzadania są prawdziwe, to w relacji nagłówka P pojawi się nieskończona liczba krotek (a, d), gdzie d> a.

2.    Zmienna w występuje wyłącznic w podzadaniu. które co prawda jest relacyjne, ale nic jest niezaprzeczone.

3.    Zmienna y występuje w podzadaniu arytmetycznym, a nic występuje w żadnym podzadaniu niezaprzeczonym i relacyjnym.

A zatem reguła nic spełnia warunku bezpieczeństwa i nie można jej użyć jako reguły Datalogu.

Bezpieczeństwo reguł można również określać w inny sposób. Zamias rozważać wszystkie możliwe przy pisania wartości do zmiennych, rozważam zbiory krotek tych wszy stkich pod/adań, które są relacyjne i niezaprzeczone Jeśli pewne przypisanie krotek do wszystkich pod/adań niezaprzeczonycl i relacyjnych jest niesprzeczne, tzn. każdemu wystąpieniu zmiennej odpowia da taka sama wartość, to należy zbadać wynikowe przypisanie wartości d» wszystkich zmiennych występujących w regule. Jeśli reguła spełnia warunel bezpieczeństwa, to każdej zmiennej jest przypisana pewna wartość.

Dla każdego przypisania niesprzecznego rozważmy teraz podzadania rela cyjne, niezaprzeczone oraz podzadania ary tmetyczne i sprawdźmy, czy przypi sanie tych wartości zmiennym sprawiło, że są one prawdziwe Należy przy ty n pamiętać, że podzadanie zaprzeczone jest prawdziwe wówczas, gdy atom jes fałszywy. Jeśli wszystkie podzadania są prawdziwe, to wiadomo jakie krotk występują w nagłów ku w wyniku tego przypisania wartości do zmiennych. Dc relacji, występującej w nagłów ku, dołącza się wówczas daną krotkę.

PRZYKŁAD 4.19

Rozważmy następującą regułę / Datalogu:

P(x, y) «— 0( x, z) AND R( z, y) AND NOT Q(x, y)

Załóżmy, że w relacji Q występują dwie krotki; (1, 2) ora/ (1, 3). Niech w relacji R występują / kolei krotki (2, 3) oraz (3, 1). W regule są dwa podzadania niezaprzeczone, relacyjne: Q(x, r) ora/ R(z, y). Trzeba zbadać wszystkie możliwe kombinacje przypisań krotek z relacji Q i R do pod/adań im odpowiadających. Na rysunku 4.13 zamieszczono tabelę z zapisem wszystkich czterech kombinacji.

Krotka dla

Q(x, z)

Krotka dla

RU, y)

Przypisanie

niesprzeczne?

NOT Q(x, y) Prawda?

Nagłówek

wynikowy

1)

(1,2)

(2,3)

Tak

Nie

2)

(1,2)

(3, 1)

Nic; z = 2,3

Niewłaściwe

3)

(1,3)

(2,3)

Nic; z = 3,2

Niewłaściwe

4)

0.3)

(3,1)

Tak

Tak

P(l, 1)

RYSUNTK t 13

Wszystkie możliwe przypisania krotek do z) i R(z,y)

Drugi i trzeci wariant z rys. 4 13 są sprzeczne. W każdym / nich występują dwie różne wartości przypisane do tej samej zmiennej z. A zatem te warianty przypisań zostaną odrzucone, nie będą już dłużej brane pod uwagę.

W wariancie pierwszym jest niesprzeczne przypisanie krotki (1.2) do podzadania Q(x, z) oraz krotki (2. 5) do podzadania R(z. y), skąd wynika przypisanie dla zmiennych x, y, z kolejno wartości 1. 3. 2. Następnie sprawdzamy wynikające / tego przypisania wartości pozostałych pod wyrażeń, które


Wyszukiwarka

Podobne podstrony:
KI7 co mówią i robią, po to, by zapobiec wprawieniu w zakłopotanie lub obrażeniu innych
365 dni twórczej zabawy (280) W tej zabawie chodzi o to, by dziecko odgadto, o kim lub o czym myśli
DSC08542 (3) GMO to nie skrzyżowanie dwóch owoców lub zwierząt blisko ze sobą spokrewnionych, a
Sam Naprawiam Renault Twingo v up by dunaj2 4. UKŁAD NAPĘDOWY4.4. PÓŁOSIE NAPĘDOWE Napęd ze skrzy
05 5 ma schizofrenię, inny - że to normalny objaw dojrzewania. Kiedy po maturze oznajmiła, że nic pó
Zmienna zależna - ta którą badacz mierzy po to, by potwierdzić lub zaprzeczyć postawionej wcześnie h
108 MALI BRACIA starają się o to, by mieć w tym samym mieście lub okolicy jedną Placówkę Adoracji i
75009 p1020764 (2) Co to jest program? 8* Sekwencja kroków 8* W każdym kroku wykonywana jest pewna o
42460 ullman241 (2) 488 8. ZORIENTOWANE OBIEKTOWO JĘZYKI ZAPYTAŃ Korzystamy tutaj z podzapytania po
4/1993 URANIA 119 znów na gwiazdę — co trwać będzie 92 lub nawet 299 sekund. Chodzi o to, by wyelimi

więcej podobnych podstron