Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 60 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
60
Dung lượng
1,09 MB
Nội dung
TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN BÙI NHƢ NGỌC CÁC DẠNG BIỂU DIỄN CỦA KHÓA QUA PHÉP DỊCH CHUYỂN LƢỢC ĐỒ KHỐI 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 VIỆN CÔNG NGHỆ THÔNG TIN BÙI NHƢ NGỌC CÁC DẠNG BIỂU DIỄN CỦA KHÓA QUA PHÉP DỊCH CHUYỂN LƢỢC ĐỒ KHỐI 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 CAM ĐOAN Tơi xin cam đoan khóa luận tốt nghiệp nghiên cứu độc lập riêng Các định nghĩa, trích dẫn có nguồn gốc rõ ràng, công bố theo quy định pháp luật Các ví dụ, nghiên cứu khóa luận tốt nghiệp tơi tự tìm hiểu cách trung thực, khách quan Nếu có tranh chấp gì, tơi xin chịu hoàn toàn trách nhiệm Sinh viên nghiên cứu Bùi Nhƣ Ngọc LỜI CẢM ƠN Trân trọng cảm ơn giảng viên hướng dẫn PGS.TS Trịnh Đình Thắng, thầy giáo, cô giáo giảng viên khoa Công nghệ thông tin trường Đại học Sư phạm Hà Nội tạo điều kiện tốt để tơi thực khóa luận tốt nghiệp Sinh viên nghiên cứu Bùi Nhƣ Ngọc MỤC LỤC MỞ ĐẦU CHƢƠNG MƠ HÌNH DỮ LIỆU QUAN HỆ 1.1 Các khái niệm 1.2 Các phép toán lược đồ quan hệ 3 1.3 Phụ thuộc hàm 11 1.4 Bao đóng tập phụ thuộc hàm tập thuộc tính 1.5 Khóa lược đồ quan hệ 13 17 1.6 Phép dịch chuyển lược đồ quan hệ 17 1.7 Một số dạng biểu diễn khóa qua phép dịch chuyển lược đồ quan hệ 19 CHƢƠNG MƠ HÌNH DỮ LIỆU DẠNG KHỐI 2.1 Các khái niệm 22 22 2.2 Các phép toán đại số mơ hình liệu dạng khối 2.3 Phụ thuộc hàm 26 34 2.4 Bao đóng tập thuộc tính số lược đồ khối 35 2.5 Khóa lược đồ khối 37 CHƢƠNG KHÓA QUA PHÉP DỊCH CHUYỂN LƢỢC ĐỒ KHỐI 3.1 Phép dịch chuyển lược đồ khối 39 39 3.2 Biểu diễn khóa qua phép dịch chuyển lược đồ khối 41 3.3 Một số tính chất mở rộng khóa qua phép dịch chuyển lược đồ khối 44 KẾT LUẬN 51 TÀI LIỆU THAM KHẢO 52 DANH MỤC KÝ HIỆU VÀ CHỮ CÁI VIẾT TẤT Kí hiệu LĐQH Ý nghĩa Lược đồ quan hệ TC Tính chất ╞ Suy dẫn theo tiên đề theo logic ≠ Khác Với ∩ Phép giao Phép hợp \ Phép trừ Tập Nằm Thuộc Khơng thuộc X+ Bao đóng tập thuộc tính X Tương đương Rỗng Tồn DANH MỤC CÁC BẢNG Bảng 1.1 Quan hệ r Bảng 1.2 Quan hệ Nhanvien Bảng 1.3 Biểu diễn quan hệ Nhanvienl Nhanvien2 Bảng 1.4 Biểu diễn quan hệ Nhanvienl ∩ Nhanvien2 Bảng 1.5 Biểu diễn quan hệ Nhanvienl - Nhanvien2 Bảng 1.6 Biểu diễn quan hệ r * s Bảng 1.7 Biểu diễn quan hệ ∏ Bảng 1.8 Biểu diễn quan hệ Tienluong>6.000.000(Nhanvien) e Bảng 1.9 Biểu diễn phép nối tự nhiên r x s 10 Bảng 1.10 Biểu diễn phép chia 11 Bảng 2.1 Biểu diễn lát cắt r(R2/2018) 24 DANH MỤC CÁC HÌNH VẼ Hình 2.1 Biểu diễn khối BANHANG(R) 23 Hình 2.2 Biểu diễn khối r, s, r s 27 Hình 2.3 Biểu diễn khối r, s, r ∩ s 28 Hình 2.4 Biểu diễn khối r, s, r – s 30 Hình 2.5 Biểu diễn khối r, r‟=P(r) 32 MỞ ĐẦU Lý chọn đề tài Trong sống đại ngày nay, Công nghệ thông tin ảnh hưởng tới lĩnh vực Các ứng dụng Công nghệ thông tin phát triển vượt trội ngành khác từ kinh tế tới giáo dục, từ nông nghiệp tới dịch vụ, Trong đó, sở liệu phần cốt lõi tạo nên phát triển Công nghệ thông tin Để đáp ứng nhu cầu sử dụng đa dạng, nhiều mơ hình liệu nghiên cứu ứng dụng Một số mơ hình sử dụng phổ biến hệ thống sở liệu toàn cầ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 quan hệ, Trong đó, mơ hình quan hệ đánh giá cao xây dựng sở tốn học chặt chẽ Tuy nhiên mơ hình chưa đủ đáp ứng với ứng dụng phức tạp Vì vậy, người ta nghiên cứu ứng dụng rộng rãi mơ hình liệu dạng khối Ở mơ hình này, khái niệm khối mở rộng từ quan hệ mơ hình quan hệ, khối biểu diễn liệu dạng động, có khả giải tốn phức tạp Trong mơ hình liệu quan hệ mơ hình liệu dạng khối, việc xác định khóa vơ quan trọng Phép dịch chuyển lược đồ đề xuất nghiên cứu nhằm giảm tính phức tạp việc tìm khóa Để góp phần hồn thiện thêm mơ hình liệu dạng khối, em xin chọn đề tài: Các dạng biểu diễn khóa qua phép dịch chuyển lƣợc đồ khối Mục đích nghiên cứu Tìm hiểu khái qt mơ hình liệu dạng khối, sau sâu tìm hiểu nghiên cứu số dạng biểu diễn khóa qua phép dịch chuyển lược đồ khối Nhiệm vụ nghiên cứu - Tìm hiểu mơ hình liệu dạng khối - Tìm hiểu dạng biểu diễn khóa qua phép dịch chuyển lược đồ khối - Phát biểu chứng minh số dạng biểu diễn khóa qua phép dịch chuyển lược đồ khối - Minh họa số ví dụ Đối tƣợng phạm vi nghiên cứu Đối tƣợng: Khóa phép dịch chuyển lược đồ khối Phạm vi: Mơ hình liệu dạng khối Ý nghĩa khoa học thực tiễn đề tài - Biểu diễn khóa qua phép dịch chuyển lược đồ khối - Bổ sung thêm số tính chất biểu diễn khóa qua phép dịch chuyển lược đồ khối - Có thể sử dụng kết có việc xây dựng CSDL thực tế Phƣơng pháp nghiên cứu Phương pháp tổng hợp, phân tích vấn đề liên quan đến đề tài Phương pháp lý luận chứng minh Begin K:= {x(i) | x id, i = ̅̅̅̅̅ for each x in id for i:= to n if K - {x(i)} → K then K:= K - {x(i)}; retum(K); End Kết luận chƣơng Chương khóa luận tốt nghiệp trình bày khái niệm mơ hình sở liệu dạng khối như: Khái niệm khối, lược đồ khối, lát cát, phụ thuộc hàm, dạng chuẩn khối Ngồi ra, chương trình bày phép tốn khối, khái niệm phụ thuộc hàm, thuật tốn tìm khóa lược đồ khối 38 CHƢƠNG KHÓA QUA PHÉP DỊCH CHUYỂN LƢỢC ĐỒ KHỐI Chương trình bày phép dịch chuyển lược đồ khối số biểu diễn khóa qua phép dịch chuyển lược đồ khối Nội dung phần 3.1 3.2 tham khảo tài liệu [3], [4], [7] Còn phần 3.3 chương phát biểu chứng minh số kết biểu diễn khóa qua phép dịch chuyển lược đồ khối 3.1 Phép dịch chuyển lƣợc đồ khối n Cho hai lược đồ khối α = (R, F), β = (S, G), X i A}, A i 1 id (i ) , X = {x(i), а id, {1, 2, , n} Ta nói lược đồ β nhận từ lược đồ α qua phép dịch chuyển theo tập thuộc tính X, sau loại bỏ thuộc tính X lược đồ α ta thu lược đồ β Để kí hiệu phép dịch chuyển từ lược đồ α thành lược đồ β theo tập thuộc tính X ta viết: β = α\X Thao tác loại bỏ X từ lược đồ α thành lược đồ β sau: Tính S = R\X, R = (id; Al, A2, , An), ta loại bỏ thuộc tính Ai (i A) R, thủ tục có độ phức tạp O(nk), với k số phần tử A Với phụ thuộc hàm từ M → N F, với M, N n id (i ) ta tạo i 1 phụ thuộc hàm M\X → N\X G Thủ tục kí hiệu G = F\X có độ phức tạp O(mnk) với m số lượng phụ hàm F Từ ta thấy độ phức tạp phép dịch chuyển β = α\X = (R\X, F\X) O(mnk), tuyến tính theo chiều dài liệu vào Sau thực thủ tục G = F\X thì: - Nếu G chứa PTH tầm thường (dạng X → Y, X Y) ta loại chúng khỏi G - Nếu G chứa PTH trùng ta loại bớt PTH (G không chứa PTH trùng nhau) 39 Ví dụ 3.1 Cho lược đồ khối α = (R,F), R={id; A1, A2, …, A6}, id={1,2}, X n id ( i ) i 1 (i) X = {x , x ∊ id, i ∊ A}, A = {1, 4, 6} F = {(1(1)2(1)1(5)2(5)) → (1(4)2(4)), (1(1)2(1)) → (1(4)2(4)1(6)2(6)), (1(2)2(2)1(3)2(3)) → (1(5)2(5)), (1(5)2(5)) → (1(2)2(2)1(3)2(3))}, ta xác định lược đồ β = (S, G), β = α \ X Để xác định β, ta tính S G: S = R\X = id; A2, A3, A5), G = F\X = {(1(5)2(5)) → ∅ (loại), ∅ → ∅ loạ (2)2(2)1(3)2(3) (1(5)2(5)) → (1(2)2(2)1(3)2(3))} ≡ { → (2)2(2)1(3)2(3) (1(2)2(2)1(3)2(3))} Thuật toán dịch chuyển lƣợc đồ khối Thuật toán Dich_chuyen n Input: Lược đồ khối α = (R,F), X id ( i ) ; i 1 (i) X = {x , а id, i A}, A {1, 2, , n} Output: β = α \X = (V, G), V = R\X, G = F\X Phương pháp: V:= R\X; G:= ∅; For each FD LS → RS in F {LS\X → RS\X}; G:= G endfor; For each FD LS → RS in G If RS LS then G:= G\{LS → RS} endif; endfor; Return (V, G); Kết thúc Dich_chuyen; 40 → 1(5)2(5)), 1(5)2(5)), (1(5)2(5)) → Từ phân tích phần 3.1 ta thấy độ phức tạp thuật toán O(mnk), nghĩa phụ thuộc tuyến tính theo chiều dài liệu vào Độ phức tạp thuật toán đạt mức O(mnk) cách tổ chức liệu, với tập thuộc tính ta lưu x(i) theo số i, thuộc tính có số i đặt i đại diện Mặt khác, với cách lưu trữ tập X đại diện giá trị số thuộc A có số lượng k 3.2 Biểu diễn khóa qua phép dịch chuyển lƣợc đồ khối Mệnh đề 3.1 n Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); X, K id ( i ) i 1 (i) X = {x , x X id, i (i) А}; K ={ x , x id, i B}; A , B {1, 2, , n}; U0; β = (S, G); β = α \X Khi đó: a) Nếu K khóa β K khóa α b) Nếu Kx khóa βx = (Sx, Gx), Kx = {x(i), i B }, x id K khóa α Chứng minh a) Giả sử K khóa β ⟹ K siêu khóa β ⟹ theo mệnh đề 3.1 ta có K siêu khóa α (vì giả thiết X U0) Ta chứng minh K khóa α Giả sử ngược lại, K khơng khóa α, K‟ K mà K siêu khóa α Theo tính chất siêu khóa ta có K‟ = K‟ \ X (vì giả thiết X U0) siêu khóa β, điều mâu thuẫn với giả thiết K siêu khóa β Vậy K khóa α b) Giả sử Kx khóa βx = (Sx, Gx), Kx = { x(i), i id B}, x theo điều kiện cần đủ khóa khối ta có K khóa β Từ dựa vào kết câu a) ta có K khóa α Mệnh đề 3.2 (Điều kiện cần đủ) Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); X, K n id ( i ) ; i 1 (i) X = {x , x id, i (i) А }; K ={ x , x id, i 41 B}; A, B {1, 2, , n}; X U0; β = (S, G); β = α \X Khi đó: a) K khóa α K khóa β b) K khóa α Kx khóa βx = (Sx, Gx), Kx ={x(i), i В}, x id Chứng minh a) K khóa α ⟹ K khóa β Thật vậy, từ giả thiết K khóa α X U0 mệnh đề 3.1 ta suy K = K\X khóa β K khóa β ⟹ K khóa α Giả sử K khóa β X U0 ⟹ theo kết mệnh đề 3.1 ta có K khóa α b) Giả sử K khóa α kéo theo kết câu a) ta suy K khóa β ta có Kx khóa βx = (SX, GX), Kx = {x(i), i В}, x id c) Ngược lại,nếu Kx khóa βx = (Sx,Gx), Kx = {x(i), i В}, x id ⟹ ta có K khóa β Từ đó, áp dụng kết câu a) ⟹ K khóa α Mệnh đề 3.3 Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); X1, X2, K n id ( i ) i 1 (i) (i) (i) X1 = { x , x ∊ id, i ∊ А }, X2 ={ x , x ∊ id, i ∊ B}; K = {x , x ∊ id, i ∊ C} A, B, C {1, 2, , n}, X1 ∩ X2 = Ø ; β = (S1, G1), γ = (S2, G2); β = α \X1; γ = β \X2 Khi đó: a) Nếu K khóa α K\X1X2 khóa γ b) Nếu K khóa α Kx\X1xX2x khóa γx, x ∊ id, Kx = {x(i), i ∊C}, X1x = {x(i), i ∊ А}, X2x ={ x(i), i ∊ B} Mệnh đề 3.4 Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); X1, X2, K n id ( i ) i 1 (i) (i) (i) X1 = { x , x ∊ id, i ∊ А }, X2 ={ x , x ∊ id, i ∊ B}; K = {x , x ∊ id, i ∊ C} 42 {1, 2, , n}, X1 ∩ X2 = Ø ; X1, X2 A, B, C U0 , β = (S1,G1), γ = (S2,G2); β = α \X1; γ = β \X2 Khi đó: a) Nếu K khóa γ K khóa β K khóa α b) Nếu Kx khóa γx = (S2x, G2x) Kx khóa βx = (S1x, G1x) Kx khóa αx = (Rx,Fhx), x ∊ id c) Nếu Kx khóa γx = (S2x, G2x), x ∊ id K khóa β khóa α Chứng minh a) Nếu K khóa γ, theo giả thiết γ = β\X2; X2 U0 (U0 tập thuộc tính khơng khóa α khơng khóa β), ta suy K khóa β Mặt khác β = α \X1; X1 U0 ta có K khóa α b) Nếu Kx khóa γx = (S2x, G2x) theo giả thiết γ = β\X2 ta có γx= βx\X2x, áp dụng kết mệnh đề 3.4 ta suy Kx khóa βx = (Slx, Glx) Mặt khác β = α \X1, X1 U0 suy βx = αx\X1x; X1x U0 ta suy Kx khóa α x = (Rx, Fhx) Mệnh đề 3.5 Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); X1, X2, K n id ( i ) i 1 (i) (i) X1 = { x , x ∊ id, i ∊ А }, X2 = {x , x ∊ id, i A, B, C {1, 2, , n}, X1 X2 = Ø ; X1, X2 (i) B}; K = {x , x ∊ id, i ∊ C} U0, β = (S1, G1), γ = (S2, G2); β = α\X1; γ = β\X2 Khi đó: a) K khóa α K khóa γ b) K khóa α Kx khóa βx, Kx khóa γx, x ∊ id Chứng minh a) K khóa α, theo giả thiết β = α\X1, γ = β\X2; X1 43 X2 = Ø; X1, X2 U0, áp dụng dụng kết mệnh đề 3.4 ta suy K khóa α K khóa β Áp dụng kết mệnh đề 3.2 ta có K khóa β K khóa γ.Vậy K khóa α K khóa γ b) Nếu K khóa α, theo giả thiết β = α \X1, γ = β \X2; X1 X1, X2 X2 = Ø, U0 áp dụng kết mệnh đề 3.2 ta suy K khóa α Kx khóa βx, x ∊ id Áp dụng kết mệnh đề 3.4 ta lại có Kx khóa βx Kx khóa γx, với x ∊ id Vậy ta suy K khóa α Kx khóa βx, x id Kx khóa γx, x ∊ i 3.3 Một số tính chất mở rộng khóa qua phép dịch chuyển lƣợc đồ khối Trong phần này, ta nhắc lại số kí hiệu tập hợp sau: U0: Tập thuộc tính khơng khóa LĐQH UI: Giao khóa LĐQH UK: Khóa LĐQH Mệnh đề 3.6: Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); α1 = (R1, F1h); R1 = (id1; Al, A2, , An); α2 = (R2, F2h); R2 = (id2; Al, A2, , An); id2; id1 ∩ id2 = ∅; id = id1 n n id1(i ) ; X2, K2 X1, K1 i 1 id (i ) i 1 (i) X1 = {x , x ∊ id1, i ∊ A}; X2 = {x(i), x ∊ id2, i ∊ B}; K1 = {x(i), x ∊ id1, i ∊ A‟}; K2 = {x(i), x ∊ id2, i ∊ B‟}; X1 U01; X2 U02; Khi đó: Key (α) = Key (α1) ⊕ Key (α2) Chứng minh: Trước hết ta chứng minh: 44 Key (α1) = Key (α 1x) xid1 ⟹) Thật vậy, giả sử ta có K1 ∊ Key (α1) , áp dụng điều kiện cần đủ khóa lược đồ khối ta có: n ( K1 K1 = x(i ) ) = xid1 i 1 K1x xid1 Trong đó: K1x khóa lát cắt α1x, K1x ∊ Key (α1x), x ∊ id1 Suy ra: K1 ∊ Key (α1x) Từ suy Key (α1) xid1 ⟸) Ngược lại, giả sử K1 ∊ Key (α 1x) xid1 Key (α1x) xid1 (1) Ta chứng minh K1 ∊ Key (α1) Thật vậy, từ giả thiết K1 ∊ Key (α1x) xid1 K1x , K1x ∊ Key (α1x), Suy K1 = xid1 Áp dụng điều kiện cần đủ khóa khối, ta suy ra: K1 khóa lược đồ khối α1, suy K1 ∊ Key (α1) Từ (1) (2) suy Key (α1) = Key (α 1x) xid1 Hoàn toàn tương tự, ta chứng minh Key (α2) = Theo giả thiết, ta có id = id1 Suy Key (α 2x) xid id2; id1 ∩ id2 = ∅; Key (αx) = Key (αx) ⊕ Key (αx) xid Mà ta có: xid1 xid Key (αx) = Key (α1x) αx ≡ α1x x ∊ d1 Key (αx) = Key (α2x) αx ≡ α2x x ∊ d2 xid1 xid1 xid K (2) xid t có: Key (α) = Key (αx) = Key (α1x) ⊕ Key (α2x) xid xid1 = Key (α1) ⊕ Key (α2) Vậy Key (α) = Key (α1) ⊕ Key (α2) (đpcm) 45 xid Ví dụ 3.2 Cho lược đồ quan hệ α = (R, Fh); α1 = (R1, F1h); α2 = (R2,F2h); Trong đó: α = α1 α2; R = (id; Al, A2, A3, A4, A5); id = {x, y, z, t}; R1 = (id1; Al, A2, A3, A4, A5); id1 = {x, y}; R2 = (id2; Al, A2, A3, A4, A5); id2 = {z, t}; F1h = {x(1)x(2) → x(3)x(4), x(1) → x(5), y(2)y(3) → y(1) y(4), y(2) → y(5)} F2h = {z(1) → z(2)z(3)z(4), z(2) → z(5), t(2) → t(3)t(4) t(5), t(4) → t(1)} Theo giả thiết, ta có: F1h = {x(1)x(2) → x(3)x(4), x(1) →x(5), y(2)y(3) → y(1)y(4), y(2) → y(5)} ⟹ K1x = x(1)x(2), K1y = y(2)y(3) ⟹ K1 = x(1)x(2)y(2)y(3) F2h = {z(1) → z(2)z(3)z(4), z(2) → z(5), t(2) → t(3)t(4)t(5), t(4) → t(1)} ⟹ K2z = z(1), K2t = t(2) ⟹ K2 = z(1)t(2) Áp dụng mệnh đề 3.6, ta có Key (α) = Key (α1) ⊕ Key (α2) ⟹ K ∊ Key (α) K2 = x(1)x(2)y(2)y(3)z(1)t(2) K = K1 Mệnh đề 3.7 Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); α1 = (R1, F1h); R1 = (id1; Al, A2, , An); α2 = (R2, F2h); R2 = (id2; Al, A2, , An); id2; id1 ∩ id2 = ∅; id = id1 n n id1(i ) ; X2, K2 X1, K1 i 1 id (i ) i 1 (i) X1 = {x , x ∊ id1, i ∊ A}; X2 = {x(i), x ∊ id2, i ∊ B}; K1 = {x(i), x ∊ id1, i ∊ A‟}; K2 = {x(i), x ∊ id2, i ∊ B‟}; X1 U01; X2 U02; α1‟ = α1\X1; α2‟ = α2\X2; 46 Khi đó: Key (α) = Key (α‟1) ⊕ Key (α‟2) Chứng minh: Theo giả thiết, ta có: α1‟ = α1\X1 mà X1 U01 (tập thuộc tính khơng khóa α1) Suy ra: Key (α1) = Key (α‟1) (tính chất khóa khối qua phép dịch chuyển theo tập thuộc tính X1 Tương tự, α2‟ = α2\X2 mà X2 U01) U02 (tập thuộc tính khơng khóa α2) Suy ra: Key (α2) = Key (α‟2) (tính chất khóa khối qua phép dịch chuyển theo tập thuộc tính X1 U02) Từ kết mệnh đề 3.6, ta có: Key (α) = Key (α1) ⊕ Key (α2) = Key (α‟1) ⊕ Key (α‟2) Vậy Key (α) = Key (α‟1) ⊕ Key (α‟2) (đpcm) Ví dụ 3.3 Cho lược đồ quan hệ α = (R, Fh); α1 = (R1, F1h); α2 = (R2,F2h); Trong đó: α = α1 α2; R = (id; Al, A2, A3, A4, A5); id = {x, y, z, t}; R1 = (id1; Al, A2, A3, A4, A5); id1 = {x, y}; R2 = (id2; Al, A2, A3, A4, A5); id2 = {z, t}; F1h = {x(1)x(2) →x(3)x(4), x(1) → x(5), y(2)y(3) → y(1) y(4), y(2) → y(5)} F2h = {z(1) → z(2)z(3)z(4), z(2) → z(5), t(2) → t(3)t(4) t(5), t(4) → t(1)} α1‟ = α1\X1; α2‟ = α2\X2; Theo giả thiết, ta có: F1h = {x(1)x(2) → x(3)x(4), x(1) →x(5), y(2)y(3) → y(1)y(4), y(2) → y(5)} ⟹ K1x = x(1)x(2), K1y = y(2)y(3) ⟹ K1 = x(1)x(2)y(2)y(3) ⟹ U01 = {x(3)x(4)y(1)y(4)y(5)} F2h = {z(1) → z(2)z(3)z(4), z(2) →z(5), t(2) → t(3)t(4)t(5), t(4) → t(1)} 47 ⟹ K2z = z(1), K2t = t(2) ⟹ K2 = z(1)t(2) ⟹ U02 = {z(2)z(3)z(4)z(5)t(1)t(3)t(4)t(5)} ⟹ X1 U01; X2 U02 Áp dụng mệnh đề 3.7, ta có: Key (α) = Key (α‟1) ⊕ Key (α‟2) Vì K ∊ Key (α) mà K1‟ = K1, K2‟ = K2 ⟹ K = K1‟ K2 = x(1)x(2)y(2)y(3)z(1)t(2) K2‟ = K1 Mệnh đề 3.8 Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); α1 = (R1, F1h); R1 = (id1; Al, A2, , An); α2 = (R2, F2h); R2 = (id2; Al, A2, , An); … α k = (Rk, Fkh); Rk = (idk; Al, A2, , An); Trong đó: k id = idi , idi ∩ idj = ∅, i = 1, k , j = 1, k i 1 k Khi ta có: Key (α) = Key (αi) i1 Chứng minh: Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); α1 = (R1, F1h); R1 = (id1; Al, A2, , An); α2 = (R2, F2h); R2 = (id2; Al, A2, , An); … α k = (Rk,Fkh); Rk = (idk; Al, A2, , An); Trong đó: k id = idi , idi ∩ idj = ∅, i = 1, k , j = 1, k i 1 Từ suy ra: α = k i i 1 Áp dụng mệnh đề 3.6, ta có: k 1 Key (α) = Key i Key ( k ) i 1 48 k 1 = Key i ⊕ Key (α k) i 1 Mặt khác: k 2 k 1 i Key ( k 1 ) Key i = Key i 1 i 1 k 2 = Key i ⊕ Key (α k-1) i 1 Hồn tồn tương tự, ta có: α2) = Key (α1) ⊕ Key (α2) Key (α1 Từ dãy suy dẫn trên, ta suy ra: Key (α) = Key (α1) ⊕ Key (α2) ⊕ … ⊕ Key (αk) k = Key (αi) i1 k Vậy Key (α) = Key (αi) (đpcm) i1 Mệnh đề 3.9 Cho lược đồ khối α = (R, Fh); R = (id; Al, A2, , An); α1 = (R1, F1h); R1 = (id1; Al, A2, , An); α2 = (R2, F2h); R2 = (id2; Al, A2, , An); … α k = (Rk, Fkh); Rk = (idk; Al, A2, , An); Trong đó: k id = idi , idi ∩ idj = ∅, i = 1, k , j = 1, k i 1 k idi( j ) , Xi Xi U0i, αi‟ = αi\Xi, i = 1, k j 1 k Khi đó: Key (α) = Key (α‟i) i1 Chứng minh: 49 Từ giả thiết kết mệnh đề 3.8, ta có: k Key (α) = Key (αi) (1) i1 Vì theo giả thiết, ta lại có: Xi U0i, α‟i = αi\Xi, i = 1, k Do đó, áp dụng tính chất phép dịch chuyển lược đồ khối theo tập thuộc tính khơng khóa, ta có: Key (α) = Key (α‟i), i = 1, k (2) Từ (1) (2), suy ra: Key (α) = k k i1 i1 Key (αi) = Key (α‟i) k Vậy Key (α) = Key (α‟i) (đpcm) i1 Kết luận chƣơng Chương trình bày phép dịch chuyển lược đồ khối cách biểu diễn khóa qua phép dịch chuyển lược đồ khối, bên cạnh đó, dạng biểu diễn khóa qua phép dịch chuyển lược đồ khối đưa chứng minh chương 50 KẾT LUẬN Những kết nghiên cứu tính chất khóa qua phép dịch chuyển lược đồ khối góp phần hồn thiện thêm lý thuyết thiết kế mơ hình liệu dạng khối Cụ thể khóa luận đạt kết sau: Tìm hiểu mơ hình liệu dạng khối Tìm hiểu khóa qua phép dịch chuyển lược đồ khối Phát biểu chứng minh tính chất khóa qua phép dịch chuyển lược đồ khối Hƣớng phát triển đề tài Những kết khóa luận tốt nghiệp xét với trường hợp đặc biệt tập phụ thuộc hàm tập Fh Hướng phát triển tìm biểu diễn khóa siêu khóa qua phép dịch chuyển lược đồ khối với tập F phụ thuộc hàm Những tập F tập khơng bị hạn chế cả, hy vọng có nhiều kết phong phú 51 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Xn Huy, Trịnh Đình Thắng (1997), “Mơ hình sở liệu dạng khối”, Kỷ yếu báo cáo khoa học Hội thảo số vẩn đề chọn lọc Công nghệ Thông tin, Đại lải, 8/1997, tr 14 - 19 [2] Nguyễn Xuân Huy (2006), “Các phụ thuộc logic sở liệu”, nhà xuất Thống kê, Hà Nội [3] Nguyễn Xuân Huy, Trịnh Đình Thắng (1998), “Một sổ kết khóa mơ hình sở liệu dạng khối”, Kỉ yếu hội thảo quốc gia tin học ứng dụng [4] Nguyễn Xn Huy, Trịnh Đình Thắng (1998), “Mơ hình sở liệu dạng khối”, Tạp Tin học Điều khiển học, T.14, S.3, (52-60),1998 [5] Vũ Đức Thi (1997), “Cơ sở liệu - Kiến thức thực hành”, nhà xuất Thống kê, Hà nội [6] Nguyễn Tuệ (2008), “Giáo trình sở liệu”, nhà xuất Đại học Quốc gia Hà nội [7] Trịnh Đình Thắng (2011), Mơ hình liệu dạng khối, nhà xuất Lao động [8] Trịnh Đình Vinh (2011), “Một số phụ thuộc liệu sở liệu dạng khối”, Luận án Tiến sĩ Toán học Tiếng Anh [9] Chen, P P., The entity - relationship model: toward a unified view of data, ACM Trans on Database Systems 1:1, pp 9-36, 1976 52 ... Tìm hiểu mơ hình liệu dạng khối - Tìm hiểu dạng biểu diễn khóa qua phép dịch chuyển lược đồ khối - Phát biểu chứng minh số dạng biểu diễn khóa qua phép dịch chuyển lược đồ khối - Minh họa số ví... tính 1.5 Khóa lược đồ quan hệ 13 17 1.6 Phép dịch chuyển lược đồ quan hệ 17 1.7 Một số dạng biểu diễn khóa qua phép dịch chuyển lược đồ quan hệ 19 CHƢƠNG MƠ HÌNH DỮ LIỆU DẠNG KHỐI 2.1 Các khái... LƢỢC ĐỒ KHỐI 3.1 Phép dịch chuyển lược đồ khối 39 39 3.2 Biểu diễn khóa qua phép dịch chuyển lược đồ khối 41 3.3 Một số tính chất mở rộng khóa qua phép dịch chuyển lược đồ khối 44 KẾT LUẬN 51 TÀI