使用count

时间:2016-12-02 01:12:21

标签: count prolog rule

mother(X, Y):- child(Y, X), female(X).

我如何使用代码来确定X是否是至少3个孩子的母亲?我是否必须使用某种聚合来查看child(Y,X)会发生多少次?

1 个答案:

答案 0 :(得分:0)

不确定您想要什么,但我想以下示例可以提供帮助

motherOf3OrMore(X) :-
  female(X),
  findall(Y, child(Y, X), L),
  length(L, N),
  N >= 3.

如果孩子的最小数量不是固定数字(3),您可以将其作为参数传递,如下所示

motherOfMore(X, N) :-
  female(X),
  findall(Y, child(Y, X), L),
  length(L, M),
  M >= N.