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

Bài giảng Lập trình logic và ràng buộc (Logic Programming and Constraint): Bài 1 - TS. Lê Mạnh Hải

24 3 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 đề Bài giảng Lập trình logic và ràng buộc (Logic Programming and Constraint): Bài 1 - TS. Lê Mạnh Hải
Tác giả Lê Mạnh Hải
Người hướng dẫn TS. Lê Mạnh Hải
Trường học Đại học Kỹ thuật Công nghệ TP HCM
Chuyên ngành Khoa học máy tính
Thể loại Bài giảng
Năm xuất bản 2023
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 24
Dung lượng 436,5 KB

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

Nội dung

Trong lĩnh vực Công Nghệ Thông Tin nói riêng, yêu cầu quan trọng nhất của người học đó chính là thực hành. Có thực hành thì người học mới có thể tự mình lĩnh hội và hiểu biết sâu sắc với lý thuyết. Với ngành mạng máy tính, nhu cầu thực hành được đặt lên hàng đầu. Tuy nhiên, trong điều kiện còn thiếu thốn về trang bị như hiện nay, người học đặc biệt là sinh viên ít có điều kiện thực hành. Đặc biệt là với các thiết bị đắt tiền như Router, Switch chuyên dụng

Trang 1

Lập trình logic và ràng buộc

( Logic Programming and Constraint)

Ts Lê Mạnh Hải Khoa CNTT,

ĐH Kỹ thuật Công nghệ TP HCM

Trang 2

• Một số ứng dụng trong xử lý ngôn ngữ tự nhiên

II Thời gian và nội dung: 30 tiết lý thuyết + 15 tiết bài tập

• Tổng quan về Prolog(3 tiết)

• Kỹ thuật lập trình Prolog(9 tiết)

• Logic và CSDL(3 tiết)

• Logic và Hệ chuyên gia(3 tiết)

• Logic và ngữ pháp (6 tiết)

• Logic và lập trình ràng buộc (6 tiết)

• Bài tập và kiểm tra giữa kỳ (15 tiết)

Trang 3

III Giáo trình và tài liệu tham khảo

•Bài giảng của Lê Mạnh Hải (Lưu hành nội bộ)

•James Lu, Jerud J Mead Prolog A Tutorial

Introduction Computer Science Department Bucknell University

•Ulf Nilsson and Jan Maluszynsky LOGIC,

PROGRAMMING AND PROLOG (2ED) John Wiley

& Sons Ltd 2000.

•Phan Huy Khánh Lập trình logic trong Prolog Nhà xuất bản ĐH QG Hà nội 2004

Trang 4

IV Đánh giá:

•Điểm giữa kỳ (30%): Bài kiểm tra 60 phút trên PC

•Thi kết thúc môn (70%): Bài kiểm tra 90 phút

V Giáo viên:

•Ts Lê Mạnh Hải Khoa CNTT HUTECH

•email: lm.hai@hutech.edu.vn

•Website: giangvien.hutech.edu.vn

Trang 5

Bài 1: Giới thiệu về ngôn ngữ

Prolog

• Mục tiêu:

– Lược sử Prolog và các dòng sản phẩm

– Cài đặt SWI-Prolog và SWI-Prolog editor

– Các khái niệm cơ bản và ví dụ

Trang 6

Lược sử Prolog và các dòng

Theo Wikipedia.org

•“Prolog là một ngôn ngữ lập trình "lập trình theo lô gích" Xuất

hiện từ năm 1972 , mục tiêu của Prolog là giúp người dùng mô tả lại bài toán trên ngôn ngữ của logic, dựa trên đó, máy tính sẽ tiến hành

suy diễn tự động dựa vào những cơ chế suy diễn có sẵn (hợp nhất,

quay lui và tìm kiếm theo chiều sâu) để tìm câu trả lời cho người

dùng.

•Cú pháp và ngữ nghĩa của Prolog đơn giản và sáng sủa, nó được

người Nhật coi là một trong những nền tảng để xây dựng máy tính thế

hệ thứ năm mà ở đó, thay vì phải mô tả cách giải quyết một bài toán trên máy tính, con người chỉ cần mô tả bài toán và máy tính sẽ hỗ trợ

họ nốt phần còn lại.

6

Trang 7

Ý tưởng mới trong các ứng dụng

• Prolog được sử dụng nhiều trong các ứng dụng của trí tuệ nhân tạo (AI) và ngôn ngữ học trong khoa học máy tính (đặc biệt là trong ngành xử lý ngôn ngữ tự nhiên NLP vì đây là mục tiêu thiết kế ban đầu của nó).”

• Các lĩnh vực khác: theorem proving,[8] expert systems,[9]

games, automated answering systems, ontologies and

sophisticated control systems

• Cơ sở của Prolog là hàm mệnh đề (propositional

Function) và vị từ logic (logic predicate) Xem thêm Toán rời rạc

Trang 8

• Cơ sở lý thuyết của AI

– AI  Phát triển các chương trình có khả năng suy luận, dựa trên lý thuyết toán học mệnh đề

– Suy luận giúp chương trình AI biết được tính

đúng/sai của một vấn đề nào đó

– Không quan trọng vấn đề đó được thực hiện như thế

nào.

• Phép toán vị từ được hiện thực bằng ngôn ngữ

lập trình trên máy tính PROLOG

Trang 9

Suy luận logic

• Giáo sư môn logic học nhận ra mình bị mất kính Ông bèn ngồi suy luận để xem đối tượng nào đã lấy kính của mình

"Ai lấy cắp? Đương nhiên là kẻ cắp rồi Và tên này có thể bị cận thị, có thể không Có thể hắn đã có kính, có thể chưa có

Nhưng nếu chưa có làm sao hắn có thể trông thấy kính của

mình? Điều này chứng tỏ hắn không bị cận thị Mà không bị cận thị thì đâu cần tới kính

Từ những giả thuyết trên, có thể kết luận là không ai lấy kính của mình cả Chắc chắn nó nằm ở đâu đây thôi

Nhưng mình đã nhìn khắp rồi, không thấy gì cả Mà mình nhìn được như vậy có nghĩa là mình đang đeo kính Ôi may quá!!!"

Trang 10

• Một anh chàng lập trình viên cùng người yêu đi du lịch nước ngoài Trong đoàn còn có một cặp người Anh và một cặp người Mỹ nên họ nói với nhau bằng tiếng Anh.

Một hôm cả đoàn ngồi ăn bữa sáng

Anh chồng người Anh nói với vợ:

"Can you pass the honey, Honey?" (Đưa anh ít mật, em yêu)Anh chồng người Mỹ nói với vợ:

"Do you mind passing the sugar, Sugar?" (Chuyển cho anh chút đường, em yêu)

Chàng lập trình viên tỏ ra không thua kém:

"Pass me the bacon, Pig!" (Lấy cho anh thịt lợn muối, Lợn!)

10

Trang 11

Mệnh đề

• Bầu trời xanh

• Loan thích Long

• Tâm yêu Tâm (!???)

• Mệnh đề không biểu diễn được biểu thức X=Y+3 vì X và Y chưa có giá trị, nên không thể kết luận đúng sai

• Những sự tương đương sau không biểu diễn được bằng logic mệnh đề

"Không phải tất cả bánh đều ăn được" và "Chỉ một số bánh ăn được“

Ứng dụng phép tam đoạn luận: A v B, !A => B

Có tôi với anh mà tôi mất đồng hồ, mà tôi thì không lấy của tôi rồi!

Trang 13

Tổng quát

• các chương trình Prolog đều yêu cầu vị từ logic ở phần đầu của một mệnh đề Horn là một vị từ dương

Trang 15

• Tất cả free trên http://www.swi-prolog.org/

• Hãy cài lên máy tính của bạn để thực hành

Trang 19

Các quy ước

• Hằng số: 3.2

• Hằng chuỗi: an, binh, ‘An’, ‘Binh’

• Hằng logic: true, false.

• Biến: bắt đầu bằng chữ hoa hoặc ‘_’ Biến nặc danh _ được dùng khi không cần truy cập

Trang 20

Các mệnh đề của người sử dụng: chương trình prolog.

Ngày đăng: 02/07/2023, 18:58

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