Prolog有没有标准的谓词库?我正在研究一个具有常识的聊天机器人。除了数学规则和事实,我还需要一些英语基本谓词,例如
even(A) :- 0 is A mod 2.
odd(A) :- 1 is A mod 2.
...
man(X) :- person(X), male(X).
woman(X) :- person(X), female(X).
father(X,Y) :- parent(X,Y), male(X).
...
手工制定所有这些基本规则和事实将是一件很难的工作。我知道有成千上万的人在做类似的谓词,但有没有收集?如果在关系,数学,一般知识等领域有单独的规则和事实的收集。
答案 0 :(得分:3)
我们还可以添加:
even(X) :- got_revenge(X).
even(X) :- got_same_ammount_as_others(X).
man(X) :- man_kind(X).
所以这些基本规则并不简单。 您可以使用wordnet:http://wordnet.princeton.edu/
之类的内容较早版本来自Prolog packege http://wordnetcode.princeton.edu/2.1/