Luận văn được thực hiện nhằm mục đích tìm hiểu việc mở rộng chương trình Datalog cho Web ngữ nghĩa. Cấu trúc của luận văn bao gồm phần mở đầu, nội dung ba chương, phần kết luận và tài liệu tham khảo. Chương 1: Tổng quan về chương trình Datalog và Web ngữ nghĩa. Chương này giới thiệu một số khái niệm cơ sở của chương trình Datalog, hai tiếp cận thường dùng để xác định ngữ nghĩa của chương trình Datalog là tiếp cận theo lý thuyết mô hình và tiếp cận theo lý thuyết điểm bất động. Ngoài ra, chương 1 cũng trình bày tổng quan về Web ngữ nghĩa và vai trò của Ontology, logic mô tả trong Web ngữ nghĩa. Chương 2: Trình bày về cú pháp và ngữ nghĩa của chương trình Datalog± là một lớp chương trình Datalog mở rộng, cho phép các biến với lượng từ tồn tại xuất hiện trong phần đầu của các quy tắc. Chương 3: Trình bày việc chuyển đổi logic mô tả DLLITE về chương trình Datalog±. Phần kết luận nêu những kết quả đã đạt được và hướng phát triển của luận văn. Do thời gian có hạn và bản thân chỉ mới bước đầu nghiên cứu về lĩnh vực này nên không thể tránh khỏi những thiếu sót, kính mong sự giúp đỡ và góp ý thêm của Quý Thầy, Cô và các bạn.
LỜI CAM ĐOAN Tơi xin cam đoan đề tài “Tìm hiểu việc mở rộng chương trình Datalog cho Web ngữ nghĩa” cơng trình nghiên cứu tơi thực hiện, không chép kết nghiên cứu tác giả khác Các số liệu kết nghiên cứu nêu luận văn trung thực chưa công bố cơng trình khác Nội dung luận văn có tham khảo sử dụng số thông tin, tài liệu từ nguồn sách, tạp chí liệt kê danh mục tài liệu tham khảo Tôi xin chịu hoàn toàn trách nhiệm nội dung luận văn Thừa Thiên Huế, ngày 17 tháng 08 năm 2018 Người cam đoan Bùi Thị Kim Tuyến LỜI CẢM ƠN Qua trình học tập nghiên cứu, xin gởi lời cảm ơn chân thành sâu sắc đến Quý thầy cô giáo Khoa Công nghệ thông tin - Trường Đại học Khoa học Huế trường Đại học An Giang tận tình hướng dẫn, truyền đạt kiến thức, tạo điều kiện thuận lợi cho trình học tập thực luận văn tốt nghiệp Để hồn thành luận văn này, tơi xin chân thành gửi lời biết ơn sâu sắc đến PGS.TS Trương Cơng Tuấn, thầy khuyến khích, hướng dẫn tận tình, có góp ý sâu sắc truyền đạt nhiều kiến thức quý báu cho suốt q trình nghiên cứu Thầy cho tơi nhiều lời động viên nhận xét chân thành để tơi hồn thành đề tài Cuối xin cảm ơn Ban Giám Hiệu, quý thầy cô tổ nơi công tác tạo điều kiện để học thực đề tài nghiên cứu Tôi gửi lời cảm ơn chân thành đến anh chị em học viên KHMT_K3 ln giúp đỡ động viên Đó động lực để tơi hồn thành việc học nghiên cứu Bản thân tơi cố gắng trình thực đề tài chắn khơng tránh khỏi thiếu sót Kính mong q thầy bạn tận tình hướng dẫn, góp ý bảo Xin chân thành cám ơn! Thừa Thiên Huế, ngày 17 tháng 08 năm 2018 Học viên Bùi Thị Kim Tuyến MỤC LỤC Trang DANH MỤC CÁC HÌNH DANH MỤC CÁC THUẬT NGỮ Chương trình Datalog Chương trình Datalog± Chương trình logic Chương trình logic xác định Cơ sở liệu Cơ sở Herbrand Datalog± bảo vệ Hạng thức Literal âm Literal dương Logic mơ tả Mệnh đề đơn vị Mơ hình nhỏ Ngơi Ngun tố Quy tắc Thể Tốn tử hệ trực tiếp Trả lời truy vấn Vị từ Vũ trụ Herbrand Web ngữ nghĩa Datalog program Datalog± program Logic program Definite logic program Database Herbrand base Guarded Datalog± Term Negative literal Positive literal Description logics Unit clause Least model Arity Atom Rule Interpretation The immediate consequence operator Query Answering Predicate Herbrand universe Semantic Web DANH MỤC CÁC KÝ HIỆU BP Cơ sở Herbrand chương trình P UP Vũ trụ Herbrand chương trình P BP Tập tất tập sở Herbrand BP MP Mơ hình nhỏ P TP Toán tử hệ trực tiếp BP 2S Tập tập tập S supX Cận tập X infX Cận tập X Lfp(T) Điểm bất động nhỏ ánh xạ T Head(r) Phần đầu quy tắc Datalog r Body(r) Phần thân quy tắc Datalog r DANH MỤC CÁC CHỮ VIẾT TẮT ABOX Assertional Box BGDP Bounded Guard-Depth Property CSDL Database EDB Extensional Database EGD Equality-Generating Dependencies IDB Inzpional Database KB Knowledge Base SQL Structured Query Language TBOX Terminological Box TGD Tuple Generating Dependencies MỞ ĐẦU Hiện nay, Web ngữ nghĩa mạng lưới thơng tin tồn cầu liên kết theo cách thức để máy tính dễ dàng xử lý Web ngữ nghĩa có khả làm việc với liệu, điều mở lớp ứng dụng Web ngữ nghĩa Web ngữ nghĩa cách nhìn cách thức tổ chức liệu: ý tưởng việc liệu web định nghĩa liên kết theo cách mà sử dụng máy tính, với mục đích khơng cho việc hiển thị mà tự động hóa, tích hợp sử dụng lại liệu qua ứng dụng Bên cạnh nghiên cứu Web ngữ nghĩa, nhà khoa học tìm nhiều liên quan với ngôn ngữ Datalog Datalog ngôn ngữ mạnh dựa quy tắc, lúc đầu thiết kế để biểu diễn truy vấn phức tạp liệu quan hệ sở ngơn ngữ đặc tả tối ưu hóa Datalog mở rộng theo nhiều hướng khác nhằm mục đích đáp ứng yêu cầu thực tiễn Hiện họ ngôn ngữ Datalog mở rộng giàu khả diễn đạt, gọi Datalog±, xem mơ hình để trả lời truy vấn ontology cho Web ngữ nghĩa, nhiều người nghiên cứu thời gian gần nhiều cơng trình có giá trị cơng bố Họ Datalog± cho phép biến với lượng từ tồn xuất phần đầu quy tắc có ràng buộc thích hợp nhằm đảm bảo truy vấn Ontology đạt hiệu cao Luận văn thực nhằm mục đích tìm hiểu việc mở rộng chương trình Datalog cho Web ngữ nghĩa Cấu trúc luận văn bao gồm phần mở đầu, nội dung ba chương, phần kết luận tài liệu tham khảo Chương 1: Tổng quan chương trình Datalog Web ngữ nghĩa Chương giới thiệu số khái niệm sở chương trình Datalog, hai tiếp cận thường dùng để xác định ngữ nghĩa chương trình Datalog tiếp cận theo lý thuyết mơ hình tiếp cận theo lý thuyết điểm bất động Ngoài ra, chương trình bày tổng quan Web ngữ nghĩa vai trò Ontology, logic mơ tả Web ngữ nghĩa Chương 2: Trình bày cú pháp ngữ nghĩa chương trình Datalog± - lớp chương trình Datalog mở rộng, cho phép biến với lượng từ tồn xuất phần đầu quy tắc Chương 3: Trình bày việc chuyển đổi logic mơ tả DL-LITE chương trình Datalog± Phần kết luận nêu kết đạt hướng phát triển luận văn Do thời gian có hạn thân bước đầu nghiên cứu lĩnh vực nên tránh khỏi thiếu sót, kính mong giúp đỡ góp ý thêm Quý Thầy, Cô bạn CHƯƠNG TỔNG QUAN VỀ CHƯƠNG TRÌNH DATALOG VÀ WEB NGỮ NGHĨA Trong chương bắt đầu khái niệm sở chương trình Datalog, cú pháp ngữ nghĩa chương trình Datalog giới thiệu tổng quan Web ngữ nghĩa Đây kiến thức làm sở cho việc nghiên cứu chương luận văn 1.1 GIỚI THIỆU VỀ CHƯƠNG TRÌNH DATALOG VÀ WEB NGỮ NGHĨA 1.1.1 Một số khái niệm sở Định nghĩa 1.1 (Bộ ký tự) Bộ ký tự bao gồm lớp ký hiệu sau: • Hằng: giá trị xác định thường ký hiệu chữ thường, ví dụ: a, b, c,… • Biến: đại lượng có giá trị thay đổi miền đó, thường • • • ký hiệu chữ in hoa, ví dụ: X, Y, Z,… Ký hiệu hàm, thường ký hiệu chữ thường, ví dụ: f, g, h, Ký hiệu vị từ, thường ký hiệu chữ thường, ví dụ: p, q, r,… Hằng vị t: true, false Ký hiu kt ni: (ph định), ∧ (tuyển), ∨ (hội), ← (kéo theo), ↔ (tương đương) • Các ký hiệu lượng từ: ∀(với mọi), ∃ (tồn tại) • Dấu ngoặc đơn trái: (, dấu ngoặc đơn phải: ), dấu phẩy (,) Mỗi ký hiệu hàm, ký hiệu vị từ có kèm theo số tự nhiên xác định để đối số tham gia với ký hiệu hàm ký hiệu vị từ đó, gọi ngơi vị từ Trên sở ký tự cho, người ta đưa khái niệm hạng thức Hạng thức yếu tố quan trọng công thức logic, xây dựng từ hằng, biến, hàm định nghĩa hình thức sau: Định nghĩa 1.2 (Hạng thức) Hạng thức định nghĩa đệ quy sau: (i) Mỗi hạng thức, (ii) Mỗi biến hạng thức, 10 Trong ngơn ngữ logic mơ tả, ngồi thành phần khái niệm nguyên tố (chẳng hạn Nguoi, Bacsi, Bome,…), vai trò nguyên tố (chẳng hạn Cocon, Yeuthuong,…), cá thể (chẳng hạn Dung, Minh, Thinh,…), logic mô tả sử dụng ký hiệu ⊤, gọi khái niệm đỉnh, ⊤ để tất đối tượng ký hiệu ⊥ gọi khái niệm đáy, ⊥ khơng đối tượng Ngồi thường dùng toán tử sau logic mơ tả: ¬ : Phủ định khái niệm ⊓: Giao hai khái niệm ⊔: Hợp hai khái niệm ⊑: Bao hàm khái niệm ∃ : Hạn chế tồn ∀: Hạn chế phổ dụng o : Hợp vai trò ≥: Lớn ≤: Nhỏ Các ký hiệu thường dùng logic mơ tả: Tính bắc cầu vai trò, vai trò R có tính bắc cầu với R(a,b) R(b,c) ta có R(a,c) Đối với logic mơ tả cụ thể, ta ký hiệu vai trò R có tính bắc cầu Trans(R) Hạn chế số lượng khơng định tính, hạn chế số lượng vai trò khơng tính chất đối tượng cần hạn chế cho phép xây dựng khái niệm hạn chế số lượng có dạng ≥nR, ≤nR Chẳng hạn, để biểu diễn “người có con” ta viết Nguoi ⊓ (≥2 Cocon) Sau vai trò Cocon khơng tính chất cần thỏa mãn 39 Hạn chế số lượng định tính, hạn chế số lượng vai trò có tính chất đối tượng cần hạn chế cho phép xây dựng khái niệm hạn chế số lượng có dạng ≥ nR.C, ≤ nR.C Chẳng hạn, để biểu diễn “người có trở lên gái” viết Nguoi⊓(≥2Cocon.Nu) Khái niệm nữ (Nu) đặt sau vai trò có (Cocon) để tính chất mà cần định tính thơng qua vai trò Bao hàm vai trò, tính chất bao hàm vai trò cho phép vai trò bao hàm vai trò khác theo dạng R ⊑ S Vai trò nghịch đảo Tính chất vai trò nghịch đảo cho phép sử dụng nghịch đảo vai trò Với R vai trò, ký hiệu nghịch đảo R, nghĩa = {(b, a) | (a, b) ∈R} Lúc R(a, b) thỏa mãn thỏa mãn Chẳng hạn, với vai trò Cocon để đối tượng có đối tượng kia, ta định nghĩa vai trò nghịch đảo Cocon− để đối tượng có cha/mẹ đối tượng Lúc đối tượng a có đối tượng b, nghĩa Cocon(a, b) thỏa mãn Cocon−(b, a) thỏa mãn ngược lại Định danh Tạo tử định danh cho phép xây dựng khái niệm dạng {a} từ cá thể đơn lẻ a khái niệm dạng {a1,…, an} từ danh sách cá thể a1,…, an Khái niệm {a} biểu diễn cho tập cá thể a {a1,…, an} biểu diễn cho khái niệm gồm xác thể cá thể a1, …, an Tính chất hàm Tính chất hàm dạng đơn giản hạn chế số lương định tính (), cho phép thể khái niệm có quan hệ tối đa với cá thể khác thơng qua vai trò định, chẳng hạn “một đối tượng có thể kết hôn với đối tượng khác” biểu diễn T ⊑ ≤ Kethon Bao hàm vai trò phức, cho phép biểu diễn tiên đề bao hàm có dạng RoS ⊑ R RoS ⊑ S Chẳng hạn, với vai trò Cocon (có con) Cochau (có cháu), giả sử đối tượng a có đối tượng b, đối tượng b có 40 đối tượng c a có cháu đối tượng c, lúc ta có Cocon o Cochau ⊑ Cochau Hiện có nhiều loại logic mơ tả xây dựng để đáp ứng yêu cầu thực tế biểu diễn tri thức lập luận, phần trình bày logic mơ tả DL-LITE 3.2 LOGIC MƠ TẢ DL-LITE 3.2.1 Cú pháp logic mơ tả DL-Lite Trước hết ta định nghĩa cú pháp logic mô tả DL-Lite Ký hiệu A, RA I tập không giao đôi khái niệm nguyên tố, vai trò trừu tượng cá thể Những thành phần sử dụng để xây dựng vai trò khái niệm, ta có định nghĩa sau: Định nghĩa 3.1 (Vai trò sở, vai trò tổng qt) • Một vai trò sở Q vai trò nguyên tố P ∈RA vai trò nghịch đảo P − • Một vai trò tổng qt R vai trò sở Q phủ định vai trò sở ¬Q Định nghĩa 3.2 (Khái niệm sở, khái niệm tổng quát) • Một khái niệm sở B khái niệm nguyên tố A ∈ A hạn chế tồn vai trò sở Q, ký hiệu ∃Q • Một khái niệm tổng quát C khái niệm sở B phủ định khái niệm sở ¬B Từ vai trò khái niệm hình thành nên tiên đề, ta có định nghĩa: Định nghĩa 3.3 (Tiên đề) Một tiên đề là: (1) Tiên đề bao hàm khái niệm có dạng B ⊑ C, sở C khái niệm, 41 B khái niệm (2) Tiên đề hàm (funct Q), Q vai trò sở, (3) Tiên đề thành viên khái niệm A(a), A ∈ A A ∈ I, (4) Tiên đề thành viên vai trò P(a,c), P∈RA (5) Tiên đề bao hàm vai trò Q ⊑ R a, c ∈I , Q vai trò sở R vai trò Định nghĩa 3.4 (Tbox, ABox) • • Một TBox tập hữu hạn tiên đề bao hàm khái niệm tiên đề hàm Một ABox tập hữu hạn tiên đề thành viên khái niệm tiên đề thành viên vai trò Định nghĩa 3.5 (Cơ sở tri thức) Một sở tri thức KB, bao gồm TBox T ABox A, ký hiệu KB = (T, A) Ví dụ 3.1 Xét tập khái niệm nguyên tố, vai trò trừu tượng cá thể ký hiệu A, RA I cho sau: A = {nhakhoahoc, baibao, baibao_hoithao, baibao_tapchi}, RA = {cotacgia, cotacgiadautien, latacgiacua_baibao}, I = {i1, i2} Xét tiên đề khái niệm bao hàm sau đây: (i) Baibao_hoithao ⊑ baibao, baibao_tapchi ⊑ baibao 42 (ii) Baibao_hoithao ⊑ (iii) latacgiacua_baibao ¬baibao_tapchi, nhakhoahoc ⊑ nhakhoahoc, ⊑ ∃latacgiacua_baibao ∃latacgiacua_baibao− ⊑ tacgia Tiên đề (i) có ý nghĩa: báo Hội thảo báo đăng tạp chí báo Tiên đề (ii) có ý nghĩa: báo Hội thảo báo đăng tạp chí nhà khoa học có báo cơng bố Tiên đề (iii) có nghĩa: tác giả báo nhà khoa học báo tác giả báo Một số tiên đề bao hàm vai trò tiên đề hàm sau: (iv) latacgiacua_baibao− ⊑ cotacgia, cotacgia− ⊑ latacgiacua_baibao, (v) (funct cotacgiadautien) Tiên đề (iv) nói latacgiacua_baibaolà nghịch đảo cotacgia (v) cotacgiadautien có tính chất hàm Sau số khái niệm vai trò thành viên, biểu diễn cá thể i1 nhà khoa học tác giả báo i2: nhakhoahoc(i1), latacgiacua_baibao(i1,i2), baibao(i2) 43 3.2.2.Ngữ nghĩa logic mô tả DL-Lite Ngữ nghĩa logic mô tả DL-Liteđược định nghĩa qua khái niệm thể hiện: Định nghĩa 3.6 (Thể hiện) Một thể cặp = (∆,.), ∆ tập khác rỗng cá thể gọi miền thể hiện, nguyên tố C ∈ A là ánh xạ gán khái niệm với tập ∆, vai trò trừu tượng R ∈RA với tập ∆x∆, cá thể a ∈ I với phần tử ∆ Các cá thể khác gán với phần tử khác ∆ Ánh xạ được mở rộng cho tất khái niệm vai trũ: (P )I= {(a,b) | (b,a) PI} (ơQ)I= ∆Ix ∆I \ QI • (∃Q)I = {x∈ΔI | ∃y : (x,y) QI}I (ơB)I = I \ BI Định nghĩa 3.7 (Tính thỏa mãn) Tính thỏa mãn tiên đề F thể = (∆,.), ký hiệu ⊨F (1)⊨B ⊑ C , định nghĩa sau: B⊆ C; 44 (o,o′) ∈Q (o,o′′) ∈Q (2) ⊨ (funct Q) kéo theo o′=o′′ ; a∈ A; (3) ⊨ A(a) (a,b) ∈P; (4) ⊨ P(a,b) (5) ⊨ Q ⊑ R Q⊆ R Định nghĩa 3.8 (Mô hình tiên đề) Thể là mơ hình tiên đề F ⊨F Định nghĩa 3.9 (Mơ hình sở tri thức) Thể là mơ hình sở tri thức KB = (, ), ký hiệu⊨ KB ⊨F với F ∈∪ KB gọi thỏa mãn KB có mơ hình 3.3 CHUYỂN ĐỔI LOGIC MƠ TẢ DL-LITE THÀNH DATALOG± Phép chuyển đổi Τ từ thành phần tiên đề DL-Lite thành Datalog± [3], thực sau: 45 (1) Mỗi khái niệm nguyên tố A ∈ A = pA∈R gắn với vị từ ngơi T(A) , vai trò trừu tượng P ∈ RA từ hai T(P) = pp ∈ R cá thể i ∈ I được gắn với vị gắn với T(i) = ci ∈ ∆ (2) Mỗi tiên đề bao hàm khái niệm B ⊑ C chuyển thành TGD ràng buộc T(B ⊑ C): T′′(C) ←T′(B) đó: (i) T′(B) định nghĩa pA(X), pP(X,Y) pP(Y,X), B có dạng A,∃P ∃P¯ (ii) T′′(C) định nghĩa pA(X),∃ZpP(X,Z) , ∃ZpP(Z,X), ¬pA(X),¬pP(X.Y’) ¬pP(Y’,X), C có dạng A, ∃P, ∃P¯, ¬A, ¬∃P và¬∃P¯ (3) Các tiên đề hàm (funct P) (funct P¯) qua T chuyển thành quy tắc: 46 Y = Y′ ←pP(X, Y) ∧ pP(X, Y’) X = X′ ←pP(X, Y) ∧ p (4) Mỗi tiên đề khái niệm thành viên A(a) qua P (X , Y) T chuyển thành nguyên tố pA(ca) tiên đề vai trò thành viên P(a,b) chuyển thành nguyên tố pP(ca,cb) (5) Mỗi tiên đề bao hàm quan hệ Q ⊑ R chuyển đổi thành TGD ràng buộc T(Q ⊑ R): T′′(R) ←T′(Q) đó: (i) T′(Q) định nghĩa pP(X,Y), pP(Y,X), Q có dạng P P¯ (ii) T′′(R) định nghĩa pP(X,Y), pP(Y,X), ¬pP(X,Y) ¬pP(Y,X), R có dạng P, P¯, ¬P ¬P¯ Ví dụ 3.2 Các tiên đề bao hàm khái niệm Ví dụ 3.1 chuyển đổi thành TGD ràng buộc sau đây: baibao(X) ← baibao_hoithao(X) baibao(X) ← baibao_tapchi(X) ¬baibao_tapchi(X) ← baibao_hoithao(X) ∃Z latacgiacua_baibao(X,Z) ← nhakhoahoc(X) nhakhoahoc(X) ← latacgiacua_baibao(X,Y) 47 ← latacgiacua_baibao(Y,X) baibao(X) Các tiên đề bao hàm quan hệ tiên đề hàm ví dụ 3.3 chuyển đổi thành TGD EGD sau đây: ← latacgiacua_baibao(Y,X) cotacgia(X,Y) latacgiacua_baibao(X,Y) ← cotacgia(Y,X) ← cotacgiadautien(X,Y) ∧ cotacgiadautien(X,Y’) Y = Y’ Các tiên đề khái niệm tiên đề quan hệ thành viên ví dụ 3.3 chuyển đổi thành nguyên tố sau (trong ta đồng cá thể với chúng): nhakhoahoc(i1), latacgiacua_baibao(i1, i2), baibao(i2) Mỗi sở tri thức KB DL-Lite chuyển thành sở liệu DKB, tập hợp TGD ΣKB sau: (i) Cơ sở liệu DKB tập hợp tất T(ϕ) cho ϕ khái niệm tiên đề quan hệ thành viên KB; (ii) Tập hợp TGD ΣKB tập hợp tất TGDs từ T(ϕ) cho ϕ khái niệm tiên đề bao hàm quan hệ KB; 3.4 CÁC VÍ DỤ MINH HỌA Ví dụ 3.3 Giả sử Nhanvien_quanly, baibao, troly_giaosu, sach, phogiaosu khái niệm nguyên tố tiên đề bao hàm sau: Nhanvien_quanly ⊑ nhanvien Baibao ⊑ anpham troly_giaosu ⊑ giaosu 48 phogiaosu ⊑ giaosu sach ⊑ anpham Chuyển sang chương trình Datalog ta được: nhanvien(X) ← nhanvien_quanly(X) anpham(X) ← baibao(X) giaosu(X) ← giaosu_Astant(X) giaosu(X) ← phogiaosu(X) anpham(X) ← sach(X) Ví dụ 3.4 Giả sử nhanvien_vanphong, truongdaihoc, baibao_hoithao, khoahoc khái niệm nguyên tố tiên đề bao hàm sau: Nhanvien_vanphong ⊑ nhanvien_quanly Truongdaihoc ⊑ coquan Baibao_hoithao ⊑ baibao Khoahoc ⊑ lamviec Chuyển sang chương trình Datalog ta được: Nhanvien_quanly(X) ← nhanvien_vanphong(X) coquan(X) ← truongdaihoc(X) baibao(X) ← baibao_hoithao(X) lamviec(X) ← khoahoc(X) Ví dụ 3.5 Giả sử truongkhoa khái niệm nguyên tố tiên đề bao hàm sau: Truongkhoa ⊑ giaosu Truongkhoa ⊑ nguoi ⊓∃ dungdau.truongdaihoc Chuyển sang chương trình Datalog∃ ta được: giaosu(X) ← truongkhoa(X) 49 ∃Y hotro_truongkhoa(X,Y) ← truongkhoa(X) dungdau(X,Y) ← hotro_truongkhoa(X,Y) truongdaihoc(Y) ← hotro_truongkhoa(X,Y) nguoi(X) ← hotro_truongkhoa(X,Y) Ví dụ 3.6 Giả sử nhanvien khái niệm nguyên tố tiên đề bao hàm sau: Nhanvien ⊑ nguoi ⊓∃ lamvieccho.coquan Chuyển sang chương trình Datalog± ta được: ∃Y hotro_nhanvien(X,Y) ← nhanvien(X) lamvieccho(X,Y) ← hotro_nhanvien(X,Y) coquan(Y) ← hotro_nhanvien(X,Y) nguoi(X) ← hotro_nhanvien(X,Y) Ví dụ 3.7 Giả sử Khoa, giaosu_chinhthuc, khoasaudaihoc, sinhvien_totnghiep khái niệm nguyên tố tiên đề bao hàm sau: Khoa ⊑ nhanvien giaosu_chinhthuc ⊑ giaosu khoasaudaihoc ⊑ khoahoc sinhvien_totnghiep ⊑ nguoi sinhvien_totnghiep ⊑ ∃matkhoahoc.sinhvien_totnghiep Chuyển sang chương trình Datalog∃ ta được: nhanvien(X) ← khoa(X) giaosu(X) ← giaosu_chinhthuc(X) khoahoc(X) ← khoasaudaihoc(X) nguoi(X) ← sinhvien_totnghiep(X) 50 ∃Y hotro_khoasaudaihoc(X,Y) ← sinhvien_totnghiep(X) matkhoahoc(X,Y) ← hotro_khoasaudaihoc(X,Y) khoasaudaihoc(Y) ← hotro_khoasaudaihoc(X,Y) 3.5 TIỂU KẾT CHƯƠNG Chương giới thiệu logic mô tả tập trung vào cú pháp, ngữ nghĩa logic mô tả DL-LITE Việc chuyển đổi sở tri thức logic mơ tả DL-LITE sang chương trình Datalog± trình bày chi tiết minh họa qua nhiều ví dụ Việc chuyển đổi thực có hiệu việc trả lời truy vấn ontology tận dụng kết định giá truy vấn chương trình Datalog± 51 KẾT LUẬN Luận văn tập trung tìm hiểu cú pháp, ngữ nghĩa chương trình Datalog, Datalog± , ứng dụng để trả lời truy vấn Ontology Web ngữ nghĩa Các kết mà luận văn đạt bao gồm: - Tìm hiểu tổng quan, cú pháp, ngữ nghĩa chương trình Datalog theo tiếp cận lý thuyết mơ hình, lý thuyết điểm bất động tìm hiểu tổng quan web ngữ nghĩa - Tìm hiểu cú pháp ngữ nghĩa chương trình Datalog ± trình bày lớp chương trình hạn chế chương trình Datalog± gọi chương trình Datalog± bảo vệ bảo vệ - Tìm hiểu ứng dụng Datalog± để trả lời truy vấn Ontology web ngữ nghĩa Trong tập trung vào việc chuyển đổi sở tri thức logic mô tả DL-Lite thành chương trình Datalog± với phần minh họa qua nhiều ví dụ Hướng nghiên cứu phát triển đề tài - Nghiên cứu cài đặt mô cho chuyển đổi logic mơ tả thành chương trình Datalog± 52 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Lê Mạnh Thạnh, Trương Cơng Tuấn (2011), Giáo trình chương trình Datalog, Nxb Đại học Huế Tiếng Anh [2] Ceri, S., Gottlob, G., Tanca, L (1990), Logic Programming and Databases Springer [3] Calì, A., Gottlob, G., Lukasiewicz, T (2009) A general Datalog-based framework for tractable query answering over ontologies In: Proc of PODS, pp 77–86 ACM Press [4] Calì, A., Gottlob, G., Thomas Lukasiewicz, (2008).Tractable Query Answering over Ontologies with Datalog± Computing Laboratory and Oxford-Man Institute of Quantitative Finance, University of Oxford, UK [5] Calì, A., Gottlob, G., Pieris, A.: Query answering under non-guarded rules in Datalog± In: Proc of RR, pp 175–190 (2010) [6] Georg Gottlob, Giorgio Orsi, Andreas Pieris, Mantas Simkus, (2012) Datalog and its Extensions for Semantic Web Datababes Reasoning Web Summer School, Vienna, Austria [7] Franz Baader, Werner Nutt (2003), The description logic handbook: Theory, implementation, and applications, Published by the press Syndicate of the university of Cambridge [8] Ian Horrocks, Ulrike Sattler, Franz Baader (2003), “Description logics as ontology languages for the semantic web”, University of Manchaster, UK, Theoretical computer science, RWTH Achen, Germany 53 ... Ngoài ra, chương trình bày tổng quan Web ngữ nghĩa vai trò Ontology, logic mơ tả Web ngữ nghĩa Chương 2: Trình bày cú pháp ngữ nghĩa chương trình Datalog - lớp chương trình Datalog mở rộng, cho phép... quy tắc 24 CHƯƠNG TRÌNH DATALOG CHƯƠNG Trong chương trình bày cú pháp ngữ nghĩa lớp chương trình Datalog mở rộng, gọi chương trình Datalog Lớp chương trình mở rộng khả biểu diễn Datalog nhằm... bạn CHƯƠNG TỔNG QUAN VỀ CHƯƠNG TRÌNH DATALOG VÀ WEB NGỮ NGHĨA Trong chương bắt đầu khái niệm sở chương trình Datalog, cú pháp ngữ nghĩa chương trình Datalog giới thiệu tổng quan Web ngữ nghĩa