【发布时间】:2017-02-16 16:25:26
【问题描述】:
假设我有 3 个节点 A、B 和 C,并且 A 和 B 之间以及 B 和 C 之间有边。我想在运行时向数据库断言一个新事实,这样如果存在边在 A 和 B 以及从 B 到 C 的另一条边之间,然后我可以从 A 到 C。我希望添加边(a,c),但我有以下问题,提前致谢
dynamic/1: No permission to modify static procedure `edge/2'
ERROR: [Thread pce] c:/users/win7/documents/prolog/test.pl:6: Syntax error: Operator expected
这是我的代码:
edge(a,b).
edge(b,c).
:- dynamic edge/2.
conn :-(X,C):- edge(X,Y),edge(Y,C),assert(edge(X,C)).
【问题讨论】:
-
conn :-(X,C):- ...是语法错误。
标签: prolog