プロローグで質問があります。こちらがナレッジベースです。
loves(vincent,mia).
loves(marcellus,mia).
loves(pumpkin,honey_bunny).
loves(honey_bunny,pumpkin).
jealous(X,Y) :-
loves(X,Z),
loves(Y,Z).
これは「Learn Prolog Now」という本からです。ここでクエリを実行?- jealous(marcellus,W).
するとそれが返されますが、クエリを実行すると返される 結果は次のW = vincent
ようになります。つまり、vincent は自分自身に嫉妬していますが、marcellus は自分に嫉妬していません。なぜ答えが違うのですか?winxpのVirtualBoxにあるUbuntu Linuxでswiplを使用しています。私はプロローグの初心者です。?- jealous(vincent,W).
W=vincent
ありがとう