H-íng dÉn «n tËp CSDL quan hÖ Tµi liÖu tham kh¶o Trang 22 DẠNG 5: TÌM BAO ĐÓNG CỦA MỘT TẬP THUỘC TÍNH Bài toán: Cho quan hệ RU, F.. Tìm bao đóng của tập thuộc tính {AC}.. Việc tìm bao đ
Trang 1H-íng dÉn «n tËp CSDL quan hÖ
Tµi liÖu tham kh¶o Trang 22
DẠNG 5: TÌM BAO ĐÓNG CỦA MỘT TẬP THUỘC TÍNH Bài toán: Cho quan hệ R(U, F) X ⊆ U Tìm bao đóng của X (Tức tìm X+)
Giải thuật:
B1: Đặt V0 = X B2: Tính V1 = V0∪ Z nếu ∃ Y → Z và Y ∈ V0 …
Tính Vi = Vi -1 ∪ Z nếu ∃ Y → Z và Y ∈ Vi -1
Lặp cho đến khi Vi ≡ Vi-1 B3: Kết luận: X+ = Vi
Ví dụ:
Cho quan hệ R(U, F): U = {A, B, C, D, E, G} và
F = {AB → D, A → G, C → E, GE → B}
Tìm bao đóng của tập thuộc tính {AC}
Đặt V0 = {AC}
V1 = {ACG} vì A → G và A ∈ V0
V2 = {ACGE} vì C → E và C ∈ V1
V3 = {ACGEB} vì GE → B và GE ∈ V2
V4 = {ACGEBD} vì AB → D và AB ∈ V3
V5 ≡V4
Vậy {AC}+ = {ABCDEG}
Bao đóng của X tối thiểu là bằng chính tập X và tối đa là bằng tập U
Việc tìm bao đóng của tập thuộc tính là khá đơn giản nhưng lại rất quan trọng do
nó còn được áp dụng để giải quyết nhiều dạng bài tập khác nữa như : chứng minh phụ thuộc hàm, tìm phủ tối thiểu, chuẩn hóa v.v Do vậy cần dành sự quan tâm đúng mức cho dạng bài tập này
Một số tài liệu ký hiệu bao đóng của tập thuộc tính X là {X}* Ký hiệu này cũng tương tự {X}+
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.