邏輯程序設計語言PROLOG

邏輯程序設計語言PROLOG

ID:38477692

大?。?79.05 KB

頁數(shù):42頁

時間:2019-06-13

邏輯程序設計語言PROLOG_第1頁
邏輯程序設計語言PROLOG_第2頁
邏輯程序設計語言PROLOG_第3頁
邏輯程序設計語言PROLOG_第4頁
邏輯程序設計語言PROLOG_第5頁
資源描述:

《邏輯程序設計語言PROLOG》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫

1、第2章邏輯程序設計語言PROLOG2.1基本PROLOG2.2TurboPROLOG程序設計2.1基本PROLOG2.1.1PROLOG的語句1.事實(fact)格式〈謂詞名〉(〈項表〉).student(john).like(mary,music).abc.repeat.功能一般表示對象的性質或關系。2.規(guī)則(rule)格式〈謂詞名〉(〈項表〉):-〈謂詞名〉(〈項表〉){,〈謂詞名〉(〈項表〉)}.bird(X):-animal(X),has(X,feather).grandfather(X,Y):-father(X,Z),fath

2、er(Z,Y).run:-start,step1(X),step2(X),end.功能一般表示對象間的因果關系、蘊含關系或對應關系。3.問題(question)格式?-〈謂詞名〉(〈項表〉){,〈謂詞名〉(〈項表〉)}.?-student(john).?-like(mary,X).功能問題表示用戶的詢問,它就是程序運行的目標。2.1.2PROLOG的程序PROLOG程序一般由一組事實、規(guī)則和問題組成。問題是程序執(zhí)行的起點,稱為程序的目標。likes(bell,sports).likes(mary,music).likes(mary,spor

3、ts).likes(jane,smith).friend(john,X):-likes(X,reading),likes(X,music).friend(john,X):-likes(X,sports),likes(X,music).?-friend(john,Y).?-likes(mary,X).或?-likes(mary,music).或?-friend(X,Y).或?-likes(bell,sports),likes(mary,music),friend(john,X).2.1.3PROLOG程序的運行機理1.自由變量與約束變

4、量2.匹配合一兩個謂詞可匹配合一,是指兩個謂詞的名相同,參量項的個數(shù)相同,參量類型對應相同,并且對應參量項還滿足下列條件之一:(1)如果兩個都是常量,則必須完全相同。(2)如果兩個都是約束變量,則兩個約束值必須相同。(3)如果其中一個是常量,一個是約束變量,則約束值與常量必須相同。(4)至少有一個是自由變量。考慮下面的各組謂詞是否可匹配合一?pre1(″ob1″,″ob2″,Z)pre1(″ob1″,″ob3″,Y)pre1(″ob1″,″ob2″,Z)pre1(″ob1″,X,″ob3″)pre1(″ob1″,″ob2″,Z)pre1(

5、″ob1″,X,Y)3.回溯所謂回溯,就是在程序運行期間,當某一個子目標不能滿足(即謂詞匹配失敗)時,控制就返回到前一個已經滿足的子目標(如果存在的話),并撤消其有關變量的約束值,然后再使其重新滿足。成功后,再繼續(xù)滿足原子目標。如果失敗的子目標前再無子目標,則控制就返回到該子目標的上一級目標(即該子目標謂詞所在規(guī)則的頭部)使它重新匹配?;厮菀彩荘ROLOG的一個重要機制。likes(bell,sports).likes(mary,music).likes(mary,sports).likes(jane,smith).friend(john,X)

6、:-likes(X,reading),likes(X,music).friend(john,X):-likes(X,sports),likes(X,music).?-friend(john,Y).則求解目標為friend(john,Y).新目標likes(X,reading),likes(X,music).2.2TurboPROLOG程序設計2.2.1程序結構/*〈注釋〉*/〈編譯指令〉constants〈常量說明〉domains〈域說明〉database〈數(shù)據(jù)庫說明〉predicates〈謂詞說明〉goal〈目標語句〉cla

7、uses〈子句集〉例如果把上節(jié)的例子程序作為TurboPROLOG程序,則應改寫為:DOMAINSname=symbolPREDICATESlikes(name,name).friend(name,name)GOALfriend(john,Y),write(″Y=″,Y).CLAUSESlikes(bell,sports).likes(mary,music).likes(mary,sports).likes(jane,smith).friend(john,X):-likes(X,sports),likes(X,music).fr

8、iend(john,X):-likes(X,reading),likes(X,m

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。