III. Chương II I: CƠ SỞ DỮ LIỆU SUY DIỄN
4) Lý thuyết mô hình đối với cơ sở dữ liệu quan hệ
Nhìn nhận CSDL theo quan điểm logic:
Một CSDL có thể được nhìn nhận dưới quan điểm của logic như sau:
• Lý thuyết bậc một, hay
• Diễn giải của lý thuyết bậc một
Theo quan điểm diễn giải, các câu hỏi và các điều kiện toàn vẹn là công thức dùng để đánh giá việc sử dụng định nghĩa ngữ nghĩa. Còn theo quan điểm lý thuyết, các câu hỏi được coi như các định lý có thể chứng minh được hay công thức hiển nhiên theo lý thuyết này.
Hai tiếp cận này được tham chiếu đến như quan điểm lý thuuyết mô hình, hay quan điểm cấu trúc quan hệ, và quan điểm lý thuyết chứng minh. Hai quan điểm trên đã được hình thức hoá thành khái niệm tương ứng của cơ sở dữ liệu thông thường và CSDL suy diễn.
Tư tưởng đằng sau quan điểm lý thuyết chứng minh của CSDL(D,L) là
o Xây dựng một lý thuyết T, gọi là lý thuyết chứng minh của (D,L), bằng cách dùng các câu D và ngôn ngữ L, và
o Trả lời các câu hỏi trong CSDL.
Ở đây ta xét lớp các CSDL quan hệ, tức là các sự kiện làm nền dựa trên nền của các sự kiện, với các ngôn ngữ không chứa bất kỳ kí hiệu hàm nào. Các giả thiết được đặt ra trên lớp của các CSDL quan hệ để đánh giá các câu hỏi.
Giả thiết về thế giới đóng(CWA Close World Assumption): Khẳng định rằng các thông tin không đúng trong CSDL được coi là sai, tức là R(a1,a2,..,an) coi là
đúng chỉ khi sự kiện R(a1,a2,..,an) không xuất hiện trong CSDL.
Ví dụ: Có CSDL sau : Hoc_sinh(Xuân)
Sinh_vien(Đông)
Nghiên_cưu(Đông)
Thich(Xuân, Toán)
Như vậy theo CWA thì bộ ¬Thich (Đông, Toán) được giả sử là đúng, tức là Đông không thích Toán.
Giả thiết về tên duy nhất (UNA Unique Name Assumption): Khẳng định các hằng số của các tên khác nhau được coi là khác nhau.
Theo ví dụ trên có thể nói rằng hai hằng số Xuân và Đông gán tên duy nhất cho hai sinh viên khác nhau
Giả thiết về bao đóng của miền (DCA Domain Closure Assumption): Cho rằng không có các hằng số ngoài các hằng số trong ngôn ngữ của CSDL.Theo ví dụ trên có thể nói rằng Triết không phải là hằng đúng.
Cho CSDL quan hệ (D,L), D có một vài hạn chế L không chứa kí hiệu hàm nào. Vậy CSDL này có thể được coi là diễn giải của lý thuyết bậc môt gồm có ngôn ngữ L và các biến của L , như đã được sắp đặt trên miền trong diễn giải này. Việc đánh giá công thức Logic trong diễn giải này dựa trên :
R(a1,a2,…,an) đúng chỉ khi R(a1,a2,…,an) ∈D
Theo quan điểm lý thuyết chứng minh của CSDL quan hệ thu được bằng cách xây dựng lý thuyết T trong ngôn ngữ L.
T1. Xác nhận : Đối với mỗi sự kiện R(a1,a2,…,an) ∈ D => R(a1,a2,…,an) được xác định.
T2. Các tiên đề đầy đủ: Với mỗi kí hiệu quan hệ R,
Nếu R(a11, a21,….., an1), R(a12, a22,….., an2),…, R(a1m, a2m,….., anm) kí hiệu cho các sự kiện của R thì tiên đề đầy đủ đối với R là:
∀x1, ∀x2,…, ∀xn R(a1, a2,..,an) → (x1 = a11∧ x2 = a21∧…. ∧ xn = an1) ∨
(x1 = a12∧ x2 = a22∧…. ∧ xn = an2) ∨….∨ (x1 = a1m∧ x2 = a2m∧…. ∧ xn = anm) T3. Các tiên đề về tên duy nhất: Nếu a1, a2,.., ap là tất cả những kí hiệu hằng số của L thì (a1 ≠ a2), (a1 ≠ a3), …., (a1 ≠ ap ), (a2 ≠ a3), (a2 ≠ a4),…, (ap-1≠ ap ) T4. Các tiên đề về bao đóng của miền: Nếu a1, a2,.., ap là các kí hiệu hằng số của L thì : ∀x((x=a1) ∨ (x=a2) ∨….∨ (x=ap))
T5. Các tiên đề tương đương: 1 ∀x(x=x)
2 ∀x∀y((x=y) → (y=x))
3 ∀x∀y∀z ((x=y) ∧ (y=z) → (x=z))
4 ∀x1,∀x1,…,∀xn(P(x1, x2,.., xn) ∧ (x1=y1) ∧ (x2=y2) ∧ ….∧ (xn=yn) → (y1, y2,.., yn))