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
Tại sao phải nghiên cứu LTPTH? DƯ THỪA DL DỊ THƯỜNG DƯ THỪA DL DỊ THƯỜNG
MỘT SỐ CÁC ĐỊNH NGHĨA TRONG  LÝ THUYẾT PHỤ THUỘC HÀM
Phụ thuộc hàm r thỏa A   C r thỏa B   C A B C r = a b c b d c a e c X    Y    t 1 , t 2     r :  t 1 [X] = t 2 [X]  ...
Lược đồ quan hệ thoả mãn phụ thuộc hàm KHÔNG THỎA MÃN X  Y Stop R= <U, SC> Or R= < U, F >
Bao đóng của tập phụ thuộc hàm <ul><li>R = <U, F>. F +  là tập tất cả các phụ thuộc hàm hệ quả của F </li></ul><ul><li>F +...
Khoá của lược đồ quan hệ <ul><li>R = <U, F>, X    U. X là khoá của R nếu: </li></ul><ul><li>1.X  U ( siêu khoá ) </li></...
Hệ tiên đề Amstrong <ul><li>Cho R = <U, F> </li></ul><ul><li>-    (X, Y    U )  (X    Y) : Y  X    F + </li></ul><ul><...
Hệ tiên đề Amstrong (2) <ul><li>Ví dụ : R =<U, F>, U =ABC, F = {A  B, A  C} </li></ul><ul><li>Chứng minh: A    BC    F...
Bao đóng của tập thuộc tính (X + )   <ul><li>Ví dụ </li></ul><ul><li>F = {A  B, B  C}  </li></ul><ul><li>A + F  = ABC </...
Hai tập phụ thuộc hàm tđương <ul><li>Cho F & G. F    G nếu và chỉ nếu F +  = G + </li></ul><ul><li>Ý tưởng đề kiểm chứng ...
Hai tập phụ thuộc hàm tđương (2) <ul><li>Ví dụ : Kiểm tra F và G có tđương hay ko </li></ul><ul><li>F={A  BC}, G={A  B, ...
Phủ cực tiểu của một lược đồ quan hệ (1) <ul><li>Cho R = <U, F>, F được gọi là phủ cực tiểu của R khi và chỉ khi: </li></u...
Phủ cực tiểu của một lược đồ quan hệ (2) <ul><li>b)       X    A    F,    B    X </li></ul><ul><li> ((F  {X  A} ) ...
Phủ cực tiểu của tập phụ thuộc hàm <ul><li>R = <U, F>. G đgl 1 phủ cực tiểu của F nếu thoả 2 điều kiện: </li></ul><ul><li>...
<ul><li>Giải thuật tìm phủ cực tiểu </li></ul><ul><li>Bước 1 </li></ul>Bước 2 For (mỗi X    A    F) do   For (mỗi B    ...
<ul><li>Giải thuật (tt) </li></ul><ul><li>Bước 3 </li></ul><ul><li>For (mỗi X    A    F) do </li></ul><ul><li>  If (X + ...
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}   <ul><li>AB  D </li></ul><ul><li>B ...
Khóa của lược đồ <ul><li>Định lý Hồ Thuần - Nguyễn Văn Bào  (Điều kiện cần để X là khoá) </li></ul><ul><li>(U  P)    X  ...
Giải thuật xác định tất cả các khoá của 1 lược đồ quan hệ <ul><li>Định lý Lucchesi và Osborn:  (Điều kiện cần và đủ để bổ ...
Giải thuật <ul><li>Tìm 1 khoá k    K  ; </li></ul><ul><li>K := {R}; </li></ul><ul><li>For  <mỗi k    K>  </li></ul><ul><...
Giải thuật (2) <ul><li>goto 3; </li></ul><ul><li>EndIf; </li></ul><ul><li>EndFor; </li></ul><ul><li>EndFor; </li></ul><ul>...
Xin chân thành cảm ơn thầy và các bạn đã tham gia thảo luận!
Upcoming SlideShare
Loading in …5
×

Csdl Nangcao

3,405 views

Published on

Published in: Education, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

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

×