1
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, 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ô phòng Sau Đại Học và thư viện 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. Tôi xin gửi lời cảm ơn sâu sắc tới
thầy PGS.TS Trịnh Đình Thắng đang công tác tại trường Đại học Sư phạm
Hà Nội 2 đã trực tiếp hướng dẫn, định hướng chuyên mô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.
Tôi xin được bầy tỏ sự biết ơn sâu sắc đến gia đình đã tạo mọi điều
kiện tốt nhất để tôi có thể hoàn thành tốt mọi công việc trong quá trình thực
hiện luận văn. Bên cạnh đó, tôi cũng xin gửi lời cảm ơn của mình tới bạn bè
và đồng nghiệp, luôn quan tâm, chia sẻ, động viên tôi trong suốt thời gian
thực hiện luận văn.
Trong quá trình thực hiện công tác nghiên cứu nhưng luận văn không
thể tránh khổi những thiếu sót. Tôi xin chân thành cảm ơn những ý kiến góp ý
của quý thầy cô, quý đồng nghiệp và bạn bè.
Vĩnh Phúc, ngày 01 tháng 12 năm 2015
Học viên
Nguyễn Thế Vinh
2
LỜI CAM ĐOAN
Tôi xin cam đoan toàn bộ nội dung được trình bày trong bản luận văn
này là kết quả tìm hiểu và nghiên cứu của riêng tôi, đâ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, rõ ràng 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
Nguyễn Thế Vinh
MỤC LỤC
LỜI CẢM ƠN....................................................................................................9
LỜI CAM ĐOAN..............................................................................................2
3
MỤC LỤC.........................................................................................................3
DANH MỤC KÝ HIỆU VÀ CHỮ CÁI VIẾT TẮT.........................................6
DANH MỤC CÁC BẢNG................................................................................7
DANH MỤC CÁC HÌNH VẼ...........................................................................8
MỞ ĐẦU...........................................................................................................9
CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ VÀ CÁC DẠNG PHỦ .......12
1.1. Mô hình dữ liệu quan hệ.......................................................................................... 12
1.1.1. Thuộc tính và miền thuộc tính........................................................12
1.1.2. Quan hệ, lược đồ quan hệ...............................................................12
1.2. Các phép toán đại số quan hệ................................................................................ 14
1.2.1. Phép hợp..........................................................................................14
1.2.2. Phép giao.........................................................................................15
1.2.3. Phép trừ...........................................................................................15
1.2.4. Tích Đề-các.....................................................................................16
1.2.5. Phép chiếu.......................................................................................17
1.2.6. Phép chọn........................................................................................18
1.2.7. Phép kết nối.....................................................................................19
1.2.8. Phép chia.........................................................................................19
1.3. Phụ thuộc hàm........................................................................................20
1.3.1. Các tính chất của phụ thuộc hàm....................................................21
1.3.2. Hệ tiên đề Amstrong.......................................................................21
1.4. Bao đóng .................................................................................................22
1.4.1. Bao đóng của tập phụ thuộc hàm và tập thuộc tính........................22
1.4.2. Bài toán thành viên.........................................................................26
4
1.5. Các dạng phủ..........................................................................................27
1.5.1. Phủ tương đương.............................................................................27
1.5.2. Phủ không dư..................................................................................27
1.5.3. Phủ thu gọn tự nhiên.......................................................................28
1.5.4. Phủ thu gọn trái...............................................................................30
1.5.5. Phủ thu gọn phải.............................................................................31
1.5.6. Phủ thu gọn.....................................................................................32
1.5.7. Phủ tối thiểu....................................................................................32
1.5.8. Phủ cực tiểu.....................................................................................33
1.6. Kết luận chương 1..................................................................................34
CHƯƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI.........................................35
2.1. Khối, lược đồ khối và lát cắt.................................................................................. 35
2.1.1. Khối, lược đồ khối..........................................................................35
2.1.2. Lát cắt..............................................................................................37
2.2. Các phép tính trên khối.........................................................................39
2.2.1. Phép chèn........................................................................................39
2.2.2. Phép lọa bỏ......................................................................................40
2.2.3. Phép sửa đổi....................................................................................40
2.3. Đại số quan hệ trên khối.......................................................................................... 40
2.3.1. Phép hợp..........................................................................................41
2.3.2. Phép giao.........................................................................................42
2.3.3. Phép trừ...........................................................................................43
2.3.4. Tích Đề các.....................................................................................43
2.3.5. Tích Đề các theo tập chỉ số.............................................................44
5
2.3.6. Phép chiếu.......................................................................................44
2.3.7. Phép chọn........................................................................................45
2.3.8. Phép kết nối.....................................................................................45
2.3.9. Phép chia.........................................................................................46
2.4. Phụ thuộc hàm........................................................................................47
2.5. Bao đóng của tập thuộc tính chỉ số.......................................................49
2.6. Kết luận chương 2..................................................................................51
CHƯƠNG 3: PHỦ VÀ THUẬT TOÁN TÌM PHỦ TRONG MÔ HÌNH DỮ
LIỆU DẠNG KHỐI........................................................................................52
3.1. Phủ của lược đồ khối..............................................................................52
3.1.1. Phủ không dư thừa .........................................................................52
3.1.2. Phủ tối thiểu ...................................................................................53
3.1.3. Phủ thu gọn ....................................................................................54
3.1.4. Phủ cực tiểu ....................................................................................62
3.2. Mối quan hệ giữa phủ cực tiểu của lược đồ khối và lược đồ lát cắt ..64
3.3. Xây dựng phần mềm Demo tìm phủ cực tiểu trên lược đồ khối..........66
3.3.1. Giới thiệu bài toán ..........................................................................66
3.3.2. Dữ liệu đầu vào...............................................................................66
3.3.3. Một số giao diện chương trình và hướng dẫn sử dụng...................67
3.5. Kết luận chương 3..................................................................................71
KẾT LUẬN.....................................................................................................72
TÀI LIỆU THAM KHẢO...............................................................................73
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:
6
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 hợp
\
�
Phép trừ
�
Nằm trong
�
Thuộc
�
Không thuộc
X+
Bao đóng của tập thuộc tính X
≢
Tương đương
Rỗng
Tồn tại
Phép giao
Tập con
Không tương đương
DANH MỤC CÁC BẢNG
Bảng 1.1. Biểu diễn quan hệ r.............................................................................
Bảng 1.2. Biểu diễn ví dụ học sinh......................................................................
Bảng 1.3. Bảng biểu diễn quan hệ r, s, r s.......................................................
7
Bảng 1.4. Bảng biểu diễn quan hệ r, s, r s.......................................................
Bảng 1.5. Bảng biểu diễn quan hệ r, s, r – s, s – r...............................................
Bảng 1.6. Bảng biểu diễn các quan hệ r, s, r× s..................................................
Bảng 1.7. Bảng biểu diễn các quan hệ r, s, r*s....................................................
Bảng 1.8. Bảng biểu diễn các quan hệ r, s, r ÷ s..................................................
Bảng 2.1. Bảng biểu diễn khối điểm học viên DiemHV(R’)..............................
Bảng 2.3. Bảng biểu diễn lát cắt r(RHọc kỳ 2)..........................................................
Bảng 2.4. Biểu diễn họ gồm 2 quan hệ r1, r2........................................................
8
DANH MỤC CÁC HÌNH VẼ
Hình 2.1. Biểu diễn khối điểm sinh viên DiemSV(R).........................................
Hình 2.2. Biểu diễn các khối r(R), s(R), t(R)......................................................
Hình 2.3. Biểu diễn 2 khối r, s.............................................................................
Hình 2.4. Biểu diễn các khối r, s, r s...............................................................
Hình 2.5. Biểu diễn các khối r, s, r s...............................................................
Hình 2.6. Biểu diễn các khối r, s, r - s...............................................................
Hình 2.7. Biểu diễn các khối r, r’ = P(r)...........................................................
Hình 3.1. Danh sách các phụ thuộc hàm.............................................................
Hình 3.2. Giao diện chương trình tìm phủ tối thiểu............................................
Hình 3.3. Chức năng nhập dữ liệu.......................................................................
Hình 3.4. Danh sách các phụ thuộc hàm đầu vào................................................
Hình 3.5. Danh sách các phụ thuộc hàm vế phải chỉ có 1 thuộc tính..................
Hình 3.6. Danh sách tập phụ thuộc hàm loại bỏ dư thừa ở vế phải.....................
Hình 3.7. Danh sách các phụ thuộc hàm tối thiểu cần tìm..................................
Hình 3.8. Kết quả tìm phủ tối thiểu của lát cắt thứ nhất......................................
Hình 3.9. Kết quả tìm phủ tối thiểu của lát cắt thứ hai........................................
Hình 3.10. Kết quả tìm phủ tối thiểu của lát cắt thứ ba.......................................
9
MỞ ĐẦU
1. Lí do chọn lựa đề 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, đặc biệt là các thuật
toán tìm phủ trong mô hình dữ liệu dạng khối. Vì vậy tôi chọn đề tài: “Một số
thuật toán tìm phủ trong mô hình dữ liệu dạng khối ” để nghiên cứu.
10
2. Mục đích nghiên cứu
- Trình bày một số khái niệm liên quan đến phủ, các thuật toán tìm phủ
đối với lược đồ khối trong mô hình dữ liệu dạng khối.
- Phát biểu và tính độ phức tạp của các thuật toán tìm phủ.
- Đưa ra mệnh đề, phát biểu và chứng minh về mối quan hệ giữa phủ
cực tiểu của lược đồ khối và lược đồ lát cắt.
3. Nhiệm vụ nghiên cứu
Để đạt được các mục đích trên, luận văn đặt ra các nhiệm vụ nghiên
cứu sau.
- Tìm hiểu về mô hình dữ liệu dạng khối.
- Trình bày một số khái niệm liên quan đến phủ.
- Trình bày các thuật toán tìm phủ, tính độ phức tạp của thuật toán đó.
- Xây dựng chương trình Demo tìm phủ tối thiểu trên khối
4. Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: phủ và các thuật toán tìm phủ của lược đồ khối
trong mô hình dữ liệu dạng khối.
- Phạm vi nghiên cứu: các phủ 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, tôi thực hiện theo 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ừ đó đưa ra mệnh đề
mới về mối quan hệ giữa phủ cực tiểu của lược đồ khối và lược đồ lát cắt, xây
dựng dựng chương trình Demo tìm phủ tối thiểu trên khối.
6. Những đóng góp của đề tài
- Đưa ra các mệnh đề, tính chất, phát biểu và chứng minh các tính chất
về mối quan hệ giữa phủ cực tiểu của lược đồ khối và lược đồ lát cắt.
- Xây dựng chương trình Demo tìm phủ tối thiểu của lược đồ khối.
11
7. Cấu trúc 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à sau
cùng là tài liệu tham khảo.
Chương 1: Mô hình dữ liệu quan hệ và các dạng phủ
Chương 2: Mô hình dữ liệu dạng khối
Chương 3: Phủ và thuật toán tìm phủ trong mô hình dữ liệu dạng khối
12
CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ VÀ CÁC DẠNG PHỦ
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ệ và các dạng phủ 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à các dạng phủ các vấn đề
này được trình bày ở chương 1 đã đượ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 A i 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:
UD
Ai
hj :U →
sao cho hj (Ai) DAi (i=1, 2, ...,n)
Ta có thể xem một quan hệ như một bảng, trong đó mỗi hàng (phần tử)
Ai �U
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:
13
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
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 = (d 1, 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={A 1, 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, trừ, tích Đề các
- Phép toán quan hệ: chiếu, chọn, kết nối, chia.
14
Đị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
A
x1
x2
x2
B
y1
y1
y2
C
z1
z2
z1
rs
A
x1
x2
x2
x2
B
y1
y1
y2
y2
C
z1
z2
z1
z2
;
s
A
x1
x2
B
y1
y2
C
z1
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}
Ví dụ 1.4:
r
A
x1
x2
x2
B
y1
y1
y2
C
z1
z2
z1
r s
A
x1
B
y1
C
z1
;
s
A
x1
x2
B
y1
y2
C
z1
z2
15
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
A
x1
x2
x2
B
y1
y1
y2
C
z1
z2
z1
r\s= A
x2
x2
B
y1
y2
C
z2
z1
;
s
A
x1
x2
B
y1
y2
C
z1
z2
s\r= A
x2
B
y2
C
z2
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}
Ví dụ 1.6:
r
A
r× s x
1
A
x2
x1
B
C
G
H
F
y1
B
y1
y1
z1
x1
y1
G
x1
x2
H
y
y1 2
z1
F
z2
z1
C
z1
x2
y12
z1 z1
x2
x1 y2 y2
z2z2
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
x1
z2
;
s
16
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={A 1, 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.
Ví dụ 1.7:
r
(A
x1
y1
z1
x1
y1
�B
B
2
7
7
8
2
(r)
(B)
2
7
8
C
x
y
z
x
y
D)
6
4
7
5
6
17
�BD
(r)(B
2
7
7
8
D)
6
4
7
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ộ đó.
- 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
Ví dụ 1.8:
r
(A
x1
y1
z1
x1
y1
B�D
B
5
7
7
9
5
(r) (A
y1
z1
C
x
y
z
x
y
D)
8
6
7
5
8
B
C
D)
7
7
y
z
6
7
�F(t)}.
18
x1
9
x
5
1.2.7. Phép kết nối
Cho quan hệ r(U) và s(V). Đặt M=UV. 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= UV=Ф, 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:
r
A
x1
y
z1
r*s
A
y1
z1
x2
B
x
y2
x
C
x2
y2
z2
;
s
G
x2
y2
H
x3
y3
B
C
G
H
x
x2
x2
x3
y
y2
y2
y3
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 VU, 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
bộ v
¿
s, là tập tất cả các bộ t trên U\V sao cho với mọi
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:
¿
19
r
A
x1
y1
z1
x1
y1
z1
B
1
2
3
1
2
3
r÷s C
x1
D
2
C
x1
x1
x1
x1
y1
z1
D
2
2
2
4
4
5
;
s
A
x1
y1
z1
B
1
2
3
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
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.5
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).
20
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 1, A2, ...,
An}, cho X, Y, Z, WU 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.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 U ta có hệ tiên đề Amstrong như sau:
1- Phản xạ: Nếu Y 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
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 XU, 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à
- Xem thêm -