1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Lời giải bài tập prolog chương 2 Ngữ nghĩa của chương trình prolog môn lập trình logic và ràng buộc.

31 2 0

Đ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 đề Ngữ nghĩa của chương trình Prolog
Trường học Trường Đại học Giao thông Vận tải TP.HCM
Chuyên ngành Lập trình logic và ràng buộc
Thể loại Báo cáo cuối kỳ
Năm xuất bản 2023
Thành phố TP.HCM
Định dạng
Số trang 31
Dung lượng 3,67 MB

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

Nội dung

3 BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ GIAO THÔNG VẬN TẢI TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP HCM oOo BÁO CÁO CUỐI KỲ MÔN HỌC LẬP TRÌNH LOGIC VÀ RÀNG BUỘC Nội dung Ngữ nghĩa của chương trình Prolog TP HCM NĂM 2.

Trang 1

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP.HCM

- oOo

-BÁO CÁO CUỐI KỲ

MÔN HỌC: LẬP TRÌNH LOGIC VÀ RÀNG BUỘC Nội dung: Ngữ nghĩa của chương trình Prolog

TP.HCM NĂM 2023

Trang 2

NHẬN XÉT CỦA GIẢNG VIÊN

Trang 3

MỤC LỤC

Phần 1: Lý thuyết………1

I Quan hệ giữa Prolog và logich toán học 1

II Các mức nghĩa của chương trình Prolog 2

II.1 Nghĩa khai báo của chương trình Prolog 2

II.2 Khái niệm về gói mệnh đề 3

II.3 Nghĩa Logich của các mệnh đề 4

II.4 Nghĩa thủ tục của Prolog 5

II.5 Tổ hợp các yếu tố khai báo và thủ tục 10

III Sắp đặt thứ tự các mệnh đề và các đích 11

III.1 Nguy cơ lặp các vòng lặp vô hạn 11

III.2 Thay đổi thứ tự mệnh đề và đích trong chương trình 11

Phần 2: Bài tập 20

Bài 1: 19

Bài 2: 20

Bài 3: 22

Bài 4: 23

Bài 5: 23

Bài 6: 24

Bài 7: 24

Bài 8: 25

Bài 9: 27

Bài 10: 27

Trang 4

Phần 1: Lý thuyết

I Quan hệ giữa Prolog và logich toán học

Trang 5

II Các mức nghĩa của chương trình Prolog

II.1 Nghĩa khai báo của chương trình Prolog

Trang 6

II.2 Khái niệm về gói mệnh đề

Trang 7

II.3 Nghĩa Logich của các mệnh đề

Trang 8

II.4 Nghĩa thủ tục của Prolog

Trang 9

6

Trang 13

II.5 Tổ hợp các yếu tố khai báo và thủ tục

Trang 14

III Sắp đặt thứ tự các mệnh đề và các đích

III.1 Nguy cơ lặp các vòng lặp vô hạn

III.2 Thay đổi thứ tự mệnh đề và đích trong chương trình

Trang 15

12

Trang 19

Phần 2: BÀI TẬP

Trang 20

17

Trang 23

Bài 2:

Trang 24

Có quay lui Vì khi xét đến trường hợp thất bại, prolog sẽ quay lui về trước đó

để xét 1 hướng khác, khi không còn khả năng xét nào nữa sẽ đưa ra False.

Trang 26

Bài 4:

Quá trình tìm thick(X),dark(X) sẽ dài hơn tìm dark(X),thick(X) Vì dark(X) có 2 biến phụ, nên sau khi rẽ nhanh sẽ tìm thick(X) nhanh hơn Còn nếu tìm thick(X) trước thì phải rẽ nhánh 2 lần.

Bài 5:

Kết quả trả lại sẽ là X=f(X).

Hình 4 Chạy chương trình bài 5 trên phần mềm SWI-Prolog

Một số trường hợp, khi yêu cầu Prolog đánh giá truy vấn X = f(X), nó sẽ cố gắng thống nhất X với f(X) Quá trình thống nhất liên quan đến việc so sánh các thuật ngữ ở cả hai vế của phương trình và nếu chúng tương đương nhau, thì các biến trong các thuật ngữ đó là thống nhất.

Trong trường hợp này, X không thể đồng nhất trực tiếp với f(X) vì X xuất hiện bên trong số hạng f(X) Tuy nhiên, Prolog vẫn sẽ cố gắng thống nhất X với f(X) bằng cách đánh giá đệ quy số hạng f(X) cho đến khi nó đạt đến một điểm cố định Quá

Trang 28

Bài 8:

Trang 29

b) Ý nghĩa logic của các vị từ a1, a2, a3, a4 như sau:

- a1(X, Y) là đúng nếu tồn tại một đường đi từ X đến Y trong đồ thị có hướng được xác định bởi vị từ p Con đường này có thể là trực tiếp (nghĩa là X có quan hệ trực tiếp với Y theo p) hoặc gián tiếp (nghĩa là có một số nút trung gian Z sao cho X có quan hệ với Z theo p và Z có quan hệ với Y theo p).

- a2(X, Y) là đúng nếu tồn tại một đường đi từ X đến Y trong đồ thị có hướng được xác định bởi vị từ p, trong đó đường đi phải là gián tiếp (nghĩa là phải có ít nhất một nút trung gian Z).

Trang 30

- a3(X, Y) là đúng nếu tồn tại một đường đi từ X đến Y trong đồ thị có hướng được xác định bởi vị từ p, trong đó đường đi phải là gián tiếp và tất cả các nút trung gian trên đường đi (nếu có) phải khác biệt với X và y.

- a4(X, Y) là đúng nếu tồn tại một đường đi từ X đến Y trong đồ thị có hướng được xác định bởi vị từ p, trong đó đường đi phải là gián tiếp và các nút trung gian trên đường đi (nếu có) có thể bao gồm X nhưng phải là khác với Y

pet(X) :- cat(X) ; dog(X).

small(X) :- pet(X), poodle(X).

apartmentpet(X) :- small(X), pet(X).

cat(felix).

cat(garfield).

dog(snoopy).

Ngày đăng: 01/05/2023, 16:27

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