Csdl Nangcao

3,009 views

Published on

Published in: Education, Technology
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total views
3,009
On SlideShare
0
From Embeds
0
Number of Embeds
41
Actions
Shares
0
Downloads
198
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

Csdl Nangcao

  1. 1. CƠ SỞ DỮ LIỆU NÂNG CAO LÝ THUYẾT PHỤ THUỘC HÀM Thầy giảng dạy: TS. Hoàng Quang 1
  2. 2. Tại sao phải nghiên cứu LTPTH? DỊ THƯỜNG DƯ THỪA DL 2
  3. 3. MỘT SỐ CÁC ĐỊNH NGHĨA TRONG LÝ THUYẾT PHỤ THUỘC HÀM 3
  4. 4. Phụ thuộc hàm X  Y   t1, t2  r : t1[X] = t2[X]  t1[Y] = t2[Y] A B C r= a b c b d c a e c r thỏa A C r thỏa B C 4
  5. 5. Lược đồ quan hệ thoả mãn phụ thuộc hàm XY Stop r  R R= <U, SC> Or R= < U, F > KHÔNG THỎA MÃN 5
  6. 6. Bao đóng của tập phụ thuộc hàm R = <U, F>. F+ là tập tất cả các phụ thuộc hàm hệ quả của F F+ = {XY | F╞ XY} F  F+ 6
  7. 7. Khoá của lược đồ quan hệ R = <U, F>, X  U. X là khoá của R nếu: 1.XU (siêu khoá) 2.Không  X’  X : X’ là siêu khoá của R Ví dụ: R = <U, F> U = ABC; F = {AB, BC} {A} là khoá của R 7
  8. 8. Hệ tiên đề Amstrong Cho R = <U, F> - (X, Y  U )  (X  Y) : YX  F+ - (X, Y, Z  U)  (XY)  F+: XZYZ  F+ - (X, Y, Z  U)  (XY  F+, YZ  F+): XZ  F+ 8
  9. 9. Hệ tiên đề Amstrong (2) Ví dụ: R =<U, F>, U =ABC, F = {AB, AC} Chứng minh: A  BC  F+ AB (1) AC (2) Từ (1)  A  AB (3) (Luật gia tăng) Từ (2)  AB  BC (4) (Luật gia tăng) Từ (3) & (4)  A  BC (Luật bắc cầu)  đpcm 9
  10. 10. Bao đóng của tập thuộc tính (X+) X+ = {A | XA  F+}=X+F Ví dụ F = {AB, BC} A+F = ABC (AB)+ = ABC R = <U, F> và X, Y  U. Khi đó: X  Y  F +  Y  X+F 10
  11. 11. Hai tập phụ thuộc hàm tđương Cho F & G. F  G nếu và chỉ nếu F+ = G+ Ý tưởng đề kiểm chứng F  G + ↓ F ᅪ G + (1)  X(C / mY BT G  X F  Y  : ) F+ = G + ᅴ ■ ○G ᅪ F (2) + ᆴ X ᅫ Y F ᅧ G Y X+ F G+ & G F+ 11
  12. 12. Hai tập phụ thuộc hàm tđương (2) Ví dụ: Kiểm tra F và G có tđương hay ko F={ABC}, G={AB, AC {Kiểm tra F  G+} AB :A+F = ABC B AC: A+F = ABC C {Kiểm tra G  F+} ABC: A+G = ABC BC Vậy F tđ với G 12
  13. 13. Phủ cực tiểu của một lược đồ quan hệ (1) Cho R = <U, F>, F được gọi là phủ cực tiểu của R khi và chỉ khi:  Vế phải chỉ có 1 thuộc tính  Không có thuộc tính dư thừa ở vế trái  Không có phụ thuộc hàm dư thừa 13
  14. 14. Phủ cực tiểu của một lược đồ quan hệ (2) b)   X  A  F,  B  X ((F {XA} )  (X {B}  A))+  F+   XA F,  B  X: X{B} A  F+   X  A  F,  B  X: (X {B})+ ᅧ A c)   X  A  F: XA  (F {XA})+   X  A  F, X+F{XA} ᅧ A 14
  15. 15. Phủ cực tiểu của tập phụ thuộc hàm R = <U, F>. G đgl 1 phủ cực tiểu của F nếu thoả 2 điều kiện: GF  G là phủ cực tiểu của R’ = <U, G> Phủ cực tiểu của 1 phụ thuộc hàm là không duy nhất 15
  16. 16.  Giải thuật tìm phủ cực tiểu Bước 1 ↓ X ᆴ A1 X ᆴ A2 X ᆴ A1A 2 ...A n ᄒ ᄒ ᄒ ᆴ ■ ˆ % Phan ra M Bước 2 ○X ᆴ A n For (mỗi X  A  F) do For (mỗi B  X) do If ((X {B})+F  A) then X := X {B}; 16
  17. 17.  Giải thuật (tt) Bước 3 For (mỗi X  A  F) do If (X+F{XA}  A) then F := F {XA}; Kết luận: G := F; 17
  18. 18. Ví dụ Tìm phủ cực tiểu của tập PTH R = <U, F>,U = ABD, F ={B A, D  A, AB D} ABD BD B+F = BAD  D  loại bỏ B+F{BD} = BA ᅧD A BA  F = {BA, BD, D B+F{BA} = BDA  A  A} loại bỏ BA  F = {DA, BD} DA ᅧ D+F{DA} = D A Kết luận: F = {DA, BD} 18
  19. 19. Khóa của lược đồ Định lý Hồ Thuần - Nguyễn Văn Bào (Điều kiện cần để X là khoá) (U P)  X  (U P)  (T  P) Function Key(R) 1. Xđịnh T 2. Xác định P 3. X := (U P)  (T  P) (X:= S) 4. For <mỗi A  (T  P)> do (A  S  T  P ) 5. If <(X A)F+ = U> then X := X A; Return X. 19
  20. 20. Giải thuật xác định tất cả các khoá của 1 lược đồ quan hệ Định lý Lucchesi và Osborn: (Điều kiện cần và đủ để bổ sung khoá) R = <U, F>. K là 1 tập khác rỗng các khoá của lược đồ quan hệ R. Điều kiện cần và đủ để bổ sung khoá mới vào K là: kK  XY  F sao cho T = X  (K Y) không chứa phần tử nào của K. 20
  21. 21. Giải thuật Tìm 1 khoá k  K ; K := {R}; For <mỗi k  K> For <mỗi XY  F> do T := X  (K Y) ; If <T không chứa phần tử nào của K> then Tìm khoá k’ nhận T làm siêu khoá ; K+ := K  {K’} 21
  22. 22. Giải thuật (2) goto 3; EndIf; EndFor; EndFor; Return; 22
  23. 23. Xin chân thành cảm ơn thầy và các bạn đã tham gia thảo luận! 23

×