首页 | 主题 | 图库 | 问答 | 文摘 | 原创 | 百科

历史 | 地理 | 人物 | 艺术 | 体育 | 科学 | 音乐 | 电影 | 信息技术 | 世界遗产

 开放、中立,源自维基百科

个人工具


Prolog

维库,知识与思想的自由文库

跳转到: 导航, 搜索
Prolog
编程范型: 逻辑编程语言
面市時間: 1972
設計者: Alain Colmerauer
主要實作產品: BProlog,GNU Prolog, Quintus, SICStus, Strawberry, SWI-Prolog, YAP-Prolog
衍生副語言: ISO Prolog, Edinburgh Prolog
影響語言: Visual Prolog, Mercury, Oz, Erlang, Strand

PrologProgramming in Logic的缩写)是一种逻辑编程语言。它建立在逻辑学的理论基础之上, 最初被运用于自然语言等研究领域。现在它已广泛的应用在人工智能的研究中,它可以用来建造专家系统、自然语言理解、智能知识库等。

目录

[编辑] 历史

Prolog语言最早由Aix-Marseille大学的Alain Colmerauer与Phillipe Roussel等人于60年代末研究开发。1972年被公认为是Prolog语言正式诞生的年份,自1972年以后,分支出多种Prolog的方言。最主要的两种方言为Edinburgh和Aix-Marseille。最早的Prolog解释器由Roussel建造,而第一个Prolog编译器则是David Warren编写的。

Prolog一直在北美和欧洲被广泛使用。日本政府曾经为了建造智能计算机而用Prolog来开发ICOT第五代计算机系统。在早期的机器智能研究领域,Prolog曾经是主要的开发工具。

80年代Borland开发的Turbo Prolog,进一步普及了Prolog的使用。1995年确定了ISO Prolog标准

[编辑] 特點

有別於一般的過程式語言, prolog的程式是基於謂詞邏輯的理論. 最基本的寫法是定立物件與物件之間的關係, 之後可以用詢問目標的方式來查詢各種物件之間的關係. 系統會自動進行匹配及回溯, 找出所詢問的答案.

[编辑] 语法示例

表示事实:

human(kate).
human(bill).
likes(kate,bill).

表示kate和bill是一个人(human),kate喜欢bill,而表示规则:

friend(X,Y):-likes(X,Y),likes(Y,X).

表示,对于两个对象XY.如果X喜欢Y,且Y喜欢X,那么他们是朋友。

[编辑] 外部资源

其它语言
AD Links