Bao đóng và các thuật toán tìm bao đóng trong mô hình dữ liệu dạng khối

47 518 0
Bao đóng và các thuật toán tìm bao đóng trong mô hình dữ liệu dạng khối

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN TẠ THỊ NHƯ BAO ĐÓNG VÀ CÁC THUẬT TOÁN TÌM BAO ĐÓNG TRONG MÔ HÌNH DỮ LIỆU DẠNG 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 – NĂM 2016 TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN TẠ THỊ NHƯ BAO ĐÓNG VÀ CÁC THUẬT TOÁN TÌM BAO ĐÓNG TRONG MÔ HÌNH DỮ LIỆU DẠNG 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 – NĂM 2016 LỜI CẢM ƠN Để hoàn thành khóa luận em xin gửi lời biết ơn sâu sắc đến PGS.TS Trịnh Đình Thắng, thầy người trực tiếp hướng dẫn, định hướng tận tình bảo em suốt trình học tập nghiên cứu đề tài Em xin gửi lời cảm ơn chân thành đến thầy cô khoa Công nghệ thông tin trường Đại học Sư phạm Hà Nội tận tình dạy dỗ, truyền đạt tri thức cho em suốt năm em học tập trường Đó kiến thức giúp em sống công việc sau Em xin bày tỏ biết ơn, cảm ơn đến gia đình, bạn bè đồng hành, giúp đỡ tạo điều kiện cho em để em hoàn thành khóa luận Trong trình thực đề tài tránh khỏi thiếu sót Em mong nhận góp ý quý thầy cô bạn bè Hà Nội, ngày 04 tháng 05 năm 2016 Sinh viên Tạ Thị Như LỜI CAM ĐOAN Tôi xin cam đoan toàn nội dung khóa luận kết nghiên cứu hướng dẫn khoa học PGS.TS Trịnh Đình Thắng Trong nghiên cứu có kế thừa thành nhà khoa học nhà nghiên cứu Các số liệu, kết nêu luận văn trung thực, rõ ràng Nếu sai xin chịu hoàn toàn trách nhiệm Hà Nội, ngày 04 tháng 05 năm 2016 Sinh viên Tạ Thị Như MỤC LỤC MỞ ĐẦU CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ 1.1 Các khái niệm 1.1.1 Thuộc tính miền thuộc tính 1.1.2 1.2 Quan hệ lược đồ quan hệ Các phép toán đại số lược đồ quan hệ 1.2.1 Phép hợp 1.2.2 Phép giao 1.2.3 1.2.4 Phép trừ Tích Đề - 1.2.5 Phép chiếu 1.2.6 Phép chọn 1.2.7 Phép kết nối 10 1.2.8 Phép chia 10 1.3 Phụ thuộc hàm 11 1.3.1 Các tính chất phụ thuộc hàm 12 1.3.2 Hệ tiên đề Armstrong 12 1.4 Bao đóng lược đồ quan hệ 13 1.4.1 Bao đóng tập phụ thuộc hàm 13 1.4.2 Bao đóng tập thuộc tính 13 CHƯƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI 15 2.1 Khối, Lược đồ khối, Lát cắt 15 2.1.1 Khối, Lược đồ khối 15 2.1.2 Lát cắt 16 2.2 Các phép toán Đại số quan hệ khối 17 2.2.1 Phép hợp 17 2.2.2 Phép giao 17 2.2.3 Phép trừ 18 2.2.4 Tích Đề - 18 2.2.5 Tích Đề - theo tập số 18 2.2.6 Phép chiếu 19 2.2.7 Phép chọn 19 2.2.8 Phép kết nối 20 2.2.9 Phép chia 21 2.3 Phụ thuộc hàm 21 2.4 Bao đóng mô hình liệu dạng khối 21 2.4.1 Bao đóng tập phụ thuộc hàm 21 2.4.2 Bao đóng tập thuộc tính số 22 CHƯƠNG 3: TÍNH CHẤT CỦA BAO ĐÓNG VÀ CÁC THUẬT TOÁN TÌM BAO ĐÓNG TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI 26 3.1 Tính chất bao đóng mô hình liệu dạng khối 26 3.2 Chương trình Demo tính bao đóng tập thuộc tính số mô hình liệu dạng khối 29 3.2.1 Giới thiệu toán 29 3.2.2 Các thuật toán tìm bao đóng 29 3.2.3 Ngôn ngữ lập trình C# 31 3.2.4 Giao diện chương trình 34 KẾT LUẬN 37 TÀI LIỆU THAM KHẢO 39 DANH MỤC CÁC KÝ HIỆU VÀ CHỮ CÁI VIẾT TẮT Trong khóa luận dùng thống ký hiệu chữ viết tắt sau: Ký hiệu Ý nghĩa A, B, C Thuộc tính X, Y, Z Tập thuộc tính XY ABC Dom(A) Hợp thuộc tính X Y [A, B,C] (Tập thuộc tính gồm phần tử A, B, C) Miền giá trị A R r(R) Khối r lược đồ khối R X(i) = (x, Ai) Các thuộc tính lược đồ khối ∈ Thuộc ∃ Tồn ∀ Với ∅ Rỗng ∪ Hợp ∩ Giao ∄ Không tồn  Là  Chứa DANH MỤC CÁC BẢNG Bảng 1.1 Bảng ví dụ quan hệ r Bảng 1.2 Bảng quan hệ KHACHHANG Bảng 1.3 Biểu diễn quan hệ Khachhang1  Khachhang2 Bảng 1.4 Biểu diễn quan hệ Khachhang1 ∩ Khachhang2 Bảng 1.5 Biểu diễn quan hệ Khachhang1 - Khachhang2 Bảng 1.6 Biểu diễn quan hệ Khachhang2 – Khachhang1 Bảng 1.7 Biểu diễn quan hệ r × s Bảng 1.8 Bảng khách hàng Bảng 1.9 Biểu diễn phép chọn  Địa = ‘BN‘ (Khachhang) Bảng 1.10 Quan hệ SINHVIEN 11 MỞ ĐẦU Lý chọn đề tài Ngày nay, công nghệ thông tin có bước phát triển mạnh mẽ, việc ứng dụng công nghệ thông tin áp dụng rộng rãi đem lại hiệu thiết thực nhiều lĩnh vực khác như: học tập, kinh doanh, khoa học kĩ thuật, quản lý Trong đó, sở liệu lại lĩnh vực nghiên cứu đóng vai trò tảng phát triển Công nghệ thông tin Từ lâu lĩnh vực đề xuất nghiên cứu Và để xây dựng hệ thống sở liệu tốt phải có mô hình liệu thích hợp Hiện có nhiều mô hình sử dụng hệ thống sở 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 quan hệ Trong đó, mô hình quan hệ quan tâm đặc biệt xây dựng sở toá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, sở liệu có cấu trúc phi tuyến Vì vậy, người ta đề xuất nghiên cứu mô hình liệu dạng khối, mô hình coi mở rộng mô hình liệu quan hệ Do bao đóng có vai trò quan trọng sở liệu nên để phát triển hoàn thiện mô hình liệu dạng khối chọn đề tài “Bao đóng thuật toán tìm bao đóng mô hình liệu dạng khối“ cho khóa luận Mục đích nghiên cứu - Tìm hiểu mô hình liệu dạng khối, bao đóng thuật toán tìm bao đóng mô hình liệu dạng khối - Xây dựng chương trình demo tìm bao đóng tập thuộc tính số Nhiệm vụ nghiên cứu - Tìm hiểu mô hình liệu dạng khối - Xây dựng chương trình demo tìm bao đóng tập thuộc tính số lược đồ khối Đối tượng phạm vi nghiên cứu - Đối tượng: Bao đóng mô hình liệu dạng 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 - Xây dựng demo mô thuật toán tìm bao đóng mô hình liệu dạng khối - Sử dụng kết tìm bao đóng để tìm khóa trình xây dựng sở liệu thực tế Phương pháp nghiên cứu Kết hợp phương pháp lý thuyết, phân tích, suy luận, tổng hợp thực nghiệm demo Mệnh đề 2.10 [4] Cho lược đồ khối R = (id; A1, A2,…, An), Fh, Fhx tập phụ thuộc n hàm R, Rx tương ứng, M   id (i ) , M = i 1  A  id (i ) xA n x , Mx   x (i ) , Mx   , x i 1 Khi M+ bao đóng M Fh Mx+ = n x M + M bao đóng Mx Fhx i 1 25 CHƯƠNG 3: TÍNH CHẤT CỦA BAO ĐÓNG VÀ CÁC THUẬT TOÁN TÌM BAO ĐÓNG TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI 3.1 Tính chất bao đóng mô hình liệu dạng khối [1, 2, 4] Mệnh đề 3.1 [4] Cho lược đồ khối R = (id; A1, A2,…, An), F tập phụ thuộc hàm n R Với X, Y   id (i ) , ta có tính chất bao đóng i 1 sau:  Tính phản xạ: X  X+  Tính đơn điệu: Nếu X  Y X+  Y+  Tính lũy đẳng: X++ = X+ Chứng minh:  Tính phản xạ: X  X+ Theo định nghĩa bao đóng lược đồ khối ta có: X+={x(i)|X  x(i) } với x + F  id, i = n, suy x (i )  X ta có X  x (i )  F   x (i )  X với x (i )  X  x (i )  X  ta suy X  X+  Tính đơn điệu: Nếu X  Y X+  Y+ Theo giả thiết ta có: X  Y với X, Y  n  id (i ) (1) i 1 Theo kết tính chất phản xạ ta có Y+  Y+ (2) Từ (1) (2) ta suy X  Y   Y   x (i)  F  , x Y  , x (i )  X  X Y  Tính lũy đẳng: X++ = X+ Theo định nghĩa bao đóng lược đồ khối ta có: x (i )  X   X  X   X   ( X  )  (1) 26 x (i )  ( X  )  ta chứng minh x (i)  X  Theo định nghĩa bao đóng X   x (i )  F   X  x (i )  F   x (i )  X   X   X  (2) Từ (1) (2) suy ra: X++ = X+ Mệnh đề 3.2 [4] Cho lược đồ khối R = (id; A1, A2,…, An), F tập phụ thuộc hàm n R Với X, Y   id (i ) , ta có tính chất bao đóng i 1 sau:  X Y   (XY )   ( X Y )   ( XY  )   ( X Y  )   ( XY )   X  Y  Y   X  ,Y  X   X  X  X   X  X   Y   X  Y Y  X Chứng minh [2, 4]  X Y   (XY )   - Ta có:  X  ( XY )  X   ( XY )     X  Y  ( XY )       Y  ( XY )  Y  ( XY )    X Y  ( XY ) - Ta có: ( X Y  )  ( XY  )   ( X Y  )   ( XY )   (1) (2) Từ (1) (2) suy X Y   (XY )   ( X Y )   ( XY  )   ( X Y  )   ( XY )   - Ta có:  X  ( XY )  X   ( XY )     X Y  ( XY )       Y  ( XY )  Y  ( XY )   ( X Y )  ( XY ) (3) Lại có:  ( XY  )  ( X Y )  , ta có X  X   ( XY )  ( X Y )  ( XY )   ( X Y )  Vậy ( XY )   ( X Y )  (4) 27 Từ (3) (4) suy ( X Y )   ( XY  )  (5) - Chứng minh: ( XY  )  ( XY )  Ta có: ( XY  )  ( X Y )  , theo (5) ta có: (Y  X )   (YX )  Suy ra: ( XY  )   (Y  X )   (YX )   ( XY )   X  Y  Y   X  ,Y  X  - Chứng minh: X  Y  Y   X  x (i )  Y ta có: X  x (i ) X  Y  x (i)  X  (định nghĩa bao đóng) Mà Y  X  theo tính đơn điệu  Y   X  (6) Ta chứng minh chiều ngược lại: Từ (6)  X  Y Y   X   Y  X   X   Y  F   X  Y (do X  X  ) - Chứng minh: X  Y  Y  X  Ta có: Y  X   X   Y mà X  X   X  Y (tính chất bắc cầu) Chứng minh chiều ngược lại: Y  X   X  Y Thật vậy: x (i )  Y ta có X  x (i ) X  Y  x (i)  X  , theo định nghĩa bao đóng suy ra: x (i )  Y ta chứng minh x (i)  X   Y  X   X  X  X   X Ta có: x (i )  X  X  x (i )  X   x (i )  F  x (theo định nghĩa bao đóng)  X  x (i)  X   X  X  (7) Ngược lại ta chứng minh: X   X Vì X  X  theo tính phản xạ  X   X 28  X   Y   X  Y Y  X Ta có: Y  X  (7), theo giả thiết X   Y   X  Y  Y   Y Suy ra: X  Y (8) Lại có: Y   Y mà theo giả thiết X   Y   X  Y  mà X   X Suy ra: X  X  Chứng minh chiều ngược lại: Y  X X  Y  X   Y  Ta có: X  Y (8)  Y   X  (9) Mà Y  X (giả thiết)  X   Y  (10) Kết hợp (9) (10) ta suy ra: X   Y  3.2 Chương trình Demo tính bao đóng tập thuộc tính số mô hình liệu dạng khối 3.2.1 Giới thiệu toán Bài toán: n - Đầu vào: Cho lược đồ khối R = (id; A1, A2,…, An), với X, Y   id (i ) i 1 tập thuộc tính số Fh  { X  Y | X   x (i ) , Y   x ( j ) , A, B  1,2, , n, iA jB x  id } tập phụ thuộc hàm cho trước - Đầu ra: Tìm bao đóng tập thuộc tính số X (kí hiệu X +) tập phụ thuộc hàm Fh Ngôn ngữ sử dụng: Chương trình viết ngôn ngữ C# phần mềm Visual Studio 2010 3.2.2 Các thuật toán tìm bao đóng [1, 2, 4] Thuật toán tìm bao đóng 1: Tìm bao đóng lược đồ lát cắt Xx - Input: Tập thuộc tính X, tập phụ thuộc hàm F lược đồ khối R 29 - Output: X+, bao đóng X F R BAODONG(X, F, R) begin tepcu:=  ; tepmoi:= X; while tepmoi  tepcu begin tepcu:= tepmoi; for each W  Z in F if tepmoi  W then tepmoi:= tepmoi  Z; end; return(tepmoi); end Thuật toán tìm bao đóng 2: Tìm bao đóng tập thuộc tính số X dựa bao đóng n tập thuộc tính X x  X   x (i ) , sau gộp kết lát cắt i 1 lại với ta kết cuối bao đóng tập thuộc tính số X  X   X x xid - Input: tập thuộc tính X, tập phụ thuộc hàm Fh lược đồ R - Output: X+, bao đóng X Fh R BAODONG2(X,Fh,R) Begin 30 X+:=  ; For each x  id Begin n n Y=X   x (i ) ; Fhx= Fh  (i ) ; i 1 i 1 If Y   then X+:= X+ x  BAODONG1(Y,Fhx,R); End; Return (X+); End 3.2.3 Ngôn ngữ lập trình C# Ngôn ngữ C# đơn giản, khoảng 80 từ khóa chục kiểu liệu có sẵn Tuy nhiên, ngôn ngữ C# có ý nghĩa to lớn thực thi khái niệm lập trình đại C# bao gồm tất hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng Những tính chất diện ngôn ngữ lập trình đại Hơn ngôn ngữ C# xâu dựng tảng hai ngôn ngữ mạnh C++ java Tóm lại, C# có đặc trưng sau đây: C# ngôn ngữ đơn giản - C# loại bỏ vài phức tạp rối rắm ngôn ngữ C++ Java - C# giống C/C++ diện mạo, cú pháp, biểu thức, toán tử - Các chức C# lấy trực tiếp từ ngôn ngữ C/C++ cải tiến để làm cho ngôn ngữ đơn giản 31 C# ngôn ngữ đại C# có đặc tính ngôn ngữ đại như: - Xử lý ngoại lệ - Thu gom nhớ tự động - Có kiểu liệu mở rộng - Bảo mật mã nguồn C# ngôn ngữ hướng đối tượng C# hỗ trợ tất đặc tính ngôn ngữ hướng đối tượng là: - Sự đóng gói (encapsulation) - Sự kế thừa (inheritance) - Đa hình (polymorphism) C# ngôn ngữ mạnh mẽ mềm dẻo - Với ngôn ngữ C#, bị giới hạn thân Ngôn ngữ không đặt ràng buộc lên việc làm - C# sử dụng cho nhiều dự án khác như: tạo ứng dụng xử lý văn bản, ứng dụng đồ họa, xử lý bảng tính; chí tạo trình biên dịch cho ngôn ngữ khác - C# ngôn ngữ sử dụng giới hạn từ khóa Phần lớn từ khóa dùng để mô tả thông tin, không mà C# phần mạnh mẽ Chúng ta tìm thấy ngôn ngữ sử dụng để làm nhiệm vụ C# ngôn ngữ hướng đối tượng - Mã nguồn C# viết Class (lớp) Những Class chứa Method (phương thức) thành viên 32 - Class (lớp) Method (phương thức) thành viên sử dụng lại ứng dụng hay chương trình khác C# trở nên phổ biến C# mang đến dức mạnh C++ với dễ dàng ngôn ngữ lập trình Visual Basic Môi trường lập trình: Sử dụng Microsoft Visual Studio 2010 để xây dựng chương trình - Bước 1: Khởi động Visual Studio 2010 - Bước 2: Vào menu File -> New -> Project - Bước 3: Khai báo Lần lượt chọn ngôn ngữ tên file hình, file có tên Demo tạo file khoaluan ổ D - Bước 4: Tạo giao diện cho form kiện cho đối tượng form - Bước 5: Nhấn F5 để chạy chương trình 33 3.2.4 Giao diện chương trình Chương trình tìm bao đóng tập thuộc tính số tập phụ thuộc hàm Fh Hình 3.1 Giao diện mở đầu chương trình Khi bắt đầu chạy chương trình giao diện hình 3.1 lên, nháy vào “Next” bạn muốn tiếp tục chương trình tìm bao đóng form hiển thị tên chương trình thông tin sinh viên thực 34 Hình 3.2 Form Demo tìm bao đóng lược đồ khối Sau nháy Next Form hình 3.2 xuất hiện: - Nhập thuộc tính: Nhập vào thuộc tính cho khối không nhập số - Nhập số lát cắt: Nhập vào số lát cắt khối - Thêm thuộc tính: Là button mà ta click vào lấy thuộc tính ta vừa nhập vào kết hợp với số lát cắt để đưa tập thuộc tính khối có kèm số - Tập thuộc tính số: Cho phép hiển thị tập thuộc tính lược đồ khối có kèm số - Thuộc tính vế trái: Nhập vào thuộc tính bên vế trái phụ thuộc hàm mà ta muốn đưa vào 35 - Thêm thuộc tính VT: Là button cho phép đưa thuộc tính vế trái vừa nhập vào mảng vế trái (Chứa thuộc tính bên vế trái phụ thuộc hàm) ta click vào Bắt buộc phải click sau nhập thuộc tính vế trái - Thuộc tính vế phải: Nhập vào thuộc tính bên vế phải phụ thuộc hàm mà ta muốn đưa vào - Thêm thuộc tính VP: Là button cho phép đưa thuộc tính vế phải vừa nhập vào mảng vế phải (Chứa thuộc tính bên vế phải phụ thuộc hàm) ta click vào Bắt buộc phải click sau nhập thuộc tính vế phải - Thêm PTH: Là button cho phép lấy thuộc tính vế trái vế phải vừa nhập ghép lại thành phụ thuộc hàm ta click Chỉ click sau nhập thuộc tính vế trái thuộc tính vế phải - Phụ thuộc hàm: Cho phép hiển thị phụ thuộc hàm click Thêm PTH - Thuộc tính cần tìm bao đóng: Nhập vào thuộc tính số mà ta thực tìm bao đóng cho - Tìm bao đóng: Là button thực việc tìm bao đóng thuộc tính cần tìm vừa nhập vào - Kết quả: Hiển thị bao đóng tập thuộc tính cần tìm - Stop: Là button để thoát khỏi chương trình Hướng dẫn chạy chương trình: - Nhập thuộc tính vào ô nhập thuộc tính - Nhập số lát cắt khối vào ô nhập số lát cắt - Nhấn nút thêm thuộc tính Khi thuộc tính vừa nhập kèm thêm số hiển thị bên ô tập thuộc tính số - Nhập phụ thuộc hàm cho khối: + Nhập thuộc tính vế trái + Nhấn nút thêm thuộc tính vế trái + Nhập thuộc tính vế phải (chú ý thuộc tính vế phải phải số với thuộc tính vế trái vừa nhập) + Nhấn nút thêm thuộc tính vế phải + Nhấn nút thêm phụ thuộc hàm 36 - Nhập tập thuộc tính cần tìm bao đóng - Nhấn nút tìm bao đóng Chương trình tìm bao đóng thực kết lên ô kết X+ - Nhấn nút Stop ta muốn thoát khỏi chương trình 37 KẾT LUẬN Qua trình tìm hiểu nghiên cứu đề tài “Bao đóng thuật toán tìm bao đóng mô hình liệu dạng khối”, khóa luận đạt số kết cụ thể sau: - Tìm hiểu mô hình liệu dạng khối - Trình bày thuật toán tìm bao đóng mô hình liệu dạng khối - Xây dựng chương trình Demo tìm bao đóng tập thuộc tính số mô hình liệu dạng khối Đề xuất hướng phát triển đề tài: Từ kết chương trình tìm bao đóng tập thuộc tính số mô hình liệu dạng khối, mở rộng xây dựng chương trình tìm khóa lược đồ khối lát cắt khối, từ tiến tới chuẩn hóa lược đồ khối 38 TÀI LIỆU THAM KHẢO [1] Nguyễn Xuân 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 [2] Nguyễn Văn Sơn, (2014), “Nghiên cứu bao đóng mô hình liệu dạng khối”, Luận văn thạc sĩ máy tính, Trường Đại học Sư phạm Hà Nội [3] Nguyễn Tuệ, (2008), Giáo trình sở liệu, Nhà xuất Đại học Quốc gia Hà Nội [4] Trịnh Đình Thắng, (2011), Mô hình liệu dạng khối, Nhà xuất lao động [5] Lê Tiến Vương, (1997), Nhập môn sở liệu quan hệ, Nhà xuất Khoa học kỹ thuật Hà Nội 39 [...]... là bao đóng của M đối với Fh khi và chỉ khi Mx+ = n x M + M là bao đóng của Mx đối với Fhx i 1 25 CHƯƠNG 3: TÍNH CHẤT CỦA BAO ĐÓNG VÀ CÁC THUẬT TOÁN TÌM BAO ĐÓNG TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI 3.1 Tính chất của bao đóng trong mô hình dữ liệu dạng khối [1, 2, 4] Mệnh đề 3.1 [4] Cho lược đồ khối R = (id; A1, A2,…, An), F là tập các phụ thuộc hàm n trên R Với mỗi X, Y   id (i ) , khi đó ta có các. .. giữa dữ liệu trong cơ sở dữ liệu 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 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 cơ sở dữ liệu Phụ thuộc hàm là mối quan hệ giữa các thuộc tính trong cơ sở dữ liệu 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. .. Y và YZ  W => XZ  W 2.4 Bao đóng trong mô hình dữ liệu dạng khối 2.4.1 Bao đóng của tập phụ thuộc hàm [1, 2, 4] Định nghĩa 2.3 [4] Cho lược đồ khối R = (id; A1, A2,…, An), F là tập các phụ thuộc hàm trên R Khi đó bao đóng của F kí hiệu là F+ được xác định như sau: 21 F+ = { X  Y | F => X  Y} Nếu X = {x(m)}  id(m), Y = {y(k)}  id(k) thì ta kí hiệu phụ thuộc hàm X  Y đơn giản là x(m)  y(k) Khối. .. [4]: Thuật toán 2 tính X+ là đúng Cho lược đồ khối R = (id; A1, A2,…, An), Fh, Fhx là tập các phụ thuộc n hàm trên R, Rx tương ứng, M   id (i ) , M = i 1 M n x xA , Mx   x (i ) , Mx   , x i 1  A  id Khi đó dựa vào thuật toán tính bao đóng ở trên, ta có thể tính bao đóng M+ của M đối với Fh Từ quá trình tính bao đóng của M đối với Fh ta thấy đó chính là các quá trình tính bao đóng của các. .. phải của các phụ thuộc hàm trong F thì X+ = (X – A)+  A - R là lược đồ quan hệ, F là tập phụ thuộc hàm, X là tập con của R+ và Y là thuộc tính chỉ xuất hiện ở vế phải của các phụ thuộc hàm trong F thì X+  X  Y 14 2 CHƯƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI 2.1 Khối, Lược đồ khối, Lát cắt [1, 2, 4] 2.1.1 Khối, Lược đồ khối Định nghĩa 2.1 [4] Gọi R = (id; A1, A2,…, An) là một bộ hữu hạn các phần tử, trong. .. Cho hai khối r và s khả hợp Giao của r và s kí hiệu là r ∩ s là một khối gồm tất cả các phần tử thuộc đồng thời cả hai khối r và s đã cho Ta có: 17 r  s  t | t  r và t  s 2.2.3 Phép trừ [4] Cho hai khối r và s khả hợp, khi đó hiệu của r và s là một khối, kí hiệu là r – s, là một khối mà các phần tử của nó thuộc r nhưng không thuộc s Ta có: r  s  t | t  r và t  s 2.2.4 Tích Đề - các [4]...CHƯƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ 1.1 Các khái niệm 1.1.1 Thuộc tính và miền thuộc tính [3, 5] Thuộc tính là các đặc điểm riêng của một đối tượng, quan hệ Mỗi thuộc tính có một tên gọi và phải thuộc một kiểu dữ liệu nhất định, kiểu dữ liệu đó có thể là vô hướng (ví dụ như chuỗi, số, logic, ngày tháng ) hoặc các kiểu có cấu trúc được định nghĩa dựa trên các kiểu dữ liệu có sẵn Ví dụ 1.1:... r(R) là một khối trên R Khi đó tồn tại một họ quan hệ duy nhất biểu diễn họ {r(Rx)}x id các lát cắt của r(R) Ngược lại không đúng, nghĩa là với một họ quan hệ cho trước biểu diễn họ các lát cắt của một khối nào đó thì khối tìm được không duy nhất 2.2 Các phép toán Đại số quan hệ trên khối [2, 4] Cho r là một khối trên R = (id; A1, A2,…, An) Cũng tương tự như đại số quan hệ trong mô hình dữ liệu quan... thành phần và một hằng Các phép toán so sánh trong biểu thức F: >,

Ngày đăng: 25/08/2016, 09:50

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan