1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn

54 6 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
Tác giả Nguyễn Văn Quy
Người hướng dẫn PGS.TS. Trương Công Tuấn
Trường học Đại học Huế
Chuyên ngành Khoa học máy tính
Thể loại luận văn thạc sĩ
Năm xuất bản 2020
Thành phố Thừa Thiên Huế
Định dạng
Số trang 54
Dung lượng 20,62 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trang 1 BO GIAO DUC VA DAO TAO ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KHOA HỌC NGUYÊN VĂN QUY TÌM HIỂU NGỮ NGHĨA CHƯƠNG TRÌNH LOGIC PHỎNG ĐOÁN VÀ MỘT SỐ PHƯƠNG PHÁP TRẢ LỜI CÂU TRUY VẤN CHUYEN NGAN

Trang 1

BO GIAO DUC VA DAO TAO

ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KHOA HỌC

NGUYÊN VĂN QUY

TÌM HIỂU NGỮ NGHĨA CHƯƠNG TRÌNH

LOGIC PHỎNG ĐOÁN VÀ MỘT SỐ PHƯƠNG

PHÁP TRẢ LỜI CÂU TRUY VẤN

CHUYEN NGANH: KHOA HOC MAY TINH

Trang 2

LOI CAM DOAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn khoa học của thầy giáo PGS TS Trương Công Tuấn

Các kết quả nêu trong luận văn là trung thực, có nguồn gốc rõ ràng, được trích dẫn đầy đủ và chưa từng công bố trong bất kỳ công trình khoa học nảo

Tôi xin chịu hoàn toàn trách nhiệm về nội dung của luận văn này

Tác giả

Nguyễn Văn Quy

Trang 3

Tôi xin chân thành gửi lời biết ơn đến PGS.TS Trương Công Tuần, người thầy

đã hướng dẫn tận tình và có những góp ý sâu sắc, hướng dẫn rất quý báu cho tôi trong suốt quá trình nghiên cứu, kịp thời cho tôi nhiều lời động viên cũng như những nhận xét đúng đắn dé tôi có thể hoàn thành tốt được dé tai này

Trong quá trình thực hiện dé tài, xin chân thành gửi lời cảm ơn đến sự giúp đỡ, những lời động viên từ phía gia đình, đồng nghiệp, bạn bè là động lực to lớn giúp tôi hoàn thành tốt dé tài nghiên cứu của mình

Bản thân tôi đã cố gắng hết sức trong quá trình thực hiện đề tài này nhưng chắc chăn sẽ không tránh khỏi những thiếu sót Kính mong quý thầy cô và các bạn tận tình góp ý, chỉ bảo

Xin chan thanh cam ơn!

Thừa Thiên Huế, ngày 20 tháng 02 năm 2020

Học viên

Nguyễn Văn Quy

1

Trang 4

1.2.1 Cú pháp 2222222221222122212211221122112211222222122 2e 5

1/2:2 Ngữ ngHĩ8:csesessensoteentiitbdingytIEDDIABGRSSRGRAHISEORNHTGRORNHIIBORSi-iĐGRSii8GtmMi 7

1.3 CHUONG TRINH LOGIC THONG THƯỜNG -2-222222222222222<2 10 1.4 CÁC TÍNH CHẤT CỦA TẬP TRẢ LỜI 2-22222222212221222122122e6 13 1.5 LẬP LUẬN TỪ CÁC TẬP TRẢ LỜI 222222 22222212212212212222 e6 13 1.6 TIỂU KÉT CHƯƠNG l -©22222222212221221122112112112112212212 xe 14 Chương 2 CHUONG TRINH LOGIC PHỎNG ĐOÁN 15 2.1 GIỚI THIẾU .-2-22222222212221122122121121121121122112222 re 15 2.2 CHƯƠNG TRÌNH LOGIC PHÒNG ĐOÁN 222222 22222212221222e6 16

2.2.1 Cú pháp -522 222 222222122212221221122112211221221221222222222 2e 16

2702 Nett neh ia evs rscecnecnnsnesnennernernecennecteusciaennveavesitenneveutacrersseterncasveteracesteeettecastouets 17

2.3 MỘT SỐ VÍ DỤ 222 2222221222122112211221121122222222222 re 20 2.4 TIỂU KÉT CHƯƠNG 2 22-222 222222122212212211122121121121122122 te 23

ili

Trang 5

dấu khi và chỉ khi ø(X) được xác định Một nguyên tố được đánh dấu là nguyên tố

mà mọi biến của nó đều được đánh dấu

Định nghĩa tương tự cho truy vấn và mệnh đề chương trình được đánh dấu Cho một phép đánh dấu ø, ký hiệu X' nếu a(V) = +, Y- nếu ø(7) = — Một phép đánh dấu có thể được xem là một ghi nhớ đề thông báo việc hợp nhất và hợp giải trong SLDNFA về tính chất logic của các biến

Định nghĩa 3.4 (Tập đẳng thức giải được)

1 Một tập đẳng thức trên bộ ký tự > là một tập hữu hạn {s =f, ., Sn = td, trong đó s¿, / là các hạng thức

2 Tập đẳng thức được gọi là có dạng giải được khi và chỉ khi nó là một tập hợp

các nguyên tổ đăng thức có đạng X = ứ, trong đó X là một biến, 7 là hạng thức, X # f

và X chỉ xuất hiện một lần ở về trái và không xuất hiện ở về phải

3 Cho một phép đánh dấu z, một tập đẳng thức được đánh dấu là có dạng giải được dương khi và chỉ khi nó có dạng giải được và không chứa các nguyên tô có

dạng X” =ŸY”

Một phép thế có thể định nghĩa như một tập các nguyên tố đẳng thức có dạng X

=ứ,trong đó X là biến chỉ xuất hiện một lần ở về trái

Định nghĩa 3.5 (Tập đẳng thức giải được đương) Một tập đẳng thức Z; là một đạng

giải được (dương) của tập hợp đẳng thức E khi và chỉ khi Z, có dạng giải được (dương) và E„ là một mgu của #, lúc dé ta noi E 1a co thé giải được Một tập hợp đẳng thức không có dạng giải được gọi là không thể giải duoc Hai nguyén t6 p(t), p(s) gọi là có thể hợp nhất khi và chỉ khi f =s có thể giải được

Rõ ràng một tập hợp đẳng thức được đánh dau có đạng giải được khi và chỉ khi

nó có dạng giải được dương

Bằng cách dùng khái niệm dạng giải được đương, ta định nghĩa khái niệm hợp giải dương và hợp giải âm giữa một truy vấn được đánh dấu và một mệnh đề chương

32

Trang 6

DANH MỤC CÁC THUẬT NGỮ

Chuong trinh logic

Chương trình logic nén

Chuong trinh logic phong doan

Chương trình logic thông thường

Term

Logic programming Negative literal Positive literal Unit clause Definite clause Stable model Minimal model Least model Stable model semantics Arity

Atom

Substitution Abductive Rule Interpretation The immediate consequence operator Predicate

Abducible predicate

Herbrand universe

Trang 7

Bp

Up

Mp

Tp

DANH MUC CAC KY HIEU

Cơ sở Herbrand của chương trình P

Vũ trụ Herbrand của chương trình P Tập tất cả các tap con của co so Herbrand Bp

Mô hình nhỏ nhất của P

Toán tử hệ quả trực tiếp trên 27”

VI

Trang 8

DANH MUC CAC CHU VIET TAT

Abductive logic programming

Finite Failure

Negative Goal

Positive Goal Linear Selection resolution for Definite clauses

SLD - resolution with Negation as finite Failure

Vii

Trang 9

Kết quả thực thi bài toán l -22222222222212221222122222.22.2 e6 42 Kết quả thực thi bài toán 2 2-22222222212221121121122222.22 xe 44 Kết quả thực thi bai toán 3 bằng hệ thống CIFE 222-22222xce 46

Vili

Trang 10

MO DAU Trong suốt hai thập kỷ qua, lĩnh vực nghiên cứu về lập trình logie đã không ngừng phát triển Lập trình logie sử dụng các cơ chế suy diễn căn cứ vào các quy tắc trong một chương trình logic Tuy nhiên, hiện nay lập trình logic đã bộc lộ những hạn chế nhất định và không thể giải quyết đối với các bài toán phức tạp trong thực tế Da

có nhiều công trình nghiên cứu nhằm mở rộng lập trình logic, trong số đó - Lập trình logie phỏng đoán (ALP - Abductive Logic Programming) là một hướng nghiên cứu

được nhiều nhà khoa học quan tâm

ALP được bắt nguồn từ sự phỏng đoán - là một hình thức suy luận để tìm các giải thích cho quan sát đã cho Xuất phát từ một chương trình logic P và một quan sát

QO để tìm các giải thích có thể cho Ó dựa theo một tập vị từ đặc biệt được gọi là các

vị từ phỏng đoán

ALP là sự kết hợp của lập trình logic và phỏng đoán, trong ALP hình thành nên

một cú pháp mới của chương trình logic, được định nghĩa bởi một bộ ba (P, A, IC), trong đó P là một chương trình logic, ⁄4 là một tập hợp các vị từ được gọi là các vị từ phỏng đoán, 7C là một tập các ràng buộc toàn vẹn ALP được xem là một khuôn khổ

biểu diễn tri thức cấp cao, cho phép giải quyết các bài toán dựa trên lập luận phỏng đoán ALP thường được dùng để giải quyết các bài toán trong Chuẩn đoán: Lập kế

hoạch; Xử lý ngôn ngữ tự nhiên; Học máy,

Luận văn nghiên cứu về ngữ nghĩa của chương trình logie phỏng đoán và các phương pháp trả lời câu truy vấn trên lớp chương trình này Những nội dung nghiên cứu của luận văn có ý nghĩa khoa học về mặt lý thuyết cũng như trong ứng dụng trong thực tiễn

Cấu trúc luận văn gồm phần mở đầu, ba chương nội dung, phần kết luận và tài

liệu tham khảo

Chương l trình bày về tổng quan về chương trình logic, trong đó tập trung vào một số khái niệm cơ sở ngôn ngữ logic bậc nhất, cú pháp và ngữ nghĩa của chương trình logic

Trang 11

Chương 2 trình bày về cú pháp và ngữ nghĩa của chương trình logic phỏng đoán

cùng với một số ví dụ minh họa

Chương 3 trình bày một số phương pháp để trả lời câu truy vấn đối với chương trình logic phỏng đoán, bao gồm phương pháp EK, KM và SLDNFA Chương 3 cũng

trình bày tổng quan về hệ thống CIEE, tiến hành việc cài đặt một số bài toán minh

họa bằng hệ thống CIFF và thực thi bằng phần mềm SWI-Prolog

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

Trang 12

Chương 1 TONG QUAN VE CHUONG TRINH LOGIC

Chương một trình bày các khái niệm co sở của chương trình logie, lớp chương trình đơn giản nhất của chương trình logie được gọi là chương trình logic xác định sẽ được xem xét trước tiên cùng với ngữ nghĩa mô hình nhỏ nhất của nó Tiếp theo, chương 1 sẽ trình bày về chương trình logic thông thường và tiếp cận ngữ nghĩa tập trả lời của lớp chương trình này Đây là những kiến thức làm tiền đề cho các nghiên cứu tiếp theo ở chương 2 và 3

1.1 MỌT SÓ KHÁI NIỆM CƠ SỞ

Định nghĩa 1.1 (Bộ ký tự) Bộ ký £# bao gồm các lớp ký hiệu sau:

1 Hằng, thường ký hiệu là các chữ cái thường a, Ö, e,

2 Biến, thường ký hiệu bởi các chữ cái in hoa X, Y, Z,

3 Các ký hiệu hàm, thường ký hiệu bởi ƒ ø, ñ,

4 Các ký hiệu vị từ, thường ký hiệu bởi 7Ø, q, r,

5 Các hằng vi tir: true, false

6 Các ký hiệu kết nỗi—¬(phủ định), v(uyên), A(hội), (suy ra)

7 Các ký hiệu lượng từ: V(với mọi), (tổn tại)

§ Dấu ngoặc don 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 một số tự nhiên xác định để chỉ số

các đối số tham gia cùng với ký hiệu hàm hoặc ký hiệu vị từ đó, gọi là ngôi của chúng

Trên cơ sở bộ ký tự đã cho, người ta đưa ra định nghĩa về hạng thức Hạng thức là

yếu tố quan trọng của công thức logic, được xây dựng từ các hằng, biến, hàm và được định nghĩa hình thức như sau:

Định nghĩa 1.2 (Hạng thức) Cho 44 là bộ ký tự Hạng thức được định nghĩa đệ qui

như sau:

(i) Mỗi hằng trong 41 là một hạng thức,

Trang 13

(ii) Mỗi biến trong 44 là một hạng thức,

(iii) Nếu ƒlà ký hiệu hàm ø#-ngôi trong 44 và /¡, f„ là các hạng thức thì ƒứi /a) là

một hạng thức,

(v) Hạng thức chỉ được sinh ra bởi các quy tắc trên

Một hằng được xem là ký hiệu hàm 0-ngôi Hằng và biến là các hạng frức nguyên tố hạng thức nền là hạng thức không chứa biến

Định nghĩa 1.3 (Nguyên tố) Một nguyên tố có dạng p(ñ ,fa), trong đó p là ký hiệu

vị từ m-ngôi và các đối ứ¡, £„ là các hạng thức Wguyên ?ố nên là nguyên tổ không chứa biến

Vi du 1.1 Xét nguyén t6 mother(Hoa,Mai), trong dé mother là vị từ 2-ngôi đê chỉ

mối quan hệ mẹ Hoa, Mai là các hằng va mother(Hoa,Mai) co y nghia la Hoa là mẹ

cua Mai

Định nghĩa 1.4 (Literal) Literal là một nguyên tố hoặc phủ định của nguyên tố Ta gọi nguyên tổ là /#eral đương và litaral âm là phủ định của nguyên tố, ký hiệu —¬p, với p là một nguyên tố

Trong ngôn ngữ tự nhiên, việc kết hợp các từ nào đó sẽ tạo nên những câu có nghĩa Các câu như vậy được biểu diễn trong logic vị từ bởi những cấu trúc đặc biệt được xây dựng từ các hạng thức và các lớp ký hiệu của bộ ký tự Những cấu trúc này được gọi là các công fhức logic (hoặc đơn giản là công thức) và được định nghĩa như sau:

Định nghĩa 1.5 (Công thức) Cho 7 là tập các hạng thức trên bộ ký tự 41 Công thức được định nghĩa đệ quy như sau:

(i) Néu p là ký hiệu vị từ z-ngôi trong 44 và íi, ,f„ 7 thì p(, ,f„) được gọi

là một công thức nguyên fỐ (hoặc đơn giản chỉ gọi là nguyên fÔ);

Œ) Nếu E và F là các công thức thì: (¬#) (Œ AP) (Œ vử), (F< E), (E © F) la cac cong thức;

Trang 14

Œ) Nếu F là công thức và X là một biến trong 4thì VX Œ'),

AX (ŒƑ) là các công thức; VX và 3X được gọi là phần lượng từ, F là miễn tác dụng của lượng từ;

(0v) Công thức chỉ được sinh ra bởi một số hữu hạn các quy tắc trên

Một công thức/hạng thức không chứa biến được gọi là công thức/hạng thức nên Định nghĩa 1.6 (Công thức đóng)

1 Một biến X trong công thức được gọi là biến ràng buộc nếu X nằm trong miễn tác

dụng của lượng từ V có mặt trong công thức đó; trái lại, nó X được gọi là bién tur do

2 Một công thức không có biến tự do được gọi là công thức đóng

Vi du 1.2 VY AX (POY) ^A q(*)) là công thức đóng, trong khi 3X (p(Y,Y) A q(@X)) không phải là công thức đóng, vì Y là biến tự do

Nếu Xi, X: , X„ là các biến xuất hiện trong công thức # thì M142 4X.(F) được ký hiệu là 3# Tương tự,VXIVX: VXn(F) được ký hiéu la VF Khi xem xét

công thức có dạng VƑ, ta thường bỏ qua lượng tử V, lúc đó lượng từ V sẽ được hiểu ngầm định

Trong phân tiếp theo sẽ xét lớp chương trình logic đơn giản nhất, gọi là chương trình logic xác định

1.2 CHƯƠNG TRÌNH LOGIC XÁC ĐỊNH

1.2.1 Cú pháp

Định nghĩa 1.7 (Mệnh để xác dinh) Ménh đề xác định là một công thức có dạng:

a <&— Ủì, ,bụ (1)

trong do n = 0, a, b; la cac nguyén t6,7=1, 2, ,n, nguyén t6 a duoc goi la dau va

bị, ,bạ„ được gọi là thân của quy tắc, dấu phây được ký hiệu thay cho phép hội (a)

Các biến trong mệnh để mặc định được ràng buộc bởi lượng từ với mọi ngay trước mệnh đề

Trang 15

Trong ménh dé (1), nếu ø = 0 thì nó được gọi là mệnh đề đơn vị, nghĩa là mệnh đề

Ví dụ 1.3 Xem chương trình logie xác định gồm các mệnh đề sau:

love(X,Y) <— woman(X), child_of(Y, X) (1)

woman(Mai) (e1)

child_of(Hoa, Mai) (e2) Trong mệnh đề z¡ của ví dụ này, woman(Y) là nguyên tố để chỉ X là một phụ nit, child_of(Y, X) la nguyén té dé chi Y 1a child_of ctia X, love(Y, Y) là nguyên tô đê chỉ X thương yéu Y

Y nghia cua ménh dé r: 1a moi phụ nữ đều thương yêu con của họ và các mệnh

dé don vi e1, e2 06 y nghia: Mai la mot phu nt va Hoa la con cua cua Mai

Ví dụ 1.4 Xét chương trình logic xác định P gồm các mệnh để sau đây để mô tả các quan hệ anh/em (sibling), chu/bac (cousin), ho hang (related) nhu sau:

nN: sibling(X,Y) < parent(X,Z), parent(Y,Z)

T2: cousin(X,Y) << parem(XV,X,), paren(Y,Y,), sibling(X,,Ÿ,)

T3: cousin(X,Y) <— parent(X,Xp), parent(Y,Y,), cousin(Xp,Yp)

HẠ: related X,Y) <_ sibling(X,Y)

rs: related X,Y) <— related(X.7), parent(Y,Z)

Ys: related X,Y) <—_ related(Z,Y), parent(X,Z)

Trang 16

Trong chương trình này thi parent la vi tt chỉ quan hệ cha/me va parent(C,P)

có nghia la P 1a cha/me cua C, cac vi tt sibling, cousin, related lần lượt chỉ các quan

hệ anh/em, chú/bác, họ hàng

Quy tắc rị có nghĩa: "Với mọi X và Y, X la anh/em của Y nếu tổn tại Z là cha/mẹ

của X và Y và Y, Y không phải cùng một người" tức là: s¿b/g(Y,V) là đúng nếu X, Y

là những người cùng chung cha mẹ, nhưng loại trừ trường hop sibling(a,a) do X # Y

†rong quy tắc ri

Quy tắc ra và rs định nghia vi tlt cousin va các quy tắc r4, rs, re định nghĩa vị

tr related

Vi du 1.5 Xem chương trình logic sau để định nghia sé tr nhién (biéu thị bằng ký

hiệu vị từ m2)

rị: na/(0) r2: nat(s(X)) < nat(xX)

Trong chuong trinh nay thi sla ky hiéu ham 1-ngéi, duoc xác dinh boi s(X) =X

+1 voi X thudc tap số tự nhiên Ñ, nguyên tố n(x) dé chi X là một tự nhiên Mệnh để

đơn vị z¡ có ý nghĩa là 0 một số tự nhiên và z2 là mệnh đề với ý nghĩa là nếu X là số

tự nhiên thì s(X)) cũng là số tự nhiên

1.2.2 Ngữ nghĩa

Phần này sẽ trình bày ngữ nghĩa chương trình logic xác định theo tiếp cận lý

thuyết mô hình Trước hết ta giới thiệu một số khái niệm

Định nghĩa 1.9 (Vũ trụ/Cơ sở/Thê hiện Herbrand) [2] Cho P là chương trình logic

xác định

e Vii tru Herbrand của P, ký hiệu Up, la tap cac hang thire nén duoc xay dung

từ các hằng và các ký hiệu hàm trong P

e Cơ sở Herbrand của P, ký hiệu Bz, là tập các nguyên tố nền được xây dựng

từ các vị từ trong P có đối là các hạng thức nền trong vii tru Herbrand Up

Trang 17

e Mot thé hién Herbrand (hoặc đơn giản là thể hiện) của ?P là một tập con tùy ý

của cơ sở Herbrand Bp cua P

Một thể hiện Herbrand có thể được xem như một tập các nguyên tố nên có giá

tri dung trong một ngữ cảnh đã cho Vũ trụ Herbrand của chương trình logic xác định

P luôn luôn là vô hạn nếu trong P co it nhất một ký hiệu hàm có số đối số lớn hơn 0

Ví dụ 1.6 Xét chương trình logic xác định P trong Ví dụ 1.5:

Vũ trụ Herbrand cua P la: Up = {0, s(0), s(s(0)), s(s(s(0))), }

Co sở Herbrand cua P la:

CeP

được gọi là hiện hành của P

Định nghĩa 1.11 (Mô hình) [2] Cho 7 là một thể hiện của chương trình logie xác định

P Lúc đó 7 là mô hình của P nếu mợi mệnh để của P là đúng theo thể hiện 7

Vi du 1.7 Xét các thể hiện 7, 72, 7; của chương trình logic P trong ví dụ 1.5, rõ ràng 1ì không phải là mô hình của P vì mặc dầu 7 là mô hình của mệnh đề øz⁄(0) nhưng 1¡ không phải là mô hình của mệnh đề z¿ vì tồn tại mệnh dé nén nat(s(0)) < nat(0) của 7z mà 7¡ không phải là mô hình của mệnh để nền này Cũng vậy, 72 cũng không

phải là mô hình của P vì mệnh để tồn tại mệnh đề nên:

naf(s(s(0))) — nứ0af(s(0))

Trang 18

của 72 mà ?› không phải là mô hình của nó Tuy nhiên, J3 la m6 hinh cua P Ta co 1a

mô hình của 7+ j; cũng là mô hình của z2 Thật vậy, xét mệnh đề:

nat(s(t))) — nat(t)

là một mệnh để nền nào đó của mệnh đề z2, trong đó ¢ e ? Rõ ràng mệnh dé nat(s(t))

< nat(t) ding vì naf(0 và naf(s())) đều thuộc Ƒ› Vậy 1; là mô hình của P

Định lý 1.1 [2] Mọi chương trình logic xác định đều có mô hình nhỏ nhất

Ta ký hiệu mô hình nhỏ nhất của P là Mp

Định nghĩa 1.12 (Ngữ nghĩa chương trình logic xác định) [2] Cho ? là chương trình logic xác định, ngữ nghĩa của P là mô hình nhỏ nhất A⁄Zp của P

Mô hình nhỏ nhất Mp có thể tính được bằng cách sử dụng một toán tử 7p được định

nghĩa như sau:

Định nghĩa 1.13 [2] Cho P là chương trình logic xác định Đặt 7p: 2” -> 2 là

ánh xạ được xác định như sau: Với mỗi 7 e

Tp)={A e Bp| 3 A<— áli , 1„ e ground(P) và {⁄4ù, , „} C7}

trong đó 2# là tập các tập con của cơ sở Herbrand Bp

Dinh lý 1.2 [2| Cho P là chương trình logic xác định Lúc đó toán tử 7p đơn điệu và điểm bất động nhỏ nhất của 7? là mô hình nhỏ nhất A⁄p của P

Mệnh đề 1.1 Cho P là chương trình logic xác định Mô hình nhỏ nhất Ä⁄p của P là

giới hạn của dãy (T?), trong do T§ = @, Ti*! = Tp(T}), i e N Ký hiệu T/ là giới

Trang 19

1.3 CHUONG TRINH LOGIC THONG THUONG

Các chương trình logic xác định biéu dién cho tri thirc duong va cho phép m6 hình hóa khá nhiễu bài toán khác nhau, các mệnh đề trong chương trình mô tả các đối tượng xác định và mối quan hệ giữa chúng Các quan hệ này được thể hiện rõ trong

mô hình nhỏ nhất - chứa các nguyên tố nền là hệ quả logie của chương trình Tuy

nhiên, có nhiều trường hợp đòi hỏi một cấu trúc để mô hình hóa khái niệm phủ định

Phủ định là một khái niệm ngôn ngữ tự nhiên và thường gặp trong nhiều tình huống

thực tế Chang hạn, với mệnh đề:

connecfed(X) hub(Y), link(Y, X)

để định nghĩa việc các đơn vị được kết nối với ít nhất một trung tâm điểu khiển, ta

cũng có thể nghĩ đến việc định nghĩa các đơn vị không kết nối đến một trung tâm điều khiển nào cả Điều này có thê mô hình hóa một cách tự nhiên bằng cách đặt phép toán phủ định øof trước các nguyên tố, chẳng hạn quy tắc sau có chứa phép toán phủ

Trang 20

Đối với chương trình logic thông thường, có thể tồn tại nhiều mô hình cực tiêu nhưng không có mô hình nhỏ nhất Chẳng hạn, xét chương trình logic thông thường trong ví dụ sau:

Ví dụ 1.9 Cho chương trình logic thông thường gồm các mệnh đề sau:

man(a) <

single(X) <— man (X), not husband(X)

husbandX) <— man(Y), not single(Y)

Chương trình logic này chỉ có hai mô hình cực tiêu:

M, = {man(A), single(A)}, M2 = {man(A), husbandA)}

và không có mô hình nhỏ nhất do Ä⁄¡ # Ä⁄2 và Ä⁄¡ Mi

Từ ví dụ trên, ta nhận thấy khi cho phép mệnh đề có chứa literal âm thì chương trình có thể tồn tại nhiều mô hình cực tiểu nhưng không có mô hình nhỏ nhất Vấn đề đặt ra ở đây là khi một chương trình logic thông thường không tồn tại mô hình nhỏ nhất thì ngữ nghĩa của chương trình sẽ được xác định như thế nào? Trong phân tiếp theo sẽ trình bày một tiếp cận nhằm giải quyết van dé này là tiếp cận theo ngữ nghĩa tập trả lời [6]

Từ đây về sau, để đơn giản, ta sẽ gọi chương trình logic thông thường là chương

trình logic Trước hết ta có một số khái niệm sau:

Định nghĩa 1.15 [6] (Phép biến đổi Gelfond - Lifschitz) Cho P là chương trình logic

Goi ground(P) la hiện hành của P Đối với mọi thé hiện A⁄ của P, ký hiệu P là

chương trình nhận được từ ground(Đ) bằng cách loại bỏ:

1 Các quy tắc có literal phủ định not 44 trong thân của nó, với 44 e À⁄

2 Tat ca literal not.A trong thân của các quy tắc còn lại

Điều kiện 1 nói rằng nếu 44 € M thì thân quy tắc có chứa literal not 4 không thê trở thành đúng vì vậy ta có thê loại bỏ quy tắc này Mặt khác, nếu A £ A⁄ thì not A có thê giả sử là đúng và được loại bỏ khỏi thân quy tắc chứa nó

11

Trang 21

Rõ ràng P* là chương trình logic không chứa phủ định, nó là chương trình logic xác định, vì vậy P* có mô hình nhỏ nhất

Ví dụ 1.10 Cho ? là chương trình logic:

và mô hình nhỏ nhất của P” chính là {a,c}

Xét thê hiện J, = {a, c} va b= {b} Thu gon p gém 1 quy tac:

be

và mô hình nhỏ nhất của P' chính là {Ð}

Định nghĩa 1.16 [6] (Tập trả lời) Thể hiện 7 của chương trình logic P được gọi là fập

trả lời của P nếu 7 là mô hình nhỏ nhất của P!

Ví dụ 1.11 Xét chương trình P gồm các mệnh đề sau:

s < notgd

q < nots p<-— qnots

ƒ snotp Xét h = { p, g} Khi đó, P gồm các mệnh để: ø và p < q và mô hình nhỏ nhất của

no la {p, g} =h Vay fla tập trả lời của P

Xét = {s} Khi đó, P” gồm các mệnh đề:

Ss

f<s

12

Trang 22

Mô hình nhỏ nhất của P” là {s,/} #5 Vì vậy I2 không là tập trả lời của ?

Định nghĩa 1.17 (Ngữ nghĩa chương trình logic) Ngữ nghĩa của chương trình logic

P được xác định bởi tập các tập trả lời của P

1.4 CAC TINH CHAT CUA TAP TRA LOI

Phần này trình bày một số tính chất quan trọng của các tập trả lời Trước tiên

ta sẽ xem xét mối quan hệ giữa tập trả lời và mô hình cực tiểu của chương trình logic Định lý 1.3 [6] Cho P là chương trình logic Lúc đó mọi tập trả lời của P đều là mô

hình cực tiểu của P

Hệ quả 1.1 Các tập trả lời là không thể so sánh nhau được, nghĩa là nếu A⁄¡ và Ä⁄› là

các tập trả lời của chương trình logic P thì Ä⁄\ # Ä⁄2 và M› # Mi

Các tập trả lời là sự tổng quát hóa ngữ nghĩa đối với chương trình logic xác

định, điều này được thể hiện bởi kết quả sau:

Định lý 1.4 [6] Đối với chương trình logic xác định thì tập trả lời chính là mô hình nhỏ nhất của nó

1.5 LAP LUAN TU CAC TAP TRA LOI

Một chương trình logic có thể có một hoặc nhiều hoặc không có tập trả lời Vấn đề đặt ra là cách thức suy luận từ ? sẽ được xác định như thế nào Đối với chương trình chỉ có một tập trả lời Ä⁄, một nguyên tố nên ø được xem là đúng nếu ø e Ä⁄ và

sai nếu ø g Ä⁄ Điều này thường được mở rộng để suy luận từ tất cả tập trả lời của P theo hai dạng đối ngẫu nhau:

Lập luận bất chấp: Một nguyên tố nền a là hệ quả bất chấp của P, ký hiệu P Ep a

nếu ø thuộc vào một tập trả lời Ä⁄ nào đó của P

Lập luận thận trọng: Một nguyên tố nền z là hệ quả thận trọng của P, ký hiệu P E„

a nếu øz thuộc moi tập trả lời của P

13

Trang 23

Ví dụ 1.12 Xem chương trình logic P gồm các mệnh đề sau:

p(4)

1X) <p), not g(X)

Luc do P Fy r(a) va P F, r(a) vi r(a) ding trong moi tap tra loi Tuy nhién voi P’ =

PU {4(2} thì do {p(a), q(a)} là tập trả lời duy nhất cia P’ nén P’ #, r(a) va P

# a)

1.6 TIEU KET CHUONG 1

Chương 1 da trinh bay cu pháp và ngữ nghĩa của chương trình logic xác định

và chương trình logie thông thường Ngữ nghĩa của chương trình logic xác định được xác định bởi mô hình nhỏ nhất, trong khi ngữ nghĩa tập trả lời được thiết lập cho chương trình logic thông thường có chứa phép phủ định Trong Chương 2 và sẽ trình bày về chương trình logie phỏng đoán và một số phương pháp trả lời câu truy vấn đối với lớp chương trình này

14

Trang 24

Chương 2 CHƯƠNG TRÌNH LOGIC PHỎNG ĐOÁN

Chương này trình bày về cú pháp và ngữ nghĩa tập trả lời của chương trình logie phỏng đoán — một mở rộng của chương trình logic đã xét ở chương 1

do cỏ ướt Tuy nhiên, các giải thích khác có thể là do máy phun nước hoặc đo trời có mưa vào tối hôm trước Các giải thích được suy diễn phỏng đoán từ các quan sát và các quy tắc logic Ta có các quy tắc logic biểu diễn như sau:

grass is wet <— rained last nighí grass is wet <— sprinkler was on

shoes_are_wet <— grass is wet

Vé6i cdc quy tic nay, quan sat O = shoes are wet co thê được giải thích là đo

ca hai nguyén nhan 1a rained_last_night va sprinkler_was_on

Thông thường, trong khuôn khổ phỏng đoán, có một thành phần được thêm vào

là một tập các ràng buộc toàn vẹn JC Untergrity Constraints), nghia la mot tap cac

công thức phải được thỏa mãn bởi một tập A các giả thiết có thê chấp nhận được đê

suy luận cho quan sát @ Trong ví dụ trên, một ràng buộc toàn ven có thể là:

rained _last_night —> ƒalse Với ràng buộc toàn vẹn này thì mọi giải thích phỏng đoán chứa rained Iast nighí đều bi cam

15

Trang 25

2.2 CHUONG TRINH LOGIC PHONG DOAN

Phần này tập trung trình bày về cú pháp và ngữ nghĩa của chương trình logic phỏng đoán [3]

2.2.1 Cú pháp

Định nghĩa 2.1 (Chương trình logic phỏng đoán) [3] Chương trình logic phỏng đoán

(viết tắt ALP) là bộ ba (P, 4, 7C), trong đó:

e P là một chương trình logic, nghĩa là một tập hữu hạn các mệnh đề

pelha ah trong đó p là nguyên tố và ñ, ,/a là các literal

e4 là một tập các nguyên tố nền, được gọi là các nguyên tố phỏng đoán Các vị

từ của các nguyên tổ phỏng đoán không xuất hiện trong phần đầu của mọi mệnh đề trong P

e JC la mét tap các ràng buộc toàn vẹn, mỗi ràng buộc toàn vẹn là công thức có

dạng:

L1A \In>

hoặc trong đạng kéo theo tổng quát hơn:

TIA ATa->p

trong đó p là nguyên tố và mỗi 7¡ là một literal và mỗi 44; là một nguyên tố Tất

cả biến trong Ø, Ứ¡A A Ủa đều ngầm định được lượng hóa bởi lượng từ với mọi

trên phép kéo theo

Ta dùng ký hiệu -> thay cho ký hiệu < để phân biệt ràng buộc toàn vẹn với các

quy tắc

Chú ý: Mỗi nguyên tế trong tập giải thích phỏng đoán A phải thuộc tập nguyên tổ phỏng đoán 41, nghĩa là A C41 Trong ví dụ trên thì tập các vị từ phỏng đoán là:

A= tramed last night, sprinkler was on}

Ta xem các vị từ xuất hiện trong ALP (P, A, JC) nhw la chit ky cua (P, A, IC)

16

Trang 26

Định nghĩa 2.2 (Câu truy vấn) [3] Một câu fruy vấn Q đối với ALP (P, A, IC) la hoi

các literal mà các vị từ của nó là thuộc chữ ký của (P, A, IC) Cac bién trong O ngam

định được lượng hóa bởi lượng từ tổn tại với phạm vi là Ó Truy vấn rong được biểu

diễn như là /rue

Một cách không hình thức, với ALP P, 44, JC} cho trước và câu truy vấn QO, mot

câu trả lời phỏng đoán đôi với O là một tập các nguyên tô phỏng đoán nên A sao cho cùng với P sẽ “thỏa” cả @ và JC Khái niệm “thỏa” phụ thuộc vào ngữ nghĩa của chương trình logic P Ta có định nghĩa hình thức sau:

Định nghĩa 2.3 (Câu trả lời phỏng đoán) [3] Một cẩu trả lời phỏng đoán đối với câu truy van Q theo ALP (P, A, IC) là một tập hữu hạn A các nguyên tố phỏng đoán sao cho đối với một phép thế nền ø nào đó cho các biến của Q thi:

e MA) la mot tap tra loi cua PU A, va

e M(A) thoa tập ràng buộc toan ven IC

17

Trang 27

Ví dụ 2.1 Xét chương trình logic phỏng đoán (P, A, IC), trong do:

P: pea

q<r A: {a}

1C por V6i A= {a} Lic dé M(A) = {a, p} là tập trả loi duy nhat cua P U A nhung M(A) không thỏa ràng buộc ø —> 7 của 7C (do r không có trong Ä⁄) nên A⁄{A) không phải là

tập trả lời của ýP, A4, JC)

Xét tập (A) = {a, p, g, r} Ta co M (A) khong phải là tập trả lời của (P, A, IC) vi

nó không phải là tập trả lời của P t2 A

Vi du 2.2 Xét ALP (P, A, JC), trong do:

Pi pea

q<©—r.s 4: {a}

IC: q>r Xét tap A= {a} Taco M(A) = {a, p} la tap tra lời của (P, A, IC) vi no la tap tra loi cua PU Ava M thoa man rang buéc g > r cua JC Tuy nhién, tap {a, p, g} là tập trả lời của P t2 A nhưng không thỏa mãn ràng buộc 7C nén {a, p, g} khéng phai la

tập trả lời của (P, A, IC)

Với ngữ nghĩa tập trả lời của ALP, Định nghĩa 2.2 được thể hiện như sau:

Định nghĩa 2.6 (Câu trả lời phỏng đoán) [3] Cho ALP P = (P, A, JC) va O la một truy vấn nền Một cấu trả lời phỏng đoán đối với CO 1a mot tap hitu han A cac nguyén

tố phỏng đoán nên sao cho:

1 A⁄A) E O (nghĩa là Ó thỏa mãn A⁄{A))

2 MA) thỏa mãn 7C

18

Ngày đăng: 11/01/2024, 22:46

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Trương Công Tuấn (2018), Giáo trinh chuong trinh Datalog, Nxb Dai học Huế. Tiếng Anh Sách, tạp chí
Tiêu đề: Giáo trinh chuong trinh Datalog
Tác giả: Trương Công Tuấn
Nhà XB: Nxb Dai học Huế
Năm: 2018
[3] Denecker M., Kakas A. (2002), Abduction in Logic Programming, Department of Computer Science, K. U. Leuven and Department of Computer Science, University of Cyprus Sách, tạp chí
Tiêu đề: Abduction in Logic Programming
Tác giả: Denecker M., Kakas A
Nhà XB: Department of Computer Science, K. U. Leuven
Năm: 2002
[5] Eshghi K., Kowalski A. Abduction compared with negation by failure. In Proc. Of the 6th International Conference on Logic Programming, pages 234{254, 1989 Sách, tạp chí
Tiêu đề: Abduction compared with negation by failure
Tác giả: Eshghi K., Kowalski A
Nhà XB: Proc. Of the 6th International Conference on Logic Programming
Năm: 1989
[6] Gelfond M., Lifschitz V. (1988), The stable model semantics for logic programming, Proceedings of the Fifth International Conference on Logic Programming (ICLP), Seattle, USA, The MIT Press, pp. 1070-1080 Sách, tạp chí
Tiêu đề: The stable model semantics for logic programming
Tác giả: Gelfond M., Lifschitz V
Nhà XB: The MIT Press
Năm: 1988
[7] Kakas A., Kowalski R., Toni F. (1998), The Role of Abduction in Logic Programming, Handbook of Logic in Artificial Intelligence and Logic Programming 5, Oxford University Press, pp. 235-324 Sách, tạp chí
Tiêu đề: The Role of Abduction in Logic Programming
Tác giả: Kakas A., Kowalski R., Toni F
Nhà XB: Oxford University Press
Năm: 1998
[8] Kakas A., P. Mancarella. Abductive logic programming. In Proc. of the Ist Logic Programming and Non-Monotonic Reasoning (LPNMR), pages 49{61, 1990 Sách, tạp chí
Tiêu đề: Abductive logic programming
Tác giả: Kakas A., P. Mancarella
Nhà XB: Proc. of the Ist Logic Programming and Non-Monotonic Reasoning (LPNMR)
Năm: 1990
[9] Sadri F. (2008), Abductive Logic Programming (ALP) and its Application in Agents and Multi-agent Systems, Imperial College London, 1CCL SummerSchool Dresden Sách, tạp chí
Tiêu đề: Abductive Logic Programming (ALP) and its Application in Agents and Multi-agent Systems
Tác giả: Sadri F
Nhà XB: Imperial College London
Năm: 2008
[4] Denecker M., Schreye D. De. (1997), SUDNFA: An Abductive Procedure for Abductive Logic Programs, The Journal of Logic Programming 34(2), pp. 111-167 Khác

HÌNH ẢNH LIÊN QUAN

Hình  3.1.  Tính  câu  trả  lời  cho  đích  G  =  —  p - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh 3.1. Tính câu trả lời cho đích G = — p (Trang 35)
Hình  3.3.  Tính  câu  trả  lời  cho  đích  Ớ  =  &lt;  5 - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh 3.3. Tính câu trả lời cho đích Ớ = &lt; 5 (Trang 37)
Hình  vẽ  sau  biểu  diễn  qua  trinh  tinh  toan  cia  phwong  phap  KM  voi  dich  G=  &lt;5 - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh vẽ sau biểu diễn qua trinh tinh toan cia phwong phap KM voi dich G= &lt;5 (Trang 38)
Hình  3.4.  Tinh  cau  tra  loi  cho  dich  G=  &lt; - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh 3.4. Tinh cau tra loi cho dich G= &lt; (Trang 39)
Hình  3.6.  Cửa  số  làm  việc  của  SWI-Prolog. - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh 3.6. Cửa số làm việc của SWI-Prolog (Trang 46)
Hình  3.7.  Kết  quả  thực  thi  bài  toán  1. - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh 3.7. Kết quả thực thi bài toán 1 (Trang 49)
Hình  3.9.  Kết  quả  thực  thi  bài  toán  3  bằng  hệ  thống  CIFF. - Tìm hiểu ngữ nghĩa chương trình logic phỏng đoán và một số phương pháp trả lời câu truy vấn
nh 3.9. Kết quả thực thi bài toán 3 bằng hệ thống CIFF (Trang 51)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w