【问题标题】:Is there a way to say ∃! in prolog?有没有办法说∃!在序言中?
【发布时间】:2013-04-06 19:21:56
【问题描述】:

在序言中,有没有办法说“确实存在一个”(∃!)? 我正在考虑做类似的事情

% a predicate which is proven true if there is only one tall person
only_one_tall() :- is_tall(X), is_tall(Y), X\=Y.

然后否定整个事情。 但我认为这行不通。

有人知道吗?

谢谢。

【问题讨论】:

    标签: prolog boolean boolean-logic boolean-expression


    【解决方案1】:

    在标准 Prolog 中产生类似条件的一种方法如下:

    only_one_tall() :- findall(X, is_tall(X), List), length(List, 1).
    

    这是demo on ideone

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 1970-01-01
      • 2017-08-21
      • 1970-01-01
      • 2021-12-20
      相关资源
      最近更新 更多