Lập luận đối với ABox

Một phần của tài liệu logic mô tả và ứng dụng trong cơ sở dữ liệu (Trang 30 - 31)

Ta nói rằng ABox chứa hai dạng khẳng định: khẳng định khái niệm có dạng C(a) và khẳng định vai trò R(b,c). Tuy nhiên biểu diễn tri thức phải hợp lệ, bởi vì nếu không thì từ quan điểm logic người ta có thể vẽ ra kết quả bất kỳ. Chẳng hạn, ABox chứa các khẳng định Mother(MARY) và Father(MARY), hệ thống có thể cho rằng trong TBox quan hệ gia đình, những câu lệnh trên là hợp lệ.

Theo ngữ nghĩa lý thuyết của mô hình chúng ta dễ dàng đưa ra định nghĩa hình thức về sự hợp lệ. Một ABox A là hợp lệ đối với TBox T , nếu có một diễn dịch là mô hình của cả A và T. Chúng ta nói một cách đơn giản rằng A

là hợp lệ nếu nó hợp lệ đối với TBox rỗng.

Ví dụ, tập các khẳng định {Mother(MARY), Father(MARY)} là hợp lệ

đối với TBox rỗng, bởi vì không có ràng buộc nào trên diễn dịch Mother và Father, hai khái niệm có thể được diễn dịch trong cùng cách là chúng có cùng thành phần chung. Tuy nhiên, các khẳng định là không hợp lệ đối với TBox quan hệ gia đình, khi mà trong mô hình của nó khái niệm Mother và Father được diễn dịch là không giao nhau.

Tương tự như đối với khái niệm, việc kiểm tra tính hợp lệ của ABox đối với TBox không có chu trình có thể quy về việc kiểm tra một ABox mở

rộng. Ta xác định mở rộng của A đối với T là một ABox A' thu được bằng việc thay thế các khẳng định khái niệm C(a) trong A bằng các khái niệm C'(a), với C' là mở rộng của C đối với T. Trong tất cả mô hình của T, một khái niệm C và mở rộng C' của nó được diễn dịch theo cùng cách thức. Cho nên, A' hợp lệ khi và chỉ khi A hợp lệ. Tuy nhiên, khi A' không chứa tên được định nghĩa trong T, thì nó hợp lệ đối với T khi và chỉ khi bản thân nó hợp lệ.

Tóm lại ta có kết luận:

• A hợp lệ đối với T khi và chỉ khi mở rộng A' của nó hợp lệ.

• Aj= C(a) khi và chỉ khi A[ {:C(a)} không hợp lệ.

• C thoả mãn khi và chỉ khi {C(a)} hợp lệ.

Một phần của tài liệu logic mô tả và ứng dụng trong cơ sở dữ liệu (Trang 30 - 31)