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

α bao đóng và phép dịch chuyển lược đồ khối (LV01869)

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 (2.48 MB, 74 trang )

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

ĐOÀN VIỆT TUÂN

α – BAO ĐÓNG VÀ PHÉP DỊCH CHUYỂN
LƢỢC ĐỒ 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: PGS.TS Trịnh Đình Thắng

HÀ NỘI, 2016


i

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
các thầy cô giáo 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.
Xin chân thành cảm ơn các thầy giáo, cô giáo đã trực tiếp giảng dạy và
mang đến cho tôi niềm say mê nghiên cứu khoa học.
Tôi xin gửi lời biết ơn chân thành tới, bạn bè, gia đình đã luôn tạo điều
kiện, ủng hộ về mọi mặt để tôi hoàn thành 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 hoàn thành bản luận văn này.
Hà Nội, ngày 10 tháng 7 năm 2016


Học viên

Đoàn Việt Tuân


ii

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 bất kỳ công trình nào khác.
Học viên

Đoàn Việt Tuân


iii

MỤC LỤC
LỜI CẢM ƠN
LỜI CAM ĐOAN
DANH MỤC KÝ HIỆU VÀ CHỮ CÁI VIẾT TẮT
DANH MỤC CÁC BẢNG
DANH MỤC CÁC HÌNH
CHƢƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ ........................................... 4
1.1. Mô hình dữ liệu quan hệ .......................................................................... 4
1.1.1. Thuộc tính và miền thuộc tính ....................................................... 4
1.1.2. Quan hệ, lược đồ quan hệ............................................................... 4
1.2. Các phép toán đại số quan hệ .................................................................. 6

1.2.1. Phép hợp ......................................................................................... 6
1.2.2. Phép giao ........................................................................................ 6
1.2.3. Phép trừ .......................................................................................... 7
1.2.4. Tích Đề-các .................................................................................... 7
1.2.5. Phép chiếu ...................................................................................... 8
1.2.6. Phép chọn ....................................................................................... 9
1.2.7. Phép kết nối .................................................................................. 10
1.2.8. Phép chia ...................................................................................... 11
1.3. Phụ thuộc hàm ....................................................................................... 12
1.3.1. Khái niệm phụ thuộc hàm ............................................................ 12
1.3.2. Định nghĩa phụ thuộc hàm ........................................................... 12
1.3.3. Các tính chất của phụ thuộc hàm ................................................. 12


iv

1.3.4. Hệ tiên đề Amstrong .................................................................... 13
1.3.5. Các hệ tiên đề khác cho phụ thuộc hàm. ...................................... 15
1.4. Bao đ ng ................................................................................................ 16
1.4.1. Bao đ ng của tập phụ thuộc hàm và tập thuộc tính ..................... 16
1.4.2. Bài toán thành viên ....................................................................... 20
CHƢƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI .................................... 22
2.1. Khối, lược đồ khối và lát cắt.................................................................. 22
2.1.1. Khối, lược đồ khối........................................................................ 22
2.1.2. Lát cắt ........................................................................................... 24
2.2. Các ph p tính trên khối .......................................................................... 26
2.2.1. Phép chèn ..................................................................................... 26
2.2.2. Ph p loại bỏ .................................................................................. 27
2.2.3. Ph p sửa đổi ................................................................................. 27
2.3. Đại số quan hệ trên khối ........................................................................ 27

2.3.1. Ph p hợp ....................................................................................... 28
2.3.2. Phép giao ...................................................................................... 29
2.3.3. Ph p trừ ........................................................................................ 29
2.3.4. Tích Đề các................................................................................... 30
2.3.5. Tích Đề các theo tập chỉ số .......................................................... 30
2.3.6. Ph p chiếu .................................................................................... 31
2.3.7. Ph p chọn ..................................................................................... 32
2.3.8. Ph p kết nối .................................................................................. 32
2.3.9. Phép chia ...................................................................................... 33


v

2.4. Phụ thuộc hàm ....................................................................................... 34
2.5. Bao đ ng của tập thuộc tính chỉ số ........................................................ 35
CHƢƠNG 3: α – BAO ĐÓNG VÀ PHÉP DỊCH CHUYỂN LƢỢC ĐỒ
KHỐI .............................................................................................................. 39
3.1.α - phụ thuộc hàm và α – bao đ ng trong mô hình dữ liệu dạng khối ..... 39
3.1.1. Khái niệm xấp xỉ mức α [9] ......................................................... 39
3.1.2. α - phụ thuộc hàm và α – bao đ ng trên khối [9] ......................... 41
3.2. Ph p dịch chuyển lược đồ khối.............................................................. 50
3.2.1. Định nghĩa ph p dịch chuyển lược đồ khối [9]............................ 50
3.2.2. Thuật toán dịch chuyển lược đồ khối [9] ..................................... 52
3.3. Mối quan hệ giữa α – bao đ ng và ph p dịch chuyển lược đồ khối ..... 53
TÀI LIỆU THAM KHẢO ............................................................................... 60


vi

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

Trong luận văn này dùng thống nhất các ký hiệu và chữ cái viết tắt sau:
Kí hiệu

Ý nghĩa

FD

Phụ thuộc hàm

LS

Vế trái

LR

Vế phải



Suy dẫn theo tiên đề (theo logic)



Suy dẫn theo quan hệ



Khác




Với mọi



Phép giao



Phép hợp

\

Phép trừ



Tập con



Nằm trong



Thuộc



Không thuộc


X+

Bao đóng của tập thuộc tính X



Tương đương



Không tương đương



Rỗng



Tồn tại


vii

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ụ học sinh. .................................................................. 5
Bảng 1.3: Bảng biểu diễn quan hệ r, s, r  s. ................................................... 6
Bảng 1.4: Bảng biểu diễn quan hệ r, s, r  s. ................................................... 7
Bảng 1.5: Bảng biểu diễn quan hệ r, s, r \ s, s \ r. ............................................. 7

Bảng 1.6: Bảng biểu diễn các quan hệ r, s, r× s. ............................................... 8
Bảng 1.7: Bảng biểu diễn các quan hệ r, s, r*s. .............................................. 11
Bảng 1.8: Bảng biểu diễn các quan hệ r, s, r ÷ s. ............................................ 12
Bảng 2.1: Bảng biểu diễn khối điểm học viên DiemHV(R‟)……………… 24
Bảng 2.2: Bảng biểu diễn lát cắt r(RHọc kỳ 2). ................................................... 24
Bảng 2.3: Biểu diễn họ gồm 2 quan hệ r1, r2. .................................................. 25


viii

DANH MỤC CÁC HÌNH
Hình 2.1: Biểu diễn khối điểm sinh viên DiemSV(R) .................................... 23
Hình 2.2: Biểu diễn các khối r(R), s(R), t(R).................................................. 26
Hình 2.3: Biểu diễn 2 khối r, s. ....................................................................... 28
Hình 2.4: Biểu diễn các khối r, s, r  s. .......................................................... 28
Hình 2.5: Biểu diễn các khối r, s, r  s. .......................................................... 29
Hình 2. 6: Biểu diễn các khối r, s, r \ s. ........................................................... 30
Hình 2.7: Biểu diễn các khối r, r‟ = P(r). ...................................................... 32


1

MỞ ĐẦU
1. Lý do chọn đề tài
Trong thời đại Công nghệ Thông tin hiện nay đang c những bước tiến
mạnh mẽ, 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 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.
Muốn xây dựng được một hệ thống cơ sở dữ liệu tốt người ta thường sử dụng

các mô hình dữ liệu thích hợp. Đã c rất nhiều 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 dữ liệu datalog và mô hình quan
hệ. Trong đ thì mô hình quan hệ được quan tâm hơn cả vì n được xây dựng
trên cơ sở toán học chặt chẽ - đ là lí thuyết toán học về các quan hệ c áp
dụng rộng rãi các công cụ đại số và logic. Tuy nhiê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.
Trong những năm gần đây, nhằm mở rộng mô hình dữ liệu quan hệ đã
được nhiều nhà khoa học nghiên cứu. Theo hướng nghiên cứu này một mô
hình mới đã được đề xuất, đ là mô hình dữ liệu dạng khối, mô hình này là
mở rộng của mô hình dữ liệu quan hệ, ngày càng c nhiều người quan tâm và
đã c những đ ng g p nhất định để bổ sung vào lý thuyết các mô hình dữ
liệu. Tuy nhiên mô hình này mới xây dựng nên chưa hoàn thiện và hiện đang
được quan tâm nghiên cứu.
Với mong muốn tìm hiểu sâu hơn về những kiến thức đã học, mối quan
hệ và những ứng dụng của mô hình dữ liệu dạng khối. Vì vậy tôi chọn đề tài:
“α - bao đóng và phép dịch chuyển lược đồ khối” để nghiên cứu.


2

2. Mục đích nghiên cứu
Tìm hiểu khái quát về các phụ thuộc dữ liệu dạng khối sau đ đi sâu và
nghiên cứu một số tính chất của α - bao đ ng và ph p dịch chuyển lược đồ khối.
3. Nhiệm vụ nghiên cứu
Tìm hiểu về mô hình cơ sở dữ liệu quan hệ.
Tìm hiểu vê mô hình dữ liệu khối.
Tìm hiểu về α - bao đ ng và ph p dịch chuyển lược đồ khối.
4. Đối tƣợng và phạm vi nghiên cứu
Đối tƣợng nghiên cứu

α - bao đ ng trong mô hình dữ liệu dạng khối.
Mối quan hệ giữa α - bao đ ng và ph p dịch chuyển lược đồ khối.
Phạm vi nghiên cứu
α - bao đ ng và ph p dịch chuyển lược đồ khối.
5. Phƣơng pháp nghiên cứu
Phương pháp tổng hợp phân tích các vấn đề c liên quan đến đề tài.
Phương pháp lý luận & chứng minh.
6. Những đóng góp của đề tài
Phát biểu và chứng minh mối quan hệ giữa α - bao đ ng và ph p dịch
chuyển lược đồ 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: Mô hình cơ sở dữ liệu quan hệ
Chương này giới thiệu các khái niệm về thuộc tính, miền thuộc tính,
quan hệ, lược đồ, kh a của quan hệ. Trình bày các ph p toán đại số quan hệ,
phụ thuộc hàm, bao đ ng trong mô hình quan hệ.


3

Chƣơng 2: Mô hình cơ sở dữ liệu dạng khối
Chương này trình bày các khái niệm cơ bản về mô hình dữ liệu dạng
khối như: định nghĩa khối, lát cắt, lược đồ khối, đại số trên khối, kh a của
khối, phụ thuộc hàm trên khối.
Chƣơng 3: α – bao đóng và phép dịch chuyển lƣợc đồ khối.
Trong chương này đã trình bày khái niệm mức xấp xỉ α. Từ đ đưa ra
khái niệm α – phụ thuộc hàm và α – bao đ ng. Đồng thời phát biểu và chứng
minh một số tính chất của α – phụ thuộc hàm và α – bao đ ng. Tiếp theo là
ph p dịch chuyển lược đồ khối. Cuối cùng là mối quan hệ giữa α – bao đ ng

và ph p dịch chuyển lược đồ khối.


4

CHƢƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ
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ô hình dữ liệu quan hệ 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ệ đã được n i tới trong tài
liệu [2,4,5].
1.1. Mô hình dữ liệu quan hệ
1.1.1. 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 đối tượng.
- Tập tất cả các giá trị c thể c của thuộc tính Ai gọi là miền giá trị của
thuộc tính đ , ký hiệu: Dom(Ai) hay viết tắt là DAi
Ví dụ 1.1.
Đối tượng Họcsinh c các thuộc tính như: MaHS, Hoten, NgSinh,
Đchi,…
Miền giá trị của các thuộc tính của đối tượng Họcsinh:
Dom(MaHS) = {char(4)} ={„HS01‟, „HS02‟, „HS03‟ ...};
Dom(Hoten) = {char(30)} ={„Nguyễn Thế A‟,„Đoàn Thị B‟, ...} ;
Dom(NgSinh) = {date} ={„13/09/82‟, „15/12/87‟, ...}

;

Dom(Đchi) ={char(10)} ={„MC‟, „QN‟, „YB‟, …}.
1.1.2. 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 không rỗng các thuộc tính.
Mỗi thuộc tính Ai (i=1,2, …, n) c miền giá trị là Dom( Ai ) viết tắt là DAi.
Khi đ r là một tập các bộ {h1, h2, …, hm} được gọi là quan hệ trên U với hj
(j=1, 2, …, m) là một hàm:


5

DAi sao cho hj (Ai) DAi (i=1, 2, ...,n)

hj :U →
Ai U

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.
Ví dụ 1.2:
Học sinh

MaHS

HOTEN

NS

DC

LOP

HS01

A

24/02/93

QN

A1

HS02


A

11/05/93

MC

A2

HS03

B

15/03/93

YB

B1

Bảng 1.2: Biểu diễn ví dụ học sinh.
Trong đ các thuộc tính là MaHS: mã học sinh; HOTEN: họ tên; NS:
ngày sinh; DC: đại chỉ; LOP: lớp.
Bộ giá trị: (HS01, A, 24/02/93, QN, A1) 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)(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

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={A1, A2, .., An} được viết là


6

R(U) hoặc R(A1, A2, .., An).
1.2. Các phép toán đạ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.4
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  s, là tập tất cả các
bộ thuộc r hoặc thuộc s. Ta c : r  s = {t│ t ∈ r ∨t ∈s}
Ví dụ 1.3:
r

rs

A

B

C

x1


y1

x2

;

s

A

B

C

z1

x1

y1

z1

y1

z2

x2

y2


z2

x2

y2

z1

A

B

C

x1

y1

z1

x2

y1

z2

x2

y2


z1

x2

y2

z2

Bảng 1.3: Bảng biểu diễn quan hệ r, s, r  s.
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  s, là tập tất cả
các bộ thuộc cả hai quan hệ r và s. Ta c : r  s = {t│ t ∈ r ∧ t ∈s}


7

Ví dụ 1.4:
r

r s

A

B

C

x1

y1


x2

;

s

A

B

C

z1

x1

y1

z1

y1

z2

x2

y2

z2


x2

y2

z1

A

B

C

x1

y1

z1

Bảng 1.4: Bảng biểu diễn quan hệ r, s, r  s.
1.2.3. Phép trừ
Ph p trừ của hai quan hệ khả hợp 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 ∧ t ∉ s}
Ví dụ 1.5 :
r

r\s=

A


B

C

x1

y1

x2

;

s

A

B

C

z1

x1

y1

z1

y1


z2

x2

y2

z2

x2

y2

z1

A

B

C

A

B

C

x2

y1


z2

x2

y2

z2

x2

y2

z1

s\r=

Bảng 1.5: Bảng biểu diễn quan hệ r, s, r \ s, s \ r.
1.2.4. Tích Đề-các
Cho quan hệ r xác định trên tập thuộc tính {A1, A2, ..., An} và quan hệ s
xác định trên tập thuộc tính {B1, B2, .., 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 :
r × s = {t=(a1, a2, .., an, b1, b2, .., bm)│(a1, a2, .., an) ∈r

 (b1 b2, .., bm) ∈s}


8

Ví dụ 1.6:

r

A

B

C

x1

y1

x2
x2

;

s

G

H

F

z1

x1

y1


z1

y1

z2

x2

y2

z2

y2

z1

x1

y2

z2

r× s
A

B

C


G

H

F

x1

y1

z1

x1

y1

z1

x1

y1

z1

x2

y2

z2


x1

y1

z1

x1

y2

z2

x2

y1

z2

x1

y1

z1

x2

y1

z2


x2

y2

z2

x2

y1

z2

x1

y2

z2

x2

y2

z1

x1

y1

z1


x2

y2

z1

x2

y2

z2

x2

y2

z1

x1

y2

z2

Bảng 1.6: Bảng biểu diễn các quan hệ r, s, r× 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={A1, A2, ..,
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à  x (r), là tập các bộ của r xác định trên tập thuộc tính X. Ta c :
 x (r) = {t.X│ t ∈ r}.


Ph p chiếu thực chất 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.


9

Ví dụ 1.7:
r

(A

B

C

D)

x1

2

x

6

y1

7


y

4

z1

7

z

7

x1

8

x

5

y1

2

y

6

B (r)(B)


2
7
8
 BD (r)(B

D)

2

6

7

4

7

7

8

5

1.2.6. Phép chọn
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
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 thuộc
tính hoặc giữa một biến là một thuộc tính và một giá trị hằng. Biểu thức chọn

F cho giá trị đúng hoặc sai đối với mỗi bộ đã cho của quan hệ khi kiểm tra
riêng bộ đ .


10

- 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:  (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à F(r), là tập tất cả
các bộ của r thoả mãn F. Ta c : F(r) = {t│ t∈r



F(t)}.

Ví dụ 1.8:
r

(A

B

C

D)

x1

5


x

8

y1

7

y

6

z1

7

z

7

x1

9

x

5

y1


5

y

8

BD (r) (A

B

C

D)

y1

7

y

6

z1

7

z

7


x1

9

x

5

1.2.7. Phép kết nối
Cho 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ệ 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ệ 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}
Nếu M= UV=Ф, r*s sẽ cho ta tích Đề-các, trong đ mỗi bộ của quan
hệ r sẽ được gh p với mọi bộ của quan hệ s.


11

Ví dụ 1. 9:
r

r*s

A

B


C

x1

x

y

;

s

G

H

x2

x2

x3

y2

y2

y2

y3


z1

x

z2

A

B

C

G

H

y1

x

x2

x2

x3

z1

y


y2

y2

y3

x2

x

z2

y2

y3

Bảng 1.7: Bảng biểu diễn các quan hệ r, s, r*s.
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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
cho quan hệ s, kí hiệu là r  s, là tập tất cả các bộ t trên U\V sao cho với mọi
bộ v  s thì khi gh p bộ t với bộ v ta được một bộ thuộc r.
Ta có: r † s = {t│ v ∈ s, (t, v) ∈ r}
Ví dụ 1.10:
r

A

B


C

D

x1

1

x1

y1

2

z1

;

s

A

B

2

x1

1


x1

2

y1

2

3

x1

2

z1

3

x1

1

x1

4

y1

2


y1

4

z1

3

z1

5


12

r÷s

C

D

x1

2
Bảng 1.8: Bảng biểu diễn các quan hệ r, s, r ÷ s.

1.3. Phụ thuộc hàm
1.3.1. Khái niệm 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.
1.3.2. Định nghĩa phụ thuộc hàm
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 1, t2 ∈ R mà t1(X)
= t2(X) thì t1(Y) = t2(Y).
1.3.3. 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, A2, ...,
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:
TC1: Tính phản xạ
Nếu Y ⊆ X thì X → Y.


13

TC2: Tính mở rộng hai vế
Nếu X → Y thì XW → YW.
TC3: Tính chất bắc cầu
Nếu X → Y, Y → Z thì X → Z.
TC4: Tính tựa bắc cầu
Nếu X → Y, YZ → W thì XZ → W.

TC5: Tính cộng đầy đủ
Nếu X → Y, Z → W thì XZ →YW.
TC6: Tính mở rộng vế phải
Nếu X → Y thì XZ→Y.
TC7: Tính cộng ở vế phải
Nếu X → Y, X → Z thì X → YZ.
TC8: Tính bộ phận ở vế phải
Nếu X → YZ thì X → Y.
TC9: Tính lũy đẳng
Nếu X → YZ, Z → W thì X → YZW.
1.3.4. Hệ tiên đề Amstrong
Các tính chất 1, 2, 3 của phụ thuộc hàm gọi là hệ tiên đề Amstrong của
các lớp phụ thuộc hàm.
- Tính phản xạ: Nếu Y ⊆ X thì X → Y
- Tính mở rộng hai vế (tăng trưởng): Nếu X → Y thì XW → YW
- Tính 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 đủ
Chứng minh
a. Tính đúng
1. Với mọi t1, t2

r(R) và t1(X) = t2(X), cần chứng minh t1(Y) = t2(Y).


14

Thật vậy, từ giả thiết t1(X) = t2(X) mà Y  X suy ra t1(Y) = t2(Y).
Vậy từ t1(X) = t2(X) ⇒ t1(Y) = t2(Y).
2. Với mọi t1, t2 r(R) và t1(XW) = t2(XW), cần chứng minh t1(YW)= t2(YW)

Phản chứng: Giả sử t1(YW) ≠ t2(YW).
Theo giả thiết c t1(XW) = t2(XW) ⇒

t1(X)= t2(X)
t1(W)= t2(W)

Nên để c t1(YW) ≠ t2(YW) thì t1(Y) ≠ t2(Y).
X → Y nên t1(X) = t2(X) ⇒

Nhưng cũng theo giả thiết ta lại c
t1(Y) = t2(Y) (mâu thuẫn) ⇒ t1(YW)= t2(YW).

Vậy từ t1(XW) = t2(XW) ⇒ t1(YW)= t2(YW).
3. Với mọi t1, t2 r(R) và t1(X) = t2(X), cần chứng minh t1(Z) = t2(Z)
Phản chứng: Giả sử t1(Z) ≠ t2(Z).
Theo giả thiết X → Y nên t1(X) = t2(X) ⇒ t1(Y) = t2(Y).
Mặt khác, cũng theo giả thiết c Y → Z nên t1(Y) = t2(Y) ⇒ t1(Z) = t2(Z)
(mâu thuẫn).
Vậy từ t1(X) = t2(X) ⇒ t1(Z)= t2(Z).
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ộ t1, t2 như sau:
r

A


B

...

F

G

H

...

M

t1

1

1

...

1

1

1

...


1

t2

1

1

...

1

0

0

...

0


15

Trong đ , các thuộc tính trong t1 đều có giá trị 1, các thuộc tính trong t2
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

 X+ ,

vì nếu không sẽ vi phạm tính bằng nhau của W trên hai bộ t 1 và t2. Hơn nữa,

 X+ 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  X+. Theo tính chất phản xạ
V không thể là tập con của X+, bởi vì nếu V

nếu W  X+ thì X → W, mà W → V nên X → V (theo tính chất bắc cầu). Do
A

 X+ nên X → A hay A  X+. Điều đ là vô lý, bởi vì A  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  X+ và Y  X+, vì

nếu không sẽ vi phạm sự bằng nhau trên các bộ t1, t2 của X và Y. Nhưng nếu
Y  X+ thì X → Y sẽ suy diễ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.5. 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 ⊆ U ta c các hệ tiên đề tương đương với hệ tiên đề Amstrong như sau:
Hệ tiên đề B0
Nếu X → YZ thì X → Y
Nếu X → YZ và Z → AW thì X → YZW
Hệ tiên đề S0

Nếu Y ⊆X thì X → Y
Nếu X → Y và YZ → V thì XZ → V


16

Hệ tiên đề D0
Nếu X → Y và Y → Z thì X → Z
Nếu X → Y và Z → W thì XZ → YW
Hệ tiên đề M0
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 và tập thuộc tính
Định nghĩa 1.6
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 }.
Định nghĩa 1.7
Cho lược đồ quan hệ R xác định trên tập thuộc tính U, cho XU, tập
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 :
X+ = {A│X → A F+}.
Đôi khi ta kí hiệu XF+ để lấy bao đ ng của X theo tập phụ thuộc hàm F.
Thuật toán 1.1: Tìm bao đóng của tập thuộc tính
Cho tập phụ thuộc hàm F trên tập thuộc tính U và một tập con các
thuộc tính X trong U. Để xác định bao đ ng X+ của tập thuộc tính X ta xây
dựng dãy bao nhau X(0)  X(1)  …  X(i) như sau
Xuất phát: Đặt X(0) = X,
Với i > 0, ta đặt X(i+1) = X(i)


n

R
L  RF
L X( i )

Nếu X(i+1) = X(i) thì dừng thuật toán và cho kết quả X+ = X(i)
Algorithm Baodong


×