以下使一个或多个文字为真:
a,b,c :- condition.
a;b;c :- condition.
在上面的 a,b,c,condition 是一个有效的模型,但也是 (a,condition), (a,b,condition) 等。我希望所有的 a,b,c 都是真的,总是,如果条件是真的。
我可以编写以下内容来强制 a、b、c 始终为真。
:- condition, a, not b.
:- condition, b, not c.
:- condition, c, not a.
但是对于复杂的规则,这些变得非常冗长且容易出错。