0
我正在嘗試創建知識庫。我的問題有gate/1
和terminal/1
,我已經定義了以下規則:無法理解Prolog運算符優先級錯誤
我想說的是:「如果存在一個柵極G和終端T,那麼這意味着G是不相等以T爲不等於1不等於0
我得到以下錯誤:ERROR: c:/noob.pl:140:0: Syntax error: Operator priority clash
我甚至不知道我是否使用了正確的運營商
我正在嘗試創建知識庫。我的問題有gate/1
和terminal/1
,我已經定義了以下規則:無法理解Prolog運算符優先級錯誤
我想說的是:「如果存在一個柵極G和終端T,那麼這意味着G是不相等以T爲不等於1不等於0
我得到以下錯誤:ERROR: c:/noob.pl:140:0: Syntax error: Operator priority clash
我甚至不知道我是否使用了正確的運營商
的問題是在
G \== T \== 1 \== 0
應書面
G \== T, G \== 1, G \== 0, T \== 1, T \== 0
感謝的作品。爲了簡單起見,我忽略了一些不相同的符號。所有這些都包含在內,它變成了一個非常長的語句:0 – karancan 2013-03-10 22:39:35
@karancan:有多個值應該不同,值得使用'setof':'List = [G,T,0, 1],setof(List,Set),長度(List,N),長度(Set,N)。' – 2013-03-10 22:42:06
我應該研究一下。我還有一個問題要問 - 我希望你不要介意。我有一個事實:'連接(A,B): - 連接(B,A)'。然後,當我問「連接(X,Y)」這個問題時,我得到了無限多的結果(無限遞歸)。我只想要一個可交換的規則。你能指導我嗎? – karancan 2013-03-10 22:45:22