prolog语言(耐心看完,你就入门了)

prolog语言(耐心看完,你就入门了)

ID:21943622

大小:192.00 KB

页数:77页

时间:2018-10-21

prolog语言(耐心看完,你就入门了)_第1页
prolog语言(耐心看完,你就入门了)_第2页
prolog语言(耐心看完,你就入门了)_第3页
prolog语言(耐心看完,你就入门了)_第4页
prolog语言(耐心看完,你就入门了)_第5页
资源描述:

《prolog语言(耐心看完,你就入门了)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、人工智能ArtificialIntelligence(AI)2021/7/6Prolog语言简介Prolog语言是一种以一阶谓词为基础的逻辑性语言(ProgramminginLogic)2021/7/6Prolog语言的特点Prolog语言的基本内容简单的例子2021/7/6Prolog语言(或者系统)是以一阶谓词逻辑的Horn子句集为语法,以Robinson的消解原理为工具,加上深度优先的控制策略而形成的人工智能通用程序设计语言Prolog语言的特点2021/7/6Horn子句集消解原理深度优先Prolog系统2021/7/6Prolog具有下列特点:①是一种描述性语言。只需要告诉“系统做什

2、么”,不要告诉系统“如何做”②数据与程序的统一表达。提供一种统一的符号结构“项”,数据与程序都是由项组成2021/7/6③自动实现模式匹配与回溯。这是人工智能中最常用的两项操作,Prolog自动实现这些操作④程序易于编写与阅读。它是面向人的自然语言⑤语句句型少,语法简明。只有三种句型2021/7/6参考资料:雷英杰,张雷,邢清华,孙金萍。VisualProlog语言教程。西安:陕西科学技术出版社,2002年2月(380页,35元)雷英杰,邢清华,孙金萍,张雷。VisualProlog编程、环境及接口。北京:国防工业出版社,2004年1月(412页,36元)2021/7/6Prolog语言的基本

3、内容1项2Prolog中的语句3表结构4Prolog程序的结构5常用内部谓词6Prolog程序设计步骤2021/7/6符号说明:“::=”表示“定义为”“

4、”表示“或”,可选“{}”表示“重复或者出现多个”1项2021/7/6项的定义:<项>::=<常量>

5、<变量>

6、<复合项>2021/7/6<常量>::=<原子>

7、<数><原子>::=<标识符原子>

8、<字符串原子>

9、<特殊原子><项>::=<常量>

10、<变量>

11、<复合项>2021/7/6命名:用小写字母或者小写字母开头的小写字母数字串用途:用于标识对象的名字、谓词(对象间的关系)或函数名标识符原子例:john,marry,classmate,t

12、eacher2021/7/6字符串原子是用引号括起来的符号串特殊原子指一些特殊符号,如+、-、*、/等2021/7/6变量:用于表示暂时不能命名或者不需要命名的对象,用大写字母开头<项>::=<常量>

13、<变量>

14、<复合项>2021/7/6特殊变量:空变量,记作:“_”含义:我们对问题的某一个变量的值不关心2021/7/6<复合项>::=<原子>(<项>{,<项>})

15、<项><原子><项>{<原子><项>}<项>::=<常量>

16、<变量>

17、<复合项>2021/7/6复合项:由一组其它对象组成的单个对象例:函数项:like(john,apple)表:[sa,sb],[1,2,3]表达式:(12+59

18、)*49-962021/7/6项常量变量复合项原子数标识符原子字符串原子特殊原子<原子>(<项>{,<项>})<项><原子><项>{<原子><项>}2021/7/62Prolog中的语句①事实:P.含义:无条件成立,恒为真例:like(monkey,banana)Prolog中的语句分成三种形式:2021/7/6②规则:P:-P1,P2,…,Pn.“:-”表示“蕴涵”“,”表示“合取”含义:若P1,…,Pn均为真时,P为真2021/7/6③问题(目标)GoalQ1,Q2,…,Qm.含义:待回答的问题,即Q1,…,Qm同时为真吗?2021/7/6从消解角度来看:①(事实)中,P是Horn子句20

19、21/7/6②(规则)可以表示为P1∧P2∧…∧PnP可以转化为~P1∨~P2∨…∨~Pn∨P也是Horn子句,并受全称量词约束2021/7/6③(问题)是Q1∧…∧Qm受存在量词约束,取非后~Q1∨…∨~Qm受全称量词约束,是Horn子句2021/7/6Prolog三种形式的语言都是Horn子句问题求解就是Horn子句集消解2021/7/63表结构表:若干个元素的有序序列表中的元素:常量、变量、项、表表用“[]”来表示,元素之间用逗号或者空格分开2021/7/6例:[1,2,3][a,b,c,d]2021/7/6用符号“

20、”来划分表头(第一个元素)和表尾(其余元素)特例:当只用一个元素时,

21、表尾为空空表(无元素),既无表头又无表尾2021/7/6例:P([the,cat,sat,down]).?-P([X

22、Y]).答案:X=the,Y=[cat,sat,down]?-P([X,Y

23、Z]).答案:X=the,Y=cat,Z=[sat,down]2021/7/64Prolog程序的结构Prolog的程序分为两部分:前提部分:所有事实和规则问题部分:目标子句序列2021/7/6注意:这两部

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。