Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Deduktív adatbázisok.

Hasonló előadás


Az előadások a következő témára: "Deduktív adatbázisok."— Előadás másolata:

1 Deduktív adatbázisok

2 Adatbázisok típusai: normál (OLTP) elemi adat  elemi adat DSS (OLAP) elemi adat  összesítő adat DSS (DM) elemi adat  szabály deduktív elemi adat, szabály  elemi adat nem igazán terjedt el: számolásigényes műveletek még kerestetik egy hatékony megoldás predikátum kalkulusok elvén nyugszik

3 Szignatúra:  =  (S,,) ahol S ={s} : típusok véges halmaza S* ={s1s2s3..sn} : típusok véges listája  = {w,s | w  S*, s S} : függvényhalmazok véges halmaza w: argumentumok típuslistája s : érték típusa f  w,s : s típusú, w argumentumú függvény  = {w | w  S*} : predikátumhalmazok véges halmaza p  w : w argumentumú predikátum az üres listát  jelöli .s : konstans szimbólum  : logikai változó

4 számhalmazok példája  =  (S,,) ahol S ={Z, Q} : egész és racionális számok  ,Z = {..,-4,-3,-2,-1,0,1,2,..}  ,Q = {..,-4/3,-4/2,-4/1,-3/2,..}  ZZ,Q = {osztás}  QQ,Q = {szorzás}  Q,Z = {egészrész}  ZZ ={osztja}  Q ={egész}

5 Szimbólum (term): T(X) = {T(X)s | s S} ahol  =  (S,,) : szignatúra X = {Xs | s S} :változóhalmazok véges halmaza és  x  Xs x  T(X)s : :minden változó szimbólum  ti  T(X)si , f  s1s2s3..,s  f(t1,t2,..)  T(X)s : a függvényhivatkozások is szimbólumok minden szimbólum típussal rendelkezik T () : alapszimbólumok halmaza (változó nélküliek) szigorú típus: T ()  

6 számhalmazok példája T(X) ahol XZ ={i,j,k,l,m,n} XQ ={p,q,r,s,t} i  T(X)Z q  T(X)Q 1  T(X)Z 3/2  T(X)Q szorzás(3/3,4/2)  T(X)Q szorzás(q,4/2)  T(X)Q osztás (4, egészrész(5/2))  T(X)Q

7 Atomi formulák: A(X) = {p(t1,t2,..) } ahol  =  (S,,) : szignatúra X = {Xs | s S} :változóhalmazok véges halmaza ti  T(X)si p(t1,t2,..)  s1s2 A() : alapatomok halmaza (változó nélküliek) osztja(5,4) osztja(i,j) egész(4/3) egész(q) egész(osztás(4,i))

8 Formulák: F(X) ahol true, false  F(X) W  A(X)  W  F(X) W  F(X)  W  F(X) W1,W2  F(X)  W1W2  F(X) W1,W2  F(X)  W1W2  F(X) W1,W2  F(X)  W1W2  F(X) W1,W2  F(X)  W1W2  F(X) W  F(X), x  X  x(W)  F(X) W  F(X), x  X  x(W)  F(X)

9 Szabad változók: free(W)
- atomi kifejezések változói osztja(i,3) - nem kötöttek kvantorhoz osztja(i,6)  osztja(i,2) Kötött változók: bound(W) - kvantorhoz kötött i(osztja(i,2))  j(osztja(2,j) F(X) osztja (4, egészrész(5/2)) osztja(i,3)  osztja(i,5) osztja(i,6)  osztja(i,2) i(osztja(i,2))  j(osztja(2,j)

10 -lezárt Y-ra: Y(W) = x1x2..(W) ahol Y  X {x1x2..} = free(W)/Y -lezárt: (W) = (W)  -lezárt Y-ra:  Y(W) =  x1x2..(W) (W) =  (W) minden változó csak egy kvantorhoz köthető

11  - interpretáció I = I (D,F,R) ahol  (S,,) : szignatúra D = {Ds | s S} :domain-ek halmaza a típusokhoz F = {Fw,s |  w,s  } Fw,s = {f’:Ds1Ds2 …  Ds |  f  s1s2,s} R = {Rw |   w  } Rw = {p’  Ds1Ds2 … |  p   s1s2} - értékeket rendelünk a típusokhoz - konkrét leképzési szabályokat definiálunk - konkrét predikátumokat definiálunk (mikor lesz true és false) *

12 Változó-helyettesítés:
 = {s | s S} s: Xs  Ds Szimbólum kiértékelés:  = {s | s S} s: T(X)s  Ds szorzás(q,4/2) Q(q) = 3/1 F: (szorzas(x,y))  x*y s (szorzás(q,4/2)) = 6/1 minden változó egy domain-beli értéket kap *

13 Változó-helyettesítés módosítása:
<x1/d1,x2/d2,…> ahol <x1/d1,x2/d2,…>(y) = di, ha y = xi (y) különben Formula kiértékelés  : F(X)  {true, false}  (p(t1,t2,..)) = true, ha ((t1), (t2)..)  p’ false, különben az összetett formulák kiértékelésénél az operátorok interpretációja a megszokott értelmű (de lehetne más is)

14 Modell fogalma: I(W) modellje W-nek, ha  (W) = true ahol I: I (D,F,R) interpretáció W  F(X) : formula I(W) modellje V={W}-nek, ha  W  V :  (W) = true készíts modellt az alábbi formulákhoz: (x=y  y < 4, x>y  x=3) *

15 Formulák ellentmondás-mentessége:
A V(W) kielégíthető, ha létezik modellje Formulák szemantika konzekvenciája: V |= W ha V minden modellje egyben W-nek is modellje Ekkor V |= W akkor és csak akkor, ha V{W} ellentmondásos, nem kielégíthető. *

16 Formulák normál alakja
Konjuktív normálforma: W = Q1x1Q2x2…W’ ahol Q  {, } W’ : kvantormentes W’ = (L11 L12 ..)  (L21 L22 ..) .. L: literál, azaz atomi formula vagy negált atomi formula Skolem normálforma: W : konjuktív Q  {} *

17 A konjuktív normálformák skolem normálformára hozhatók
A  kvantor eliminálásának lépései: - A létezik kvantorhoz tartozó változók eliminálódnak - A kivett változó helyettesítődik egy olyan függvénnyel, mely a tőle kisebb minden kvantorhoz kötött változókon értelmezett x y z v (p (x,y,z,v)) => y z (p (a, y, z, b(y,z))) *

18 Klauza: W =  (L11 L12 ..) ahol L: literál, azaz atomi formula vagy negált atomi formula W : -lezárt Horn klauza: W maximum egy pozitív literált tartalmaz Klauza normálforma: W = W1  W2  .. Wi :klauza *

19 Herbrand interpretációk
H-univerzum: T () H-bázis: A(X) H-interpretáció: alaphalmaz a H-univerzum, minden függvény maga által reprezentált Herbrand-modell: H-interpretáció és modell egyben A klauzák halmazára teljesül, hogy - ha van modellje, akkor van Herbrand modellje is - akkor és csak akkor ellentmondásos, ha nincs Herbrand modellje

20 Deduktív rendszer: D = (F,S) ahol F  F(X) : formulák halmaza S = {Si} : deduktív szabályok halmaza Si = W1W2.. /W :szabály (azt jelzi, hogy W1,W2,..-ből következik W) /W : axióma W levezetése D-ből: W1W2…Wn Wn = W Wi  F vagy Sj  S: Sj = Wi1Wi2 …/Wi ,ij<i Jelölés: F |- W *

21 S: /W1(W2 W1) /(W1 (W2 W3)) ((W1 W2) (W1 W3)) W1 W2,W1 / W2 W: p p levezetés: 1: /(p (W p)) ((p W) (W)) 2: /p (W p) 3: (p (W p)) ((p W) (W)), p (W p) / (p W) W 4: (p W) W, p W / W *

22 Változó helyettesítés:
: X  T(X) ahol  = {s} s = Xs  T(X)s jelölés: [x/ (x),…] Változó átnevezés: : X  X s = Xs  Xs

23 Kifejezés előfordulása:
ahol E:kifejezés :helyettesítés Kifejezés előfordulásainak halmaza |E| Általánosabb kifejezés: E1  E2 ha |E1|  |E2| Alaphelyettesítések: ||E|| = |E|  T(X)

24 Általánosabb helyettesítés:
1  2 ha  3: 2 = 1 3 Unifikátor: olyan helyettesítés, mely két kifejezést azonos alakra hoz E1 = E2 (E1 = E2) Egyenlethalmaz: C = {Ci} = {(Ei1 = Ei2)} C megoldható, ha   : (Ei1 = Ei2)  C : Ei1 = Ei2 Általános unifikátor: mgu(C) =   unifikátor és minden más unifikátornál általánosabb

25 Unifikációs algoritmusok:
C  {A1 = A1} / C  {A1 = A2} C  {p(t1,..) = p(r1,..)} / C  {t1 = r1,..} C  {f(t1,..) = f(r1,..)} / C  {t1 = r1,..} C  {x = x} / C C  {t = x} / C  {x = t}, ha t  X C  {x = t} / C[x/t]  {x = t} ahol  : diszjunkt unió

26 Resolution elv: (p  q)  (p  r)  (q  r) szabályok: C1  {A1}, C2  {A2} / C1  C2, mgu(A1, A2) C  {L1 L2} / C  {L1}, mgu(L1, L2) Tétel: W |- C  W |= C és W |= C  W  {C} |- false ahol W:klauzák halmaza C :klauza *

27 W = {{r(x) , p(x)},{p(a)},{s(a)}} =
C = x(s(x)  r(x)) levezetés: C = { s(x)   r(x)} {r(x)  p(x)} {p(a)} / {r(a)} { s(x)   r(x)} {s(a)} / { r(a)} {r(a)}  { r(a)} / false tehát valóban következménye C a W-nek *


Letölteni ppt "Deduktív adatbázisok."

Hasonló előadás


Google Hirdetések