2017-07-13 13 views
2

私はこのステートメントを理解しようとしていますが、オブジェクト用語の末尾にある-1/4については何も見つかりません。私は検索しようとしましたが、私は何を検索するか分からない。用語の末尾にハイフンがあります

exists(A,object(B,A,apple,countable,na,eq,1)-1/4). 
+0

をA、 ' - '(オブジェクト(B、A、リンゴ、可算、NA、EQ、1)、 '/'(1 、4))) '。 – lurker

答えて

4

exists/2の第2引数は、ペア表記の2つの項です。 1つの用語はobject(_A,A,apple,countable,na,eq,1)であり、他方は1/4である。

?- exists(A,X-Y). 
X = object(_A,A,apple,countable,na,eq,1), 
Y = 1/4 

そして、第2項は算術式ですので、あなたが使用して評価することができ

/2である:あなたが次のクエリを試す場合は、これを見ることができます

?- exists(A,X-Y), Z is Y. 
X = object(_A,A,apple,countable,na,eq,1), 
Y = 1/4, 
Z = 0.25 

数子( - )/ 2はしばしば対を示すために使用される。 @lurkerのコメントで指摘されているように、標準形式は-(X,Y)ですが、( - )/ 2はPrologの中置演算子として定義されているため、両方の表記は同等です。それは、次のクエリを検討参照するには、次の用語は、( `存在と等価である

?- X-Y = -(X,Y). 

true 
+0

@lurker:ヒントのためにありがとう。それに応じて私の投稿を更新しました:-) – tas

+1

@lurker、標準形式は引用符で囲まれたものではなく、引用符で囲まれていない '-'です。 – false

+0

これを手伝ってくれてありがとう。:) –

関連する問題