CHƢƠNG II : CƠ SỞ DỮ LIỆU SUY DIỄN
2.3 Ngôn ngữ DATALOG
2.3.2.1 Lý thuyết chứng minh
DATALOG phát sinh từ logic, việc sử dụng một phƣơng pháp chứn g
minh để tính toán các minh họa của các vị từ mục tiêu là một điều tự nhiên. Khi đó ngƣời ta đi đến phƣơng pháp ngữ nghĩa của chứng minh. Trong phƣơng pháp này, một chƣơng trình DATALOG tính toán tất cả những gì có thể đƣợc chứng minh bằng cách sử dụng phƣơng pháp chứng minh bằng quyết định (resolution). Một sự kiện không chứng minh đƣợc đƣợc xem nhƣ là sai.
Khái niệm 2.7 Ngữ nghĩa chứng minh (Proof theoretic semantic)
Ngữ nghĩa mà theo đó một sự kiện là đúng nếu nó có thể được chứng minh bằng cách áp dụng phương pháp quyết định xuất phát từ các tiên đề
logic phát sinh từ một chương trình DATALOG.
Để minh hoạ phƣơng pháp, chúng ta xét cơ sở dữ liệu đƣợc định nghĩa ở ví dụ 2.1 chứa:
1. Vị từ mở rộng NHANVIEN với hai bộ <tinhoc-Lan> và
<tinhoc - Nam> chỉ ra rằng Nam và Lan là các nhân viên của
phòng Tin học;
2. Vị từ mở rộng PHONG với một bộ <tinhoc – Nam> chỉ ra rằng
Nam là sếp của phòng Tin học.
Để biết bộ <Nam-Lan> có thuộc về vị từ mục đích LANHDAO1 một cách logic hay không, chỉ cần áp dụng phƣơng pháp quyết định để chứng minh định lý LANHDAO1(Nam-Lan) xuất phát từ các tiên đề rút ra từ các
kết quả rút ra từ quy tắc LANHDAO1(x,y)PHONG(z,x), NHANVIEN(z,y). Tiên đề cuối cùng đƣợc viết lại bằng cách loại bỏ phép
kéo theo, LANHDAO1(x,y) PHONG(z,x) NHANVIEN(z,y).
Cây chứng minh cho phép kết luận rằng <Nam-Lan> là một sự kiện đúng
(nghĩa là một bộ của LANHDAO1) đƣợc trình bày ở hình 2.5.
PHONG(z,x)NHANVIEN(z,y) LANHDAO1(x,y) PHONG(tinhoc, Nam) NHANVIEN(tinhoc, y) LANHDAO1(Nam,y) NHANVIEN(tinhoc, Lan) LANHDAO1(Nam, Lan) Hình 2.5 Ví dụ cây chứng minh
Nhƣ vậy, phƣơng pháp quyết định cho phép cho một chƣơng trình DATALOG một ngữ nghĩa; một sự kiện thuộc về một vị từ mục đích nếu nó có thể đƣợc chứng minh giống nhƣ một định lý bằng quyết định. Trong trƣờng hợp thất bại của phƣơng pháp, sự kiện đƣợc giả thiết là sai: nó không thuộc về vị từ mục đích. Thể hiện vắng mặt chứng cứ này đƣợc gọi là phủ định bằng thất bại. Phƣơng pháp đầy đủ nhƣ thế đƣợc gọi là phƣơng pháp quyết định với phủ định bằng thất bại (hoặc phƣơng pháp SLDNF). Đó là một phƣơng pháp cho phép xác định một bộ thuộc vào hay không thuộc vào một vị từ mục đích. Nhƣ vậy đó là một phƣơng pháp thủ tục, nó hoạt động từ bộ này sang bộ khác. Nó gần với các phƣơng pháp tính toán đƣợc áp dụng