prolog术语之前的大写'N':imp(P,Q,Y): - 不(P,NP)或(NP,Q,Y)

时间:2012-12-07 17:24:28

标签: prolog

prolog术语之前的大写'N'是什么意思?

如imp中的P变为NP?

imp(P,Q,Y) :- not(P,NP),or(NP,Q,Y).

NP意味着在prolog中否定P?

N是prolog中的一种内置函数吗?

非常感谢。

1 个答案:

答案 0 :(得分:1)

它没有特别的意义。术语NP以大写字母开头,表示它是一个变量(它可以以任何大写字母开头)。

我阅读你的程序的方式:

imp(P,Q,Y) :- not(P,NP),or(NP,Q,Y).

它意味着:'得到P意味着Q到变量Y'我们调用过程not/2来得到输入P的否定,然后我们调用过程or/3来计算“不是P或Q”到变量Y.当然,你有一个定义的程序not/2or/3