1. Trang chủ
  2. » Luận Văn - Báo Cáo

Các hệ tiên đề trong mô hình dữ liệu dạng khối

56 293 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 56
Dung lượng 6,29 MB

Nội dung

Trang 1

BQ GIAO DUC VA ĐÀO TẠO

TRUONG DAI HQC SU PHAM HA NOI 2

NGUYEN THANH TUONG

CAC HE TIEN DE

TRONG MO HINH DU LIEU DANG KHOI

Chuyén nganh: Khoa hoc may tinh Mã số: 60 48 01 01

LUẬN VĂN THẠC SĨ MÁY TÍNH

Người hướng dẫn khoa học: PGS.TS Trịnh Đình Thắng

Trang 2

LOI CAM ON

Để hoàn thành luận văn này tôi đã nhận được sự giúp đỡ tận tình của

thầy hướng dẫn khoa học, của các thầy cô trường Đại học Sư phạm Hà Nội 2

Tôi xin chân thành cảm ơn các thầy cô trường Đại học Sư phạm Hà Nội 2 đã

tạo điều kiện học tập, nghiên cứu và giúp đỡ tôi rất nhiều trong quá trình làm

luận văn Đặc biệt tôi xin cảm ơn thầy PGS.TS Trịnh Đình Thắng đã tận tình

hướng dẫn, chỉ bảo tôi trong suốt quá trình học tập, nghiên cứu đề tài và giúp tơi hồn thành bản luận văn này

Vĩnh Phúc, ngày 10 tháng 12 năm 1013

Học viên

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan đây là kết quả nghiên cứu của tôi dưới sự hướng dẫn

khoa học của PGS TS Trịnh Đình Thắng

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bat ky công trình nào khác

Học viên

Trang 4

MỤC LỤC

MỞ ĐẦU 2-25-2221 271127112711 271 T1 TH ng ng nen ườy 1 CHUONG 1: MO HINH CO SO DU LIEU QUAN HỆ - 5¿ 3

1 1 Các khái niệm cơ bản - - <5 <3 +21 1191 E2 E181 18111111 Eesrre 3

1.1.1 Thuộc tính và miền ñi0190esi:07 3

1.1.2 Quan hệ, lược đồ quan hệ 3

1.1.3 Khoá của quan hệ „4

1.2 Các phép toán đại số quan hệ wd 1.2.1 Phép hop " I7.) on 6 ID ö 2 6 na 6 1.2.5 Phép chiếu 2: 2¿+2+z+EE2EEESEEEEEEEE171171171171E11E 1111 Cxee 7 IAJy 3u na .Ö 8 780.5 0n na 9 I3 ốc 8 3 10 I0) 03.1177 11

1.3.1.Các tính chất của phụ thuộc hầm: .- 5 + £+s++veseses 11 1.3.2 Hệ tién dé Amstrong o eccceeccsessssesssesssesssesssesssessesesecssesssesesessseesneees 12 1.3.3 Cac hé tién đề khác cho phụ thuộc hầm 5 «+ ++s<++ 14 In ch 14

1.4.1 Bao đóng của tập phụ huộc hàm 5 + ++x+x£seeexsessees 14 1.4.2 Bao đóng của tập thuộc tính đối với tập các phụ thuộc hàm 15

1.4.3 Bài toán thành viên và thuật toán tìm bao đóng của tập thuộc tính 17 1.4.4 Sự tương đương giữa hai loại suy dẫn :-ccccccccccccsccces 19

Trang 5

CHƯƠNG 2: MƠ HÌNH CƠ SỞ DỮ LIỆU DẠNG KHÓI 24 2.1 Khối, lược đồ khối . - s- s x+Ex++EkSEESEESEESEEEEEEEEvrEkerkerkerresree 24

? 8n nã ãau 25 2.3 Khóa của khối ¿ ++++x++x+vEEkEEEEEESEEECEEEEEEEEEEEEkrrrrrrrrkrrrrke 26

2.4 Đại số quan hệ trên khối 25-©22+c2+ev2EEEvEEECeEkkrrrkrrrrkrrrrkee 28 2.4.1 Phép HOP cssscssssessssssesssssessssseccsssvesssssesessecsesssesssssesesssesessvesesseceesseeeessess 28 2.4.2 Phép giao 28 2.4.3 Phép trừ 20 2.4.4 Tích Đề các _- 2.4.5 Tích Đề các theo tập chỉ số 2.4.6 Phép chiếu 2.4.7 Phép ChỌn Gv HH HT TT HH nh ngư 30 2.4.8 Phép kết nối ¿-©+¿+2+<c2E+x 2 EEEE1E171127112112 211.121 31 2.4.9 Phép chia -s- c+c 22x22 x221x22112711.27112111211 1112111 32 “gan gi 3i 111 32

2.6 Bao đóng của tập thuộc tính chỉ sỐ ¿-©s¿©+se£cxz+crxevrrsee 33

2.7 Khoá của lược đồ khối R đối với tập phụ thuộc hàm F trên R 35 CHƯƠNG 3: CÁC HỆ TIÊN ĐÈTRONG MƠ HÌNH DỮ LIỆU DẠNG

9:90 8N HA , 38 3.1 Các tính chất của phụ thuộc hàm trên lược đồ khi 38

3.2 Một số tính chất của bao đóng trên lược đồ khối -: 40

3.3 Sự tương đương giữa hai loại suy dẫn -5-©5c©5ccccccxccccrcee 43

3.4 Các hệ tiên đề trong mơ hình khối . -2- 2£ ©+z++xe+cxe+rrxs 45

480099015 — H 51

Trang 6

MỞ ĐẦU 1 Lý do chọn đề tài

Trong những năm gần đây, việc ứng dụng công nghệ thông tin trở nên rộng rãi và vai trò của công nghệ thông tin ngày càng được khẳng định trong nhiều lĩnh vực khác nhau như : học tập, khoa học kỹ thuật, kinh doanh, quản lý, với những quy mô khác nhau Cơ sở dữ liệu là một trong những lĩnh vực nghiên cứu đóng vai trò nền tảng trong sự phát triển của công nghệ thông

tin Từ trước đến nay cũng đã có một 86 loại mô hình được sử dụng trong các

hệ thống cơ sở dữ liệu như: mô hình thực thể - liên kết, mô hình mạng, mô hình phân cấp, mô hình hướng đối tượng, mô hình đữ liệu datalog và mô hình quan hệ Trong số các mô hình này thì mô hình quan hệ là một trong những mô hình được nhiều nhà khoa học quan tâm nghiên cứu, khai thác ứng dụng hơn cả vì nó được xây dựng trên cơ sở toán học chặt chẽ Tuy nhiên, mô hình này cũng có những hạn chế đó là khó khăn trong việc biểu diễn các dữ liệu có tính chất động Ví dụ như tìm kiếm các cán bộ đến kỳ hạn tăng lương trong một cơ quan chăng hạn Để khắc phục khó khăn này thì mô hình dữ liệu dạng khối là mở rộng của mô hình quan hệ ra đời Trong đó, các khối có thể biểu diễn các đữ liệu có tính chất động bằng cách sử dụng trục ¡d làm trục thời gian Tuy nhiên, trong mô hình dữ liệu dạng khối còn nhiều loại phụ thuộc dữ liệu chưa được nghiên cứu Vì vậy, trên cơ sở lý thuyêt của các nhà khoa học

nghiên cứu về mô hình dữ liệu quan hệ và mô hình dữ liệu khối, trong luận

văn này chúng tôi xây dựng “Các hệ tiên đề trong mô hình dữ liệu dạng khối” nhằm góp phần hoàn thiện hơn lý thuyết về mô hình dữ liệu dạng khối 2 Mục đích nghiên cứu

-Phát biểu và chứng minh các tính chất của PTH, các tính chất về bao đóng

của tập thuộc tính trong mô hình khối

- Phát biểu và chứng minh sự tương đương của các hệ tiên đề trong mô hình

Trang 7

3 Nhiệm vụ nghiên cứu

Tìm hiểu về các hệ tiên đề của các phụ thuộc hàm trong mô hình quan hệ Trên cơ sở đó xây dựng các hệ tiên đề; chứng minh tính tương đương của các hệ tiên đề trong mô hình dữ liệu dạng khối

4 Đối tượng và phạm vi nghiên cứu

Đối tượng và phạm vi nghiên cứu là các mô hình dữ liệu, tập trung nghiên cứu về mô hình dữ liệu dạng khối

5 Phương pháp nghiên cứu

Trong luận văn sử dụng phương pháp thu thập, phân tích và tổng hợp

các tài liệu khoa học liên quan đến đề tài 6 Những đóng góp mới của đề tài

- Phát biểu và chứng minh các tính chất của phụ thuộc hàm, các tính chất của

bao đóng trong mô hình dữ liệu dạng khối

- Phát biểu và chứng minh tính đúng tính đủ của hệ tiên đề trong mô hình dữ

liệu dạng khối

-Chứng minh tính tương đương của các hệ tiên đề trong mô hình dữ liệu dạng

khối

7 Cấu trúc của luận văn

Luận văn gồm: Lời mở đầu, ba chương nội dung, phần kết luận và tài liệu

tham khảo

Chương 1 Trình bày các khái niệm cơ bản nhất về mô hình quan hệ Trình bày các phép toán đại số trên mô hình quan hệ, các vẫn đề về phụ thuộc hàm, khóa, bao đóng

Chương 2 Giới thiệu tổng quan về mô hình khối: định nghĩa khối, lược đồ

khối, lát cắt, khóa, đại số quan hệ trên khối, phụ thuộc hàm

Chương 3 Phát biểu và chứng minh các tính chất của phụ thuộc hàm, các tính

Trang 8

CHƯƠNG 1: MƠ HÌNH CƠ SỞ DỮ LIỆU QUAN HỆ

1 1 Các khái niệm cơ bản

1.1.1 Thuộc tính và miền thuộc tính

Định nghĩa 1.1 [4], [6]

- Thuộc tính là đặc trưng của đối tượng

- Tập tat cả các giá trị có thể có của thuộc tính A; gọi là miền giá trị của

thuộc tính đó, ký hiệu: Dom(A;) hay viết tắt là Dại Ví dụ 1.1:

Đối tượng Sinhviên cô các thuộc tính như: MaSV, Hoten, NgSinh, Đchi,

Miền giá trị của các thuộc tính của đối tượng Sinh viên : Dom(MaNV) = {char(4)} ={“SV01°, ‘SV02’, ‘SV03° .}; Dom(Hoten) = {char(30)} ={‘Nguyén Van A’,‘Nguyén Van B’, .} Dom(NgSinh) = {date} ={‘30/03/78’, ‘22/12/96’, .} ; Dom(Đchn) ={char(10)} = {°HN', “HP', “VP`, } 1.1.2 Quan hệ, lược đồ quan hệ Định nghĩa 1.2|4], [6]

Cho U= {A¡, Aa, ., An} là một tập hữu hạn không rỗng các thuộc tính

Mỗi thuộc tính A; (=l,2, , n) có miền giá trị là Dom(A,) Khi đó r là một

tập các bộ {hị, hạ, ., hạ} được gọi là quan hệ trên U với h; (=1, 2, ., m) là một hàm:

hị: U — |J D,, sao cho h/(A,)eDA,=1, 2, n)

A;eU

Trang 9

Ai Ad ses An

hy h(A) hị(A2) sẻ hi(An)

hạ hz(AI) h;(A¿) sẻ hz(An)

bm hm(Ai) hm(A2) nà hm(An)

Bang 1.1: Biéu diễn quan hệ r Ví dụ 1.2: Sinhvién| MaSV | HOTEN NS DC KHOA SV0I A 24/01/92 HN TOAN SV02 B 3/05/92 VP LY SV03 B 3/05/92 VP TOAN

Trong đó các thuộc tính là MaSV: mã sinh viên; HOTEN: họ tên; NS: ngày

sinh; DC: địa chỉ; KHOA: khoa

Bộ giá trị: (SV01, A, 24/01/92, HN, TOAN) là một bộ

Nếu có một bộ t = (dì, dạ, dạ, ., dn) e r, r xác định trên U, X c U thì

t(X) (hoặc t.X) được gọi là giá trị của tập thuộc tính X trên bộ t Định nghĩa 1.3 [4], [6]

Tập tất cả các thuộc tính trong một quan hệ cùng với mối liên hệ giữa chúng được gọi là lược đỗ quan hệ

Lược đồ quan hệ R với tập thuộc tính U={A¿, As, , Aa} được viết là

Trang 10

tập con K c U sao cho bat ky hai b6 khac nhau t), tye r lu6n thoa t,(K) #

to(K) va bat kỳ tập con thực sự Kịc K nào đó đều không có tính chất đó

Tập thuộc tính K" được gọi là siêu khoá nếu K°> K và K là một khoá của quan hệ r Ví dụ 1.3: Sinhviên | MaSV | HOTEN NS DC KHOA SVO1 A 24/01/92 HN TOAN SV02 B 3/05/92 VP LY SV03 B 3/05/92 VP TOAN

Ta có thuộc tính MaSV là khóa của quan hệ

1.2 Các phép toán đại số quan hệ

Định nghĩa 1.5 [3], [6]

Hai quan hệ r và s được gọi là khả hợp nếu như hai quan hệ này xác

định trên cùng tập thuộc tính và các thuộc tính cùng tên có cùng miễn giá trị

1.2.1 Phép hợp

Phép hợp hai quan hệ khả hợp r và s, kí hiệu là r U s, là tập tất cả các

Trang 11

1.2.2 Phép giao

Phép giao của hai quan hệ khả hợp r và s, kí hiệu là r f\ s, là tập tất cả các bộ thuộc cả hai quan hệ r và s Ta có: rfs={t[t€rAt€s} Vi du 1.5: r (A B Cc); § (A B C) XI yi Z1 XI yi Z1 X2 yi Z2 X2 y2 Z2 X2 y2 ZI rs (A BC) XI yi Z1 1.2.3 Phép trừ

Trang 12

xác định trên tập thuộc tính {B¡, Bạ, , Bm} Tích Đề-các của hai quan hệ r và

s kí hiệu là r x s, là tập tất cả các (m+n) - bộ có n thành phần đầu tiên là một

bộ thuộc r và m thành phần sau là một bộ thuộc s Ta có:

rXS= {t=(aj, a, , An, by, bạ, , Dm) | (ay, a2, , An) Er A (bj by, , bm) Es} Vi du 1.7: r A B C S G H F XI yi Z| XI yi Z1 Xa Vị Zo X2 y2 Z2 XQ Y2 Z| XI y2 22 rxs A B Cc G H F XI yi Z| XỊ Mãi ZI XI Mã ZI X2 Y2 Z2 XI Vị ZI XI y2 2) X2 Vị Zo XI yl Z| X2 Mã 22 X2 Y2 Z2 X¿ Vị Z2 XI y2 Z2 X2 Y2 Zi XI yì Z| X2 y2 Z| X2 Y2 Z2 X2 y2 ZI XI Y2 Z2 Bang 1.2: Biểu diễn các quan hệ r, s và quan hệ rx s 1.2.5 Phép chiếu

Cho r là một quan hệ n ngôi xác định trên tập thuộc tính U={A¡, Ao, ,

An}, X là tập con của U Phép chiếu của quan hệ r trên tập thuộc tính X, kí

hiệu là I1, (r), là tập các bộ của r xác định trên tập thuộc tính X Ta có:

II, () = {tX| ter}

Trang 13

của quan hệ và loại bỏ những thuộc tính không cần thiết Vi du 1.8: r (A B C D) XI 1 x 4 yo 5S yo 2 Z2 5 VÀ 5 x, 8 x 5 y toy 4 T(r) (B) 1 5 8 TH; (r) (B.D) 1 4 5 2 5.5 8 5 1.2.6 Phép chon

Phép chọn là phép toán lọc lấy ra một tập con các bộ của quan hệ đã cho thoả mãn một điều kiện xác định Điều kiện đó được gọi là điều kiện

chọn hay biếu thức chọn

Biểu thức chọn F được định nghĩa là một tổ hợp logic của các toán

Trang 14

riêng bộ đó

- Các phép toán so sánh trong biểu thức F: >, <, =, >, #, <

- Các phép toán logic trong biểu thức F: A (và), V (hoặc), ¬ (phủ định) Cho r là một quan hệ và F là một biểu thức logic trên các thuộc tính của r Phép chọn trên quan hệ r với biểu thức chọn F, kí hiệu là õ„(r) là tập tất cả

các bộ của r thoả mãn FE Ta có: ư„(r) = Ít | t€r A F(0)} Ví dụ 1.9: r (A B CD) XI 1 x 4 yo 5 y 2 ZỊ 5 Z 5 XI 8 X 5 yi I y 4 Sun (A BC D) yi 5 y 2 Z1 5 Z 5 XI 8 xX 5 1.2.7 Phép kết nối

Cho hai quan hệ r(U) và s(V) Đặt M=Un\V Phép kết nói (tự nhiên) hai

quan hệ r(U) và s(V), ký hiệu r*s, cho ta quan hệ giữa các bộ được dán từ các

bộ u của quan hệ R với mỗi bộ v của quan hệ § (sao cho các trị trên miền

thuộc tính chung M của hai bộ này giống nhau)

P(UV)=r*s= {u*v |u €r, v €s, u.M=v.M}

Nếu M= UnV=ở, r*s sẽ cho ta tích Dé- các, trong đó mỗi bộ của quan

Trang 15

Ví dụ 1.10: r(A B C) ; s(G H) XI X Xa Xa Xã Y y2 y2 Y2 W3 Z4 xX Z2 r*s (A B C G H) yi x X2 X2 X3 Zi y y2 y2 y3 XI x Z2 y2 ¥3 1.2.8 Phép chia

Cho r là một quan hệ n ngôi xác định trên tập thuộc tính U và s là một

quan hệ m ngôi xác định trên tập thuộc tính V, với V c U,n >m và s # Ø, có nghĩa là lực lượng của s là khác 0 hay s có ít nhất một bộ Phép chia quan hệ r

Trang 16

r+s(C D)

XI 2

1.3 Phụ thuộc hàm

Khi xét đến mối quan hệ giữa dữ liệu trong CSDL quan hệ một trong nhưng yếu tố quan trọng nhất được xét đến là sự phụ thuộc giữa các thuộc tính này với thuộc tính khác Từ đó có thể xây dựng những ràng buộc cũng

như loại bỏ đi những dư thừa dữ liệu trong một CSDL

Phụ thuộc hàm là những mối quan hệ giữa các thuộc tính trong CSDL quan hệ Khái niệm về phụ thuộc hàm có một vai trò rất quan trọng trong việc thiết kế mô hình dữ liệu Một trạng thái phụ thuộc hàm chỉ ra rằng giá trị của một thuộc tính được quyết định một cách duy nhất bởi giá trị của thuộc tính

khác Sử dụng các phụ thuộc hàm để chuẩn hóa lược đồ quan hệ về dạng

chuẩn 3 hoặc chuẩn Boye-Codd Định nghĩa 1.6 [3], [4].[6]

Cho lược đồ quan hệ R xác định trên tập thuộc tính U, và X, Y €U

Nói rằng, X xác định hàm Y hay Y phụ thuộc hàm vào X và kí hiệu X — Y

nếu với mọi quan hệ r xác định trên R và với hai bộ bắt kỳ tị, tạ R mà t¡(X)

= t;(X) thi t(Y) = t(Y)

1.3.1.Các tính chất của phụ thuộc hàm:

Cho lược đồ quan hệ R xác định trên tập thuộc tính U = {A¡, Az,

Trang 17

F6) Nếu X — Y thì XZ—Y F7_ NếuX>Y,X>Zthì X — YZ F8) Nếu X— YZthì X — Y F9) NéuX— YZ,Z— WV thi X > YZW 1.3.2 Hệ tiên đề Amstrong

Gọi R là quan hệ trên tập thuộc tính U Khi đó với các tập thuộc tính X,

Y,Z.C€U ta có hệ tiên đề Amstrong [4] như sau: 1-Phản xạ: Nếu Y 6 X thì X —> Y 2-Tăng trưởng: Nếu X — Y thì XW —› YW 3-Bắc cầu: Nếu X — Y, Y — Z thì X — Z Định lý 1.1 Hệ tiên đề Amstrong là đúng và đầy đủ Ching minh: a) Tính đúng

1) Với mọi tị, tạ£ r(R) và t)(X) = ts(X), can ching minh t,(Y) = t(Y) Thật vay, tir gia thiét t,(X) = t(X) ma Yc X suy rat(Y) =,(Y)

Vay tir t)(X) = b(X) > t(Y) = b(Y)

2) Với mọi tị, t;E r(R) va t|(XW) = (XW), cần chứng minh t¡(YW)= t(YW)

Phản chứng: Giả sử t(YW) # (YW)

Theo giả thiết có tXW) = tạXW) => ti(X)= to(X)

u(W)= 00W)

Nên để có t,(YW) # t;(YW) thì ti(Y) # s(Y)

Nhưng cũng theo giả thiết ta lại có X — Y nên t¡(X) = t.(X) > t,(Y) =

t›(Y) (mâu thuẫn) > t(YW)= ta(YW)

Vay từ t(XW) = t;(XW) > t¡((YW)= t;(YW)

3) Với mọi tị, t;E r(R) và t¡CX) = b(X), cin chứng minh t¡(Z) = t;(Z)

Trang 18

Theo giả thiết X — Y nên t¡(X) = t;(X) > t¡(Y) = t;(Y)

Mặt khác, cũng theo giả thiết có Y — Z nên tị (Y) =t,(Y) 2 tứ) = t›(Z) (mâu thuẫn)

Vậy từ tiŒX) = t2(ŒX) 2 ti2)= 022) b) Tính đầy đủ

Nếu X — Y không suy diễn logic được tử tập phụ thuộc hàm F bằng hệ tiên đề Amstrong thì X — Y không thỏa mãn trên quan hệ r(R)

Giả sử, X —› Y không suy diễn logic được từ F bằng hệ tiên đề, ta sẽ

xây dựng một quan hệ r sao cho các phụ thuộc hàm của F là thỏa mãn trên r,

nhưng X —› Y không thỏa trên r

Xét quan hệ r gồm hai bộ t¡, tạ như sau:

r A B we F G H " M

tị 1 1 " 1 1 1 " 1

t 1 1 " 1 0 0 we 0

Trong đó, các thuộc tính trong t¡ đều có giá trị 1, các thuộc tính trong tạ

chỉ có các thuộc tính thuộc X” là có giá trị 1 còn lại là giá trị 0

Ta chứng tỏ rằng, với mọi phụ thuộc hàm của F đều thỏa mãn trên r

Thật vậy, giả sử W — V € F không thỏa trên r Như vậy, W € XT, vì nếu không sẽ vi phạm tính bằng nhau của W trên hai bộ t¡ và t¿ Hơn nữa, V

không thể là tập con của X”, bởi vì nếu V CX'Ỷ thì W —› V sẽ thỏa mãn trên

r Vậy phải có ít nhất một thuộc tính A C X* Theo tinh chat phản xạ nếu W

c X* thi X W, mà W — V nên X — V (theo tính chất bắc cầu) Do A G

X* nén X > A hay A € X* Diéu đó là vô lý, boi viA ¢ X* Kết luận với mọi phụ thuộc hàm F đều thỏa trên r Tiếp theo ta chứng tỏ rằng X — Y không thỏa mãn trên r

Thật vậy, giả sử X — Y thỏa trên r(R) Như vậy X c X" và Yc XT, vì nếu

không sẽ vi phạm sự bằng nhau trên các bộ t¡, tạ của X và Y Nhưng néu Yc

Trang 19

X' thì X —› Y sẽ suy điễn được từ F (theo tính chất phản xạ) Điều này mâu thuẫn với giả thiết X —› Y không suy diễn được từ F Như vậy X — Y không thể thỏa mãn trên r

Kết luận X — Y không thỏa mãn trên r

1.3.3 Các hệ tiên đề khác cho phụ thuộc hàm

Gọi R là quan hệ trên tập thuộc tính U Khi đó với các tập thuộc tính X,

Y,Z, W CU ta có các hệ tiên đề tương đương với hệ tiên đề Amstrong như Sau : Hệ tiên đề B° Nếu X — YZ thì X + Y Nếu X — YZ và Z > AW thi X > YZW Hệ tiên đề S° Nếu Y €X thiX > Y Nếu X — Y và YZ — V thì XZ —› V Hệ tiên đề D° Nếu X — Y và Y — Z thì X —› Z Nếu X — Y và Z — W thì XZ —› YW Hệ tiên đề M° Nếu X — Y và YZ — V thì XZ —› V Nếu X — Y thì XZ — Y 1.4 Bao đóng 1.4.1 Bao đóng của tập phụ thuộc hàm Định nghĩa 1.7 [I ]

Cho tập phụ thuộc hàm F, bao đóng của tập phụ thuộc hàm F kí hiệu F”

là tập lớn nhất chứa các phụ thuộc hàm được suy diễn từ các phụ thuộc hàm

Trang 20

1.4.2 Bao đóng của tập thuộc tính đối với tập các phụ thuộc hàm Định nghĩa 1.8 [1],

Cho lược đồ quan hệ R xác định trên tập thuộc tính U, cho X € U, tap các phụ thuộc hàm F Bao đóng của tập thuộc tính X đối với F kí hiệu X" là

tập tất cả các thuộc tính A mà X — A được suy diễn từ F Ta có: Xt={A| X>AEF*} Đôi khi ta kí hiệu Xr để chỉ lấy bao đóng của X theo tập phụ thuộc hàm E Tính chất của bao đóng: 1ˆ XeGX: 2) NéuXCYthix+c y+ 3) X— Xx* 4) X**=x* 5) X*Y*c (XY)t+ 6) (X*Y)*= (XY”)= (XY)† 7 X->YeYCXt 8 X >YvàY >XeX=Y" Chứng minh: 1) Lấy bấtkỳ A € X cần chứng minh A € X”

Ta có A €X = {A} © X suy ra X — A (luật phản xạ)> A 6X"

2) _ Lấy A€ X', ta cần chứng minh A € Y”

Ta có A €X 2X — A (I1)

Mà theo luật phản xạ XGY > Y X (2)

Vậy từ (1) và (2) ta suy ra Y—› A > A€ Y,

3) Gia str X* =A, Ap Ax

Do A;¡€ XT ta có X > A,

Tương tự: X> A¿

Trang 21

4)

5)

6)

Theo luật hợp ta có X — A¡Aa A¿= X > X*

Dé ching minh X** =X" ta đi chứng minh X*G€ X”” và ngược lại X**€ X*

Theo tính chất 1 ta có X°€ X”* Ta cần chứng minh X'*E X" Lấy A € X”*, chứng minh A € X” Do A eX*'2X* — A (ID) Mặt khác theo tính chất 3 ta có: X — XỶ (2) Từ (1) và (2) suy raX— A =AeX Ta có X€XY

Theo tính chất 2 ta cd X*E (XY)* (1)

Tương tự ta cũng có : Y”€ (XY)” (2) Từ (1) và (2) suy ra X"Y”€ (XY)}”

Theo những chững minh trên ta có: X'6X'Y() X'€ (XY) (2) Y'€ (XY)' (3) Từ (1), (2) và (3) suy ra X'Y G6 (XY)'2(X' Y)€ (XY)” = (XY)” (theo tính chất 4)

Vay ta co >(X* Y)*S (XY)' (4)

Trang 22

b) — Giả sửcó A C X' ta can ching minh XY

Do Y 6 X'>X" — Y (luật phản xạ)

Mặt khác: X—› X” (theo tính chất 3)

Suy ra: X— Y (luật bắc cầu)

8) _ Chứng minh X— Y va Y> X © X'= Y” ta có:

a) — Giả sử có X> Y va Y— X ta can ching minh X*=Y"* DoX>YŸ >YCX* => YC x™, => Y‘C X* (theo tinh chất 4) (1) DoY>X >XcCyY* =>xX*c Y™, => X'€ Y' (theo tính chất 4) (2) Từ (1), (2) ta có X'= Y” b) Giả sử có X'= Y* ta cần chứng minh X—>Y và Y—› X Do X”= Y nên ta có Y'eX'(I) x*c Y* (2’) Theo tính chat 1 tacé Y © Y* ma Y' © X* SY € X' > X—Y (theo tinh chat 7)

1.4.3 Bài toán thành viên và thuật toán tìm bao đóng của tập thuộc tính ¢ Bai toan thành viên:

Nói rằng X —› Y là thành viên của F nếu X — Y € F'

Một vấn đề quan trọng khi nghiên cứu lý thuyết cơ sở dữ liệu là khi cho

trước tập các phụ thuộc hàm F và một phụ thuộc hàm X —› Y, làm thé nao dé

biết X —› Y € FỶ hay không, bài toán này được gọi là bài toán thành viên Để trả lời câu hỏi này ta có thể tính F” rồi xác định xem X > Y có thuộc F” hay không Việc tính E” là một công việc đòi hỏi thời gian và công

Trang 23

sức Tuy nhiên, thay vì tính F” chúng ta có thể dùng tính chất của bao đóng của tập thuộc tính X để xác định X —› Y có là thành viên của F” hay không

Đó là: X —› Y € F'© Y € X Ta chứng mỉnh điều này

Gia st Y= {Aii, Ai, Ai} C{AI An} với Ai An là các thuộc tính

và Y CX' Từ định nghĩa X” ta có X — A¡, áp dụng hệ tiên đề Amstrong cho

mỗi ¡ suy ra X —> Y nhờ luật hợp

Ngược lại, giả sử ta có X — Y, áp dụng hệ tiên đề Amstrong cho mỗi i

ta có X — A¡, A¡ 6Y nhờ luật tách, suy ra A¡€ X” Từ đó, suy ra Y © X* Vậy X > Y €F., Thuật toán 1.1: Xác định xem một phụ thuộc hàm X — Y có tồn tại không? Vao: U, F, X, YEU Ra: Kiểm tra X > Y € F*? Phuong phap

Bước I: Tìm bao đóng của tập thuộc tính X: Xr”

Bước 2: Kiểm tra Y © X* néu ding thi X > Y € F’, return (Y) nếu sai thì X — Y ¢ F’, return (N)

Bước 3: Kết thúc thuật toán

s Thuật toán tìm bao đóng của tập thuộc tính: Thuật toán 1.2: Tìm bao đóng của tập thuộc tính Dữ liệu đầu vào: F, X CU

Trang 24

X;=( X,U{A} néu ton tai Y — Z € F mà YG X;¡, A€ Z và A£X.¡

{ Xi néu ngược lại

Vì rằng X=XụG CX:G .CU và U là hữu hạn cho nên sẽ tỒn tại một chỉ số ¡ nào đó mà X; = X,¡, khi đó X” = X; Định lý 1.2 Thuật toán tìm bao đóng X” là đúng Vi du 1.12: Cho tập thuộc tính U = {A, B, C, D, E, G, H} và tập phụ thuộc hàm E= {A —D, AB — DE, CE — G, E — H} Tinh (AB)* 2 Bước 0: Xo = AB

Bước l: XỊ = X0 U {D) vì 3 A — D thoả mãn điều kiện

Bước 2: X2 = XI U {E} vì ä AB — DE thoả mãn điều kiện

Bước 3: X3 = X2 U {H} vì 3 E — H thoả mãn điều kiện

Bước 4: X4 = X3

Vay AB*: = {ABDEH}

1.4.4 Sự tương đương giữa hai loại suy dẫn Định nghĩa 1.9 [1]

Cho tập phụ thuộc hàm F xác định trên tập thuộc tính U và f là một phụ

thuộc hàm trên U Ta nói phụ thuộc hàm f được suy dẫn theo quan hệ từ tập phụ thuộc hàm E kí hiệu F — f nếu mọi quan hệ r thỏa F thì cũng thỏa f

Dinh nghia 1.10 [1]

Cho tập phụ thuộc hàm F xác định trên tập thuộc tính U và f là một phụ

thuộc hàm trên U Ta nói phụ thuộc hàm f được suy dẫn theo tiên đề (hoặc

suy dẫn logic) từ tập phụ thuộc hàm F kí hiệu F FE f nếu f e F† Nói cách

khác f được suy dẫn theo các tiên đề từ tập phụ thuộc hàm F nếu như áp dụng

Trang 25

hệ tiên đề Amstrong đối với các phụ thuộc hàm trong F thì sau hữu hạn lần ta sẽ thu được f Định lý 1.3 (Định lý tương đương) Với mọi tập phụ thuộc hàm F và phụ thuộc hàm f trên tập thuộc tinh U ta có F Ff khi và chỉ khi F EE f Nói cách khác, suy dẫn theo tiên để và Suy dẫn theo quan hệ là một FEf cEEFf Chứng minh:

a- Gia str ta cé F Ff can chứng minh F E f

Giả sử sau k bước ứng dụng các luật của hệ tiên đề ta nhận được các phụ thuộc hàm:

f, F, = F U {fi}

f, Fy = FU {fo}

fi, Fi = Fret {fi

Vậy ta có R(F)=> R(Fi) > R(F2) > > R(Fi) > R(p hay FE f

b- Giả sử ta có F E f cần chứng minh F E f

Đề chứng minh F E f — F E- fta sẽ chứng minh F # f thì F # f

That vay, dat f= X— Y Khi đó có F, X ta sẽ tính được X”

Ta xây dựng quan hệ R như sau:

R Ai A> we Ax Axe " An

U ay ao wee ax Akal wee ân

V ay 4a wee ak Deut wee b,

Giả sử x* = Án, Ad, see Ax

Trang 26

Như vậy, quan hệ R chỉ gồm 2 bộ u và v Hai bộ này giống nhau trên tập X” và với mọi thuộc tính B # X” thì u.B # v.B tức là aj # b; J= k+1, .n)

Ta sẽ chứng minh f vừa dẫn xuất được theo quan hệ R và f vừa không dẫn xuất được theo quan hệ R

Hay là ta chứng minh R(f) va 1 R(f)

1- Ta chứng minh R thỏa mãn mọi phụ thuộc hàm trong F* hay R(f)

Giả sử phụ thuộc hàm Z —> W € F và u.Z = v.Z Ta cần chứng minh u.W= v.W Ta c6u.Z=v.Z > Z& X*=> X*~ Z (theo tinh phan xa) Mà ta lại có X — X” (theo tính chất 3) Áp dụng tính chất bắc cầu cho các phụ thuộc hàm Xx X'¬Z Zz¬W Suy ra: X> W => W € X'Ỷ (theo tính chất 7) Vay u.W= v.W

2- Ta chứng minh R không thỏa mãn phụ thuộc hàm X — Y hay ta cần chứng

minh u.X = v.X nhưng u.Y # v.Y

Từ X > Y # F©Y g X' (theo tính chất 7)

Suy ra: u.Y # v.Y (1)

Mặt khác theo tính chất I ta có XE X'>u.X = v.X (2)

Từ (1) và (2) suy ra R không thỏa mãn phụ thuộc hàm X > Y hay 17 R(f) 1.5 Khoá của lược đồ quan hệ

Dinh nghia 1.11 [1], [6]

Cho lược dé quan hệ R xác định trên tập thuộc tinh U = {A¡, A¿, ,

An}, F 1a một tập phụ thuộc hàm xác định trên U, K € U, K được gọi là siêu khoá của lược đồ quan hệ R nếu phụ thuộc hàm K —U € FE', nghĩa là tập

Trang 27

thuộc tính K là siêu khoá nếu K* = U

Định nghĩa 1.12

Cho lược đồ quan hệ R xác định trên tập thuộc tính U = {A¡, Ad, wes An) E là một tập phụ thuộc hàm xac dinh trén U, K & U, K được gọi là khoá của R nếu K thoả hai điều kiện:

» K là siêu khoá

° VA €Kta có (K -A)#U

Thuộc tính A được gọi là thuộc tính khóa (hoặc thuộc tính sơ cấp) nếu

A €K với K là một khóa của R, ngược lại thì A được gọi là thuộc tính không

khóa (hoặc thuộc tính thứ cấp) và kí hiệu là En

Một lược đồ quan hệ có thể có nhiều khóa và tập thuộc tính không khóa

cũng có thể bằng rỗng

* Khoá là một khải niệm rất quan trọng trong việc thiết kế một cơ sở đữ

liệu quan hệ Khoá thường được áp dụng trong việc tìm kiếm hay cập nhật dữ

liệu trong các cơ sở đữ liệu quan hệ

Thuật toán tìm khóa của lược đồ quan hệ R Thuật toán 1.3:

Vao : U, F(U = {Aj, Ao, ., An})-

Ra: K là khoá của một lược đồ quan hệ R Phương pháp:

Bước 0: dat Ky = U

Bước 1: Ki =f(Ki¡ - {A¡}) Nếu (K;¡ - {A;})” =U với A¡€ Kịi K;., néu ngược lại

Kết thúc khi K; = Kị¡

Trang 28

Kết luận chương 1

Chương này đã trình bày một số các khái niệm cơ bản nhất trong mô hình dữ liệu quan hệ Trình bày các phép toán cơ bản, các khái niệm về phụ thuộc hàm, khoá, bao đóng cùng với các tính chất của chúng Ngoài ra các thuật toán tìm khoá, bao đóng cũng được trình bày

Mô hình dữ liệu quan hệ có tính độc lập dữ liệu cao, dễ dàng sử dụng và còn cho phép dễ dàng mô phỏng các hệ thống thông tin đa dạng trong thực tiễn Trong mô hình này, cơ sở dữ liệu được xem như là một tập hợp các quan hệ,

mỗi quan hệ có thể được hình dung một cách trực quan như là một bảng chữ

nhật gồm có các hàng và các cột ở bảng này mỗi cột ứng với một thuộc tính, mỗi hàng được gọi là một bộ Do các quan hệ có cấu trúc phăng (tuyến tính)

nên mô hình này sẽ rất khó khăn khi biểu diễn các đữ liệu có tính chất động

(phi tuyến)

Trang 29

CHƯƠNG 2: MÔ HÌNH CƠ SỞ DỮ LIỆU DẠNG KHỎI

Để mở rộng và khắc phục phần nào những nhược điểm của mô hình quan hệ nói trên, chương này đưa ra một mô hình cơ sở dữ liệu khác gọi là mô hình cơ sở dữ liệu dạng khối được xây dựng và mô ta trong [2], [5] M6 hình này giúp biểu diễn thế giới thực trong quá trình vận động một cách tự nhiên hon

2.1 Khối, lược đồ khối

Khái niệm toán học làm nền tảng cho mô hình cơ sở đữ liệu dạng khối (gọi tắt là mô hình khối) là các khối hiểu theo nghĩa của lý thuyết tập hợp Khối được định nghĩa như sau:

Định nghĩa 2.1|2, 5]

Gọi R = (id; Aj, Ay, , An) 1a một bộ hữu hạn các phan tử, trong đó 1d

là tập chỉ số hữu hạn khác rỗng, A; (¡=Ï,n) là các thuộc tính Mỗi thuộc tính A;

(i=in) co mién giá trị tương ứng là dom(A; Một khối r trên tập R, kí hiệu r(R) gồm một số hữu hạn phần tử mà mỗi phần tử là một họ các ánh xạ từ tập chỉ số id đến các miễn trị của các thuộc tính A;, (=1,n) Nói một cách khác : t cr(R) ©t= {Ủ: id—> dom(A))} ¡=t.z Ta kí hiệu khối đó là r(R) hoặc r (id; Aj, Ao, ., An), hoặc kí hiệu đơn giản là r

Khi đó khối r(R) được gọi là có lược đồ khối R Như vậy trên cùng

một lược đồ khối R ta có thể xây dựng được nhiều khối khác nhau

Ví dụ 2.1: Ta xây dựng khối nhân viên (ký hiệu NV(R)) (hình 2.1) để quan lý nhân viên trong một cơ quan như sau:

Cho luge dé khéi R = (id; Ay, Ao, Az, Ay), trong dé: id = {1/2009,

Trang 30

Với khối NV(R) ở hình 2.1, ta thấy nó gồm 3 phần tử: tị, t; t;

ma ten luong trinh do LÔ 1 | | ^^ 7 A Ba mm nor AZ 2007 DH~ tờ “— | B02 B 350 DH A02 B 300 ph ụ A02 Be 250 —— me cot Pe 32009 A08 Cc CD“ 4— 2/2009~ ty A03 Cc 200 " lạ⁄ <— 1/2009 Hình 2.1: Biểu diễn khối nhân viên NV(R) Khi đó ta có : ° Lương của nhân viên t¡ ở thời điểm tháng 1/2009 là : t¡(1/2009, luong) = 200 ° Tên của cán bộ tạ vào tháng 2/2009 là : tạ(2/2009, ten) = 'B ° Trình độ của cán bộ t; vào tháng 2/2009 1a : ta(2/2009, trinh do) = “CD)

° Mã số của cán bộ tạ vào tháng 3/2009 là : tz(3/2009, ma) = 'C01'

2.2 Lát cắt

Cho R = (1d; A+, A¿, , An), r(R) là một khối trên R Với mỗi xe id ta kí hiệu

r(,) là một khối với R„ = ({x}; Ai, Aa, An) $a0 cho :

tre (Ry © ty = {t,=t sa với te r(R),

x vat= {t':id > dom(A)} jer O day ti,(x) = t(x) voi i=ln

Khi đó r(R,) được gọi là một lát cắt trên khối r(R) tại diém x

Ví dụ 2.2: Với khối NV(R) đã cho ở trên, R = (id; Aj, Az, A3, Aq) trong do: id = {1/2009, 2/2009, 3/2009, ., 12/2009}

Trang 31

Nếu x = 2/2009 e id thì lát cắt T(Rz/20ooy có dạng như sau :

fRz⁄øo: ma ten luong trinh_ do

AOL A 350 Ths

A02 B 300 DH

A03 C 250 CD

Nhận xét 2.1

Cho lược đồ khối R = (id; Ay, Ag, , An), r(R) 1a một khối trên R Với

mỗi xe id thì lát cắt r(R,) là một quan hệ Trong trường hợp tập chỉ sé id chỉ

gồm một phần tử thì r(R) trở thành một quan hệ

Như vậy mỗi quan hé r(Aq, Ag, , An) là một trường hợp đặc biệt của

khối, đó chính là khối r(R) với R = ({x}; Ay, Ao, « , An)- Mệnh đề 2.1 [5]

Cho lược đồ khối R = (id; A¡, A¿, A,), r(R) là một khối trên R, khi

đó tồn tại một họ quan hệ (hiểu theo nghĩa tập hợp) duy nhất biểu diễn họ

{r(R,) }xeia Cac lat cắt của khối r(R) Ngược lại không đúng, nghĩa là với một

họ quan hệ cho trước biểu dién họ các lát cắt của một khối nào đó thì khối tìm được không duy nhất

2.3 Khóa của khối

Cho R = (id; Ay, Ao, ., Ay), rla mét khối trên R Với mỗi x € id, t

e1(R), t=(t', t, ., t), ta ki hiệu t(x;A;), ( =l n),là giá trị của phần tử ở

thuộc tính A; tại chỉ SỐ X

Để thuận lợi cho việc trình bay, ta dat x; = (x; Aj), x € id va nhu vay:

t(x) = tx; Ay = t' (x), (i= L n) Từ đó, ta kí hiệu : id® = {x® | x â id}, nhu vay idđ = {(x; Ai) |x € id} Voi X%c id® thi ta ki hiéu : (X) = {tly yP|e X}

Trang 32

ty = {ty id > dom(A))} j-1

khi đó ta định nghĩa khóa của khối r(R) như sau : Định nghĩa 2.2 [5]

Khóa của khối r trên lược đồ khối R = (¡d; A¡, Aa, , A„) là một tập K={X°®° X®?, Xf?) trong đó Xf9zØ, XŒ9C ¡df9, ( = I h), thỏa mãn hai tính chất : a-Với bất kì 2 phần tử t¡,t; e r đều tồn tại một X 9e K sao cho : _ ti (X#9)z b*(X#9) Nói một cách khác, không ton tại 2 phần tử mà : - tị X®9)=t (X9 vk=l.h

b-Với bất kì tập K" nào, K' = {X“! X®), Xứ voi KM KW, (k=1 h) và tồn tại Xf"?c Xf” với m e {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“" XE, XM? trong do Xe X™” (Vk = 1 h), được gọi là một siêu khóa của khối r

Mệnh đề 2.2 [5]

Cho lược đồ khối R = (id; A;, Aa, A„), r(R) là một khối trên R Khi

Gy x?)

đó với x e id mà ta có {x x91 là khóa của lát cắt r(R,) thì ta cũng cé voi moi y € id, fy", y™, ,.y"} là khóa của lát cắt r(Ry) hay nói một

cách khác {A¡¡ As¿, A} là khóa của quan hệ r(A¡, Aa, , An)

Mệnh đề 2.3 [5]

Cho lược đồ khối R = (d; A+, As, A.), r(R) là một khối trên R, id =

{x} Khi đó r(R) trở thành quan hé r(A;, Ag, ., A,) va mỗi khóa K =

(xO) x), xX}, trong do X%c id™, (k = 1, 2, ., h) cua khdi r(R) lai tro

thành khóa của quan hé r(Aq, Ao, ., An)

Trang 33

Mệnh đề 2.4 [5]

Cho lwoc d6 khéi R = (id; Aj, Aa, A„), r(R) là một khối trên R Khi

đó với x © id ma ta có {x”, xf”, x9! là khóa của khối r(R) thì ta cũng có với mọi y e ¡d, {y°”, y2, v#°} là khóa của lát cắt r(R,) hay nói một cách

khác {A¡i Aa A¡.} là khóa của quan hệ r(A+, Ao, .,An) -

Mệnh đề 2.5 [5]

Cho lược đồ khối R = (iđ; A;, Aa, A,), r(R) là một khối trên R Khi đó nếu với x e id nào đó mà ta có {xf”, xf”, xf91 là khóa của lát cắt r(R„ thì {id"”, id™, ., id™®} 1a 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 = (¡d; A¡, Ao, ., An), & day 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ố[6]

Đố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) 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 t2 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ó: rts=Í{tlter hoặc t e 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ó:

Trang 34

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={tltervat¢s} Ta có mối quan hệ giữa phép giao và phép trừ : r ¬ s = r - (r - $).r V 2.4.4 Tích Đề các Cho lược đồ khối R = (d; A¡, Aa, , An, S = đd; Bị, Bạ, , B„), ở đây (AI, Aa, An (Bì, Bạ, , Bạị = Ø

Khi đó tích Đề-Các của hai khối r(R) và s(S) là một khối, kí hiệu r x s, khối

này c6 khung R x S = (id; Aj, Ad, ., An, Bi, Bo, ., Bry, mỗi phần tử thuộc khối này là một bộ gồm n+ m anh xa, trong do n anh xa dau 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 :

rxs=({tlt(R) er và t(S) e s},

trong do t=, 0,000 tR) =(, É, P), và t(S)= (11 0,

2.4.5 Tích Đề các theo tập chí số

Cho R = (id; Aj, Ao, « 5 An), S = (id’; Aj, Ag, « , An) Khi dé tich Dé-

Các của hai khối r(R) và s(S) theo tap chi sé 1a mét khdi, ki hiéu r xq s, khéi

này có khung R xiq S = {id L] id’; Ay, Ao, ., Any, v6i id L[ id’ 14 kí hiệu tích

rời rạc của hai tập chỉ s6 id va id’ Méi phan tir thudc khdéi này là một bộ gồm

n anh xa (t', É, t) với 0: id ][id? —> A¡, ¡ = 1 n, mỗi ánh xạ này được cảm sinh từ 2 ánh xạ thứ 1 tương ứng của r và s

Cu thé hơn, giả sử có 2 phần tử là t, e r và t, s :

1 „2 1 „2

t= (ty, rs wees Urs te = (Oe, Boy eee tS),

Trang 35

khi đó ta có ánh xạ cảm sinh của t, và t,, phần tử cảm sinh của t, và t, kí hiệu

1a ts

Gọi j¡ : ¡d > id [] id’, j : id’ > id L] id’ 1a cdc phép nhiing thi ta

được : tjị€r và tja€ S, VàrX¡as= {t|tjie r và tJaạ 6 s}

2.4.6 Phép chiếu

Cho lược đồ khối R = (id; Aj, Aa, , A,), r là một khối trên R

Khi đó ta gọi P = (1d); Ai, A¿, Ain) là lược đồ con của lược đồ R nếu

id°Cid, Aje {Ai, Aa, Aa},j =1 h

Một phép chiếu của khối r trên lược đồ con P, kí hiệu IIp(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 :

(ti, t?, ., t) I, trong đó : e {U, É, },j = 1 h, it và (t,Ú, t)er Biểu diễn hình thức của phép chiếu có đạng : Tp) = f(t, 07,0, ty le CPt, j = 1.h, (LẺ ter} id’ 2.4.7 Phép chon

Cho lược đồ khói R = (id; A, As, A,) 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 tốn lơgic trong F là : v,

A,—

Biểu diễn hình thức của phép chon co dang : of (r) = {t € rl F(t) }

Trang 36

2.4.8 Phép kết nối Cho R = (id; Aj, A», ., An) va s = (id; Bi,Bo, , B„), cùng với hai khối r(R) và s(S) tương ứng Gọi T = d ; Cị,C›, ., Cp), trong đó : {C¡,C, , Cp} = (Ai, À2, , Am 62 (Bi.Bo, .Bm}

Phép kết nối của 2 khối r và s, kí hiệu r t>< s là khối t(T) định nghĩa

như sau : t(T) = {t| 4 t,e r va t,e s sao cho t(R) = t,, t(S) = t,}

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 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 {Aj, A», ., An} va {Bi,Bo, , 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ử Aye {Aj, Ao, ., An}, Bie {Bi,Bz, , Bn}, va dom (Ax) =

dom (By), 1 <k <h, (ở day A, va By không nhất thiết phân biệt)

Trang 37

2.4.9 Phép chia

Cho hai khối r(id; Ay, Ay, ., An) va s(id; Ai, Ais, ., Ain), trong d6

Axe {Ai, Ag, , An}, Vk= 1 h Khi đó phép chia của khối r cho khối s, kí n-h) hiệu r + s, là một khối gồm các phần tử t = (t', t’, ., t™ sao cho Vu=(u', 2 h ) 122 u', ,U sue s thi phan tử tu € r, ở đây phần tử tu có dạng: tu=(t, É, , teu uP Biểu diễn hình thức của phép chia có dạng : r+s=({tlVue s,tu er} 2.5 Phụ thuộc hàm Sau đây, để cho đơn giản ta sử dụng các kí hiệu: x® = (x; Ay; id = {x |x © id} Ta goi x” (x € id, i= 1 n) 1a cdc thuéc tinh chi sé cia luge dé khdéi R = (id; Aj,Ao, ,An)- Dinh nghia 2.3 [2, 5]

Cho lược đồ khối R = (d; A¡.As A„, r(R) là một khối trên R, x.Yc|Jd'°, X — Y là kí hiệu một phụ thuộc hàm Một khối r thoả X > Y

i=l

nếu với mọi tị, tbe R sao cho t;(X) = to(X) thi t(Y) = v(Y) Phụ thuộc hàm được suy diễn từ tập phụ thuộc ham F

Cho lược đồ khối R = (¡d; A¡,A¿, A„, 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 X,Y c Via” Nói rang X > Y duoc

im

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 ham) [2, 5]

Cho lược đồ khối R = (id; A¡, A¿ Aa), F là tập các phụ thuộc hàm

Trang 38

F={X>YIFX—Y)

Nếu X = {x™} cid™, Y = {y} cid™ thì ta kí hiệu phụ thuộc hàm X —> Y

don gian la x™— y™ Khối r thoả xf”—› y? nếu với mọi tị, tạc r sao cho

tx) = tox) thi t(y™) = t(y™) Trong do:

ti) = 10%; Am), B(x) = (x; Am); ty) = tly; Ap, bY) = by; Aw Nhận xét 2.2 Cho R = (đd; A¡, Aa A„), r(R) là một khối trên R, X,Y € Via” ,X im —> 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(A¡, A¿, , An) và

-Phụ thuộc hàm X > Y, (X,Yc Ua, ) tro thanh phụ thuộc hàm trong

i=l

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 [2, 5]

Cho lược đồ khối R=Qd; A¡, Aa, , An), F là tập các phụ thuộc hàm trên

R Với mỗi X Cid , ta dinh nghĩa bao đóng của X đối với F kí hiệu X*

i=l

như sau: X?= {x?,IX — xÐe E* với x e id,¡=1 n

Cho lược đồ khối R=dd; A¡, A¿ Aa), ta xác định tập các phụ thuộc hàm Fục Fi„ trên R như sau:

E,=[X>Y! x=|[Jx°, y=|Jx”, A,Bc {1,2, n) và x e id],

icA jeB

Fix = {X > Y € Phl X,Y CU x" J, voix € id va ki higu P= FU”

isl i=l

Trang 39

Thuật toán 2.1 (bao đóng) [2, 5]

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; whiletepmoi#tepcudo begin tepcu := tepmoi ; for each W — Z in F do if tepmoi 2 W then tepmoi := tepmoi U Z ; end; return(tepmoi); End

Cho luge dé khéi R=(id; Ay, Ao, An)s Fh, Fhx 1a tập các phụ thuộc

hàm trên R, R, tương ứng, mcUid” | M -UM,, M,e=LJx”.M#Ø với

isl xeA isl

x€ AC id

Khi đó dựa vào thuật toán tính bao đóng ở trên, ta có thé tinh bao dong

M' của M đối với Fạ Từ quá trình tính bao đóng của M đối với Fạ 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ố M, (x€ A)

đối với các tập phụ thuộc hàm tương ứng Fạ„ (x€ A) Mệnh đề 2.6 [2 5]

Cho lược đồ khối R=(d; Ai, A¿, An)s Fh, Fạ„ là tập các phụ thuộc hàm trên R, R, tương ứng, MELiđ”,w =UM,, M,c=Ux”.M#Ø với

Trang 40

x€ AC id Khi đó nếu M'" là bao đóng của M đối voi F, thi Vx €

@)

AU x”M' là bao đóng của M=L} x OM 4éi voiF ix

i=l isl

Ménh dé 2.7 [2, 5]

Cho luge d6 khéi R=(id; Ay, Ao, An) Fh, Fhx 1a tap các phụ thuộc

ham trên R, R„ tương ứng, MELliđ”w =UM,, M.=LJx°.M#Ø với i=l xeA i= 1 xe Ac id Khi đó nếu M,” là bao đóng của M, đối với Fạ„ thì M_ là bao xeA đóng của M =LÏM, đối vớiF, xeA Dinh li 2.1 [5] Cho luge dé khéi R=(id; Ay, Ao, ., An)s Fh, Fhx 1a tap cdc phy thudc n

hàm trén R, R, tuong tng, ME Via" M =UM, w.=Ux” với xe AC

¡d Khi đó MỸ là bao đóng của M đối với Fạ khi và chỉ khi:

M¿}= U x'”M' là bao đóng của M, đối với Fạ,

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 [2, 5]

Cho lược đồ khối R = (id; Al, A2, ., An), F là tập các phụ thuộc hàm trên R, K CUid® K duoc gọi là khóa của lược đồ R đối với F nếu thỏa 2

i=l

điêu kiện:

a) K — x() € F+, Vx €id,1= l n

Ngày đăng: 17/10/2014, 20:00

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w