次のような事実があったとしましょう。
bigger(cat,mouse).
これを誰かに説明したい場合、「猫はこの事実の最初の用語であり、マウスは2番目の用語です」と言うのは正しいでしょうか、それとも猫とマウスを原子と呼び、「猫は最初の用語です」と言うのでしょうか。事実内の原子とマウスは2番目です」。
最初の説明は公平で、「項」は再帰的なデータ構造です。つまり、項はアトム、数値、または構造体のいずれかであり、構造体は「name(arg1、arg2、...)」であり、各引数は用語です。
したがって、2番目の説明はより正確です(制限されています)。
他の回答が指摘しているように、「引数」は、構造化された用語で位置的に識別された属性の通常の命名です。
議論は私が思う完璧な言葉でしょう。ただし、通常、述語を説明するには、次の形式を使用します。
predicate/arity : predicate(arguments...)
description of arguments
ここでは、次のようになります。
bigger/2 : bigger(Bigger, Lesser)
Holds if Bigger is bigger than Lesser.
さらに、引数のモードを正確にすることができます:入力の場合は+、出力の場合は-?両方(および純粋な入力の場合は@)については、この質問に対する@falseの回答を参照して、必要に応じてモードに関する詳細情報を入手してください。
ここで完全なバージョンは次のようになります:
bigger/2 : bigger(?Bigger, ?Lesser)
Holds if Bigger is bigger than Lesser.
少し混乱させるために、私はとの間で成り立つ二項関係であると言うかもしれませbiggerん。catmouse