我如何知道一个人X是否是一个Y的后代,给出了下降度?
我试过这个:
descendant(X, Y, 1) :- son(X, Y).
descendant(X, Y, Degree) :- son(X, Z) , descendant(Z, Y, Degree-1).
Run Code Online (Sandbox Code Playgroud)
当son(X, Y)返回yes如果X是Y的儿子如果Degree == 1它返回正确的答案,但对于descendant(X, Y, 2),例如,应该返回yes如果X为Y,但回报的孙子no.
prolog ×1