这个Prolog条款有什么问题?

时间:2014-04-25 02:19:41

标签: prolog

我需要在prolog中写下表达以下句子的条款

  

"每个人都是凡人,但约翰"

这是我的条款:

not(mortal(john)).

mortal(_).

但是当我查询?- mortal(john).时,它返回true而不是false。

有什么问题?

1 个答案:

答案 0 :(得分:1)

它没有任何问题。

你有两个事实: -

not(mortal(john)).
mortal(_).

运行查询?- mortal(john).无法绑定第一个事实,因为它在结构上不相同,但它可以绑定第二个。