Định nghĩa: F được gọi là tập PTH tối thiểu (phủ tối thiểu) nếu F thỏa đồn thời 3 điều kiện sau:
F là tập PTH có vế trái không dư thừa. F là tập PTH có vế phải một thuộc tính.
F là tập PTH không dư thừa.
Ý nghĩa:
Giảm bớt số thuộc tính của vế trái.
1. Bài toán PTH:
d. Tập PTH tối thiểu: (minimal cover)
Thuật toán tìm phủ tối thiểu của một tập PTH:
B1: loại khỏi F các PTH có vế trái dư thừa.
B2: tách các PTH mà vế phải có trên một thuộc tính
thành các PTH có vế phải một thuộc tính.
http://sites.google.com/site/khaiphong
Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu
Bài toán tìm khóa và Bài toán PTH1. Bài toán PTH: 1. Bài toán PTH:
d. Tập PTH tối thiểu: (minimal cover)
Ví dụ tìm phủ tối thiểu của một tập PTH:
1) Cho Q(A, B, C, D) và F = {AB CD ; B C ; C D }
B1: loại khỏi F các PTH có vế trái dư thừa. • PTH AB CD có vế trái dư thừa?
ACD: tính (A)+ dựa trên tập F1 = {B C ; C D } (A)+ = ACD A D F1+
Loại bỏ thuộc tính A.
BCD: tính (B)+ dựa trên tập F2 = {B C ; C D} (B)+ = BCD A D F2+
Không loại bỏ thuộc tính B.
1. Bài toán PTH:
d. Tập PTH tối thiểu: (minimal cover)
Ví dụ tìm phủ tối thiểu của một tập PTH:
1) Cho Q(A, B, C, D) và F = {AB CD ; B C ; C D }
B2: tách các PTH mà vế phải có trên một thuộc tính thành các PTH có vế phải một thuộc tính. F’ = {B CD ; B C ; C D} F” = {B D ; B C ; C D} BC BD BCD
http://sites.google.com/site/khaiphong
Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu
Bài toán tìm khóa và Bài toán PTH1. Bài toán PTH: 1. Bài toán PTH:
d. Tập PTH tối thiểu: (minimal cover)
Ví dụ tìm phủ tối thiểu của một tập PTH:
1) Cho Q(A, B, C, D) và F = {AB CD ; B C ; C D }
Xét BD G+? với G = F” - {B D } = {B C ; C D} Tính (B)𝐺+ = B
= BC (do có B C) = BCD (do có C D)
Vậy BD G+ pth BD dư thừa trong F” (loại khỏi F”) Vậy thay F” = F1"= {B C ; C D}
B3: loại khỏi F” = {B D ; B C ; C D} các PTH dư thừa
Xét BC G+? với G = F1" - {B C } = {C D}: không loại được Xét CD G+? với G = F1" - {C D } = {B C}: không loại được
http://sites.google.com/site/khaiphong
Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu
Xác định khóa và tập phủ tối thiểu:
1) Q(ABCD) và F = {AB ; BCD ; DA }2) Q(ABCDGH) và F = {AH ; ABC ; BCD ; GB } 2) Q(ABCDGH) và F = {AH ; ABC ; BCD ; GB } 3) Q(ABCSXYZ) và F = {SA ; AXB ; SB ; BYC ; CZX} 4) Q(ABCSXYZ) và F = {SA ; AXB ; BYC ; YZ ; CZX} 5) Q(ABCDEG) và F = {ABC ; CDE ; AGB ; BD ; AD} 6) Q(ABCDE) và F = {ACB ; EB ; BCA ; DA ; DEC} 7) Q(ABCDEGHIJ) và F = {BGD ; GJ ; AIC ; CEH ; BDG ; JHA ; DI} 8) Q(ABCMNOP) và F = {AMN ; BNC ; AMB ; AP ; PM ; BNM ; PCA ; POA} 9) Q(MNOPRSTU) và F = {MS ; MRT ; TR ; ORT ; MU ; MTP ; NPO ; SUR} 10) Q(ABCDEGHIJ) và F = {BHI ; GCA ; IJ ; AEG ; DB ; IH}