(+84) 236.3827111 ex. 402

Tìm tập PTH tối thiểu


cho R(ABCDEGH)

F={A-> BC; D-> E; D-> G; B-> C; AD-> H}

Tìm Ftt

B1. Phân rã vế phải về dạng có 1 thuộc tính

phân rã A-> BC thành A -> B và A->C

Vậy Ftt={ f1: A-> B; f2: A ->C; f3: D-> E;f4: D-> G; f5:B-> C;f6: AD-> H}

B2: Loại bỏ thuộc tính thừa ở vế trái

Xét f6: AD ->H

-Xét A, (D)+Ftt=DEG không chứa H, A không thừa

-Xét D, (A)+Ftt=ABC không chứa H, D không thừa

Vậy Ftt={ f1: A-> B; f2: A ->C; f3: D-> E;f4: D-> G; f5:B-> C;f6: AD-> H}

B3: Loại bỏ PTH thừa

+ Xét f1: A -> B, (A)+Ftt-f1=AC không chứa B, f1 không thừa

+ Xét f2: A-> C, (A)+Ftt-f2=ABC chứa C, f2 thừa, bỏ f2, Ftt=Ftt-f2

+ Xét f3: D-> E, (D)+Ftt-f3=DG không chứa E, f3 không thừa

+ Xét f4: D->G, (D)+Ftt-f4=DE không chứa G, f4 không thừa

+Xét f5: B-> C, (B)+Ftt-f5=B không chứa C, f5 không thừa.

+ Xét f6: AD->H, (AD)+Ftt-f6=ADBEGC không chứa H, f6 không thừa

Vậy KL: Ftt={={ f1: A-> B; f2: D-> E;f3: D-> G; f4: B-> C;f5: AD-> H}