2013-01-16 55 views

回答

2

SWI-Prolog的上頂層不接受新的規則和事實,它只能接受查詢。

規則典型地通過在一個文本文件寫入它們(例如rules.pl),並用它加載到SWI-Prolog的:

?- [rules]. 

到文件的絕對路徑可以這樣使用:

?- ['C:/Program Files/pl/demo/likes']. 

可以通過發出[user].,輸入您的規則,並與EOF(通常按Ctrl-d)結束類型規則10

有關於這個問題的一個精心製作的常見問題解答:ERROR: Undefined procedure: (:-)/1 | (:-)/2 | (?-)/1

+0

謝謝,以及我如何編寫'[rules] .'如果位於與SWI-Prolog不同的目錄中的rules.pl'? – URL87

+0

將絕對路徑放在引號中:'['C:/ Program Files/pl/demo/likes']'。 –

1

我的Prolog的技能是塵土飛揚的最好的,但據我記得你應該在文件中聲明的東西,然後諮詢將其加載到該文件工作區,然後使用shell來詢問有關工作區的問題。要在shell中聲明某些內容需要一個斷言。