Tập phụthuộc hàm tối thiểu

Một phần của tài liệu Giáo trình cơ sở dữ liệu (Trang 50 - 52)

a. Định nghĩa

F được gọi là một tập phụ thuộc hàm tối thiểu (hay phủ tối thiểu) nếu F thỏa đồng thời ba điều kiện sau:

2. F là tập phụ thuộc hàm có vế phải một thuộc tính. 3. F là tập phụ thuộc hàm không dư thừa

b. Trình tự thực hiện tìm phủ tối thiểu của một tập phụ thuộc hàm

Thuật toán tìm phủ tối thiểu của một tập phụ thuộc hàm Bước 1: loại khỏi F các phụ thuộc hàm có vế trái dư thừa.

Bước 2: Tách các phụ thuộc hàm có vế phải trên một thuộc tính thành các phụ thuộc hàm có vế phải một thuộc tính.

Bước 3: loại khỏi F các phụ thuộc hàm dư thừa.

Chú ý: Theo thuật toán trên, từ một tập phụ thuộc hàm F luôn tìm được ít nhất một phủ tối thiểu Fttđể F=Ftt và nếu thứ tự loại các phụ thuộc hàm trong tập F là khác nhau thì có thể sẽ thu được

những phủ tối thiểu khác nhau. c. Thực hành

1. Cho lược đồ quan hệ Q(A,B,C,D) và tập phụ thuộc F như sau: F={AB CD,B C,C D}

Hãy tính phủ tối thiểu của F. Giải:

Bước 1: ABCD là phụ thuộc hàm có vế trái dư thừa?

B  CD F+? trả lời: B+=BCD B CD F+

Vậy AB CDlà phụ thuộc hàm có vế trái dư thừa A kết quả của bước 1 là: F={B CD;B C;C D}

Bước 2: kết quả của bước 2 là:

F={B D; B C;C D}=F1tt

Bước 3: trong F1tt, B C là phụ thuộc hàm dư thừa?

B C G+? với G = F1tt- {B C}={B D;C D} 

G

B =BD B C G+  trong F1tt B C không dư thừa. trong F1tt,B D là phụ thuộc hàm dư thừa?

B D G+ ? với G = F1tt- {B D}={B C;C D} 

G

B = BCD B D G+  trong F1tt,B D dư thừa. kết quả của bước 3 cho phủ tối thiểu:

F={B C;C D}=Ftt

2. Cho lược đồ quan hệ Q(MSCD,MSSV,CD,HG) và tập phụ thuộc F như sau: F = { MSCD CD; CD MSCD; CD,MSSV HG; MSCD,HG MSSV; CD,HG MSSV; MSCD,MSSV HG} Hãy tìm phủ tối thiểu của F

kết quả:

Ftt= {MSCD CD; CD MSCD; CD,HG MSSV; MSCD,MSSV HG}

Một phần của tài liệu Giáo trình cơ sở dữ liệu (Trang 50 - 52)

Tải bản đầy đủ (PDF)

(77 trang)