Prolog语言基础知识

Prolog语言基础知识

ID:42028739

大小:131.81 KB

页数:12页

时间:2019-09-05

Prolog语言基础知识_第1页
Prolog语言基础知识_第2页
Prolog语言基础知识_第3页
Prolog语言基础知识_第4页
Prolog语言基础知识_第5页
资源描述:

《Prolog语言基础知识》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Prolog语言基础知识一.数据结构PROLOG语言与其他任何一种计算机高级语言一样,有其定义的数据结构。下面将介绍PROLOG语言的基本数据结构。1.常量常量是数据结构的基本组成部分,用来对特定对象及关系的命名。在PROLOG语言中,合法的常量有:(1)整数,一个纯数字串,例182000,581202。(2)原子,分为两种:1)标识符:以小写字母开头的,包含字母、数字、下划线的串,例aBC12,is_。2)符号:PROLOG语言规定的符号集的非空序列,例?、-、=。若原子用单引号厂(‘’)括住,则可含有

2、任何字符。(3)字符集ab...z2.变量变量是用来表示还无法知道且需要PROLOG程序来确定的客体。变量用变量名表示,变量名与标识符相似,所不同的是以大写字母或下划线开头。例Variable,_ansure。PROLOG语言中有一个特殊的变量,不需要知道它是什么以及具体名字,只是表示留出一位置,称为匿名变量。用单一的下划线(_)来表示。比如只想知道是否有人喜欢跳舞,但不需知道这个人的名字,这时就可以用匿名变量。3.结构结构是PROLOG语言中的第三类数据结构;用于构造PROLOG数据对象。一个结构是一个

3、单一的客体,它由一个函子和一个或多个称为分量的项的序列组成。其书写形式为函子(分量1,分量2,…,分量n)其中的分量也可以是结构。例如可用结构描述事实"Mary住zhongshan路120号":person(mary,address(zhongshan,120)).此例中address是一个具有两个分量即路名和门牌号的结构。该结构是作为事实的一个分量出现,它将作为关系中的一个客体来对待。当然,结构中的分量也可以是结构,如上例可写成:person(name(mary),address(street(zhon

4、gshan),number(120))).其中name,address,street,number均为结构。这样,该事实的表示更一目了然了。在PROLOG语言中,常用的结构形式有:(1)函子(分量1,分量2,...,分量n)。如上例Mary的住所。(2)表。表是PROLOG语言中最常用的数据结构,它由一些有序分量组成,其长度可任意。有序即表示表中的分量次序是有意义的。同样,表的分量可以是原子、结构等,当然也可以是表。例如含有3个分量a,b,c的表可写成[a,b,c]。如用函数的方式可写成.(a.(b.(c

5、[])))。其中符号"."是表的函子,也就是说,表是以"."为函子的特殊结构。(3)表达式。PROLOG语言提供了各种运算,如算术运算、比较运算等。PROLOG语言中的运算可以是中缀形式,简明直观,符合人们的习惯。算术表达式X+Y&Z中,"+"、"&"便是运算符,该表达式如用函数结构形式来表示就是+(X&(YZ))。所以,表达式也是一种结构。PROLOG语言提供了统一的数据结构--项(term)。在PROLOG中,无论是程序还是数据,都是由项构成。项的定义为<项>::=<常量>

6、<变量>

7、<结构>

8、“(”

9、<项>“)”每一个项书写为一个字符串。二.程序结构PROLOG语言的程序结构非常简单,由三部分组成,即事实、规则和询问。1.事实事实用来说明有关客体及客体之间的相互关系。事实和规则都是逻辑推理的前提。例如John喜欢Mary(JohnLike。Mary)。这是一个事实,它包含了两个客体John和Mary及一个关系likes。用PROLOG语言的标准形式描写即为likes(john,mary).事实中的关系(如likes)称为谓词,客体称为自变量。事实的语义是表示该语句恒为真。在PROLOG语言的标准形式中

10、,谓词和确定的客体(常量)必须以小写字母开头,而变量客体用大写字母开头,客体间用逗号","分开,用一对圆括号括住,最后用“.”终结。下面是一些事实的例子:female(jane).ane是女性。play(jane,mary,chess).ane和mary下棋。关系中自变量的个数是任意的,而语句意义的解释由程序员所确定。如likes(john,mary),可解释成John喜欢Mary,也可解释成Mary喜欢John。因此解释一个谓词含义是完全由程序设计者决定的,但一经确定,就必须在整个程序中遵守。事实的语法

11、与结构相似。事实中的谓词对应于结构的函子,而事实中的自变量则对应于结构的分量。2.规则规则是关于客体及其关系的一般陈述,表明某些关系的成立要依赖于其他一些关系的成立。规则可以是事实的一种紧凑的表现形式。自然语言中,用"如果"一词来说明规则。在PROLOG语言中,规则由规则头和规则体组成,其间用符号":-"连接。符号":-"表示"如果"。规则用"."结尾。例如"如果某人是学生,则john就喜欢该人"。用PROLOG语言书写应为l

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

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

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