Tải bản đầy đủ (.pdf) (70 trang)

Giàn giao của các tập đóng trong mô hình dữ liệu dạng khối

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.75 MB, 70 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
======

CHU QUANG ĐỨC

GIÀN GIAO CỦA CÁC TẬP ĐÓNG
TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI

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

HÀ NỘI, 2015


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
======

CHU QUANG ĐỨC

GIÀN GIAO CỦA CÁC TẬP ĐÓNG
TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI
Chuyên ngành: Khoa học máy tính
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: TS. Trịnh Đình Vinh

HÀ NỘI, 2015



LỜI CẢM ƠN
Để 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 TS. Trịnh Đình Vinh, cùng các thầy cô trƣờng Đại
học Sƣ phạm Hà Nội 2, các thầy cô trong ban giám hiệu và các thầy cô trong
trƣờng THPT Mê Linh. 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, trƣờng THPT Mê Linh đã tạo điều kiện cho tôi 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 thạc sĩ
này. Đặc biệt tôi xin cảm ơn thầy TS. Trịnh Đình Vinh đã tận tình hƣớng
dẫn, chỉ bảo cho tôi trong suốt quá trình học tập, nghiên cứu đề tài và giúp đỡ
tôi hoàn thành bản luận văn này.
Hà nội, ngày 01 tháng 12 năm 2015
Học viên

Chu Quang Đức


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 thầy TS. Trịnh Đình Vinh.
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 bất kỳ công trình nào khác.

Học viên

Chu Quang Đức


MỤC LỤC
LỜI CẢM ƠN

LỜI CAM ĐOAN
DANH MỤC CÁC BẢNG
DANH MỤC CÁC HÌNH VẼ
DANH MỤC CHỮ VIẾT TẮT VÀ KÍ HIỆU
MỞ ĐẦU ........................................................................................................... 1
1. Lý do chọn đề tài ....................................................................................... 1
2. Mục đích nghiên cứu ................................................................................. 1
3. Nhiệm vụ nghiên cứu ................................................................................ 2
4. Đối tƣợng và phạm vi nghiên cứu............................................................. 2
5. Phƣơng pháp nghiên cứu........................................................................... 2
6. Những đóng góp mới của đề tài ................................................................ 2
7. Cấu trúc của luận văn ................................................................................ 2
CHƢƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ VÀ GIÀN GIAO CỦA CÁC
TẬP ĐÓNG ....................................................................................................... 4
1.1. Mô hình dữ liệu quan hệ ........................................................................ 4
1.1.1. Tổng quan về mô hình dữ liệu quan hệ ........................................ 4
1.1.2. Thuộc tính và miền thuộc tính ...................................................... 5
1.1.3. Quan hệ, lƣợc đồ quan hệ ............................................................. 5
1.1.4. Khóa của quan hệ .......................................................................... 6
1.2. Các phép tính của đại số quan hệ ........................................................... 7
1.3. Phụ thuộc hàm ...................................................................................... 11
1.4. Bao đóng .............................................................................................. 12


1.5. Khoá ..................................................................................................... 14
1.6. Giàn giao của các tập đóng trong mô hình quan hệ ............................. 16
Kết luận ....................................................................................................... 29
CHƢƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI ........................................ 30
2.1. Mô hình dữ liệu dạng khối ................................................................... 30
2.1.1. Khối, lƣợc đồ khối ...................................................................... 30

2.1.2. Lát cắt .......................................................................................... 32
2.2. Đại số trên khối .................................................................................... 34
2.3. Phụ thuộc hàm trên khối ...................................................................... 42
2.4. Bao đóng trong mô hình dữ liệu dạng khối ......................................... 44
2.5. Khoá của lƣợc đồ khối đối với tập phụ thuộc hàm F trên R .............. 45
Kết luận ....................................................................................................... 47
CHƢƠNG 3: GIÀN GIAO CỦA CÁC TẬP ĐÓNG TRONG MÔ HÌNH DỮ
LIỆU DẠNG KHỐI ........................................................................................ 49
3.1. Ánh xạ đóng và giàn giao của các tập đóng trong mô hình dữ liệu
dạng khối………………………………………………………..........56
3.1.1 Ánh xạ đóng và lƣợc đồ khối…………………………………..58
3.2. Tập sinh của ánh xạ đóng qua phép dịch chuyển của lƣợc đồ khối…60
3.3. Mối quan hệ của tập sinh trên lƣợc đồ khối và trên lƣợc đồ lát cắt…62
Kết luận……………………………………………………………………...57
KẾT LUẬN ..................................................................................................... 58
TÀI LIỆU THAM KHẢO ............................................................................... 59


DANH MỤC CÁC BẢNG

Bảng 1.1. Biểu diễn quan hệ r. .......................................................................... 5
Bảng 1.2. Biểu diễn ví dụ Nhân Viên. .............................................................. 6
Bảng 1.3. Biểu diễn quan hệ Sinh Viên. ........................................................... 7
Bảng 1.4. Biểu diễn quan hệ r, s, r  s. . .......................................................... 8
Bảng 1.5. Bảng biểu diễn quan hệ r, s, r  s. .................................................. 8
Bảng 1.6. Biểu diễn các quan hệ r , s, r \ s, s \ r. .............................................. 9
Bảng 1.7. Biểu diễn quan hệ r ,  B D (r ) . ...................................................... 10
Bảng 2.1. Biểu diễn lát cắt r(RHọc kỳ I). ............................................................. 32
Bảng 2.2. Biểu diễn họ gồm 2 quan hệ r1, r2 . ................................................ 33



DANH MỤC CÁC HÌNH VẼ
Hình 2.1. Biểu diễn khối điểm học viên DiemHV ( R) . .................................. 31
Hình 2.2. Biểu diễn các khối r ( R), s( R). ....................................................... 34
Hình 2.3. Biểu diễn 2 khối r , s khả hợp. ....................................................... 35
Hình 2.4. Biểu diễn các khối r, s, r  s. ......................................................... 36
Hình 2.5. Biểu diễn các khối r, s, r  s ........................................................... 37
Hình 2.6. Biểu diễn các khối: r , s, s \ r . ......................................................... 37
Hình 2.7. Biểu diễn các khối r , r ,   P (r ). ................................................... 39
Hình 2.8. Biểu diễn khối  x4  y 4 (r ) ................................................................ 41


DANH MỤC CHỮ VIẾT TẮT VÀ KÍ HIỆU

Ý nghĩa

Kí hiệu
PTH

Phụ thuộc hàm.

LĐQH

Lƣợc đồ quan hệ

LS

Vế trái

RS


Vế phải



Phép giàn giao



Phép hợp

\

Phép trừ



Tập con



Nằm trong



Thuộc



Không thuộc




Anpha



Bêta



Tồn tại

Fh

Phụ thuộc hàm Fh

AXĐ

Ánh xạ đóng


1

MỞ ĐẦU
1. Lý do chọn đề tài
Hệ thống cơ sở dữ liệu (CSDL) là một lĩnh vực rất quan trọng trong
ngành Khoa học máy tính. Việc khai thác hệ thống này có hiệu quả là một vấn
đề cấp bách hiện nay. Hiện nay ngƣời ta thƣờng sử dụng các hệ thống cở sở
dữ liệu nhƣ: Mô hình dữ liệu thực thể - liên kết, mô hình dữ liệu mạng, mô

hình dữ liệu phân cấp, mô hình dữ liệu hƣớng đối tƣợng, mô hình dữ liệu
datalog và mô hình dữ liệu quan hệ. Trong số các mô hình dữ liệu này thì có
ba mô hình dữ liệu thƣờng đƣợc sử dụng là mô hình dữ liệu phân cấp, mô
hình dữ liệu mạng và mô hình dữ liệu quan hệ. Đối với ba mô hình này thì
mô hình dữ liệu quan hệ đƣợc quan tâm hơn cả. Mô hình này đƣợc
E.Codd đề xuất năm 1970 . Tuy nhiên do các quan hệ có cấu trúc phẳng

(tuyến tính) nên mô hình này chƣa đủ đáp ứng đối với các ứng dụng phức tạp,
các cơ sở dữ liệu có cấu trúc phi tuyến tính,…
Trong những năm gần đây, việc nghiên cứu nhằm mở rộng mô hình dữ
liệu quan hệ đã đƣợc nhiều nhà khoa học quan tâm. Theo hƣớng nghiên cứu
này một mô hình dữ liệu mới đã đƣợc đề xuất đó là mô hình dữ liệu dạng
khối. Mô hình dữ liệu này đƣợc xem là một mở rộng của mô hình dữ liệu
quan hệ.
Để góp phần hoàn thiện về lý thuyết thiết kế của mô hình dữ liệu dạng
khối em đã chọn đề tài “Giàn giao của các tập đóng trong mô hình dữ liệu
dạng khối”. Trong đề tài này một số tính chất của giàn giao của các tập đóng
trong mô hình dữ liệu dạng khối đã đƣợc phát biểu và chứng minh.
2. Mục đích nghiên cứu
- Tìm hiểu về mô hình dữ liệu dạng khối.
- Tìm hiểu về giàn giao của các tập đóng, các tính chất của giàn giao
của các tập đóng trong mô hình dữ liệu dạng khối.


2

- Phát biểu và chứng minh một số tính chất mở rộng của giàn giao của
các tập đóng trong mô hình dữ liệu dạng khối.
3. Nhiệm vụ nghiên cứu
- Tìm hiểu về mô hình dữ liệu quan hệ và giàn giao trong mô hình dữ

liệu quan hệ và giàn giao của các tập đóng trong mô hình dữ liệu dạng khối,
các tính chất của nó.
- Tìm hiểu về mô hình dữ liệu dạng khối.
- Phát biểu và chứng minh một số tính chất mở rộng của giàn giao của
các tập đóng 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 nghiên cứu giàn giao của các tập đóng trong mô hình dữ
liệu dạng khối.
- Phạm vi nghiên cứu trong mô hình dữ liệu dạng khối.
5. Phương pháp nghiên cứu
Trong quá trình triển khai đề tài, chúng tôi sử dụng chủ yếu các phƣơng
pháp: Thu thập tài liệu, phân tích, suy luận, tổng hợp, đánh giá tài liệu về lƣợc
đồ khối, mô hình dữ liệu dạng khối, lƣợc đồ khối. Từ đó đề xuất ra một số
tính chất của giàn giao của các tập đóng trong mô hình dữ liệu dạng khối.
6. Những đóng góp mới của đề tài
- Tìm hiểu mô hình dữ liệu dạng khối.
- Tìm hiểu giàn giao của các tập đóng trong mô hình dữ liệu dạng khối
và các tính chất của nó.
- Phát biều và chứng minh một số tính chất mở rộng của giàn giao của
các tập đóng trong mô hình dữ liệu dạng khối và trên lát cắt.
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.


3

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,
bao đóng, khóa và giàn giao của các tập đóng trong mô hình quan hệ.

Chương 2: Giới thiệu tổng quan về mô hình dữ liệu dạng khối: Định nghĩa
khối, lƣợc đồ khối, lát cắt, khóa của khối, các phép toán đại số trên khối, đại
số quan hệ trên khối, phụ thuộc hàm, bao đóng trong mô hình dữ liệu dạng
khối, khóa của lƣợc đồ khối R đối với tập phụ hàm F và giàn giao của các
tập đóng trong mô hình dữ liệu dạng khối.
Chương 3: Trình bày khái niệm về giàn giao của các tập đóng trong mô hình
dữ liệu dạng khối, phát biểu và chứng minh các tính chất của nó bằng khẳng
định tính đúng và mối quan hệ giữa giàn giao trên khối và trên lƣợc đồ lát cắt
nhằm bổ xung góp phần hoàn thiện về mặt lý thuyết cho mô hình dữ liệu dạng
khối.


4

CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ VÀ GIÀN GIAO CỦA CÁC TẬP
ĐÓNG
- Mô hình dữ liệu quan hệ là một trong những mô hình đƣợc quan tâm nhiều
nhất hiện nay. Nhiều tác giả đã quan tâm nghiên cứu và đã thu đƣợc các kết
quả tốt. Một trong các kết quả này là giàn giao và các tính chất của nó.
- Mô hình dữ liệu quan hệ và giàn giao của nó sẽ đƣợc trình bày trong
phần dƣới đây.
- Để hiểu rõ hơn về mô hình dữ liệu quan hệ và giàn giao các vấn đề
này đƣợc trình bày ở chƣơng 1 đã đƣợc nói tới trong tài liệu [5], [9], [13].
1.1. Mô hình dữ liệu quan hệ
1.1.1. Tổng quan về mô hình dữ liệu quan hệ
Khái niệm toán học làm nền tảng cho mô hình dữ liệu quan hệ là các
quan hệ theo lý thuyết tập hợp. Đó là tập con của tích Đề Các của một danh
sách các miền, mỗi miền đơn giản là một tập các giá trị. Ta có thể xem một
quan hệ nhƣ một bảng, trong đó mỗi hàng là một bộ và mỗi cột là một thuộc
tính.

Ta có thể biểu diễn một sơ đồ thực thể - liên hệ trong mô hình quan hệ.
Khi đó các dữ liệu của sơ đồ thực thể - liên hệ đƣợc biểu diễn bởi hai loại
quan hệ:
- Một tập thực thể E có thể đƣợc biểu diễn bởi một quan hệ mà lƣợc đồ
quan hệ của nó chứa tất cả các thuộc tính của tập thực thể đó. Mỗi bộ của
quan hệ biểu diễn một thực thể trong thể hiện của E.
Mỗi liên hệ giữa tập E1, E2 ,..., Ek đƣợc biểu diễn bởi một quan hệ có
lƣợc đồ quan hệ chứa các thuộc tính trong các khóa của E1, E2 ,...., Ek . Bằng
cách đặt lại tên cho các thuộc tính nếu cần, ta đảm bảo rằng không có hai tập
thực thể trong danh sách có các thuộc tính cùng tên, ngay cả khi hai tập thực
thể này chỉ là một.


5

1.1.2. Thuộc tính và miền thuộc tính
Định nghĩa 1.1
- Thuộc tính là đặc trƣng của các quan hệ.
- Miền thuộc tính là tập giá trị mà từ đó ta có thể rút ra các giá trị cụ thể
xuất hiện trong các cột biểu diễn thuộc tính, ký hiệu: DOM (tên thuộc tính).
Ví dụ 1.1. Nhanvien : MaNV, Hoten, NgSinh, Đchi )
DOM(MaNV) = {char (4) }; DOM(Hoten) = {char (3) };
DOM(NgSinh) = {date}; DOM(Đchi) = {„HN‟, „SL‟, „ĐB‟…}
1.1.3. Quan hệ, lược đồ quan hệ
Định nghĩa 1.2
Cho U  {A1, A2 ,..., An } là một tập hữu hạn các phần tử khác rỗng, trong
đó Ai (i  1, 2,..., n) là các thuộc tính. Mỗi thuộc tính Ai có miền giá trị là
DAi . Khi đó r là một tập các bộ {h1, h2 ,..., hn} đƣợc gọi là quan hệ trên R

với h j ( j  1, 2,...,  m) là một hàm:

h j : U  DAi , Ai U sao cho h j ( Ai )  DAi .

Ta có thể xem một quan hệ nhƣ một bảng, trong đó mỗi hàng (phần tử)
là một bộ và mỗi cột tƣơng ứng với một thành phần, gọi là thuộc tính.
Biểu diễn quan hệ r thành bảng nhƣ sau:
A1

A2



An

h1

h1( A1)

h1( A2 )



h1( An )

h2

h2 ( A1)

h2 ( A2 )




h2 ( An )











hm

hm ( A1)

hm ( A2 )



hm ( An )

Bảng 1.1. Biểu diễn quan hệ r.


6

Ví dụ 1.2.
Nhân viên:

MaNV

HOTEN

NS

DC

PLV

C 01

A

26 / 03 / 90

HN

P5

C 02

B

19 / 05 / 91

SL

P5


C 03

B

20 / 11/ 92

VP

P6

Bảng 1.2. Biểu diễn ví dụ Nhân Viên.
Trong đó các thuộc tính là MaNV : mã nhân viên; HOTEN : họ
tên; NS : ngày sinh; DC : địa chỉ; KHOA : khoa.
Bộ giá trị: (C 01, A,26 / 03 / 90, HN , P5) là một bộ.
Nếu có một bộ t  (d1, d2 , d3,..., dm )  r , r xác định trên U , X  U thì
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
Tập tất cả các thuộc tính cần quản lý của một đối tƣợng 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  {A1, A2 ,..., An} đƣợc viết là R( A1, A2 ,..., An ) hoặc R(U ) , quan
hệ r xác định trên lƣợc đồ R(U ).
Khái niệm tất cả các bộ ( D1, D2 ,...., Dn )
1.1.4. Khóa của quan hệ
Định nghĩa 1.4
Cho quan hệ r xác định trên tập thuộc tính U  {A1, A2 ,..., An} , K  U
đƣợc gọi là khóa của quan hệ r nếu nhƣ với mọi t1, t2  r , t1  t2 thì tồn tại
ít nhất một thuộc tính A  K sao cho t1. A  t2. A và mọi K1  K , K1 không
phải là khóa.
Tập thuộc tính K '  K và K là khoá.

Ví dụ 1.3. Cho quan hệ sinh viên nhƣ ở bảng 1.3 dƣới đây.


7

Sinh viên:
MaSV

HOTEN

NS

DC

PLV

C 01

A

26 / 03 / 90

HN

P5

C 02

B


19 / 05 / 91

SL

P5

C 03

B

20 / 11/ 92

VP

P6

Bảng 1.3. Biểu diễn quan hệ Sinh Viên.
Trong quan hệ sinh viên ở bảng 1.3 ta thấy khóa của quan hệ này là
MaSV .

1.2. Các phép tính của đại số quan hệ
- Phép toán tập hợp: Hợp, giao, trừ, tích Đề-các.
- Phép toán quan hệ: Chiếu, chọn, kết nối, chia.
Định nghĩa 1.5
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ị.
* Phép hợp
- Cho 2 quan hệ r và s khả hợp. Hợp của r và s ký hiệu: r  s , là
một quan hệ gồm tập tất cả các bộ thuộc r hoặc thuộc s .
r  s  {t t  r  t  s} .


Ví dụ 1.4

r:

A

B

C

a1

b1

a2
a2

s:

A

B

C

c1

a1


b1

c1

b2

c2

a2

b1

c2

b2

c1


8
r s:

A

B

C

a1


b1

c1

a2

b1

c2

a2

b2

c1

a2

b2

c2

Bảng 1.4. Biểu diễn quan hệ r, s, r  s.
* Phép giao
- Cho hai quan hệ r và s khả hợp. Giàn giao của r và s ký hiệu:

r  s , là một quan hệ gồm tập tất cả các bộ thuôc r thuộc s . Ta có:
r  s  {t t  r và t  s} .

Ví dụ 1.5


r:

r s:

A

B

C

a1

b1

s:

A

B

C

c1

a1

b1

c1


a2 b2

c2

a2

b1

c2

a2 b2

c1

A

B

C

a1

b1

c1

Bảng 1.5. Bảng biểu diễn quan hệ r, s, r  s.
* Phép trừ
- Cho hai quan hệ r và s khả hợp, Hiệu của r và s kí hiệu: r \ s là tập

tất cả các bộ thuộc r nhƣng không thuộc s . Ta có: r  s  {t t  r và t  s}


9

Ví dụ 1.6

r:

r \ s:

A

B

C

a1

b1

s:

A

B

C

c1


a1

b1

c1

a2 b2

c2

a2

b1

c2

a2 b2

c1

A

B

C

A

B


C

a2

b2

c2

a2

b1

c2

a2

b2

c1

s\r:

Bảng 1.6. Biểu diễn các quan hệ r , s, r \ s, s \ r.
* Tích Đề các
Cho 2 quan hệ r , s bất kỳ, có tập thuộc tính lần lƣợt là U1 và U 2 với
U1  U 2   . Tích Đề-các của r , s ký hiệu: r  s là quan hệ trên U1  U 2

gồm tập tất cả các bộ ghép đƣợc từ các bộ của r và s . Ta có:
r  s  {t  (u, v) / u  r, v  s} .


* Phép chiếu
Phép chiếu thực sự là phép toán giữ lại một số thuộc tính cần thiết của
quan hệ và loại bỏ những thuộc tính không cần thiết.
- Cho quan hệ r xác định trên tập thuộc tính U , X là tập con của U .
Phép hợp chiếu của quan hệ r trên tập thuộc tính X , kí hiệu là (xr ) , là tập
các bộ của r xác định trên X . Ta có: (xr ) {t. X t  r }.
* Phép chọn
- Phép chọn là phép toán lấy ra một tập con các bộ của quan hệ đã cho


10

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.
- Điều kiện chọn là một tổ hợp logic của một bài toán hạng trong đó
mỗi toán hạng là một phép toán so sánh giữa 2 thuộc tính có cùng miền giá trị
hoặc giữa một thuộc tính với giá trị hằng.
- F là phép toán logic:    hoặc so sánh , , , , ,  .
- Cho quan hệ r 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:  F (r ), là tập tất cả
các bộ của r thoả mãn F .

 F (r )  {t t  r  F (t ) đúng}.
Ví dụ 1.7

r

A


B

C

D

a

1

x

b

2

c

 B  D (r )

A

B

C

D

4


c

4

z

4

y

5

d

8

x

5

4

z

4

d

8


x

5

e

1

y

4

Bảng 1.7. Biểu diễn quan hệ r ,  B D (r ) .
Minh họa quan hệ r và phép chọn của r theo tiêu chuẩn B  D
* Phép kết nối tự nhiên
Cho hai quan hệ R(U ) và S (V ) . Đặt M  U  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ệ chứ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ệ S (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 }.


11
Nếu M  U  V  , R  S sẽ cho ta tích Descartes, trong đó mỗi bộ
của quan hệ R sẽ đƣợc ghép với mọi bộ của quan hệ S .
- Kết nối bằng (Equi - Join): Là phép kết nối trong đó tất cả các phép so
sánh trong điều kiện F đều là bằng.
- Kết nối tự nhiên (Natural - Join): Là phép kết nối bằng trên các thuộc
tính trùng tên của hai quan hệ trong đó một thuộc tính trùng tên sẽ bị loại khỏi
quan hệ kết quả, Kí hiệu : r  s .

* Phép chia
- Cho hai quan hệ r (U ) và s(V ) với U  {A1,..., An }, V  U . Phép chia
của hai quan hệ r cho quan hệ s ký hiệu: r  s là quan hệ trên U \ V gồm
các bộ t sao cho tồn tại bộ u  s và ghép t với u ta đƣợc bộ thuộc r :
r  s  {t / u  s, tu  r}.

1.3. Phụ thuộc hàm
Khi xét đến mối quan hệ giữa các dữ liệu trong CSDL quan hệ thì 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
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ỳ t1, t2 R


12
mà t1( X )  t2 ( X ) thì t1(Y )  t2 (Y ).
* 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  {A1, A1,..., An},
cho X ,Y , Z , W  U thì ta có một số tính chất cơ bản của các phụ thuộc hàm
nhƣ sau:
1. Nếu Y  X thì X  Y .

2. Nếu X  Y thì XW  YW .
3. Nếu X  Y ,Y  Z thì X  Z .
4. Nếu X  Y ,YZ  W thì XZ  W.
5. Nếu X  Y , Z  W thì XZ  YW .
6. Nếu X  Y thì XZ  Y .
7. Nếu X  Y , X  Z thì X  YZ .
8. Nếu X  YZ thì X  Y .
9. Nếu X  YZ , Z  WV thì X  YZW .
1.4. Bao đóng
Định nghĩa 1.7
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 thuộc F . Vậy F  ( f | F | f ).
Tính chất của bao đóng:
1) X  X  .
2) Nếu X  Y thì X   Y  .
3) X  X  .
4) X   X  .
5) X Y   ( X ,Y ) .


13
6) ( X Y )  ( XY  )  ( XY ) .
7) X  Y  Y  X  .
8) X  Y và Y  X  X   Y  .
Thuật toán bao đóng:
Vào: Tập thuộc tính X , tập phụ thuộc hàm F và lƣợc đồ khối R .
Ra: X  bao đóng của X đối với F trên R .
BAO DONG 1( X , F , R)

Begin
Tepcu :  ; tepmoi :  X ;
While tepmoi  tepcu do
Begin
Tepcu:= tepmoi;
For each W  Z in F do
If tepmoi  W then tepmoi : Tepmoi  Z
End;
Return(tepmoi);
End.
Ví dụ: 1.8.
Cho tập thuộc tính U  {A, B, C, D, E, G, H } và tập phụ thuộc hàm
F  {A  D, AB  DE, CE  GE, E  H }

Tính ( ABF )?
Bƣớc 0 : X 0  AB.
Bƣớc 1: X1  X O  {D} vì  A  D thoả mãn điều kiện.
Bƣớc 2 : X 2  X1  {E} vì  AB  DE thoả mãn điều kiện.
Bƣớc 3: X 3  X 2  {H } vì  E  H thoả mãn điều kiện.


14
Bƣớc 4 : X 4  X 3.
Vậy ABF {ABDEH }
1.5. Khoá
Định nghĩa 1.8
Cho LĐQH   (U , F ) . Tập thuộc tính k  U đƣợc gọi là khóa của
LĐQH  nếu:
(i ) . K   U
(ii ) . A  K : ( K | A)   U


Hai điều kiện trên tƣơng đƣơng với:
(i ' ) . K  U

(ii ' ) . A  K : K \ A  U

Nếu K thỏa điều kiện (i ) (hoặc (i ' )) thì K đƣợc gọi là một siêu khóa.
Thuộc tính A U đƣợc gọi là thuộc tính khóa (nguyên thủy hoặc cơ
sở), nếu A có trong một khóa nào đấy. A đƣợc gọi là thuộc tính không khóa,
(phi nguyên thủy hoặc thứ cấp) nếu A không có trong bất kỳ khóa nào.
Cho LĐQH   U , F ta kí hiệu U K là tập các thuộc tính khóa của 
và U 0 là tập các thuộc tính không khóa của a .
Dễ thấy U K U 0 là một phân hoạch của U .
Thuật toán tìm một khóa của LĐQH.
Tư tưởng:
Xuất phát từ một siêu khóa K tùy ý của LĐQH, duyệt lần lƣợt các
thuộc tính A của K nếu bất biến ( K \ A)   U đƣợc bảo toàn thì loại A khỏi
K có thể thay kiểm tra ( K \ A)  U bằng kiểm tra A  ( K \ A) .

Algorithm Key


15

Format: Key (U , F )
Input:
- Tập thuộc tính U
- Tập PTH F
Output: - Khóa K  U thỏa:
(i ) . K   U

(ii ) . A  K : ( K \ A)  U

Method
K : U ;

For each attribute A in U do
If A in Closure ( K \ A, F ) then
K : K \ A

endif;
return K;
end Key.
Một số tính chất của khóa.
Các tính chất đơn giản
Cho lƣợc đồ quan hệ (U , F ) khi đó:
1. K  U là một khóa khi và chỉ khi U phụ thuộc đầy đủ vào K .
2. Hai khóa khác nhau của một LĐQH không bao nhau.
3. Mọi LĐQH đều có ít nhất một khóa.
Ví dụ: 1.9.
Cho lƣợc đồ quan hệ R  ( A, B, C, D) và tập phụ thuộc hàm F  {A 
C, AB  DC}, khoá là {A, B} Khi đó thuộc tính A, B gọi là thuộc tính khoá,

còn thuộc tính D, C gọi là thuộc tính không khóa.


16

1.6. Giàn giao của các tập đóng trong mô hình quan hệ
1.6.1 Ánh xạ đóng
Định nghĩa 1.9

Cho tập U và ánh xạ f: Subset(U)  Subset(U) đƣợc gọi là đóng trên tập
U nếu với mọi tập con X, Y  U ta có các tính chất (C1)-(C3) sau đây:
(C1) Tính phản xạ: f(X)  X,
(C2) Tính đồng biến hay đơn điệu: Nếu X  Y thì f(X)  f(Y),
(C3) Tính lũy đẳng: f(f(X)) = f(X).
(C4) f(Xf(Y)) = f(XY)
(C5) f(XY)  f(X)f(Y)
(C6) f (X  Y)  f(X)  f(Y)
Chứng minh
(C4) Theo tính phản xạ của AXĐ f ta có f(X)  X, do đó f(X)Y  XY.
Theo tính chất đồng biến của f ta có f(f(X)Y)  f(XY). Mặt khác, do X
 XY, Y  XY, vận dụng tính đồng biến của f ta có f(X)  f(XY) và Y 

XY  f(XY), do đó f(X)Y  f(XY). Lại theo tính chất đồng biến và tích
lũy đẳng của f ta có f(f(X)Y)  f(f(XY) = f(XY). Từ hai bao hàm thức
vừa chứng minh ta suy ra f(f(X)Y) = f(XY).
Hoán vị vai trò của các tập X và Y ta tìm đƣợc f(Xf(Y)) = f(XY).
(C5) Từ XY  X, XY  Y và tính đồng biến củ f ta suy ra f(XY)  f(X) và
f(XY)  f(Y). Lấy hợp theo từng vế của hai bao hàm thức trên ta thu
đƣợc f(XY)  f(X)f(Y).


×