- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 逻 辑 式 语 言
§3.1 概 述
1972年,Kowalski和Colmerauer第一次提出了逻辑程序设计概念, Colmerauer和他的研究小组在法国Marseille大学第一个实现了逻辑程序设计语言PROLOG语言的解释器。在此之后,在1983年,D.H.D.Warren第一个实现了Prolog的编译器。自从编译器诞生开始,Prolog语言成了世界公认的著名语言。Prolog是一个顺序的具体逻辑式语言,而并行的逻辑语言有Parlog,Concurrent Prolog,GHP等。逻辑式语言的理论基础是Horn逻辑。
逻辑式语言的应用领域有:关系数据库,问题求解,自然语言的理解,方程式的符号解法,生物化学中的分子结构分析,数理逻辑,人工智能等等。逻辑式语言的特点有:■具有良好的逻辑性 ■具有良好的并行性 ■具有良好的不确定性 ■可求多个解 ■有不完全值概念■无类型概念。
§3.2 有趣的Prolog语言
在正式介绍逻辑式语言的理论、语法、语义等内容以前,首先粗略地领会一下Prolog程序的风格和趣味性。Prolog程序和我们所见到的过程式以及函数式语言有着很大的不同。
在Prolog语言里,变量用大写字母打头的标识符来表示,凡是小写字母打头的都是常量(整常数或原子)。Prolog程序由一组子句组成,其中子句有两类,其一叫做事实,其二叫做规则。事实说明一个断言,比如like( mary,candy)表示这样一个事实:mary喜欢candy。规则部分,则用来表示推理,如下面是一个规则的例子:
likes( mary, X)←likes( john, X),likes( stoy, X).
它表示如果john喜欢X,并且stoy也喜欢X,则 mary喜欢 X 。当然程序中的子句究竟代表什么内容,这是程序员自己才知道的。一个Prolog程序也可以是全部由事实部分组成。
我们知道程序必须有个输入部分。那么,Prolog程序的输入是什么?这一点也和通常的程序不同,即输入的不是数据,而是一个提问。Prolog系统将回答yes或no。如果是yes情况,则具体还指出提问中的变量取什么样的值时,能够使提问成为真。例如,假设有图Prolog程序
则这是仅由4个事实(公理)组成的程序。事实部分主要说的是谁喜欢什么。对于这个程序可以提出以下种种问题。比如:
□ ?- like( mary, candy). 回答yes ( mary喜欢candy吗?)
□ ?- like( mary, mary). 回答no ( mary喜欢mary吗?)
□ ?- like( mary, X ). 回答yes :X=candy,X=wine
(mary都喜欢什么? )
□ ?- like( mary, X ),like(john,X). 回答yes :X=wine
(什么东西(X)被mary和john所喜欢?)
□ ?- like(mary,candy),like(john,candy). 回答no
(mary和john都喜欢candy吗?)
□ ?- like(X, candy). 回答yes :X=mary( 都谁喜欢candy? )
□ ?- like(X, wine). 回答yes :X=mary,X=john(都谁喜欢wine?)
□ ?- like(X, Y ). 回答yes : (谁都喜欢什么?)
(1) X=mary ,Y=food (2) X=mary , Y=wine
(3) X=john , Y=wine (4) X=john , Y=mary
从本例可以看出,对于同一程序可提出很多很多的问题。在这些提问里可包含一些变量X1,X2,....,Xn。如果回答是yes,则将指出当提问中的这些变量取什么样的值时使提问成为真。在提问时,只要把已知的内容写成常量,而把想知道的部分写成变量,那么即可达到了解未知部分的目的,因此是很有趣的。
提问的语法结构是,由?-符号打头,并其后是一串原子式(用逗号隔开)。开始的提问部分称为初始总目标(或称目标子句),而其中的每个原子式称为子目标。总目标中的最前一个子目标称为当前子目标。如果所有子目标都成功,则总目标也就成功,这时系统将发出yes,并给出一个具体解。
前面考虑了只有事实的Prolog程序。但只有事实部分远不能描述很多实际问题,比如“mary喜欢的john都喜欢”等问题。下面再考虑带规则(推理)部
您可能关注的文档
- 25、《扁鹊见蔡桓公》课件pt25、《扁鹊见蔡桓公》课件ppt25、《扁鹊见蔡桓公》课件ppt25、《扁鹊见蔡桓公》课件ppt.ppt
- 24进制计数器设计说明书2进制计数器设计说明书24进制计数器设计说明书24进制计数器设计说明书.doc
- 24-胰岛素药 - 副本2-胰岛素药 - 副本24-胰岛素药 - 副本24-胰岛素药 - 副本.ppt
- 24张内部绝密图告诉你一个业该如何运营微信24张内部绝密图告诉你一个企业该如何运营微信24张内部绝密图告诉你一个企业该如何运营微信24张内部绝密图告诉你一个企业该如何运营微信.ppt
- 25、电线、电缆穿管工程检批施工质量验收25、电线、电缆穿管工程检验批施工质量验收25、电线、电缆穿管工程检验批施工质量验收25、电线、电缆穿管工程检验批施工质量验收.doc
- 24《寓言四则》24《寓言则》四则》.ppt
- 25部适合练习英语口语的电25部适合练习英语口语的电影25部适合练习英语口语的电影25部适合练习英语口语的电影.doc
- 20以内退位减法整理课件2以内退位减法整理课件20以内退位减法整理课件20以内退位减法整理课件.ppt
- 25号公告讲解.ppt
- 25《为中华之崛起而读书》5《为中华之崛起而读书》25《为中华之崛起而读书》25《为中华之崛起而读书》.ppt
最近下载
- 古代汉语讲义(下).doc VIP
- 六三制新青岛版五年级科学上册全一册全部课件(一共25课时).pptx
- NB∕T 32035-2016 光伏发电工程概算定额.docx
- 精神科医疗pdca案例.pdf VIP
- 第二单元第2课《心灵的色彩》课件2024人美版初中美术七年级上册.ppt
- 2022年中小学心理健康课程标准.pdf
- 人教版(2024)七年级生物上册课件 2.1.1 藻类、苔藓和蕨类植物.pptx VIP
- 人教版五年级数学上册期中质量监测卷(无答案)(7).docx VIP
- 暨南大学硕士研究生入学考试《353卫生综合》近5年(2017-2021)真题.pdf
- 郭锡良古代汉语详细知识点总结.pdf VIP
文档评论(0)