嵌入式专家系统的小型prolog实现
pyexpert的Python项目详细描述
#pyexpert 0.0.1
这是python3中的一个小型嵌入式prolog解释器,主要用于实现可解释的专家系统。
用法:
``python
prolog_core廑u库
初始化环境
env=prolog_default廑env()
执行查询
ret,vars=prolog廑u驱动程序(env,'?附加(a,b,[x,y])。)
打印(变量)
检查所有剩余的解决方案
,而prolog下一个解决方案(env):
打印(变量)
````
产生一个包含两个
集合元素的新集合。这对于实现某些类型的系统和更高级别的hack非常有用,例如跟踪prolog执行(例如,对于专家系统决策的人类可读叙述),实现
约束等。
例如:
``prolog
?弱(a,w1),弱(b,w1),弱(c,w2),w1=w2。
````
结果是“w1=w2=[a,b,c]`
请参见“弱/叙述.py”以获取用于生成执行跟踪的prolog代码的插装示例,或“叙述”,然后可用于生成,例如,专家系统思维过程的简单英语描述。
请参见“tests/demo.py”以获取构建可解释专家系统的示例。
这是python3中的一个小型嵌入式prolog解释器,主要用于实现可解释的专家系统。
用法:
``python
prolog_core廑u库
初始化环境
env=prolog_default廑env()
执行查询
ret,vars=prolog廑u驱动程序(env,'?附加(a,b,[x,y])。)
打印(变量)
检查所有剩余的解决方案
,而prolog下一个解决方案(env):
打印(变量)
````
产生一个包含两个
集合元素的新集合。这对于实现某些类型的系统和更高级别的hack非常有用,例如跟踪prolog执行(例如,对于专家系统决策的人类可读叙述),实现
约束等。
例如:
``prolog
?弱(a,w1),弱(b,w1),弱(c,w2),w1=w2。
````
结果是“w1=w2=[a,b,c]`
请参见“弱/叙述.py”以获取用于生成执行跟踪的prolog代码的插装示例,或“叙述”,然后可用于生成,例如,专家系统思维过程的简单英语描述。
请参见“tests/demo.py”以获取构建可解释专家系统的示例。