我正在尝试编写规则,即 D 是我的(我的)女婿,如果他们是男性,而我的女儿是 D 的配偶。当我在 swish 上运行时,除了一些单例变量外,我没有收到任何错误警告。不过,我不相信我写的这个正确..如果这有道理,有人可以为我澄清一下吗?谢谢你。
male(X).
male(me).
female(X).
child(X,Y).
spouse(X,Y).
daughter(A,me) :-
female(A), child(me, A).
mother(A,me) :-
female(A), child(me, A).
son_in_law(D,me) :-
male(D), spouse(daughter(A,me), D).