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ữ
13.2. Họ Sperner và khóa
Nếu gọi Kα là tập tất cả các khoá của lược đồ α=(U,F), nh vậy mỗi phần tử của Kα là một tập thuộc tính và các tập hợp đó là không bao nhau.
Định nghĩa:Họ Sperner trên U là họ M={ X | X⊆U }sao cho hai phần tử của M là không bao nhau.
Nhận xét:Tập hợp Kα tất cả các khoá của lược đồ là một họ Sperner trên U. Xây dựng lược đồ quan hệ có các khoá là các phần tử của họ Sperner
Bài toán: Cho M là một họ Sperner trên U thì có tồn tại hay không một lược đồ quan hệ α=(U,F) sao cho Kα =M (lược đồ có các khoá là các phần tử của họ M).
Trả lời:Có tồn tại một lợc đồ α=(U,F) đợc xây dựng nh sau: Xây dựng F, giả sử M={X1, X2,..., Xn} ta xây dựng F nhưsau F={ Xi U\ Xi∀i=1, .., n }
Khi đó lược đồα=(U,F) có Kα =M Chứng minh:
Để chứng minh Kα =M ta chứng minh Kα ⊆M (1) và M⊆Kα(2) Chứng minh (1)
Lấy K∈Kαta cần chứng minh K ∈M Giả sử ngượclại K∉M
Do K là khoá nên K+=U việc tìm bao đóng của K phải áp dụng các phụ thuộc hàm trong tập F có vế trái là tập con của K, tức là ∃ Mi∈ M để Mi ⊂ K (Mi
Mặt khác, Mi +
=U tức là Mi là siêu khoá của lược đồ, Mi là tập con thực sự của khoá K mà Milại là một siêu khoá mâu thuẫn với giả thiết K là khoá. Vậy K∈M.
Chứng minh (2)
Lấy Mi ∈ M ta cần chứng minh Mi ∈ K thật vậy theo thuật toán xây dựng lược đồ thì Mi
+
=U tức Milà siêu khoá, tuy nhiên Milà khoá vì lấy∀Mi’⊂Mi
thì (Mi’)+ ≠U vì các phần tử của họ Sperner là không bao nhau, mà Mi’⊂ Mi
thế nên∀Mj∈M thì Mj⊄Mi’ thế nên (Mi’)+=Mi’≠U
Ví dụ: Cho U=ABCDEGH và họ Sperner M={ACD, ABE, GH }, hãy xây dựng một lược đồ quan hệα=(U,F) sao cho Kα = M
Giải:
Lấy F={ ACDBEGH, ABECDGH, GHABCDE}
Rõ rànglược đồ α=(U,F) với U và Fđược xác định như trên chính là lược đồ cần tìm.
Nhận xét: Số khoá của lược đồ được xây dựng theo thuật toán trên bằng lực lượngcủa họ M.