Dạng biểu diễn thứ nhất của khóa

Một phần của tài liệu ứng dụng phép dịch chuyển lược đồ quan hệ trong cơ sở dữ liệu (Trang 48 - 50)

- Phép tách = (X1, X2, ,Xk) Output

2.4.Dạng biểu diễn thứ nhất của khóa

PHÉP DỊCH CHUYỂN LƯỢC ĐỒ QUAN HỆ

2.4.Dạng biểu diễn thứ nhất của khóa

Đ ị n h l ý

(Dạng biểu diễn thứ nhất của khóa)

Nếu dịch chuyển LĐQH a = (U,F) theo tập X U để nhận được LĐQH b=a\X thì

1. Key(a) = Key(b) khi và chỉ khi X Uo 2. Key(a) = X Key(b) khi và chỉ khi X UI

C h ứ n g m i n h

(1) Giả sử Key(a) = Key(b) và AX AUo. Theo phân hoạch của các thuộc tính trong U, AUK. Như vậy phải tồn tại một khóa K trong Key(a) để AK. Do

Key(a) = Key(b) nên KKey(b). Từ đây suy ra KU\X hay là KX = . Điều này mâu thuẫn với AKAX. Vậy ta phải có XUo.

(1) Suy từ bổ đề về khóa trong phép dịch chuyển LĐQH.

(2 ) Đẳng thức Key(a) = X Key(b) cho biết X có mặt trong mọi khóa của a, tức là X UI .

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

(2 ) Giả sử X UI. Ta sẽ chứng minh rằng mọi khóa KKey(a) đều được biểu diễn dưới dạng XM, trong đó M Key(b) và ngược lại, nếu MKey(b) thì

XMKey(a).

Cho KKey(a). Khi đó, vì XUI nên X phải có trong mọi khóa của a, nói riêng

XK. Đặt M = K\X, ta có MX =  và K = XM. Theo bổ đề về siêu khóa trong phép dịch chuyển LĐQH ta suy ra M = K \ X là siêu khóa của b. Giả sử M chứa một siêu khóa P của b. Khi đó XP lại là siêu khóa của aXPK. Vì K là khóa của a nên XP = K = XM. Để ý rằng XP = XM = , ta suy ra P = M. Vậy M là khóa của b.

Cho MKey(b). Ta có XM = . Theo bổ đề về siêu khóa trong phép dịch chuyển LĐQH thì XM là siêu khóa của a. Gọi K là khóa của a chứa trong siêu

khóa XM. Lại theo bổ đề về siêu khóa trong phép dịch chuyển LĐQH, K\X là siêu

khóa của b. Vì K là khóa của aXUI nên XK. Từ đây suy ra K\XM. Áp dụng tính tối tiểu cho khóa M của b ta suy ra K\X = M. hay K = XM. Điều này chứng tỏ XM là khóa của a

T h í d ụ

1. Cho LĐQH a = (U,F) với tập thuộc tính U = ABCDEH và tập PTH

F = {AED, BCE}. Ta tính được giao các khóa là UI = ABCDEH \ DE =

ABCH. Đặt b = (V,G) với V = U\ABCH = DE, G = F\ABCH = {ED, E}. Ta có b = a\ABCH và tính được Key(b) = {}, Vậy Key(a) = ABCHKey(b) =

{ABCH}.

2. Với lược đồ đã cho ta tính được UK = ABCH nên Uo = U\UK = BCDEH\ABCH =

DE. Đặt c = a\DE = (P,W) ta có P = U\DE = ABCH, W = F\DE = {A   (loại),

BC  (loại)} ≡  và do đó Key(c) = ABCH. Theo định lý về dạng biểu diễn thứ

nhất của khóa, vì Uo = DE nên Key(a) = Key(c) = ABCH.

H ệ q ủ a

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Cho LĐQH a = (U,F) và các tập thuộc tính X Uo , Y UI . Nếu thực hiện phép dịch chuyển theo XY để nhận được LĐQH b = a\XY thì Key(a) = Y Key(b).

C h ứ n g m i n h

Do XUo, YUI nên XY = . Đặt c = a\X, ta có, b = a\XY = (a\X)\Y = c\Y. (adsbygoogle = window.adsbygoogle || []).push({});

Áp dụng dạng biểu diễn thứ nhất của khóa ta thu được:

XUo nên Key(a) = Key(c) và do đó giao các khóa của c vẫn là UI. Vì YUI

xét trong c nên Key(c) = YKey(b). Vậy Key(a) = Y Key(b) ■

Một phần của tài liệu ứng dụng phép dịch chuyển lược đồ quan hệ trong cơ sở dữ liệu (Trang 48 - 50)