11

たとえば、Prolog 宣言の次の行がある場合:

move(state(middle, onbox, middle, hasnot),
     grasp,
     state(middle, onbox, middle, has)).

移動ファンクターと状態ファンクターの両方ですか?

私は事実、ファンクター、用語などにちょっと混乱しています...

4

3 に答える 3

8

はい、moveファンstateクターです。ファンクターがF入っていF(Term1, ...)ます。しかし、それらは事実ではありません。あなたの場合、完全な線である事実は 1 つしかありません。

于 2013-10-01T12:19:00.347 に答える
4

ファンクターは用語を記述しますが、用語自体ではなく (命令型言語のメソッド シグネチャのように)、構造体または述語の名前とアリティで構成されます。

あなたの例では、ファンクターはmove/3state/4です。

と には異なる関手があり、とfoo(a)があることに注意してください。foo(a,b)foo/1foo/2

于 2013-10-01T12:20:36.693 に答える