我需要帮助编写谓词基础(Term),如果Term没有任何未实例化的变量,则返回true。
我知道我需要使用内置谓词仿函数,arg和'= ..'但我想我需要帮助才能开始...
我的想法是我需要遵循术语(术语可以是多个变量的列表)。检查Head,然后递归查看列表的其余部分,并检查列表的其余部分是否未实例化。
但我的问题是......我如何检查它是否未实例化?
答案 0 :(得分:1)
您可以使用var/1
谓词来测试术语是否是未实例化的变量。
?- var(X).
true.
?- var(x).
false.
?- var((X,Y)).
false.
?- var(t(Y,Z)).
false.