1 / 18

PHỤ THUỘC H À M (FUNCTIONAL DEPENDENCY)

CHỦ ĐỀ 4. PHỤ THUỘC H À M (FUNCTIONAL DEPENDENCY). Phụ thuộc hàm. Phuï thuoäc haøm laø một trường hợp đặc biệt của RBTV. Noù ñöôïc öùng duïng trong vieäc giaûi quyeát caùc baøi toaùn: Tìm khoùa cuûa quan heä Tìm bao ñoùng cuûa taäp thuoäc tính

yagil
Download Presentation

PHỤ THUỘC H À M (FUNCTIONAL DEPENDENCY)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHỦ ĐỀ 4 PHỤ THUỘC HÀM (FUNCTIONAL DEPENDENCY)

  2. Phụ thuộc hàm Phuï thuoäc haøm laø một trường hợp đặc biệt của RBTV. Noù ñöôïc öùng duïng trong vieäc giaûi quyeát caùc baøi toaùn: • Tìm khoùa cuûa quan heä • Tìm bao ñoùng cuûa taäp thuoäc tính • Tìm phuû toái thieåu cuûa taäp phuï thuoäc haøm • Chuaån hoùa cô sôû döõ lieäu

  3. Định nghĩa Phụ thuộc hàm (FD) FD là những qui luật giữa những thuộc tính mà một hay nhiều thuộc tính này (A1) xác định duy nhất một giá trị của những thuộc tính còn lại (A2) . Viết là: A1 A2 Đọc là: A1 xác định A2 hay A2 phụ thuộc hàm vào A1 Có nghĩa: Biết giá trị A1 thì tìm được duy nhất một giá trị cho A2

  4. Ví dụ FD A1, A2 A3 Table names OrderNo, PartNo quantity

  5. Heä Coi quan hệ Q, với X,Y,Z,W laø taäp con cuûa Q+. Coù 6 luaät daãn sau: Hệ luật dẫn Amstrong Luaät phaûn xaï X  X Luaät theâm vaøo X  Y XZ  Y Luaät hôïp X  Y, X  Z X  YZ Luaät phaân raõ X  YZ  X  Y Luaät baéc caàu X  Y, Y  Z X  Z Luaät baéc caàu giaû X  Y, YZ  W  XZ  W

  6. Cho tập phụ thuộc hàm F= {AB E, AG J, BE I, E  G, GI H}. Chứng minh AB  GH Bài tập áp dụng hệ luật dẫn Amstrong 1. EI  EI ( phản xạ) 2. E  G (giả thiết) 3. EI  EIG (từ 1. và 2.) 4. EI  GI (phân rã từ 3.) 5. GI  H (giả thiết) 6. EI  GHI (từ 4. và 5.) 7. EI  GH (phân rã từ 6.) 8. AB  AB (phản xạ) 9. AB  E (giả thiết) 10. AB  ABE (từ 8. và 9.) 11. BE  I (giả thiết) 12. AB  ABEI (từ 10. và 11.) 13. AB  ABEGI (từ 4. và 12.) 14. AB  ABEGHI (từ 7. và 13.) 15. AB  GH (phân rã từ 14.) CÁCH KHÁC: AB  AB, AB  E, AB ABE, BE I, AB ABEI, E G, AB  ABEGI, GI H, AB ABEGHI, AB  GH

  7. BÀI TẬP (tiếp theo) Cho tập phụ thuộc hàm F= {AB C, B D, CD E, CE GH, G A} Chứng minh AB  E

  8. Bao đóng của tập thuộc tính (closure of attributes set ) Bao đóng của tập phụ thuộc hàm F, ký hiệu là F+, là tập gồm tất cả những phụ thuộc hàm suy ra từ F bằng hệ luật dẫn Amstrong. Thực hiện bài toán này khá lớn, do vậy đi tìm bao đóng của tập thuộc tính thì dễ dàng hơn Ví dụ: Cho tập F= {f1:B A, f2: DA CE, f3:D  H, f4: GH C, f5: AC  D} Tìm bao đóng của AC ký hiệu là AC+ Bước 1 X0 = AC Bước 2 X1 = ACD (chỉ có f5 thỏa) Lặp lại bước 2 ta được x2= ACDE, x3= ACDEH X3 không đổi, dừng không lặp : AC+= ACDEH

  9. Bài tập áp dụng bao đóng của tập thuộc tính 1) Cho tập phụ thuộc hàm F= {AB E, AG J, BE I, E  G, GI H }. Chứng minh AB  GH 2) Cho tập phụ thuộc hàm F= {AB C, B D, CD E, CE GH, G A} Chứng minh AB  E 3) Cho bảng r Kiểm những phụ thuộc hàm sau có thỏa r ? A D, AD  D, A  E C  BDE, E  A,

  10. Hai tập phụ thuộc hàm F và G được gọi là tương tương, ta viết F  G Nếu F suy ra G ( F  G) và G suy ra F (G F) Phụ thuộc hàm tương đương F suy ra G có nghĩa là: Từ tập phụ thuộc hàm F, áp dụng hệ luật dẫn, hay bao đóng của tập thuộc tính, suy ra được mọi phụ thuộc hàm trong G

  11. Ví dụ: Phụ thuộc hàm tương đương ChoF= {A BC, A D, CD  E} G= {A  BCE, A BD, CD E}, H= {A  BCDE} Kết luận F tương đương G và F không tương đương H Hướng dẫn: Kiểm tra F  G Từ tập F tìm bao đóng của A, nếu nó chứa BCDE, thì F  G Tương từ từ G, tìm bao đóng của A, nếu nó chứa BCD thì G  F. kết luận F tương đương G.

  12. Phủ không dư thừa của một tập phụ thuộc hàm Một tập phụ thuộc hàm F là không dư thừa, nếu không tồn tại một tập F’ là tập con của F tương đương với F. Ví dụ: tìm phủ không dư thừa của : F= { A B, B  A, B  C, A  C} Nhận xét : kết qủa không duy nhất, vì tùy thuộc vào thứ tự xét của từng phụ thuộc hàm trong F

  13. Bài tập: tìm phủ không dư thừa của một tập phụ thuộc hàm Tìm phủ không dư thừa của tập phụ thuộc hàm G 1) G= {AB C, D  E, CG  D,C  A,D G, CE A, BC  D, BE  C, CE G, ACD  B, CG B} 2) ke_hoach(NGAY, GIO, PHONG, MONHOC, GIAOVIEN) G ={NGAY, GIO,PHONG MONHOC MONHOC,NGAY  GIAOVIEN NGAY,GIO,PHONG  GIAOVIEN MONHOC  GIAOVIEN}

  14. Tìm tất cả khóa của quan hệ Q(A,B,Z) có tập phụ thuộc hàm F = {AB  C, C  A} Tìm tất cả khóa chính của quan hệ Gọi : NG tập những thuộc tính chỉ ở vế trái của tập F DI tập những thuộc tính ở vế phải của F TG tập những thuộc tính không có trong NG và DI Trong ví dụ trên thì: NG={B}, DI= , TG= {A, C} Khóa chính: CB hay AC (khóa chính là những Xi có chiều dài ngắn nhất và Xi+ chứa đủ các thuộc tính của Q

  15. Bài tập tìm khóa chính Cho quan hệ Q hãy tìm các khóa chính cho Q 1) Q( TENTAU,LOAITAU,MACHUYEN,LUONGHANG,BENCANG, NGAY) F={TENTAU  LOAITAU MACHUYEN  TENTAU, LUONGHANG TENTAU,NGAY  BENCANG, MACHUYEN} 2) Q(A,B,C,D,E,G) F={ABC,C A,BCD,ACDB,DEG,BEC,CGBD,CEG} 3)Q(BROKER,OFFICE,STOCK,QUANTITY,INVESTOR,DIVIDENT) F={STOCK  DIVIDENT INVESTOR BROKER INVESTOR,STOCK  QUANTITY BROKER OFFICE }

  16. Phủ tối thiểu cho tập phụ thuộc hàm F ñöôïc goïi laø moät taäp phuï thuoäc haøm toái thieåu (hay phuû toái thieåu) neáu F thoûa ñoàng thôøi ba ñieàu kieän sau: 1) F laø taäp phuï thuoäc haøm coù veá traùi khoâng dö thöøa 2) F laø taäp phuï thuoäc haøm coù veá phaûi moät thuoäc tính. 3) F laø taäp phuï thuoäc haøm khoâng dö thöøa Thuaät toaùn tìm phuû toái thieåu cuûa moät taäp phuï thuoäc haøm Böôùc 1:loaïi khoûi F caùc phuï thuoäc haøm coù veá traùi dö thöøa. Böôùc 2:Taùch caùc phuï thuoäc haøm coù veá phaûi treân moät thuoäc tính thaønh caùc phuï thuoäc haøm coù veá phaûi moät thuoäc tính. Böôùc 3: loaïi khoûi F caùc phuï thuoäc haøm dö thöøa.

  17. Cho löôïc ñoà quan heä Q(A,B,C,D) vaø taäp phuï thuoäc F nhö sau: F= {AB  CD,B  C,C  D} Haõy tính phuû toái thieåu (Ftt) cuûa F. Tìm phủ tối thiểu Böôùc 1:ABCD laø PTH coù veá traùi dö thöøa? B  CD  F+? traû lôøi: B+=BCD  B  CD  F+ Vaäy AB  CD laø PTH coù veá traùi dö thöøa A  keát quaû cuûa böôùc 1 laø: F{B  CD, B  C, C  D} Böôùc 2: keát quaû cuûa böôùc 2 laø: F{B  D, B  C, C  D}=F1tt Böôùc 3: trong F1tt, B  C laø PTH dö thöøa? B  C  G+? vôùi G = F1tt - {B  C}={B  D;C  D} BG+=BD  B  C  G+  trong F1tt B  C khoâng dö thöøa. trong F1tt,B  D laø PTH dö thöøa? B  D  G+? vôùi G = F1tt - {B  D}={B  C, C  D} BG+=BCD  B  D  G+ trong F1tt,B  D dö thöøa. keát quaû cuûa böôùc 3 cho phuû toái thieåu: F{B  C, C  D}=Ftt

  18. Bài tập Cho löôïc ñoà quan heä Q(MSCD,MSSV,CD,HG) vaø taäp phuï thuoäc F nhö sau: F = {MSCD CD; CD MSCD; CD,MSSV HG; MSCD,HG  MSSV; CD,HG  MSSV; MSCD,MSSV HG} Haõy tìm phuû toái thieåu cuûa F keát quaû: Ftt = {MSCD  CD; CD  MSCD; CD,HG MSSV; MSCD,MSSV  HG}

More Related