在prolog中,有没有办法说"只有一个" (∃!
)?
我在想做像
% a predicate which is proven true if there is only one tall person
only_one_tall() :- is_tall(X), is_tall(Y), X\=Y.
然后否定整个事情。 但我认为这不起作用。
有人知道吗?
感谢。
答案 0 :(得分:2)
产生类似标准Prolog中的条件的一种方法如下:
only_one_tall() :- findall(X, is_tall(X), List), length(List, 1).