Pyke 逻辑编程入门(14):知识库之“事实库”
来源:互联网 发布:ubuntu安装后的20件事 编辑:程序博客网 时间:2024/05/16 18:39
事实库
Pyke 把事实陈述保存在事实库里。存入的事实组织成结构化的,并且不限数量。事实库按照断言的新事实的需要,自动创建。
事实
设想一个事实陈述语句。它有个名字和一组参数。参数可以是:
- 字符串
- 标示符不需要引号,例如 Fred 与 'Fred' 相同。
- 数字
- None, True, False
- 以上各种参数组成的元组。元组可以嵌套。
- 单个成员的元组,不需要逗号,(1) 与 (1,) 相同。
不允许存在重复的事实。断言已有事实的试图,自动忽略。但要注意,只有参数全部相同的,才是重复的事实。
目前,事实被看做固定不变、不可撤销。因此建议不要用字典、列表和自定义的对象当做事实的参数。
具体事实
大多数事实是具体的。推理引擎重启做下次运行时,会删除这些事实。具体事实的断言方法是:
some_engine.assert_(kb_name, fact_name, arguments)some_engine.add_case_specific_fact(kb_name, fact_name, arguments)
正向推理规则也可以断言事实。
通用事实
通用事实永不删除,即使引擎重启。可以在 .kfb 文件中指定通用事实,或者通过调用以下函数,加入它们:
some_engine.add_universal_fact(kb_name, fact_name, arguments)
一般在程序启动时,把通用事实一次性加入。
- Pyke 逻辑编程入门(14):知识库之“事实库”
- Pyke 逻辑编程入门(15):知识库之“规则库”
- Pyke 逻辑编程入门(17):知识库之“特别库”
- Pyke 逻辑编程入门(16):知识库之“问题库”
- Pyke 逻辑编程入门(13):知识库
- Pyke 逻辑编程入门(2):表示事实的陈述句
- Pyke 逻辑编程入门(10):规则之“正向推理”
- Pyke 逻辑编程入门(11):规则之“反向推理”
- Pyke 逻辑编程入门(1)
- Pyke 逻辑编程入门(9):规则
- Pyke 逻辑编程入门(12):“方案”
- Pyke 逻辑编程入门(4):模式匹配 之“文字模式”
- Pyke 逻辑编程入门(5):模式匹配 之“模式变量”
- Pyke 逻辑编程入门(6):模式匹配 之“元组模式”
- Pyke 逻辑编程入门(7):模式匹配之“两个模式的匹配”
- Pyke 逻辑编程入门(8):模式匹配之“病理学问题的答案”
- Pyke 逻辑编程入门(3):模式匹配
- 一些鲜为人知的编程事实-生产力之优秀与平庸
- 知名杀毒软件之100种病毒检测效果
- 如何往基于Dialog的程序添加工具栏
- 大明A+B hdu1753
- 七招减少沙尘对人体危害
- delphi 十六进制转十进制
- Pyke 逻辑编程入门(14):知识库之“事实库”
- 表单验证
- [Trouble Shoot]Struts2和Tile2
- 在java代码中sql语句出现start before result set的错误解决办法
- 播放歌曲文件
- JAVA注释方法及格式
- java爱好者
- 愿昨天成为美好的回忆,让我忘了你是谁
- 想了很久