Bao đóng của tập thuộc tính

Một phần của tài liệu cơ sở dữ liệu (Trang 95 - 96)

CHƯƠNG 6 : LÝ THUYẾT VỀ THIẾT KẾ CƠ SỞ DỮ LIỆU

6.1. Phụ thuộc hàm (Functional Dependencies)

6.1.2.2. Bao đóng của tập thuộc tính

Định nghĩa: Cho F là tập các phụ thuộc hàm trên t ập thuộc tính U, X ⊆ U. Bao đóng

(closure) của tập các thuộc tính (X) trên tập các phụ thuộc hàm F ký hi ệu là X+F được

định nghĩa như sau:

X+F= {A | X→ A ∈ F+}.

Nghĩa là XF+ là tập tất cả các thuộc tính A mà phụ thuộc hàm X → A có th ể được suy

diễn logic từ F nhờ hệ tiên đề Armstrong.

Để tiện ta có thể viết X+ thay cho X+F

Thuật tốn tìm bao đóng:

Cho lược đồ quan hệ R(U) với U là tập hữu hạn các thuộc tính, F là tập các phụ

thuộc hàm trên R và X ⊆ U. Cần tìm bao đóng X+F ?

Phương pháp:

Tính liên tiếp tập các thuộc tính X0, X1, X2,… theo các bước: Bước 1: Đặt X0 = X

Bước 2: Lần lược xét các phụ thuộc hàm của F, nếu Y → Z có Y⊆

Xi thì Xi+1 = Xi ∪ Z, loại Y → Z ra khỏi F

Bước 3: Tiếp tục cho đến khi Xi+1=Xi thì thuật tốn dừng

Kết luận: X+F = Xi

Ví dụ 6.4: Cho R(ABCDEG) và tập phụ thuộc hàm F như sau:

F={AB→C, D→EG, ACD→B, C→A, BE→C, CE→AG, BC→D, CG→BD}

Tìm bao đóng của tập thuộc tính BD ?

Giải: Áp dụng thuật tốn tìm bao đóng ở trên Bước 1: Đặt X0 = BD

Bước 2: Lần lượt xét các phụ thuộc hàm của F Xét

D→EG, có D ⊆ X0 ; X1= X0 ∪ EG=BDEG

Xét BE→C, có BE ⊆ X1 ; X2= X1 ∪

C=BCDEG

Xét C→A, có C ⊆ X2 ; X3= X2 ∪

A=ABCDEG Bước 3: dừng vì X3=U

Vậy BD+F=X3= ABCDEG

Một phần của tài liệu cơ sở dữ liệu (Trang 95 - 96)

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

(136 trang)
w