Prolog 没有兄弟的叔叔关系
我刚刚开始学习PROLOG,我的任务是在家谱中创建一个叔叔/婶婶的关系。阿姨可以使用姐妹关系创建,但是,叔叔关系必须在没有姐妹关系的情况下创建 当前谓词为:男、女、父 &迄今为止制定的规则是:父亲、母亲、祖父、祖母、姐妹 以下是我目前掌握的情况:Prolog 没有兄弟的叔叔关系,prolog,logic,Prolog,Logic,我刚刚开始学习PROLOG,我的任务是在家谱中创建一个叔叔/婶婶的关系。阿姨可以使用姐妹关系创建,但是,叔叔关系必须在没有姐妹关系的情况下创建 当前谓词为:男、女、父 &迄今为止制定的规则是:父亲、母亲、祖父、祖母、姐妹 以下是我目前掌握的情况: sister(Sister,Individual):- female(Sister), parent(X,Sister), parent(X,Individual), Sister \= Individual. aunt(Aunt, Indivi
sister(Sister,Individual):-
female(Sister),
parent(X,Sister),
parent(X,Individual),
Sister \= Individual.
aunt(Aunt, Individual):- sister(Aunt, X), parent(X, Individual).
如果不使用兄弟,我将如何创建叔叔关系?我知道父母(父母(个人))==父母(叔叔),但考虑到我目前的关系,我该怎么说呢
提前感谢您的帮助我不认为自己在PROlog上是最好的,但我相信这会奏效。请评论任何可能不正确的地方,我会改正的 我们知道:
- 个人的叔叔必须是男性
- 叔叔将与个人的父母共用一个父母
uncle(Uncle, Individual) :-
male(Uncle), % The uncle must be male.
parent(X, Individual), % Assume there's some parent of the individual, X.
parent(Y, Uncle), % Assume there's some parent of the uncle, Y.
parent(Y, X). % Y must be the parent of X.
谢谢你的回复!我有一个后续问题,我不确定它是否适用:你是否必须说明,如果你为个人得到了男性父母,为叔叔得到了女性父母?反之亦然?编辑:NVM,愚蠢的问题!我们正在检查叔叔的父母(无论是男性还是女性)是否也是X的父母,对吗?我不认为你必须对此做出解释,因为共享父母可以是母亲或父亲。是的,因为
X
是个人的父母