Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 80 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
80
Dung lượng
2,77 MB
Nội dung
C H N G III C S D LIU SUY DIN G ể è T H I U C H N G - Khỏi nim v CSDL suy din c nhiu nh nghiờn cu cp n theo hng phỏt trin cỏc kt qu m Green ó t c vo nm 1969 v cỏc h thng cõu hũi - tr li - Xut phỏt t quan im lý thuyt, cỏc CSDL suy din cú th c coi nh cỏc chng trỡnh logic vi s khỏi quỏt hoỏ khỏi nim v CSDL quan h ú l cỏch tip cn ca Brodie v Manola vo nm 1989, ca Codd vo nm 1970, ca Date vo nm 986, ca Gardarin v Valdurier vo nm 1989 v ca Ullman vo nm 1984 - Lp trỡnh logic l mng cụng vic trc tiờn chng minh nh lý c hc S tht thỡ vic chng minh nh lý ó to nờn c s cho hu ht h thng lp trỡnh logic hin T tig c bn cựa lp trỡnh logic l s dng logic toỏn hc nh ngụn ng lp trỡnh iu ny c cp ti liu ca Kowaski nm 1970, v c Colmerauer a vo thc hnh nm 1975 cỏc ci t ngụn ng lp trinh logic u tiờn, tc l ngụn ng PROLOG (PROgramming LOGic) Nh s hỡnh thc hoỏ, Kowalski ó xem xột ca cỏc logic bc mt, gi l logic mnh Hom Mt cõu hay mt mnh theo logic cú th cú nhiu iu kin ỳng nhng ch cú mt hay khụng cú kt lun ỳng - i vi nhu cu thc hnh CSDL suy din x lý cỏc cõu khụng phc nh cỏc cõu h thng lp trỡnh logic, s cỏc lut, tc l s cỏc cõu vi cỏc iu kin khụng trng CSDL suy din nh hon s cỏc s kin, tc cỏc cõu vi iu kin rng - Mt khớa cnh khỏc na gia CSDL suy din v lp trỡnh logic l cỏc h thng lp trỡnh logic nhn mnh cỏc chc nng, CSDL suy dierỡ rhn mnh tnh hiu quỏ ( ' ch suy dien dựng CSDL suy din tnh toỏn tr li khụng uc tụng quỏt nh lp trỡnh logic -N goi vic dựng logic din tỏ cỏc cõu CSDL, ngi ta cũn dựng logic din tỏ nhng cỏu húi VC cỏc iu kin ton C S D L I U S U Y D I N M ụ h ỡn h c s d liu su y d in Mụ hinh d liu gi: + Kớ phỏp toỏn hc mụ t hinh thc d liu v cỏc quan h ; + K thut x lý d liu nh tr li cỏc cõu hi, kim tra iu kin ton 129 Ngụn ng bc mt c dựng nh kớ phỏp toỏn hc mụ t d liu mụ hỡnh CSDL suy din v d liu c x lý cỏc mụ hỡnh nh vy nh vic ỏnh giỏ cụng thc logic Tip cn ca logic bc mt nh nn tng lý thuyt ca cỏc h thng CSDL suy din Tuy nhiờn, d biu din hỡnh thc cỏc khỏi nim v CSDL suy din, ta thng dựng phộp toỏn v tỡr, tc logic v t bc nht Logic v tỡr bc nht l ngụn ng hỡnh thc dựng th hin quan h gia cỏc i tng v suy din quan h mi nh ngha 1: Mi mt hng s, mt bin s hay mt hm s ỏp lờn cỏc term l mt hng thc (term) Hm n ngụi f(x l, x2, , xn); xi I i = 1, 2, , n l mt hng thc thỡ f(x l, x , , xn) l mt term nh ngha 2: Cụng thc nguyờn t (cụng thc nh nht) l kt qu ca vic ng dng mt v t trờn cỏc tham s ca term di dng P(tl, ớ2, , ớn) Nu p l v t cú n ngụi v ti I i = 1, 2, , n l mt hng thc (term) nh ngha 3: (Literal) Dóy cỏc cụng thc nguyờn t hay ph nh ca cụng thc nguyờn t ó c phõn tỏch qua cỏc liờn kt logic (a, V, c thit lp ỳng n -T, V, 3) thỡ cụng thc ú (i): Mt cụng thc nguyờn t l cụng thc thit lp ỳng n (i): F, G l Cụng thc thit lp ỳng n => F A G, F V G, F -> G, F 4-ằ G, F , G cng l cỏc cụng thc thit lp ỳng n (iii): Nu F l Cụng thc thit lp ỳng n, m X l mt bin t F => (Vx)F v (3x)F cng l cỏc cụng thc thit lp ỳng n (Vx, 3x F) V d 3.1: Cho quan h R(A1, A , An) vi n bc (tc n thuc tớnh) => l mt v tỡr n ngụi Nu reR (r b ca R) => (r.A l, r.A 2, , r.An) => R(A1, A2, , An) nhn giỏ tr ỳng Nu rớSR (r b ca R) => gỏn (r.A l, r.A 2, , r.An) => R(A1, A2, , An) nhn giỏ tr sai nh ngha 4: Cõu (Clause) Cụng thc cú dng PlAP2A APn Q1a Q2a a Qỡi Trong ú: Pi v Qj (ij=l,2, ,n) l cỏc Literal dng Trong h thng logic, Literal dng cú dng nguyờn t, nh nht, trỏi vi Literal õm l ph nh ca nguyờn t nh ngha 5: Cõu Horn (Horn clause) L cõu c dng PlAP2A APn -> Q1 nh ngha 6: CSDL sy din tng quỏt (General deductive database) CSDL suy din tng quỏt, hay CSDL tng quỏt, hay CSDL suy din c xỏc nh nh cp (D,L), D l ớp hu hn ca cỏc cõu CSDL v L l ngụn ng bc mt Gi s L cú ớt nht hai ký hiu, mt l ký hiu hng s v mt ký kiu v t + Mt CSDL xỏc nh (hay CSDL chun) l CSDL suy din (D,L) m D ch cha cỏc cõu xỏc nh (cõu chun) + Mt CSDL quan h l CSDL suy din (D,L) m D chi cha cỏc s kin xỏc nh 130 Vy CSDL quan h l mt dnu c bit ca CSDL tniỡ quỏt, hay chun, hay xỏc nh Cũn mt CSDL xỏc nh l dng c bit ca CSDL chiin hav tng quỏt 2 Lý th u y t m ụ h ỡn h i v ú i c s d iiu q u a n h 3.2.2 L N h ỡn nhn c s d liu theo quan im logic Mt CSDL cú th c nhỡn nhn di quan im ca logic nh sau: Lí thuyt bc mt; Din gii ca lý thuyt bc mt Theo quan im din gii, cỏc cõu hi v cỏc iu kin ton l cụng thc dựng ỏnh giỏ vic s dng nh ngha ng' ngha Cũn theo quan im lý th u y t cỏc cõu hi c coi nh cỏc nh lý cú th chng minh c hay cũnn thc hin nhiờn theo lý thuyt ny Hai tip cn ny c tham chiu en nh quan im lý thuyt m hỡnh, hay quan im cu trỳc quan h, v quan im lý thuyt chng minh Hai quan im trn c hỡnh thc lỡoỏ thnh khỏi nim tong ng ca CSDL thụn thũng v CSDL suy din T tng ng sau quan im lý thuyt chng minh ca CSDL (D, L) l: (i) Xõy dng mt lý thuyt T, gi l lý thuyt chng minh ca (D,L) bng cỏch dựng cỏc cõu D v ngụn ng L; (ii) Trỏ li cỏc cõu hũi CSDL, 3.2.2.2 N hỡn l i c s d liu quan h õy ta xột lp cỏc CSDL quan h tc l cỏc s- kin lm nn da trờn nn cỳa cỏc s kin, vi cỏc ngụn ng khụng cha bt k kớ hiu hm no Cỏc gi thit c t trờn lúp ca cỏc CSDL quan h ỏnh giỏ cỏc cõii hi; 1) G i thit v th giúi ú ng (( 'VVA Close World Assumption): Khỏng nh rng cỏc hiỡg tin khng ớiiỡg C'SDL dirc coi l sai, lc l R (al, an) coi l ỳng chỡ s- kin R(aK a2 an) khụng xut hin CSDL Vớ d Cú CSDL sau; Hoc sinh(Xuõn) Sinhvỡen( ụng) Nghiờn cu(ụng) Thich(Xuõn Toỏn) Nh vy theo CWA thỡ b Thich(ng, Toỏn) c gi s l ỳng, tc ụng khụng thớch Toỏn 2) G thit v tờn nht (UNA Unique Name Assumption); Khng nh cỏc hng s ca cỏc tờn khỏc c coi l khỏc Theo vớ d trn cú th núi rng hai hng s Xuõn vụng gỏn tờn nht cho haisinh viờn khỏc 3) G i thit v bao úng cỳa (DCA Domain Closure Assumption); Cho rng khụng cú cỏc hng s ngoi cỏc hng s ngụn ng ca CSDL 131 Theo vớ d trờn cú tỡi núi rng Trit khụng phi l hng ng Cho CSDL quan h (D,L), D cú mt vi hn ch L khụng cha kớ hiu hm no Vy CSDL ny cú th c coi l din gii ca lý thuyt bc mụt gm cú ngụn ng L v cỏc bin ca L, nh ó c sp t trờn din gii ny V ic ỏnh giỏ cụng thc Logic din gii ny da trờn: R (al, an) ng ch R (al, a , , an) e D Cỏc tiờn ca ngụn ng T: Theo quan im lý thuyt chng minh ca CSDL quan h thu c bng cỏch xõy dng lý thuyt T ong ngụn ng L T l Xỏc nhỡ: i vi mi s kin R (al, a2, ,an) E D - > R (al, an) c xỏc nh T2 Cỏc tiờn y ự: Vi mi kớ hiu quan h R, n u R ( a ; ,a ^ , ,a ) ,R ( a f ,a ^ , R(a,", a ' , , ) kớ hiu cho cỏc s kin ca R thỡ tiờn y i vi R l: V x l, V x , , Vxn R (al, a2, , a n )-> (x l = a A x2 = a A A x n = a, ) v * S ' (xl= a f ax2 = d j a A x n = a ^ ) V v ( x = a " a x = a a x n = a ) T3 Cỏc tiờn v tờn nht: Nu a l, a2, , ap l tt c nhng kớ hiu hng s ca L thỡ: (al a2), (al * a ( a l è 3p), (a2 * a3), (a2 ^ a ), , (ap.i T4 Cỏc tiờn v bao úng ca min: Nu a l, a2, , ap l cỏc kớ hiu hng s ca L thỡ: V x((x= al) V (x=a2) V V (x=ap)) T5 Cỏc tiờn tng ng: Vx(x=x) VxVy((x=y) -> (y=x)) VxVyVz ((x=y) A ( y = z ) ( x = z ) ) V x l,V x l, ,V x n (P (x l, T., , xn) A ( x l= y l) A (x2=y2) A A (xn=yn) -> (y l, yn)) 3.2.3 Nhỡn nhn c s d liu suy din õy chi nhỡn nhn lý thuyt chng minh ỏp dng cho CSDL suy din Ngụn ng L cựa CSDL (D, L) c xõy dng ch bng cỏc kớ hiu xut hin D, v ngi ta cú th dựng bt k ng ngha th tc no ng cnh ca chng trinh logic nh cụng c tỡm cỏc cõu tr li bng cỏch suy din t lý thuyt chng minh T, lý thuyt T m bo ng ngha ca D nht trớ vi ng ngha ca T Liờn quan n CSDL suy din, ngi ta a Comp (D ) nh l lý thuyt chng minh ca CSDL (D, L) v ựng cỏch gii SLDNF tim cõu tr li cho cõu hi Gi s (D, L) l CSDL chun Nh trng hp ca CSDL quan h, quan im lý thuyt chng minh ca D t c bng cỏch xõy dng mt lý thuyt T frong ngụn ng L 132 C ỏc tiờn lý th u y t ca T n h sau: 1) C ỏc tiờn v y : Tiờn cú c hon thin mi kớ hiu v t ca u tong ng vúi cỏc cõu D 2) Tiờn v d u y nht ca tờn v v tớnh t ng n g: cỏc tiờn v lý thuyt tng o'ng l tu theo cỏc kớ hiu hng s, hm s v v t ca L 3) Tiờn v bao ú ng ca min: Nu a l, a2 , ap l tt c nhng phn t ca L v fq l cỏc kớ hiu hm s ca L, thỡ tiờn v bao úng ca min, theo Lloyd nm 1987, Mancarella nm 1988 nh sau; Vx((x="al) V (x=ap) V (3x1, 3x2, , 3xm(x xm))) V V (3 y l, 3y2, , y n (x = fq (yl, Y , ,y n )))) C ỏ c g ia o tỏc trờn c s d liu suy d in nh ngha / ; G iao tỏc (T ransaction) M t giao tỏc CSDL suy din l mt xóu hu hn ca cỏc phộp toỏn, hay cỏc hnh ng b sung, loi b hay cp nht cỏc cóớL Vỡ mt CSDL suy din c xem nh cỏc cõu, tc l theo quan im lý thuyt mụ hinh, khụng mt phộp loi b hay cp nht no c phộp thc hin trờn s kin Cỏc s kin l ngm cú CSDL nh ngha 2: K h n g nh (Com m it) M t g ia o tỏc itc g i l c khng n h tt n u ton b x õ u cỏ c phộp toỏn to nờn kt qu tt ca giao tỏc Lý chớnh ca vic khụng m bo hon thnh tt mt giao tỏc l s vi phm iu kin ton thc hin cỏc phộp toỏn giao tỏc, hay h hũng h thng, tớnh toỏn vụ hn 3.3 C S D L i U D A T R ấ N L O G IC Trong phn ny ta i nghiờn cu CSDL da trờn logic m c th l chng trỡnh DATALOG DATALOG l mt ngụn ng phi th tc da trờn logic v t bc nht Ngi ta s dng mụ t thụng tin cn thit khụng theo cỏch ly thụng tin cỏc th tc bỡnh thng m da trn logic (ngụn ng DATALOG) 3 C ỳ p h ỏp ớ' Ký hiu: + V t so sỏnh: 0 (Bin) so sỏnh vi (giỏ tr) + Cỏch biu din cỏc lut(Clause - Rule) 133 Q < -P ,P , Pn D u , A N D ( a ) Du o OR (v) Du Kộo theo Pi: l cỏc tiờn , gi thit, ớch con, v t Q: l kt lun hay l s kin + Nu n = : 1200 => sai nh ngha ; H in trng ca lut (Rule instantiation) Hin trng ca lut l vic thay th hp l cỏc bin bng cỏc hng s M t thay th ỳng cho ngi ta mt hin ng ca lut Vớ d: Ca(M , 123) < - Gitiờn(H N i, 123, M, 1500), 1500> 1200 i vi lut c th, cú th cú nhiu hin trng hp l xem Datalog din gii lut sao, ngi ta xột mt hin trng ca lut: P(X1, X , , Xn) ^ Q 1(X 11, X , , X lm l) , Q2(X21, X 2 , , X 2m 2), , Qr(Xrl, X r2, , Xrmr), e p ỳng nu cỏc biu thc: Q1(C11, C12, , Clml)AQ2(C21, C22, , C2m2)A AQr(Crl, Cr2, , Crmr)Ae 135 C ú giỏ tr ỳng, Literal Qi(Cil, Ci2, , Cimi) l ỳng nu n_b (Ci 1, C i2, , Cimi) c mt quan h i Vi d: i vi lut: Ca(Y,X) < - Gỡtin(H N i, X, Y, Z), z>1200 Ca(Y, X) l iing cú hng s C1 thoa mn diu kin sau: c l>1200 n_b( H N^, 123, M, C ) cú quan h "Gitiờn" nh ngha 9: H qun tr CSDL suy din (Deductive DBM S) H qun tr CSDL cho phộp suy din cỏc n_b ca v t theo mc ớch bng bng cỏch s dng cỏc lut logic Cỏc chc nng ca h qun tr CSDL suy din c mụ t nh sau; CSDL suy din c xõy dng da trờn cỏc quan h c s v quan h suy din H qun tr CSDL ny c gi l suy din bi l nú cho phộp suy cỏc thụng tin t cỏc d liu ó lu tr theo c ch suy din logic Cỏc thụng tin l cỏc v t theo mc ớch, cỏc thụng tin ny cú c ngi ta tng tỏc vi v t theo mc ớch hoc cp nht v t c s nh ngha 10: Cõu hi Datalog (Datalog Query) Mt cõu hi CSDL suy din gm cú: Mt chng trỡnh Datalog, tc l mt hu hn, cú th rng ca cỏc lut; Mt Literal n cú dng P(xl,x2, ,xn)? Trong ú xi (i=l,2, ,n) l hng s hoc tờn bin Vic khai thỏc cõu hi trc tiờn l tớnh chng trỡnh Datalog, nu cú Tip theo P(xl, x2, , xn) c ỏnh giỏ Thự tc ny tng t nh la chn quan h p theo rng buc phự hp Vi d 3.2: Tỡm tt c cỏc n_b cựa quan h vay ti chi nhỏnh H Ni Khi ú ta cú: Vay( H Ni, X, Y, Z) Cõu hi ny khụng cú chng trỡnh Datalog Vớ d 3.3: Tớnh cỏc khỏch hng cựa chi nhỏnh H Ni cú ti khon m s d trờn 1200 Chng trỡnh Datalog chi cú mt lut n 136 C(Y) Guitien( H Ni, X, Y, Z), z > 1200 C(Y)? Cõu C(Y)? l tha; vỡ nú ch nhm xỏc nh quan h cn th hin loi tr hin tng tha, ngi ta cú th dựng kớ phỏp ngn gn, nu khụng s b ln ln, nhm ln Nu by gi cho cõu p (x l, x2, , xn) v yờu cu chng trỡnh Datalog bao hm mt lut on phõn bit l: Hi (x l, x2, , xn) Trong ú xi (i = ,2 , , n) l tờn bin iu ny hiu rng ngũi ta cú cõu: H i(xl, x2, , xn)? Cõu ny l mt phn ca cõu hi Do vy, cõu hi sau l t n g oTig vi cõu hi trờn l: Hi(Y) 1200 3.3.4, Cu trỳc ca cõu hi trỡnh by cu trỳc ca cõu hi ngi ta s dng th lut n h n g h a 11: th lu t (R u le G p h ) M t th luớ i vi cõu hi q l th cú hng m: Cỏc nỳt ca th ng vi cỏc k hiu Literal cú mt cỏc lut ca q Cung ca th ng vi quan h truYrc gia Literal thõn ca lut v Literal cú mt u ca uớ ú Do vy th s cú cung ỡ [...]... có tliể chấp nhận đưọc đối vói hệ thống CSDL suy diễn Khi đã chấp nhận một số kiến trúc nào đó, CSDL suy diễn mẫu sẽ được phát triển trước khi dùng bộ diễn giải Prolog - Thứ tư là: các CSDL suy diễn song song Việc giới thiệu một vài kiến trúc song song cùa CSDL suy diễn gồm các thuật toán mô tả chi tiết quá trình xử lý câu hởi Các câu hỏi được coi là xác định và CSDL suy diễn được xác định tách biệt,... IV CO sở DỬ LIỆU HƯỚNG ĐÓI TƯỢNG Các CSDL quan hệ, theo các bảng chiếm tỷ lệ cao, khoảng 70%, trên thị trường phần mềm ứng dụng Các dữ liệu được xử lý thuộc loại số, ký tự Còn lại các dữ liệu phức tạp như vãn bản, đồ hoạ, bản đồ, hinh ảnh, dũ' liệu nhiều chiều và các dữ liệu động như chương trinh, mô phỏng quá trinh trong CAD, ván phòng học, hệ chuyên gia thì người ta không chi dùng CSDL quan hệ mà... nối hai quan hệ rl và r2 được viết dưới dạng Datalog như sau: H ỏi(XI, X 2 Xn, Y l , Y2, „ Ym) < rl(X K X 2 , „ Xn), r2(YU Y2 Ym) Trong đó; Xi, Yj I i = 1, 2, , n v à j = 1, 2, , m là các tên biến phân biệt nhau Vi dụ 3.J0: (r3) Ôngbà(x, y) ... l) , Q2(X21, X 2 , , X 2m 2) , , Qr(Xrl, X r2, , Xrmr), e p ỳng nu cỏc biu thc: Q1(C11, C 12, , Clml)AQ2(C21, C 22, , C2m2)A AQr(Crl, Cr2, , Crmr)Ae 135 C ú giỏ tr ỳng, Literal Qi(Cil, Ci2, , Cimi)... bin c thay bng hng s Ca(M , 123 ) < - Gitiờn(H N i, 123 , M, W), w> 120 0 Tuy nhiờn, nu thay X bng hng s 123 v 333 thỡ khụng c Ca(M, 123 ) < - Gitiờn(H N i, 333, M, W), w> 120 0 => sai nh ngha ; H in... bỏo cỏo cõn i - To bỏo cỏo theo nm: bỏo cỏo luchuyn tin mt Xem bỏo cỏo - Bỏo cỏo li nhun - Bỏo cỏo v chự s hu - Bỏo cỏo cõn i ti sn - Bỏo cỏo lu chuyn tin mt -ro:.gỳR - Ni dung, - Tỏc gi Mi phn