Header Page 1 of 123.
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
Footer Page 1 of 123.
Header Page 2 of 123.
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.
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
Footer Page 4 of 123.
Header Page 5 of 123.
iv
1.3.4. Hệ tiên đề Amstrong .................................................................... 13
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
Footer Page 6 of 123.
Header Page 7 of 123.
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
\
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
≢
Header Page 9 of 123.
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
Footer Page 9 of 123.
Header Page 10 of 123.
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
Đố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ệ.
Footer Page 11 of 123.
Header Page 12 of 123.
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.
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:
Footer Page 13 of 123.
Header Page 14 of 123.
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
…
…
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
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à
Footer Page 14 of 123.
Header Page 15 of 123.
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}
y1
z1
y1
z2
x2
y2
z2
x2
y2
z1
A
B
C
x1
y1
7
Ví dụ 1.4:
r
r s
A
B
C
x1
y1
x2
;
s
A
B
C
z1
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
A
B
C
x2
y1
z2
x2
y2
z2
x2
y2
z1
x2
x2
;
s
G
H
F
z1
x1
y1
z1
y1
z2
x2
y2
x1
y1
z1
x1
y1
z1
x2
y2
z2
x1
y1
z1
x1
y2
z2
x1
y2
z2
x2
y2
z1
x1
y1
z1
x2
y2
z1
x2
y2
z2
r
(A
B
C
D)
x1
2
x
6
y1
7
y
4
z1
7
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ộ đ .
Footer Page 18 of 123.
Header Page 19 of 123.
10
y1
7
y
6
z1
7
z
7
x1
9
x
5
y1
5
y
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.
Footer Page 19 of 123.
Header Page 20 of 123.
11
Ví dụ 1. 9:
r
r*s
A
B
C
x
z2
A
B
C
G
H
y1
x
x2
x2
x3
z1
y
y2
C
D
x1
1
x1
y1
2
z1
;
s
A
B
2
x1
1
y1
4
z1
3
z1
5
Header Page 21 of 123.
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
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
Footer Page 22 of 123.
r(R) và t1(X) = t2(X), cần chứng minh t1(Y) = t2(Y).
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
Header Page 24 of 123.
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
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à
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 RF
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
Footer Page 25 of 123.