我正在尝试学习 Prolog 的基础知识,并使用以下代码继续遇到存在错误。
comes_after(m1, m2).
comes_after(m2, m3).
comes_after(m3, m4).
comes_after(m4, m5).
comes_after(m5, m6).
does_come_after(X, Y) :- comes_after(X, Y).
does_come_after(X, Z) :- comes_after(X, Y), does_come_after(Y, Z).
在执行诸如 does_come_after(m1, m3) 之类的查询时,我不断收到以下错误。
uncaught exception: error(existence_error(procedure,comes_after/0),does_come_after/0)
这是显示错误的屏幕截图:
我做错了什么,我应该记住什么以避免将来出现这些错误?提前致谢。