Khúa của khối

Một phần của tài liệu Ứng dụng phép vị tự trong việc giải một số lớp bài toán của hình học phẳng (LV01721) (Trang 36)

Cho R = ( id ; A1, A2, ... , An ), r là một khối trờn R. Với mỗi x  id, t  r(R), t = (t1, t2, ..., tn), ta kớ hiệu t(x;Ai), (i =1..n), là giỏ trị của phần tử ở thuộc tớnh Ai tại chỉ số x.

34

t(x(i) ) = t( x; Ai ) = ti (x), ( i = 1..n ). Từ đú, ta kớ hiệu : id(i) = { x(i)│x  id }, như vậy id(i) = {(x; Ai )│x  id}. Với X(i) id(i) thỡ ta kớ hiệu: t(X(i)) = {t(yi)| y(i) X(i) }. Giả sử t1, t2 r(R) với t1 = { ti1 : id  dom(Ai) } i =1.. n, t2 = { ti2 : id  dom(Ai) } i =1.. n,

Khi đú ta định nghĩa khúa của khối r(R) như sau: Định nghĩa 2.2 [6]

Khúa của khối r trờn lược đồ khối R = ( id; A1, A2, ... , An ) là một tập K = { X(i1), X(i2), ..., X(ih) }, trong đú X(ik)  , X(ik)  id(ik), (k = 1.. h), thỏa món hai tớnh chất:

a-Với bất kỡ 2 phần tử t1, t2  r đều tồn tại một X(ik)  K sao cho: - t1 ik (X(ik) )  t2 ik (X(ik)) Núi một cỏch khỏc, khụng tồn tại 2 phần tử mà: - t1ik (X(ik)) = t2ik(X(ik)) ,  k = 1..h.

b-Với bất kỡ tập K’ nào, K’ = { X(i1’), X(i2’), ..., X(ih’)}, với X(ik’) X(ik), (k =1..h) và tồn tại X(im’) X(im), với m  {1,2, ..., h} đều khụng cú tớnh chất a núi trờn.

Nếu tập K là khúa của khối r(R) thỡ mọi tập K” = { X(i1’’), X(i2’’), ..., X(ih’’)}, trong đú X(ik)  X(ik’’), ( k = 1..h), được gọi là một siờu khúa của khối r.

Mệnh đề 2.2 [8]

Cho lược đồ khối R = (id; A1, A2, ... ,An), r(R) là một khối trờn R. Khi đú với x  id mà ta cú { x(i1), x(i2), ... ,x(ik) } là khúa của lỏt cắt r(Rx) thỡ ta cũng cú với mọi y  id, { y(i1), y(i2), ... ,y(ik) } là khúa của lỏt cắt r(Ry) hay núi một cỏch khỏc { Ai1, Ai2, ... ,Aik } là khúa của quan hệ r(A1, A2, ... , An).

35 Mệnh đề 2.3

Cho lược đồ khối R = (id; A1, A2, ...,An), r(R) là một khối trờn R, id = {x}. Khi đú r(R) trở thành quan hệ r(A1, A2, ... , An) và mỗi khúa K = { X(i1),X(i2), ..., X(ih)}, trong đú X(ik)  id(ik), (k = 1, 2, ..., h ) của khối r(R) lại trở thành khúa của quan hệ r(A1, A2, ... , An ).

Mệnh đề 2.4 [6]

Cho lược đồ khối R = (id; A1, A2, ... ,An), r(R) là một khối trờn R. Khi đú với x  id mà ta cú {x(i1), x(i2), ... ,x(ik)} là khúa của khối r(R) thỡ ta cũng cú với mọi y  id , {y(i1), y(i2), ... ,y(ik)} là khúa của lỏt cắt r(Ry) hay núi một cỏch khỏc

{ Ai1, Ai2, ... ,Aik } là khúa của quan hệ r(A1, A2, ...,An). Mệnh đề 2.5 [3], [6]

Cho lược đồ khối R = (id; A1, A2, ...,An), r(R) là một khối trờn R. Khi đú nếu với x  id nào đú mà ta cú {x(i1), x(i2), ... ,x(ik)} là khúa của lỏt cắt r(Rx ) thỡ

{id(i1), id(i2), ... , id(ik)} là khúa của khối r(R). 2.4. Đại số quan hệ trờn khối

Cho r là một khối trờn lược đồ khối R = (id; A1, A2, ..., An), ở đõy ta giả thiết rằng r là một khối gồm một tập hữu hạn cỏc phần tử. Cũng tương tự như đại số quan hệ trong mụ hỡnh cơ sở dữ liệu quan hệ, ở đõy cỏc phộp toỏn của đại số quan hệ lại được ỏp dụng cho cỏc khối, bờn cạnh đú cũn cú thờm phộp toỏn mới được xõy dựng đú là: tớch Đề- cỏc theo tập chỉ số.

Đối với cỏc phộp hợp, giao và trừ thỡ hai khối tham gia phải là khả hợp (nghĩa là chỳng cú cựng một lược đồ khối).

36 2.4.1. Phộp hợp

Cho hai khối r và s khả hợp, khi đú hợp của r và s, kớ hiệu r  s là một khối gồm cỏc phần tử thuộc một trong hai khối r và s đó cho. Ta cú:

r  s = { t | t  r hoặc t  s }. 2.4.2. Phộp giao

Cho hai khối r và s khả hợp, khi đú giao của r và s là một khối, kớ hiệu r  s, là một khối mà cỏc phần tử của nú thuộc đồng thời cả hai khối r và s đó cho. Ta cú: r  s = { t | t  r và t  s }.

2.4.3. Phộp trừ

Cho hai khối r và s khả hợp, khi đú hiệu của r và s là một khối, kớ hiệu là r - s, là một khối mà cỏc phần tử của nú thuộc r nhưng khụng thuộc s. Ta cú:

r - s = { t | t  r và t  s }.

Ta cú mối quan hệ giữa phộp giao và phộp trừ: r  s = r - ( r - s ).r v 2.4.4. Tớch Đề cỏc

Cho lược đồ khối R = (id; A1, A2, ..., An), S = (id; B1, B2, ... , Bm),ở đõy {A1, A2, ..., An}  {B1, B2, ... , Bm} = .

Khi đú tớch Đề-cỏc của hai khối r(R) và s(S) là một khối, kớ hiệu r ì s, khối này cú khung R ì S = (id; A1, A2, ..., An, B1, B2, ... , Bm), mỗi phần tử thuộc khối này là một bộ gồm n + m ỏnh xạ, trong đú n ỏnh xạ đầu cú dạng một phần tử thuộc r, cũn m ỏnh xạ sau cú dạng một phần tử thuộc s

Biểu diễn hỡnh thức của tớch Đề - cỏc cú dạng: r x s = {t | t(R)  r và t(S)  s},

trong đú t = (t1, t2, ..., tn, tn+1, ..., tn+m), t(R) = (t1, t2, ..., tn), và t(S) = (tn+1, ..., tn+m ). (adsbygoogle = window.adsbygoogle || []).push({});

37 2.4.5. Tớch Đề- cỏc theo tập chỉ số

Cho R = (id; A1, A2, ..., An), S = (id’; A1, A2, ..., An). Khi đú tớch Đề- cỏc của hai khối r(R) và s(S) theo tập chỉ số là một khối, kớ hiệu r ìid s, khối này cú khung R ìid S = {id id’; A1, A2, ..., An}, với id  id’ là kớ hiệu tớch rời rạc của hai tập chỉ số id và id’. Mỗi phần tử thuộc khối này là một bộ gồm n ỏnh xạ

(t1, t2, ..., tn) với ti: idid’  Ai , i = 1..n, mỗi ỏnh xạ này được cảm sinh từ 2 ỏnh xạ thứ i tương ứng của r và s.

Cụ thể hơn, giả sử cú 2 phần tử là tr  r và ts s: tr = ( t1r , t2r , ...., tnr ), ts = (t1s , t2s , ...., tns),

khi đú ta cú ỏnh xạ cảm sinh của tr và ts, phần tử cảm sinh của tr và ts, kớ hiệu là trs.

Gọi j1: id  id id’, j2: id’  idid’ là cỏc phộp nhỳng thỡ ta được: trsj1 r và trsj2 s, và r xid s = { t | tj1 r và tj2  s}.

2.4.6. Phộp chiếu

Cho lược đồ khối R = ( id; A1, A2, ...., An ), r là một khối trờn R. Khi đú ta gọi P = (id’; Ai1, Ai2, ...., Aih ) là lược đồ con của lược đồ R nếu id’ id,

Aij{ A1, A2, ...., An }, j = 1..h.

Một phộp chiếu của khối r trờn lược đồ con P, kớ hiệu P(r), là một khối cú lược đồ P và mỗi phần tử thuộc khối này cú dạng:

(ti1, ti2, ..., tih), trong đú: tij { t1, t2, ..., tn }, j = 1..h, id’ và ( t1, t2, ..., tn )  r.

38

P(r) = {( ti1, ti2, ..., tih) | tij {t1,t2,...,tn }, j = 1..h, (t1,t2, ..., tn )r} id’

2.4.7. Phộp chọn

Cho lược đồ khối R = ( id; A1, A2, ..., An ) và khối r(R).

Cho một phộp chọn nghĩa là ta xõy dựng một tập con cỏc phần tử của khối đó cho thỏa món biểu thức F cho trước. Biểu thức F được diễn tả bằng một tổ hợp Boole của cỏc toỏn hạng, mỗi toỏn hạng là một phộp so sỏnh đơn giản giữa hai biến là hai giỏ trị điểm của hai ỏnh xạ thành phần nào đú, hoặc giữa một biến là giỏ trị điểm của một ỏnh xạ thành phần và một hằng. Cỏc phộp so sỏnh trong F là <, =, >, , , , cũn cỏc phộp toỏn lụgic trong F là: , , .

Biểu diễn hỡnh thức của phộp chọn cú dạng: F(r) = { t  r | F(t)} trong đú F(t) là giỏ trị của biểu thức Boole F tại phần tử t  r. 2.4.8. Phộp kết nối

Cho R = (id; A1, A2, ... , An) và s = (id; B1,B2, .... , Bm), cựng với hai khối r(R) và s(S) tương ứng.

Gọi T = ( id ; C1,C2, ... , Cp), trong đú:

{ C1,C2, ... , Cp} = {A1, A2, ... , An}  {B1,B2, .... ,Bm}.

Phộp kết nối của 2 khối r và s, kớ hiệu r  s là khối t(T) định nghĩa như sau: t(T) = { t |  tr  r và ts s sao cho t(R) = tr , t(S) = ts}.

Phộp kết nối này cũng gọi là phộp kết nối tự nhiờn của hai khối r(R) và s(S), đụi khi sử dụng kớ hiệu r * s.

Đặc biệt, khi cỏc khối r(R) và s(S) cú tập chỉ số id trong lược đồ khối của chỳng chỉ gồm một phần tử thỡ cỏc khối này trở thành cỏc quan hệ và phộp kết

39

nối tự nhiờn của hai khối lại trở thành phộp kết nối tự nhiờn của hai quan hệ trong mụ hỡnh cơ sở dữ liệu quan hệ [6].

Nếu hai tập {A1, A2, ... , An } và { B1,B2, .... , Bm} khụng giao nhau thỡ r * s trở thành tớch Đề-cỏc của hai khối đó cho.

Ta cú thể mở rộng khỏi niệm kết nối như sau:

Giả sử Aik {A1, A2, ... , An }, Bik { B1,B2, .... , Bm},

và dom (Aik) = dom (Bik), 1  k  h, (ở đõy Aik và Bik khụng nhất thiết phõn biệt).

Khi đú kết nối của r và s theo Ai1, Ai2, ..., Aih và Bi1, Bi2, ..., Bih là khối t(T), khối này được định nghĩa là: (adsbygoogle = window.adsbygoogle || []).push({});

t(T) = {t |  tr  r và ts  s sao cho t(R) = tr, t(S) = ts, trik = tsik, 1  k  h}, trong đú tr = ( tr 1 , tr 2 , ... , tr n ), ts = ( ts 1 , ts 2 , ... , ts m ).

Thay cho kớ hiệu r  s ở đõy ta kớ hiệu rừ hơn: t(T) = r [trik = tsik ,1  k  h]s

2.4.9. Phộp chia

Cho hai khối r( id; A1, A2, ..., An) và s( id; Ai1, Ai2, ..., Aih), trong đú Aik  { A1, A2, ..., An },  k = 1..h. Khi đú phộp chia của khối r cho khối s, kớ hiệu r  s, là một khối gồm cỏc phần tử t = ( t1, t2, ..., tn-h ) sao cho

u = ( u1, u2, ..., uh ), u  s thỡ phần tử tu  r, ở đõy phần tử tu cú dạng: tu = ( t1, t2, ..., tn-h , u1, u2, ..., uh ).

Biểu diễn hỡnh thức của phộp chia cú dạng: r  s = { t |  u  s, tu  r}. 2.5. Phụ thuộc hàm

Sau đõy, để cho đơn giản ta sử dụng cỏc kớ hiệu: x(i) = (x; Ai ); id(i) = {x(i) | x  id}.

40

Ta gọi x(i) (x  id, i = 1..n) là cỏc thuộc tớnh chỉ số của lược đồ khối R = (id; A1,A2,...,An ).

Định nghĩa 2.3 [6]

Cho lược đồ khối R = (id; A1,A2,...,An ), r(R) là một khối trờn R,

n i i 1 ) ( id Y X, 

 , X  Y là kớ hiệu một phụ thuộc hàm. Một khối r thoả X  Y nếu với mọi t1, t2  R sao cho t1(X) = t2(X) thỡ t1(Y) = t2(Y).

Phụ thuộc hàm được suy diễn từ tập phụ thuộc hàm F

Cho lược đồ khối R = (id; A1,A2,...,An ), F là tập cỏc phụ thuộc hàm trờn R và X  Y là một phụ thuộc hàm với n i i 1 ) ( id Y X, 

 . Núi rằng X  Y được suy diễn logic từ F nếu với mỗi khối r xỏc định trờn R thỏa cỏc phụ thuộc hàm trong F thỡ cũng thỏa X  Y. Kớ hiệu là:

F│= X  Y

Định nghĩa 2.4 (Bao đúng của tập phụ thuộc hàm)

Cho lược đồ khối R = (id; A1, A2,..., An ), F là tập cỏc phụ thuộc hàm trờn R. Khi đú bao đúng của F kớ hiệu F+ được xỏc định như sau:

F+ = { X  Y | F  X  Y }.

Nếu X = {x(m)}  id(m), Y = {y(k)}  id(k) thỡ ta kớ hiệu phụ thuộc hàm X 

Y đơn giản là x(m)  y(k). Khối r thoả x(m)  y(k) nếu với mọi t1, t2  r sao cho t1(x(m)) = t2(x(m)) thỡ t1(y(k)) = t2(y(k)). Trong đú:

t1(x(m)) = t1(x; Am), t2(x(m)) = t2(x; Am), t1(y(k)) = t1(y; Ak ), t2(y(k)) = t2(y; Ak ). Nhận xột 2.2

Cho R = (id; A1, A2,..., An ), r(R) là một khối trờn R, n

i i 1 ) ( id Y X,   ,

41

X  Y là kớ hiệu một phụ thuộc hàm. Giả sử r(R) thoả phụ thuộc hàm XY. Khi đú nếu id = {x} thỡ: - r(R) trở thành quan hệ r(A1, A2,..., An ) và - Phụ thuộc hàm X  Y, ( n i 1 i A Y X,   ) trở thành phụ thuộc hàm trong mụ hỡnh dữ liệu quan hệ.

2.6. Bao đúng của tập thuộc tớnh chỉ số Định nghĩa 2.5: Định nghĩa 2.5:

Cho lược đồ khối R = (id; A1, A2,..., An ), F là tập cỏc phụ thuộc hàm trờn R. Với mỗi n i i 1 ) ( id X 

 , ta định nghĩa bao đúng của X đối với F kớ hiệu X+ như sau: X+ = {x(i), | X  x(i) F+ } với x  id, i = 1..n. (adsbygoogle = window.adsbygoogle || []).push({});

Cho lược đồ khối R = (id; A1, A2,..., An ), ta xỏc định tập cỏc phụ thuộc hàm Fh  Fhx trờn R như sau: Fh = { X  Y |  A i i x X   () ,  B j j x Y   ( ) , A,B {1,2,...,n} và x  id }, Fhx = { X  Y  Fh | X, Y  n i i x 1 ) (  }, với x ∈ id và kớ hiệu Fhx= Fh n i i x 1 ) ( 

Thuật toỏn 2.1 (bao đúng) [8]

Input: Tập thuộc tớnh X, tập phụ thuộc hàm F và lược đồ khối R. Output: X+, bao đúng của X đối với F trờn R.

BAODONG(X,F,R) Begin

tepcu:= ∅;tepmoi: = X; while tepmoi ≠ tepcu do

42 tepcu := tepmoi;

for each W → Z in F do

if tepmoi ⊇ W then tepmoi := tepmoi ∪ Z; end;

return(tepmoi); End.

Cho lược đồ khối R = (id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, M n (i) i 1 id   , M = x x A M   , Mx n (i) i 1 x , M     với x ∈ A id.

Khi đú dựa vào thuật toỏn tớnh bao đúng ở trờn, ta cú thể tớnh bao đúng M+ của M đối với Fh. Từ quỏ trỡnh tớnh bao đúng của M đối với Fh ta thấy đú chớnh là cỏc quỏ trỡnh tớnh bao đúng của cỏc tập thuộc tớnh chỉ số Mx (x∈ A) đối với cỏc tập phụ thuộc hàm tương ứng Fhx (x∈ A).

Mệnh đề 2.6

Cho lược đồ khối R = (id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, M n (i) i 1 id   , M = x x A M   , Mx n (i) i 1 x , M    

với x ∈ A id. Khi đú nếu M+ là bao đúng của M đối với Fh thỡ x ∈ A,

n (i) i 1 x M    là bao đúng của Mx= n (i) i 1 x M    đối vớiFhx. Mệnh đề 2.7

43 trờn R, Rx tương ứng, M n (i) i 1 id   , M = x x A M   , Mx n (i) i 1 x , M    với

x ∈ A id. Khi đú nếu Mx+ là bao đúng của Mx đối với Fhx thỡ x x A M    là bao đúng của M = x x A M   đối vớiFh. Định lớ 2.1

Cho lược đồ khối R = (id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, M n (i) i 1 id   , M = x x A M   , Mx n (i) i 1 x 

 với x ∈ A id. Khi đú M+ là bao đúng của M đối với Fh khi và chỉ khi:

Mx + = n (i) i 1 x M  

 là bao đúng của Mx đối vớiFhx.

2.7. Khoỏ của lược đồ khối R đối với tập phụ thuộc hàm F trờn R Định nghĩa 2.6 [6] Định nghĩa 2.6 [6]

Cho lược đồ khối R = (id; A1, A2, ..., An), F là tập cỏc phụ thuộc hàm trờn R, K n (i) i 1 id 

 K được gọi là khúa của lược đồ R đối với F nếu thỏa 2 điều kiện: a) K → x(i) ∈ F+ , ∀x ∈ id, i = 1.. n.

b) ∀K’ ⊂ K thỡ K’ khụng cú tớnh chất a).

Nếu K là khoỏ và K ⊆ K’’ thỡ K’’ gọi là siờu khoỏ của lược đồ khối R đối với F.

44

Input: Lược đồ R = (id; A1, A2, ..., An), tập cỏc phụ thuộc hàm F trờn R. Output: K là khoỏ của R đối với F.

KHOA(R, F) Begin

K:= {x(i)⎜x ∈ id, i ∈{1,2, ..., n}}; for each x in id do (adsbygoogle = window.adsbygoogle || []).push({});

for each i in {1,2, ..., n} do

if K − {x(i)} → K then K := K − {x(i)}; return(K);

End.

Mệnh đề 2.8

Cho lược đồ khối R = (id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, K n (i) i 1 id 

 , x ∈ id. Khi đú nếu K là khúa của R đối với Fh

thỡ  x ∈ id, Kx = n (i) i 1 x 

 ∩ K là khúa của Rx đối với Fhx. Chứng minh:

Giả sử K là khúa của R đối với Fh, Khi đú theo định nghĩa khúa thỡ bao đúng K+ của K thỏa món: K+ = n i id 1  (i) và mọi K’ K khụng cú tớnh chất này. Khi đú K’ n (i) i 1 x   = n (i) i 1 x 

 , theo kết quả của mệnh đề ta cú K+ 

n (i) i 1 x  

45 là bao đúng của Kx = n (i) i 1 x 

  K đối với Fhx. Như vậy: Kx+ =

n (i) i 1 x   . Mệnh đề 2.9

Cho lược đồ khối R = (id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, Kx n (i) i 1 x 

 , x ∈ id. Khi đú nếu Kx là khúa của Rx đối với

Fhx thỡ K = x x id

K

 là khúa của R đối với Fh. Định lớ 2.2

Cho lược đồ khối R=(id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, K n (i) i 1 id 

 , x ∈ id. Khi đú nếu K là khúa của R đối với Fh khi và chỉ khi Kx = K ∩ n (i) i 1 x 

 là khúa của Rx đối với Fhx. Hệ quả:

Cho lược đồ khối R=(id; A1, A2, ..., An), Fh, Fhx là tập cỏc phụ thuộc hàm trờn R, Rx tương ứng, x ∈ id. Khi đú nếu (i)

i A

x

 với A  {1, 2, ..., n}là khúa của

Rx đối với Fhx thỡ (i)

i A (adsbygoogle = window.adsbygoogle || []).push({});

x

 là khúa của lược đồ R đối với Fh. 2. 8. Dạng chuẩn của khối

Định nghĩa 2.7 [6]

Cho lược đồ khối R = (id; A1, A2, …, An), F là tập cỏc phụ thuộc hàm trờn R. Ta gọi lược đồ khối R thuộc dạng chuẩn 1 nếu và chỉ nếu toàn bộ cỏc miền trị của cỏc thuộc tớnh x(i), x∈ id, i ∈ {1,2,...,n} đều chỉ chứa cỏc giỏ trị nguyờn tố.

46 Định nghĩa 2.8 [6]

- Phụ thuộc hàm đầy đủ

Cho lược đồ khối R = (id; A1, A2, ..., An), F là tập cỏc phụ thuộc hàm trờn R, cho X,Y n (i) i 1 id 

 . Ta núi Y là phụ thuộc hàm đầy đủ vào X nếu Y là

Một phần của tài liệu Ứng dụng phép vị tự trong việc giải một số lớp bài toán của hình học phẳng (LV01721) (Trang 36)