0
A
回答
2
也许您在寻找clause/2。一个虚拟会话样品
1 ?- [user].
|: a(1).
|: a(2).
|: a(X) :- b(X).
|: b(3).
|: b(4).
% user://1 compiled 0.03 sec, 6 clauses
true.
2 ?- clause(a(X),Body).
X = 1,
Body = true ;
X = 2,
Body = true ;
Body = b(X).
3 ?- clause(b(X),Body).
X = 3,
Body = true ;
X = 4,
Body = true.
4 ?- clause(c(X),Body).
false.
你可以看到,C/1没有被定义...
无论如何,SWI-Prolog的数据库是一个复杂的野兽,它提供了much more控制有关的内容。
相关问题
- 1. 访问Logtalk的SWI-Prolog库
- 2. SWI Prolog多知识库
- 3. swi-prolog [列表]
- 4. SWI-Prolog谓词
- 5. swi prolog solve
- 6. SWI Prolog等价
- 7. SWI-Prolog规则
- 8. SWI Prolog查询
- 9. swi prolog mysql + web
- 10. swi prolog,如何读取txt.file的数据
- 11. 递归数SWI-Prolog的
- 12. SWI-Prolog:如何插入一个新的子句到数据库
- 13. 在SWI-Prolog中刷新数据库缓存
- 14. SWI Prolog的FUNC包
- 15. SWI Prolog ensure_loaded错误
- 16. SWI Prolog - 条件NOT?
- 17. Swi Prolog的关系
- 18. SWI-Prolog的否定
- 19. SWI-Prolog的益智
- 20. 列表在SWI-Prolog
- 21. Interprolog和SWI-Prolog的
- 22. SWI-Prolog语义Web库和Python接口
- 23. SWI-Prolog和约束,库CLP(FD)
- 24. Swi-Prolog - 根据定义查找X
- 25. 在SWI-Prolog中关闭XPCE
- 26. SWI-Prolog的:在列表中
- 27. Swi Prolog,卸载源文件
- 28. SWI-Prolog xml_write到变量
- 29. SWI-Prolog的怪递归写
- 30. SWI-Prolog的选项处理
如果你定义了类似'st(1).'的东西,当你执行你的程序时你输入一个查询'st(45).',你会得到'false'作为答案。这将意味着您创建的数据库不包含该元素。那是你要的吗? – Shevliaskovic
也许你可以明确你尝试过什么,以什么方式“看起来不起作用”? – hardmath
SWI-Prolog的7.1.0文档[敦促开发人员](http://www.swi-prolog.org/pldoc/doc_for?object=not/1)对新代码使用“\ +”而不是“不”。参见[页面底部](http://www.swi-prolog.org/pldoc/man?section=control)。但是,“不”应该仍然可用于向后兼容。 – hardmath