首页 > 解决方案 > <> 在序言中是什么意思?

问题描述

例子:

PREDICATES
nondeterm likes (symbol,symbol)

CLAUSES
likes (ali,football).
likes (ali,tenis).
likes (ahmad,tenis).
likes (ahmad,handball).
likes (samir,handball).
likes (samir,swimming).
likes (khaled,horseriding).

GOAL
%
likes (Person, G1), likes (Person,G2), G1<>G2.

标签: prologturbo-prolog

解决方案


在该示例中,<>表示“不相等”。查询:

likes(Person, G1),
likes(Person, G2),
G1 <> G2.

是为了找到一个Person喜欢两件事的人。如果没有<>,G1并且G2可以彼此相等,并且查询可以找到Person只喜欢一件事的 a。

<>可能特定于 Visual Prolog。在其他 Prolog 环境中,您将使用\=or\==代替。


推荐阅读