Thị phụ thuộc vị từ (Predicate dependency graph):

Một phần của tài liệu Nghiên cứu lý thuyết xây dựng cơ sở dữ liệu suy diễn và ngôn ngữ datalog (Trang 64)

Khi một truy vấn gồm các vị từ truy vấn quy tắc, máy suy diễn phải tính toán kết quả dựa trên các quy tắc định nghĩa. Nếu một truy vấn không

đệ qui và gồm một vị từ P xuất hiện nhƣ đầu của quy tắc P:- P1,

P2,…Pn thì chiến lƣợc là: đầu tiên sẽ tính toán mối quan hệ tƣơng ứng với P1, P2,…Pn sau đó đến P. Datalog lƣu vết sự phụ thuộc giữa các vị từ của cơ sở dữ liệu suy diễn trong một đồ thị biểu diễn sự phụ thuộc giữa các vị từ ( đồ thị phụ thuộc vị từ).

65

Trong đồ thị phụ thuộc, mỗi vị từ tƣơng ứng với một nốt. Khi vị từ A đƣợc chỉ ra trong thân của quy tắc và đầu là vị từ B, ta nói rằng B phụ thuộc vào A, tƣơng ứng với một cạnh trực tiếp từ A đến B. Điều này nói lên rằng: để tính toán sự kiện có đầu là vị từ B, trƣớc hết ta phải tính toán các sự kiện cho tất cả các vị từ A ở thân của quy tắc.

Nếu trong đồ thị không có đƣờng khép kín ta có thể nói tập luật không đệ qui, nếu có ít nhất một đƣờng khép kín thị tập luật đƣợc gọi là đệ qui. Ví

dụ 2.15 có vị từ định nghĩa HOHANG đệ qui, và vị từ nào phụ thuộc vào vị từ

HOHANG thì truy vấn tƣơng ứng cũng đệ qui. Một truy vấn chỉ gồm các vị từ không đệ qui thì đƣợc gọi là truy vấn không đệ qui.

Trong đồ thị phụ thuộc vị từ, các nốt tƣơng ứng với các vị từ định nghĩa sự kiện thì không có bất kỳ một cạnh vào nào, các sự kiện của tất cả các vị từ định nghĩa sự kiện đƣợc lƣu trong một quan hệ CSDL. Nội dung của một vị từ định nghĩa sự kiện có thể đƣợc tính toán bằng việc gọi ra trực tiếp từ bộ dữ liệu trong quan hệ CSDL tƣơng ứng.

Ví dụ 2.15: Một minh hoạ cho đồ thị phụ thuộc: Chƣơng trình Datalog với câu hỏi:

(r1) THANSINH(x,z)  ME(x,z); (r2) THANSINH(x,z)  BO(x,z);

(r3) TOTIEN(x,z)  THANSINH(x,y), THANSINH(y,z) ; (r4) TOTIEN(x,z)  TOTIEN(x,y), THANSINH(y,z) ; (r5) ANHEM(x,z)  THANSINH(y,x),

THANSINH(y,z), x  z; (Q) ? TOTIEN(x,b) ;

Cơ sở mở rộng:

F = { ME(a,b), ME(c,a), BO(p,d),BO(t,a), BO(t,e)} Đồ thị phụ thuộc vị từ tƣơng ứng nhƣ sau :

Hình 2.6 : Đồ thị phụ thuộc vị từ

Một phần của tài liệu Nghiên cứu lý thuyết xây dựng cơ sở dữ liệu suy diễn và ngôn ngữ datalog (Trang 64)