标签: prolog
我真的不清楚assert和asserta之间的区别,就像我在线性时间尝试制作斐波纳契程序一样。 Asserta的工作非常快,而断言给了我一个错误。
有人可以解释为什么断言在某些情况下胜过断言吗?
谢谢!
答案 0 :(得分:2)
不是更好的问题。 assert/1谓词是遗留的,现在通常是assertz/1谓词的别名。 asserta/1和assertz/1谓词之间的区别在于,第一个断言将子句作为动态谓词的第一个子句,而第二个断言将子句作为动态谓词的最后一个子句。
assert/1
assertz/1
asserta/1