生成自然数时出现基本Prolog错误

生成自然数时出现基本Prolog错误,prolog,Prolog,我将回到prolog,我正在尝试编写一个程序,该程序将生成所有可能的(整数)大小为X的数组,其中每个元素都在a到B之间。为此,我首先生成a到B之间所有可能的整数,如下所示: iterate_number(Lower,Upper,Lower):= Lower =< Upper. iterate_number(Lower,Upper,Rand):= Lower < Upper, Lower1 is Lower+1 , iter

我将回到prolog,我正在尝试编写一个程序,该程序将生成所有可能的(整数)大小为X的数组,其中每个元素都在a到B之间。为此,我首先生成a到B之间所有可能的整数,如下所示:

iterate_number(Lower,Upper,Lower):= Lower =< Upper.
iterate_number(Lower,Upper,Rand):= Lower < Upper, Lower1 is Lower+1
                               , iterate_number(Lower1,Upper,Rand).
iterate_number(下、上、下):=Lower=
但是,我得到了一个错误:

错误:d:/test.pl:5:
子句正文中的句号?无法重新定义,/2 真的

这里到底出了什么问题?我想prolog可能有一些问题,在Lower1为Lower+1的情况下使用空格,但事实并非如此。我肯定错过了一些基本的东西。这是什么


编辑:我试图检查“
s/:=/:-/
中的空格问题,首先用冒号(
)和破折号(
-
)将头部和身体分开,因此
:-
,而不是
:=
。谢谢。我想这是一些基本的东西,但找不到它是什么。谢谢