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

Một số tính chất của α – phụ thuộc hàm trên khối và lát cắt

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.02 MB, 58 trang )

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
VIỆN CÔNG NGHỆ THÔNG TIN
********

NGUYỄN VĂN HÒA

MỘT SỐ TÍNH CHẤT
CỦA α - PHỤ THUỘC HÀM
TRÊN KHỐI VÀ LÁT CẮT

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm Tin học

HÀ NỘI – 2018


TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
VIỆN CÔNG NGHỆ THÔNG TIN
********

NGUYỄN VĂN HÒA

MỘT SỐ TÍNH CHẤT
CỦA α - PHỤ THUỘC HÀM
TRÊN KHỐI VÀ LÁT CẮT
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm Tin học

Người hướng dẫn khoa học
PGS. TS. TRỊNH ĐÌNH THẮNG


HÀ NỘI – 2018


LỜI CẢM ƠN
Trong quá trình thực hiện đề tài “Một số tính chất của α – phụ thuộc hàm
trên khối và lát cắt”, ngoài sự cố gắng của bản thân, em đã nhận được sự giúp đỡ
tận tình, tạo điều kiện của các thầy, cô giáo trong Viện Công nghệ thông tin, đặc
biệt là thầy giáo hướng dẫn - PGS.TS Trịnh Đình Thắng cùng với gia đình và
bạn bè.
Em xin chân thành biết ơn chân thành đến thầy giáo Trịnh Đình Thắng đã
tận tình giúp đỡ, hướng dẫn và chỉ bảo em trong suốt quá trình thực hiện đề tài.
Hà Nội, tháng 5 năm 2018
Sinh viên

Nguyễn Văn Hòa


LỜI CAM ĐOAN
Em xin cam đoan đây là kết quả nghiên cứu của mình dưới sự hướng dẫn
của PGS. TS Trịnh Đình Thắng.
Các số liệu, kết quả nêu trong khóa luận là trung thực và chưa từng được
ai công bố trước đó.
Hà Nội, tháng 5 năm 2018
Sinh viên

Nguyễn Văn Hòa


MỤC LỤC
MỞ ĐẦU ............................................................................................................... 1

CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ ............................................... 3
1.1. Mô hình dữ liệu quan hệ .............................................................................. 3
1.1.1. Thuộc tính và miền thuộc tính............................................................ 3
1.1.2. Quan hệ, lược đồ quan hệ ................................................................... 3
1.2. Các phép toán đại số quan hệ ...................................................................... 4
1.3. Phụ thuộc hàm ........................................................................................... 10
1.3.1. Khái niệm phụ thuộc hàm ................................................................ 10
1.3.2. Định nghĩa phụ thuộc hàm ............................................................... 11
1.3.3. Các tính chất của phụ thuộc hàm ..................................................... 11
1.3.4. Hệ tiên đề Amstrong ........................................................................ 12
1.4. Bao đóng .................................................................................................... 14
1.4.1

Bao đóng của tập phụ thuộc hàm và tập thuộc tính .......................... 14

1.4.2

Bài toán thành viên ........................................................................... 18

CHƯƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI ......................................... 19
2.1. Khối, lược đồ khối và lát cắt ...................................................................... 19
2.1.1. Khối, lược đồ khối ............................................................................ 22
2.1.2. Lát cắt ............................................................................................... 22
2.2. Các phép tính trên khối .............................................................................. 24
2.2.1. Phép chèn ......................................................................................... 24
2.2.2. Phép loại bỏ ...................................................................................... 24
2.2.3. Phép sửa đổi ...................................................................................... 25
2.3. Đại số quan hệ trên khối ............................................................................ 25
2.4. Phụ thuộc hàm ........................................................................................... 31
2.5. Bao đóng của tập thuộc tính chỉ số ............................................................ 32

CHƯƠNG 3: α - PHỤ THUỘC HÀM TRONG MÔ HÌNH DỮ LIỆU
DẠNG KHỐI...................................................................................................... 35
3.1. α - phụ thuộc hàm trong mô hình dữ liệu dạng khối ................................. 35


3.1.1. Khái niệm xấp xỉ mức α .................................................................... 35
3.1.2.

α - phụ thuộc hàm ............................................................................. 37

3.2. Một số tính chất của α - phụ thuộc hàm .................................................... 38
3.3.

Một số tính chất mở rộng của α - phụ thuộc hàm trong mô hình dữ liệu
dạng khối ...............................................................................................

43

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ....................................................... 48
TÀI LIỆU THAM KHẢO................................................................................. 49


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

Kí hiệu

Ý nghĩa

FD


Phụ thuộc hàm

LS

Vế trái

LR

Vế phải

TC

Tính chất



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ừ



Phép kết nối



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


DANH MỤC CÁC BẢNG
Bảng 1.1:

Biểu diễn quan hệ r. .......................................................................... 4

Bảng 1.2:


Biểu diễn ví dụ sinh viên................................................................... 4

Bảng 1.3:

Các bảng biểu diễn 3 quan hệ r, s, r  s............................................ 5

Bảng 1.4:

Các bảng biểu diễn 3 quan hệ r, s, r  s............................................ 6

Bảng 1.5:

Các bảng biểu diễn 4 quan hệ r, s, r \ s, s \ r...................................... 6

Bảng 1.6:

Các bảng biểu diễn 3 quan hệ r, s, r× s. ............................................ 7

Bảng 1.7:

Các bảng biểu diễn 4 quan hệ r, , B (r), BD (r), ABC (r). ................. 8

Bảng 1.8:

Các bảng biểu diễn 2 quan hệ r, BD (r) ........................................... 9

Bảng 1.9: Các bảng biểu diễn 3 quan hệ r, s, r*s ............................................... 9
Bảng 1.10: Các bảng biểu diễn các quan hệ r, s, r ÷ s. ...................................... 10
Bảng 2.1:


Bảng biểu diễn khối điểm học viên DiemSV(R) ............................ 22

Bảng 2.2:

Bảng biểu diễn lát cắt r(RKì 2).......................................................... 22

Bảng 2.3:

Biểu diễn họ gồm 2 quan hệ r1, r2 .................................................... 23

Bảng 3.1:

Quan hệ gần nhau trên miền giá trị của A1 .......................................... 38


DANH MỤC CÁC HÌNH
Hình 2.1: Một phần mô hình của khối BANHANG ........................................... 20
Hình 2.2: Một phần mô hình của khối DIEMSV ................................................ 24
Hình 2.3: Biểu diễn các khối r(R), s(R), t(R). ..................................................... 24
Hình 2.4: Biểu diễn 2 khối r, s............................................................................. 25
Hình 2.5: Biểu diễn các khối r, s, r  s. .............................................................. 26
Hình 2.6: Biểu diễn các khối r, s, r  s. .............................................................. 27
Hình 2.7: Biểu diễn các khối r, s, r \ s. ................................................................ 27
Hình 2.8: Biểu diễn các khối r, r = P(r)............................................................. 29
Hình 3.1: Biểu diễn khối sinh viên 3 ................................................................... 38
Hình 3.2: Biểu diễn của các khối r1, r2 ................................................................ 46


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

Công nghệ thông tin đã trở thành một lĩnh vực không thể thiếu của đời
sống xã hội, nhất là trong thời kì công nghiệp hóa, hiện đại hóa đất nước. Trong
đó, nhu cầu xây dựng các hệ thống thông tin được đặc biệt quan tâm. Để có thể
xây dựng được một hệ thống tốt thì phải sử dụng các mô hình dữ liệu thích hợp.
Chính vì vậy, các mô hình dữ liệu đã lần lượt ra đời và được sử dụng rộng rãi
cho đến ngày nay 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 quan hệ…
Mô hình quan hệ do E. Codd đề xuất ra năm 1970 được quan tâm hơn hết
vì nó được xây dựng trên một cơ sở toán học chặt chẽ. Tuy nhiên, do các quan
hệ có cấu trúc phẳng (tuyến tính) nên các 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,…Vì thế, việc
mở rộng mô hình quan hệ được nhiều nghiên cứu quan tâm. Từ đó, đã có một số
hướng mở rộng mô hình quan hệ được đề xuất nghiên cứu như: mô hình dữ liệu
đa chiều, khối dữ liệu, kho dữ liệu, mô hình dữ liệu dạng khối...
Ở trong mô hình dữ liệu dạng khối, các khối là khái niệm cơ bản được mở
rộng từ các quan hệ trong mô hình quan hệ, các khối này có thể biểu diễn các dữ
liệu có tính chất động (biểu diễn các dữ liệu có thuộc tính thay đổi theo thời
gian, không gian…) có khả năng đáp ứng tốt đối với nhiều lớp bài toán phức
tạp.
Trong quá trình nghiên cứu về mô hình dữ liệu khối, việc xây dựng và
phân tích mối quan hệ phụ thuộc dữ liệu đóng vai trò quan trọng trong việc thiết
kế và xây dựng cơ sở dữ liệu. Từ đó, trong khóa luận này em sẽ đi sâu vào việc
nghiên cứu các dạng phụ thuộc hàm của mô hình dữ liệu khối, đặc biệt là α - phụ
thuộc hàm. Vì vậy, em đã chọn đề tài: “Một số tính chất của α- phụ thuộc hàm
trong khối và lát cắt” để hoàn thiện hơn về lý thuyết dữ liệu dạng khối.
2. Mục đích nghiên cứu
Tìm hiểu về các phụ thuộc trên lược đồ khối sau đó đi sâu và nghiên cứu

1



một số tính chất của α - phụ thuộc hàm trên lược đồ khối và lược lát cắt.
3. Nhiệm vụ nghiên cứu
- Tìm hiểu về mô hình dữ liệu dạng khối.
- Tìm hiểu về lý thuyết α - phụ thuộc hàm trong mô hình dữ liệu dạng khối.
- Phát biểu và chứng minh một vài tính chất mới của α - phụ thuộc hàm trên
lược đồ khối.
4. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu
Các tính chất của α - phụ thuộc hàm trong mô hình dữ liệu dạng khối.
Phạm vi nghiên cứu:
Mô hình dữ liệu dạng 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 và chứng minh.
6. Những đóng góp của đề tài
Phát biểu và chứng minh một số tính chất mới của α - phụ thuộc hàm trên
lược đồ khối và lược đồ lát cắt.
7. Cấu trúc khóa luận
Ngoài phần mở đầu, kết luận và hướng phát triển, nội dung khóa luận
gồm 3 phần:
Chương 1: Mô hình dữ liệu quan hệ.
Chương 2: Mô hình dữ liệu dạng khối.
Chương 3: α – phụ thuộc hàm trong mô hình dữ liệu dạng khối.

2


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 rất nhiều tác

giả quan tâm nghiên cứu cũng như được sử dụng phổ biến và rộng rãi bởi những
ưu điểm vượt trội của nó. Chương này đưa ra những khái niệm cơ bản nhất của
mô hình dữ liệu quan hệ và được tham khảo trên các 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 Sinhvien có các thuộc tính như: MaSV (mã sinh viên),
Hoten (họ tên), NgaySinh (ngày sinh), Điachi (địa chỉ),…
Miền giá trị của các thuộc tính của đối tượng Sinhvien:
Dom(MaSV) = {‘SV01’, ‘SV02’, ‘SV03’,...};
Dom(Hoten) = {‘Lỗ Thị H’, ‘Nguyễn Văn A’,...};
Dom(NgaySinh) = {‘20/06/96’, ‘13/12/96’,...};
Dom(Điachi) = {‘HN’, ‘XH’, ‘PY’,…}.
1.1.1. 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:
DAi sao cho hj(Ai) ∈ DAi (i=1, 2,..., n).

h j: U →
Ai

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:
3


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

A2



An

h1

h1(A1)

h1(A2)



h1(An)

h2

h2(A1)

h2(A2)




h2(An)











hm

hm(A1)

hm(A2)



hm(An)

Ví dụ 1.2:
Bảng 1.2: Biểu diễn quan hệ sinh viên.
Sinhvien

MaSV

HOTEN


NS

DC

LOP

SV01

Hường

15/12/96

VP

A

SV02

Hạnh

11/05/96

LC

B

SV03

Hòa


28/06/96

HN

C

Trong biểu diễn quan hệ sinh viên, U = {A1, A2,…, A5} với các thuộc tính:
A2 = HOTEN: họ tên

A1 = MaSV: mã sinh viên
A3 = NS: ngày sinh

A4 = DC: điạ chỉ

A5 = LOP: lớp

Bộ giá trị: (SV01, Hường, 15/12/96, VP, A) là một phần tử trong quan hệ
sinh viên.
Nếu có một bộ t = (d1, d2, d3,..., dn)  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 bộ t trên tập thuộc tính X.
Đị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à
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, hiệu, tích Đề các.
- Phép toán quan hệ: chiếu, chọn, kết nối, chia.
4



Đị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

Bảng 1.3: Các bảng biểu diễn 3 quan hệ r, s, r  s.
A

rs

s

B

C

A

B

C

a


b

1

e

g

7

c

d

5

c

d

5

A

B

C

a


b

1

c

d

5

e

g

7

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}.
Ví dụ 1.4:

r

rs

Bảng 1.4: Các bảng biểu diễn 3 quan hệ r, s, r  s.
A

B


C

a

b

1

e

g

7

c

d

5

c

d

5

b

d


8

A

B

C

c

d

5

s

5

A

B

C


1.2.3. Phép hiệu
Phép hiệu 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 :

Bảng 1.5: Các bảng biểu diễn 4 quan hệ r, s, r \ s, s \ r.

r

A

B

C

a

b

1

e

g

7

c

d

5

c


d

5

b

d

8

B

C

a

b

1

b

d

8

A

r\s


s

A

B

A

s\r

C

B

e

C

g

7

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}
Ví dụ 1.6:
Bảng 1.6: Các bảng biểu diễn 3 quan hệ r, s, r× s.


r

A

B

C

a

b

c
b

s

D

E

F

1

c

d


5

d

5

e

g

7

d

8

d

a

9

6


r×s
A

B


C

D

E

F

a

b

1

c

d

5

a

b

1

e

g


7

a

b

1

d

a

9

c

d

5

c

d

5

c

d


5

e

g

7

c

d

5

d

a

9

b

d

8

c

d


5

b

d

8

e

g

7

b

d

8

d

a

9

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





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ó:



(r) = {t.X│ t ∈ r}.
X

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.
Ví dụ 1.7:
Bảng 1.7: Các bảng biểu diễn 4 quan hệ r, B (r), BD (r), ABC (r).
r

A

B

C

D

a

2


b

6

b

7

d

4

g

7

e

7

c

8

a

5

g


2

b

6
7


B (r)

ABC (r)

BD (r)

B

B

D

2

2

6

7

7


4

8

7

7

8

5

A

B

C

a

2

b

b

7

d


g

7

e

c

8

b

g

2

d

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ộ đó.
- 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:
8


Bảng 1.8: Các bảng biểu diễn 2 quan hệ r,BD (r).
r

BD (r)

A

B

C

D

a
c

5
7

b
d

8
6


d

7

a

7

A

B

C

D

c

7

d

6

d

7

a


7

1.2.1. 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.
Ví dụ 1.9: Cho 2 quan hệ r(U), s(V), (U∩V ≠ ∅) như bảng 1.9:
Bảng 1.9: Các bảng biểu diễn 3 quan hệ r, s, r*s.
r

r*s

A

B

C

x

a

y
z

A


s

C

H

x2

x2

9

b

y2

y2

6

c

x2

B

C

H


x

a

x2

9

y

b

y2

6

z

c

x2

9
9


1.2.2. 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 gồm 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:
Bảng 1.10: Các bảng biểu diễn 3 quan hệ r, s, r ÷ s
r

r÷s

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

C

D

x1


2

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ừ đó 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.
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 phụ thuộc hàm chỉ ra rằng giá trị của một thuộc

10


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. Ta
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ệ xác định trên R và với hai bộ bất kỳ t1, 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.
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ế trá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 → → W thì X → YZW.
11


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 tậ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).
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,

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).
Nhưng cũng theo giả thiết ta lại có X → Y nên t1(X) = t2(X).
⇒ 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

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).
12


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

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ộ t1 và t2. Hơn nữa, V
không thể là tập con của X+, bởi vì nếu V  X+ thì W → V sẽ thỏa mãn trên r.

 X+. Theo tính chất phản xạ 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+.
Vậy phải có ít nhất một thuộc tính A

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.

13


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.

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, 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+ (X  U) 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+ để chỉ rõ 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)
L→ RF
LX( i )

14



Nếu X(i+1) = X(i) thì dừng thuật toán và cho kết quả X+ = X(i)
Algorithm Baodong
Format: Baodong(X,F)
- Tập phụ thuộc hàm F trên U

Input:

- Tập con thuộc tính X của U
- Y = X+ = {A│X → A F+}.

Output:
Method
Y:=X;
Repeat

Z:=Y;
for each FD L→R in F do
if L  Y then
Y:=YR;
endif;
endfor;
until Y=Z;
return Y;
end Baodong.
Thuật toán trên có độ phức tạp đa thức bậc hai theo chiều dài dữ liệu đầu
vào O(mn2), trong đó n là số lượng thuộc tính trong U, m là số lượng phụ thuộc
hàm trong tập 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+ ⊆ (XY)+
6. (X+Y)+ = (XY+) = (XY)+
7. X → Y  Y ⊆ X+
8. X → Y và Y → X X+ = Y+
15


Chứng minh:
1)

Lấy bất kỳ 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 ∈ X+.

2)

Lấy A ∈ X+, ta cần chứng minh A ∈ Y+.
Ta có A ∈ X+⇒ X → A.

(1)

Mà theo luật phản xạ X ⊆ Y ⇒ Y → X .

(2)

Vậy từ (1) và (2) ta suy ra Y→ A ⇒ A ∈ Y+.
3)

Giả sử X+ = A1A2....Ak.

Do A1 ∈ X+ nên X → A1.
Tương tự:

X → A2
.............
X → Ak

Theo luật hợp ta có X → A1A2....Ak ⇒ X → X+.
4)

Để chứng minh X++ = X+ ta đi chứng minh X+ ⊆ 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++ ⊆ X+
Lấy A ∈ X++, chứng minh A ∈ X+.
Do A ∈ X++⇒ X+ → A.

(3)

Mặt khác theo tính chất 3 ta có: X → X+.

(4)

Từ (3) và (4) suy ra điều phải chứng minh.
5)

Ta có X ⊆ XY
Theo tính chất 2 ta có X+ ⊆ (XY)+.

(5)


Tương tự ta cũng có : Y+ ⊆ (XY)+.

(6)

Từ (5) và (6) suy ra X+Y+ ⊆ (XY)+.
6)

Theo những chứng minh trên ta có:
X+ ⊆ X+ Y.

(7)

X+ ⊆ (XY)+.

(8)

Y+ ⊆ (XY)+.

(9)
16


×