Bao đóng của tập thuộc tính (closures of attribute sets)

Một phần của tài liệu Đề Cương Cơ Sở Dữ Liệu SQL Sever (Trang 108 - 111)

18. THỰC HÀNH HÀM KẾT HỢP VÀ GOM NHÓM

21.6.Bao đóng của tập thuộc tính (closures of attribute sets)

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 của tập thuộc tính X đối với tập phụ thuộc hàm F, kí hiệu là X+ (hoặcXF) nó đƣợc đinh nghĩa nhƣ sau:

X+= { A | AU và XAF+ }

Nhận xét với một tập F cho trƣớc ta luôn có: -X+U

- X, Y U, YX, thì XY F+

- fF thì fF+, suy ra FF+ , tơng tự  fF thì fF*, suy ra FF* - X, Y, Z U, nếu XYF+

và YZF+

thì XZF+ -XU, AX+

khi và chỉ khi XAF+

Một số tính chất của bao đóng của tập thuộc tính 1. Phản xạ XU thì XX+

2. Tính đơn điệu X, YU, nếu XY thì X+Y+ 3. X+XF+ và XX+F+

4. Tính luỹ đẳng ((X)+

)+= X+ 5. (X+Y)+= (XY+)+=(XY)+

6. XYF+ khi và chỉ khi YX+ hay XY suy dẫn đƣợc từ F khi và chỉ khi Y X+

Chứng minh

Để chứng minh các tính chất trên trƣớc tiên ta chứng minh một mênh đề sau:

Mệnh đề: Với  X, Y, Z  U thì X YZ  F+

khi và chỉ khi

Việc chứng minh mệnh đề này đƣợc dựa vào hệ tiên đề Amstrong

a) Ta chứng minh chiều thuận “”, giả thiết XYZ  F+ (1), ta cần chứng minh

YZZ  F+

(4) do luật phản xạ

Từ (1) và (4) theo tính chất bắc cầu có XZ  F+ Hoàn toàn tƣơng tự YZY F+

(5) ( theo tính chất phản xạ) từ (1) và (5) theo tính chất bắc cầu thì XY F+

b) Ta chứng minh chiều ngƣợc “”, giả thiết nếu có

Ta sẽ chứng minh XYZ  F+

Từ (2) suy ra XZYZ (4) ( theo tính chất gia tăng ) Từ (3) suy ra XXZ (5) ( theo tính chất gia tăng ) Từ (4) và (5) và từ tính chất bắc cầu suy ra XYZ

Chứng minh 1)

Với  A  X suy ra {A}X, suy ra XA  X+ suy ra X X+

Chứng minh 2)

Với  A  X+ cần chỉ ra A  Y+ nếu X Y do A  X+

suy ra XA  F+ (1) do X Y nên Y X  F+ (adsbygoogle = window.adsbygoogle || []).push({});

(2)

từ (1) và (2) và tính chất bắc cầu suy ra YA  F+ (3), từ (3) suy ra A  Y+

Chứng minh 3)

Theo tính chất (1) ta có X  X+ nên suy ra X+ X  F+ Giả sử X+

= { A1, A2, … An}

Ta cần chứng minh XX+  F+ thật vậy Do Ai  X+ ,  i=1..n Nên

X A1 F+ ( theo định nghĩa về bao đóng ) X A2 F+ ( theo định nghĩa về bao đóng ) ...

X An  F+

( theo định nghĩa về bao đóng )

XY  F+ XZ  F+ XY  F+ (2) XZ  F+ (3) XY  F+ (2) XZ  F+ (3)

Suy ra X A1A2… An  F+ ( theo luật hợp ) Nhƣng do X+= A1A2… An nên suy ra XX+  F+ Chứng minh 4) Để chứng minh (X+ )+ = X+ ta chứng minh (X+ )+  X+ và (X+ )+  X+ Theo tính chất 1 ta có (X+ )+  X+ Ta cần chứng minh (X+ )+  X+

A  X++ khi và chỉ khi X+  A  F+ (*), mặt khác theo tính chất 3 ta có XX+  F+ (**), từ (*) và (**) suy ra XA  F+ ( theo tính chất bắc cầu) Suy ra A  X+ , suy ra X++ X+ Từ X++ X+ và X+ X++ suy ra X++ =X+ Chứng minh 5)

Chứng minh chiều thuận: do X+  X, suy ra X+ Y XY, suy ra (X+ Y)+ (XY)+ ( do tính chất đơn điệu)

Chứng minh chiều ngƣợc

Do X  XY nên X+  (XY)+ suy ra X+Y  (XY)+ Y =(XY)+ Suy ra (X+Y)+  (XY)++= (XY)+

Từ chiều thuận và chiều ngƣợc suy ra (X+

Y)+ = (XY)+ Hoàn toàn tƣơng tự cho các đẳng thức khác

Chứng minh 6) a) Giả sử có Y X+ ta cần chứng minh XY  F+ X+ Y  F+ ( luật pản xạ) X X+ (tính chất 3) X Y  F+ b) Nếu có XY  F+ ta cần chứng minh Y  X+ Ta viết Y= B1, B2 ,.., Bn , suy ra Y Bi ( i=1..n)

Mặt khác XY nên theo tính chất bắc cầu suy ra X Bi ( i=1..n), suy ra Bi  X+, suy ra Y  X+

Chứng minh 7) Để chứng minh tính chất này ta phải chứng minh cả hai chiều: - Chứng minh chiều thuận “”

Nếu X+=Y+ ta cần chứng minh XY  F+ và YXF+ thật vậy: X+=Y+ khi và chỉ khi X+Y+ và X+Y+

Do X X+ mà X+Y+ nên X Y+ nên suy ra Y+X mà YY+ nên theo tính chất bắc cầu thì YX

Hoàn toàn tƣơng tự cũng có XY - Chứng minh chiều ngƣợc “”

Từ XY và YX ta cần chứng minh X+

= Y+ thật vậy XY suy ra Y X+ suy ra Y+ X++ =X+ hay Y+ X+ (1) Hoàn toàn tƣơng tự từ YX suy ra X+  Y+

(2) Từ (1) và (2) suy ra Y+= X+

Một phần của tài liệu Đề Cương Cơ Sở Dữ Liệu SQL Sever (Trang 108 - 111)