Biểu diễn khóa qua phép dịch chuyển

Một phần của tài liệu (LUẬN văn THẠC sĩ) phép dịch chuyển lược đồ khối trong mô hình dữ liệu dạng khối (Trang 59 - 63)

Cho lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An) và X, U0, UK, UI, là các tập thuộc tính chỉ số

n (i) i 1

id

 ; đối với lƣợc đồkhối , ta ký hiệu: - U0 là tập hợp các thuộc tính không khóa.

- UK là tập hợp các thuộc tính khóa

- UI là tập hợp các thuộc tính nằm trong mọi khóa.

Cho các lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An), = (S,G), = \X. Khi đó, ta ký hiệu:

x = (Rx, Fhx) là lƣợc đồ lát cắt của = (R, Fh) tại điểm x, x = (Sx, Gx) là lƣợc đồ lát cắt của = (S, G) tại điểm x,

Mệnh đề 2.2[4]

Cho lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An) và X, Y, Q

n (i) i 1

id

 , X = {x(i), x id, i A}, Y = {x(i), x id, i B}, Q = {x(i), x id, i C}; A, B, C {1, 2, .., n}, = (S, G), = \X. Khi đó:

a) Nếu Y là siêu khóa của thì Y\X là siêu khóa của .

b) Nếu Y là siêu khóa của thì Yx\ Xx là siêu khóa của x =(Sx,Gx), x id, ở đây Xx = {x(i), i A}, Yx = {x(i), i B}.

c) Nếu Q là siêu khóa của thì XxQx là siêu khóa của x, x id, ở đây Qx = {x(i), i C}. Trƣờng hợp X chỉ gồm các thuộc tính không khóa của và Q là siêu khóa của thì Qx chính là siêu khóa của x, x id.

Chứng minh

a) Giả sử Y là siêu khóa của , đặt P = Y\X P Q = và Y XP. Theo giả thiết Y là siêu khóa của , do đó:

X( n (i) i 1 id  \X)= n (i) i 1 id  =Y+Fh (XP)+Fh = X(P)+Fh\X. Mà: X ( n (i) i 1 id  \X) = , X P+Fh\X = P+Fh\X = n (i) i 1 id  \X(1) Từ (1), ta thấy P = Y\X chính là siêu khóa của = \X.

b) Giả sử Y là siêu khóa của , theo kết quả của a) ta có Y\X là siêu khóa của = \X. Từ đó, ta có: Yx\Xx là siêu khóa của x = (Sx, Gx), x id.

c) Giả sử Q là siêu khóa của thì: Q X= , Q+Fh\X=

n (i) i 1 id  \X Suy ra: (XQ)+Fh = X(Q)+Fh\X =X( n (i) i 1 id  \X) = n (i) i 1 id  Vậy, XQ là siêu khóa của .

Nếu X chỉ gồm các thuộc tính không khóa của thì việc loại bỏ từ siêu khóa XQ các thuộc tính không khóa X vẫn cho ta siêu khóa Q của .

d) Giả sử Q là siêu khóa của , thì theo c) ta có XQ là siêu khóa của . Từ đó, ta có XxQx là siêu khóa của x, x id.

Trƣờng hợp X chỉ gồm các thuộc tính không khóa của , thì suy ra Xx là tập các thuộc tính không khóa của x, do đó Qx = XxQx\Xx chính là siêu khóa của x, x id.

Mệnh đề 2.3[4]

Cho lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An) và X, Q

n (i) i 1

id

 ,

X = {x(i), x id, i A}, Q = {x(i), x id, i C}; A, C {1, 2, .., n}, = (S, G), = \X+. Khi đó, nếu Q là siêu khóa của thì:

a) XQ là siêu khóa của .

b) XxQx là siêu khóa của x, x id.

Chứng minh

a) Giả sử Q là siêu khóa của , theo mệnh đề 2.2, ta có X+Q là siêu

khóa của , khi đó (X+Q)+ =

n (i) i 1 id  . Mà ta có: (XQ)+ = (X+Q)+ = n (i) i 1 id  XQ là siêu khá của .

b) Giả sử Q là siêu khóa của thì theo a) ta có XQ là siêu khóa của . Từ đó, ta có: XxQx là siêu khóa của x, x id.

Mệnh đề 2.4[4]

Cho lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An) và X, K

n (i) i 1

id

 ,

X = {x(i), x id, i A}, K={x(i), x id, i B}; A, B {1, 2, .., n}, = (S, G), = \X.

Khi đó,

b) Nếu K là khóa của thì Kx\Xx là khóa của x = (Sx, Gx), x id. Ở đây, Kx = {x(i), i B}, Xx = {x(i), i A}.

Chứng minh

a) Giả sử, K là khóa của K là siêu khóa của , theo mệnh đề 2.2, ta có K\X là siêu khóa của . Nếu K\X không phải là khóa của thì M K\X là siêu khóa của , theo mệnh đề 5.2 ta lại có XM là siêu khóa của .

Mà XM X(K\X)=K, điều này mâu thuẫn với giả thiết K là khóa của . Do đó, K\X là khóa của .

b) Giả sử K là khóa của , khi đó, theo a) ta có K\X là khóa của . Vậy ta có Kx\Xx là khóa của x, x id.

Mệnh đề 2.5[4]

Cho lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An) và X, K

n (i) i 1

id

 ,

X = {x(i), x id, i A}, K = {x(i), x id, i B}; A, B {1, 2, .., n}, X U0, = (S, G), = \X. Khi đó,

a) Nếu K là khóa của thì K là khóa của

b) Nếu Kx là khóa của x = (Sx, Gx), Kx = {x(i), i B}, x id thì K là khóa của .

Chứng minh

a) Giả sử K là khóa của K là siêu khóa của theo mệnh đề 2.2, ta có K là siêu khóa của (vì giả thiết X U0). Ta chứng minh K là khóa của

.

Giả sử K không là khóa của , khi đó K’ K mà K’ là siêu khóa của . Theo mệnh đề 2.2, ta có K’ =K’\X (vì giả thiết X U0) là siêu khóa của , điều này mâu thuẫn với giả thiết K là siêu khóa của . Vậy K là khóa của .

b) Giả sử Kx là khóa của x= (Sx, Gx), Kx = {x(i), i B}, x id, khi đó, ta có K là khóa của , từ đó, dựa vào kết quả của a) ta có K là khóa của .

Mệnh đề 2.6 (điều kiện cần và đủ)[4]

Cho lƣợc đồ khối = (R, Fh), R = (id; A1, A2,…, An) và X, K

n (i) i 1

id

 ,

X = {x(i), x id, i A}, K = {x(i), x id, i B}; A, B {1, 2, .., n}, X U0, = (S, G), = \X. Khi đó,

a) K là khóa của khi và chỉ khi thì K là khóa của

b) K là khóa của khi và chỉ khi Kx là khóa của x = (Sx, Gx), Kx = {x(i), i B}, x id.

Chứng minh

a) K là khóa của K là khóa của

Thật vậy, từ giả thiết K là khóa của , X U0 và mệnh đề 2.4 ta suy ra K =K\X là khóa của

K là khóa của K là khóa của

Giả sử K là khóa của , vì X U0 theo mệnh đề 2.5 ta suy ra K là khóa của

b) Giả sử K là khóa của theo kết quả của câu a) ta suy ra K là khóa của ta có Kx là khóa của x = (Sx, Gx), Kx = {x(i), i B}, x id.

Ngƣợc lại, nếu Kx là khóa của x = (Sx, Gx), Kx = {x(i), i B}, x id. ta có K là khóa của

Từ đó, áp dụng kết quả của câu a) K là khóa của .

Một phần của tài liệu (LUẬN văn THẠC sĩ) phép dịch chuyển lược đồ khối trong mô hình dữ liệu dạng khối (Trang 59 - 63)

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

(77 trang)