要推理先要有规则;
假设有一条规则,
如果X和Y是朋友,那么Y和X也是朋友;
这条规则写成这样,
friend(X,Y) :- friend(Y, X).
X和Y都是大写,表示这是两个变量;符号 :- 表示推理关系,含义是只要左边的表达式为true,那么右边的表达式也为true;
先初步看一下,
定义几个friend关系,定义一条规则;
然后可以用listing(friend)列出所有friend关系;
可以用Who来询问lisi的朋友,Who,首字母大写;
因为定义了lisi和zhangsan是friend,还有规则,如果询问zhangsan和lisi是否friend,就会回答true;
但是如果输入friend(lisi, zhangliu),语句不会结束,看上去还在等待输入什么; 还不熟悉,有时间继续;