在 Prolog 中,您可以将基本事实编写为:
lost(jen).
您还可以将非基础事实写为:
lost(X).
这有什么意义吗?你能给我看一个使用非基本事实的实际/真实例子吗?
谢谢,
在 Prolog 中,您可以将基本事实编写为:
lost(jen).
您还可以将非基础事实写为:
lost(X).
这有什么意义吗?你能给我看一个使用非基本事实的实际/真实例子吗?
谢谢,
另一种情况,避免列表,是大多数情况为“真”的情况,您只想排除一些错误的情况。所以你故意让那些案例失败,然后让其他一切都通过。
然后你可以做,说...
inhabited(antarctica) :- !, fail.
% all the other continents are inhabited
inhabited(_).
好吧,除了原子之外,您还可以拥有其他事实,例如,您可以拥有列表。完成此操作后,您可能想了解单元素列表,并且可以
oneelement([X]).
同样,假设您想比较列表中的最后一个元素是什么
lastelement([X],X).
lastelement([_|Remainder],X) :- lastelement(Remainder,X).
非常有用的member
谓词定义为
member([X|_],X).
member([_|Remainder],X) :- member(Remainder,X).
其中每一个都使用非基础事实作为其基本情况,通过匹配一种比仅仅更具体的特殊形式lost(X)