PHỤ THUỘC HÀM (functional dependency)

54
PH THU C HÀM (functional dependency)

description

PHỤ THUỘC HÀM (functional dependency). P hụ thuộc hàm (FD). Định nghĩa : Cho một lược đồ quan hệ gồm n thuộc tính: Q(A1, A2,…, An ) X , Y là hai tập con của Q +={ A1 , A2,…, An }. r là một quan hệ trên Q. t1 , t2 là hai bộ bất kỳ của r. - PowerPoint PPT Presentation

Transcript of PHỤ THUỘC HÀM (functional dependency)

PowerPoint Presentation

PH THUC HM (functional dependency) Ph thuc hm (FD)nh ngha: Cho mt lc quan h gm n thuc tnh: Q(A1, A2,, An) X, Y l hai tp con ca Q+={A1, A2,, An}. r l mt quan h trn Q. t1, t2 l hai b bt k ca r. Ph thuc hm gia hai thuc tnh X v Y k hiu l X Y c nh ngha nh sau:X Y (t1.X = t2.X t1.Y = t2.Y)(Ta ni X xc nh Y hay Y ph thuc hm vo X)Ph thuc hm (FD)V d: cho lc quan h: Q(A, B, C, D, E)ABCDE123451434512441AB C B D (T) DE A (T)Ph thuc hm (FD)Ph thuc hm hin nhin: Nu X Y th X Y. Vi r l quan h bt k, F l tp ph thuc hm tha trn r, ta lun c F {cc ph thuc hm hin nhin} Ph thuc hm (FD)Thut ton Satifies: Cho quan h r v X, Y l hai tp con ca Q+, Thut ton SATIFIES s tr v tr true nu X Y ngc li l false SATIFIES(r,X,Y) Sp cc b ca quan h r theo X cc gi tr ging nhau trn X nhm li vi nhau Nu tp cc b cng gi tr trn X cho cc gi tr trn Y ging nhau th tr v true ngc li l False Ph thuc hm (FD)V d: SATIFIES(phanCong,MAYBAY,GIOKH)

Ph thuc hm (FD)Cch tm tt c tp con ca Q+:S tp con c th c ca Q+ = {A ,A ,...,A } l 2nS ph thuc hm c th c: 2nx2n ABCDABCDABACADBCBDABCABDCACBCABCV d: Q+=(A, B, C, D)S tp con: 24=16S PTH: =24x24=256H lut dn ArmstrongPh thuc hm c suy din logic t FPh thuc hm X Y c suy din logic t F nu mt quan h r bt k tha mn tt c cc ph thuc hm ca F th cng tha ph thuc hm X Y. K hiu F|= X Y.Bao ng ca F (F+)Bao ng ca F k hiu F+ l tp tt c cc ph thuc hm c suy din logic t F.

H lut dn ArmstrongCc tnh cht ca tp F+Tnh phn x: F F+Tnh n iu: Nu F G th F+ G+Tnh ly ng: (F+)+ = F+.Gi G l tp tt c cc ph thuc hm c th c ca r, phn ph ca F k hiu F = G - F+

H lut dn ArmstrongH lut dn Amstrong: Cho X,Y,Z,W l tp con ca Q+r l quan h bt k ca Q. Ba lut ca tin Amstrong: Lut phn x (reflexive rule): Nu Y X th X YLut tng trng(augmentation rule): Nu Z Q v X Y th XZ YZLut bc cu (Transivity Rule)Nu X Y v Y Z th X Z

H lut dn ArmstrongBa h qu ca tin Amstrong:Lut hp (Union Rule)Nu X Y v X Z th X YZLut bc cu gi (Pseudotransivity Rule)Nu X Y v WY Z th XW ZLut phn r (Decomposition Rule)Nu X Y v Z Y th X Z

Bao ng ca tp thuc tnh X (closures of attribute sets) nh ngha: Q l lc quan h.r l mt quan h trn Q, F l tp cc ph thuc hm trong Q. X, Ai l cc tp con ca Q+Bao ng ca tp thuc tnh X i vi F k hiu l X+ c nh ngha: X+=Aivi X Ai l ph thuc hm c suy din t F nh h tin Armstrong Bao ng ca tp thuc tnh X (closures of attribute sets) Thut ton tm bao ng: Tnh lin tip tp cc tp thuc tnh X0,X1,X2,... theo phng php sau: Bc 1: X0 = X Bc 2: ln lt xt cc ph thuc hm ca F Nu YZ c Y Xi th Xi+1 = Xi Z Loi ph thuc hm Y Z khi F Bc 3: Nu bc 2 khng tnh c Xi+1 th Xi chnh l bao ng ca X Ngc li lp li bc 2 Bao ng ca tp thuc tnh X (closures of attribute sets) V d: Cho lc quan h Q(A,B,C,D,E,G,H) v tp ph thuc hm F={BA; DACE; DH; GH C; ACD}. Tm bao ng ca X = {AC} trn FX(0) = {A,C} , {A,C}{D}X(1) = {A,C,D}, {A, D}{C,E}X(2) = {A,C,D,E}, {D}{H}X(3) = {A,C,D,E,H}X+= X(3)Cho X = {B, D} ->X+?

Bao ng ca tp thuc tnh X (closures of attribute sets) V du 2: cho lc quan h: Q(A,B,C,D,E,G) F = { f1: A C; f2: A EG; f3: B D; f4: G E} Tm bao ng ca X+ v Y+ ca X = {A,B}; Y = {C,G,D} Kt qu : X+ = {ABCEG} , Y+ = {CGDE}S dng bao ng ca tp thuc tnhKim tra siu khoa (Testing for superkey) kim tra X co phai la siu kha: tinh X+, nu X+ cha tt ca cac thuc tinh cua R thi X la siu kha. X la khoa d tuyn (candidate key) nu khng tp con no trong s cac tp con cua no la khoa.Kim tra mt phu thuc ham XY co c suy dn t F. Kim tra 2 tp phu thuc ham tng ng F+=G+Vi mi ph thuc hm YZ trong F Tnh Y+ trn tp ph thuc hm GNu Z Y+ th YZ trong G+ v ngc li

Phu thuc ham d thaTp cac phu thuc ham co th la d tha vi chung co th suy din t cac FDs khac.Vi du: AC la d tha i vi F: (AB, BC, A C)Mt phn cua phu thuc ham cung c th d tha.Vi du: F=(A B, BC, AC,D) co th c vit lai: F=(A B, BC, AD)

Bao ng ca tp ph thuc hmBao ng ca F k hiu F+ l tp tt c cc ph thuc hm c suy din logic t F. Thut ton tm bao ng F+ Bc 1: Tm tt c tp con ca Q+Bc 2: Tm tt c cc ph thuc hm c th c ca Q. Bc 3: Tm bao ng ca tt c tp con ca Q. Bc 4: Da vo bao ng ca tt c cc tp con tm xc nh ph thuc hm no thuc F+ Bao ng ca tp ph thuc hmV d: Q(A,B,C) F = {AB C,C B} F+ ?B1: tm tt c tp con ca cc thuc tnh Q+

B2: Tm bao ng ca ttc cc tp con thuc tnh A+ = AB+ = BC+ = BCAC+ = ABCAB+ = ABCBC+ = BC

ABC{A}{B}{C}{A,B}{A,C}{B,C}{A,B,C}Bao ng ca tp ph thuc hmTm tt c cc ph thuc hm c th c:

Kt qu: F+ = {ABC, ABAC,ABBC, ABABC, CB,CBC,ACB, ACAB,ACBC, ACABC} ABABCBCABCFCACBCF+ACBCF+BCACAABAABCBACABACF+CBFCABCACABCF+BCABCACBABBCABBCF+CABACBF+BCAAACBABBABCABABCF+CACACABF+BCABBao ng ca tp ph thuc hmThut ton tm F+ ci tin: Bc 1: Tm tt c tp con ca Q+Bc 2: Tm bao ng ca tt c tp con ca Q+Bc 3: Da vo bao ng ca cc tp con tm suy ra cc ph thuc hm thuc F+ Bao ng ca tp ph thuc hmV d:A+ = A ch gm cc ph thuc hm hin nhin {AB}+ = ABC cho cc ph thuc hm khng hin nhin sau: ABC, AB AC, AB BC, AB ABC Tm tt c cc tp con ca {ABC} ri b cc tp con ca {AB}Cc tp con ca {ABC} l: ,{A},{B},{AB},{C},{AC},{BC},{ABC} B cc tp con ca {AB} l: ,{A},{B},{AB},{C},{AC},{BC},{ABC} Cc tp cn li chnh l v phi ca ph thuc hm c v tri l AB

Bao ng ca tp ph thuc hm1/ Cho quan h sau: r( A B C D E) a1 b1 c1 d1 e1 a1 b2 c2 d2 d1 a2 b1 c3 d3 e1 a2 b1 c4 d3 e1 a3 b2 c5 d1 e1 Ph thuc hm no sau y tha r: AD,ABD,CBDE,EA,AE Bao ng ca tp ph thuc hmCho Q+={ABC}. a) Tm tt cc cc tp con ca Q b) Tm tt c cc ph thuc hm c th c ca Q (khng lit k ph thuc hm hin nhin) Cho F = {ABC, BD, CE, CEGH, GA} a) Hy chng t ph thuc hm ABE,AB G c suy din t F nh lut dn Armstrong b) Tm bao ng ca AB(vi bi ton khng ni g v lc quan h Q ta ngm hiu Q+ l tp thuc tnh c trong F ngha l Q+={ABCEGH}) Bao ng ca tp ph thuc hmCho F = {AD,AB DE,CE G,E H}. Hy tm bao ng ca AB. Cho F={AB E, AG I, BE I, E G, GI H}. Hy chng t ph thuc hm AB GH c suy din t F nh lut dn Armstrong Tm bao ng ca {AB} Cho F={A D, AB E, BI E, C I, E C} tm bao ng ca {AE}+Ph thuc hm tng ng nh Ngha: Hai tp ph thuc hm F v G l tng ng (Equivalent) nu F+ = G+ k hiu F = G. Thut ton xc nh F v G c tng ng khng Bc 1: Vi mi ph thuc hm XY ca F ta xc nh xem XY c l thnh vin ca G khng Bc 2: Vi mi ph thuc hm XY ca G ta xc nh xem XY c l thnh vin ca F khng Nu c hai bc trn u ng th F G Ph thuc hm tng ng V d: Cho lc quan h Q(ABCE) hai tp ph thuc hm:F={ABC,AD,CE} G = {ABCE,AABD,CE} a) F c tng ng vi G khng?b) F c tng ng vi G={ABCE} khng?

Ph thuc hm tng ng Tnh A+ da trn tp GA+=ABCE trong G+ c ABC v AD F G+ F+ G+ (1).Tnh A+ da trn tp FA+=ABCE trong F+ c ABCE v AABD F+ G F+ G+ (2) (1) v(2) F+ = G+ F G.Do = C G+ khng cha ph thuc hm CE F khng tng ng vi G

Ph ti thiu ca tp ph thuc hm (minimal cover)Ph thuc hm c v tri d tha: F l tp cc ph thuc hm trn lc quan h Q.ZYF. Ph thuc hm Z Y c v tri d tha nu c mt AZ sao cho: F F-{Z Y}{(Z-A) Y}V d 1: Q(A,B,C), F={ABC; BC}F F-{ABC}{(AB-A)C}={BC}AB C: l ph thuc hm khng y B C :l ph thuc hm y

Ph ti thiu ca tp ph thuc hm (minimal cover)V d 2: cho tp ph thuc hm F = {A BC , B C, AB D}. Ph thuc hm AB D c v tri d tha B v: F = F {AB D} {A D} = {A BC, B C, A D} F l tp ph thuc hm c v tri khng d tha nu F khng cha ph thuc hm c v tri d tha. Ph ti thiu ca tp ph thuc hm (minimal cover)Thut ton loi cc ph thuc hm c v tri d tha:Xt ln lt cc ph thuc hm X Y trong FVi mi tp con X ca X, nu X Y F+ th thay X Y bng X Y .V d 3: F = {A BC , B C, AB D}, ph thuc hm AB D c A+=ABC A DF+ Trong F ta thay AB D bng A D F = {A BC,B C, A D} Ph ti thiu ca tp ph thuc hm (minimal cover)Ph thuc hm d tha:F l tp ph thuc hm khng d tha nu khng tn ti F F sao cho F F. Ngc li F l tp ph thuc hm d tha. V d: Cho F = {A BC, B D, AB D} th F d tha v F F= {ABC, BD} Ph ti thiu ca tp ph thuc hm (minimal cover)Tp ph thuc hm ti thiu (minimal cover) F c gi l mt tp ph thuc hm ti thiu (hay ph ti thiu) nu F tha ng thi ba iu kin sau: F l tp ph thuc hm c v tri khng d tha F l tp ph thuc hm c v phi mt thuc tnh. F l tp ph thuc hm khng d tha Ph ti thiu ca tp ph thuc hm (minimal cover)Thut ton tm ph ti thiu ca mt tp ph thuc hm Bc 1: Loi b cc ph thuc hm c v tri d tha. Bc 2: Tch cc ph thuc hm c v phi nhiu hn mt thuc tnh thnh cc ph thuc hm c v phi mt thuc tnh. Bc 3: Loi b cc ph thuc hm d tha. Ph ti thiu ca tp ph thuc hm (minimal cover)V d 1: Cho lc quan h Q(A,B,C,D) v tp ph thuc F ={AB CD, B C, C D}. Tm ph ti thiu ca F. Bc 1: AB CD l ph thuc hm c v tri d tha? Xt B CDF+ ? Tnh B+ =BCD B CD F+ Vy AB CD l ph thuc hm c v tri d tha A F={B CD; B C; C D} Ph ti thiu ca tp ph thuc hm (minimal cover)Bc 2: tch cc ph thuc hm c v phi nhiu hn 1 thuc tnh thnh cc ph thuc hm c v phi 1 thuc tnh F={BD; B C; C D}=F1tt Bc 3: Trong F1tt, B C l ph thuc hm d tha? B C G+ ? vi G = F1tt - {B C}={B D;C D} BG+=BD B C G+ trong F1tt B C khng d tha.

Ph ti thiu ca tp ph thuc hm (minimal cover)Trong F1tt,B D l ph thuc hm d tha? B D G+ ? vi G = F1tt - {B D}={B C; C D} BG+=BC D B D G+ trong F1tt, B D d tha. Kt qu ca bc 3 cho ph ti thiu: F={B C;C D}=Ftt Ph ti thiu ca tp ph thuc hm (minimal cover)V d 6: Cho lc quan h Q(A,B,C,D) v tp ph thuc F nh sau: F = {A C; C A; CB D; AD B; CD B; AB D} Hy tm ph ti thiu ca FPh ti thiu ca tp ph thuc hm (minimal cover)kt qu: Ftt = {A C; C A; C,D B; A,B D}

KHA CA LC QUAN H (Key)nh Ngha: Cho lc quan h Q(A1,A2,,An)Q+ l tp thuc tnh ca Q. F l tp ph thuc hm trn Q. K l tp con ca Q+K l mt kha ca Q nu: K+ = Q+ Khng tn ti K' K sao cho K+= Q+ KHA CA LC QUAN H (Key)Tp thuc tnh S c gi l siu kha nu S K Thuc tnh A c gi l thuc tnh kha nu AK vi K l kha bt k ca Q. Ngc li A c gi l thuc tnh khng kha. Mt lc quan h c th c nhiu kha v tp thuc tnh khng kha cng c th bng rng. KHA CA LC QUAN H (Key)Thut ton tm mt kha ca mt lc quan h QBc 1: gn K = Q+ Bc 2: A l mt thuc tnh ca K, t K = K - A. Nu K+= Q+ th gn K = K' thc hin li bc 2 Nu mun tm cc kha khc (nu c) ca lc quan h, ta c th thay i th t loi b cc phn t ca K. KHA CA LC QUAN H (Key)V d: cho lc quan h Q v tp ph thuc hm F nh sau: Q(A,B,C,D,E) F={ABC, AC B, BC DE} tm kha KB1: K=Q+ K=ABCDEB2:(K\A)+ (BCDE)+=BCDE Q+ K=ABCDEB3:(K\B)+ (ACDE)+= ABCDE = Q+ K=ACDEB4: (K\C)+ (ADE)+ = ADE Q+ K=ACDEB5: (K\D)+ (ACE)+ = ACEBD=Q+ K=ACEB6: (K\E)+ (AC)+ = ACBDE =Q+ K=AC

KHA CA LC QUAN H (Key)V d: cho lc quan hQ(ABCDEGHI) v tp thuc tnh F={AC B;BI AC;ABC D;H I;ACE BCG;CG AE} Tm K p n: K=CGHKHA CA LC QUAN H (Key)Thut ton tm tt c kha ca lc quan h: Bc 1: Xc nh tt c cc tp con khc rng ca Q+={X1, X2, ,X2n-1 }Bc 2: Tm bao ng ca cc Xi Bc 3: Siu kha l cc Xi c Xi+= Q+Gi s ta c cc siu kha l S = {S1,S2,,Sm} Bc 4: xt mi Si, Sj con ca S (i j), nu Si Sj th loi Sj (i,j=1..n), kt qu cn li ca S chnh l tp tt c cc kha cn tm. KHA CA LC QUAN H (Key)V d: Tm tt c cc kha ca lc quan h v tp ph thuc hm nh sau:

KHA CA LC QUAN H (Key)Thut ton (ci tin) tm tt c kha ca mt lc quan h Bc1: to tp thuc tnh ngun TN, tp thuc tnh trung gian TG Bc2: Nu TG = th lc quan h ch c mt kha K = TN kt thc Ngc li Qua bc 3 Bc3: tm tt c cc tp con Xi ca tp trung gian TG KHA CA LC QUAN H (Key)Bc 4: tm cc siu kha Si bng cch Xi if (TN Xi)+ = Q+ then Si = TN Xi Bc 5: tm kha bng cch loi b cc siu kha khng ti thiu Si, Sj S if Si Sj then Loi Sj ra khi Tp siu kha S S cn li chnh l tp kha cn tm.

KHA CA LC QUAN H (Key)V d: cho lc quan h Q(CSZ) v tp ph thuc hm F={CS Z; Z C}. p dng thut ton ci tin: TN = {S}; TG = {C,Z} Gi Xi l cc tp con ca tp TG:

BI TP

BI TP

BI TP

BI TP

BI TP