ターミナルを介して Mac で SWI-Prolog を実行しています。ターミナルで swipl を開いた後、通常の書き込みで Atom ファイルにアクセスしようとしています。
?- [hwk1-my_name].
遊ぶためのナレッジベースを持っているswiplの代わりに、それは私にこれを与えています:
ERROR: Arguments are not sufficiently instantiated
私は Prolog の初心者であり、現在の私のプログラムは、割り当てを開始するために教授から提供されたコードをコピーして貼り付けただけです。これは、エラーが以下のコード内の何かに起因する可能性が高いことを意味しますか?もしそうなら、これを引き起こしているのは何ですか? これが私に提供されたコードです:
father(Dad, Child) :-
parent(Dad, Child),
male(Dad).
mother(Mom, Child) :-
parent(Mom, Child),
female(Mom).
had_a_child(Man, Woman) :-
father(Man, Child),
mother(Woman, Child).
sibling(Sibling1, Sibling2) :-
parent(Parent, Sibling1),
parent(Parent, Sibling2),
Sibling1 \= Sibling2.
brother(Brother, Sib) :-
sibling(Brother, Sib),
male(Brother).
sister(Sister, Sib) :-
sibling(Sister, Sib),
female(Sister).