Các tập phụ thuộc hàm tương đương

Một phần của tài liệu Đề cương bài giảng môn cơ sở dữ liệu (Trang 102 - 103)

1. Định nghĩa các thuật ngữ: cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu, hệ cơ sở dữ

11.2. Các tập phụ thuộc hàm tương đương

Cho F và G là hai tập phụ thuộc hàm trên tập thuộc tính U, ta nói rằng tập phụ thuộc hàm F tương đương với tập phụ thuộc hàm G nếu và chỉ nếu F+=G+ Nếu F+=G+ thì ta nói F là phủ của G và ngược lại G là phủ của F

Thuật toán kiểm tra sự tương đương của hai tập phụthuộc hàm

Với mỗi phụ thuộc hàm XY của F kiểm tra xem XY có thuộc vào G+ hay không?, bằng cách tính X+G ( bao đóng của X trong tập G) và xem Y

⊆X+Ghay không?

Nếu Y⊆ X+Gthì XY∈G+, nếu mọi phụ thuộc hàm trng F đều thuộc G+hay được suy dẫn từ G+ thì mọi phụ thuộc hàm trong F+ cũng suy dẫn được từ G. Do vậy F+ ⊆G+

Tương tự, nếu mọi phụ thuộc hàm trong G đều thuộc F+thì G+⊆F+

Cuối cùng, nếu F+⊆G+ và G+ ⊆F+thì F+=G+tức là F và G là tương đương. Thuật toán xác định F và G có tương đương không?

Bước 1: Với mỗi phụ thuộc hàm X Y của F ta xác định xem X Y được suy dẫn từ G không?

Bước 2: Với mỗi phụ thuộc hàm X Y của G ta xác định xem X Y được suy dẫn từ F không?

Nếu cả hai bước trên đều đúng thì F G

Ví dụ: Cho lược đồ quan hệcó:

F={A → BC, A → D, CD → E}, G={A → BCE, A → ABD, CD → E} a. F có tương đương với G không?

b. F có tương đương với G+= {A→ BCDE} không? Giải:

a) Ta có A+G= ABCDE trong G+ có A→BC và A→D ⇒F G+⇒F+⊂G+(1) A+F =ABCDE ⇒trong F+có A→BCE và A→ABD ⟹ F+⊇G ⟹ F+⊇G+(2) Từ(1) và (2)⟹F+= G+⟹F G.

b) Do (CD)+G=CD suy ra G’+không chứa phụ thuộc hàm CDE Suy ra F không tương đương với G’

R(f) R(F)

Một phần của tài liệu Đề cương bài giảng môn cơ sở dữ liệu (Trang 102 - 103)

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

(161 trang)