我希望序言引擎返回 false 而不是错误。我有这个代码:
:-use_module(library(clpfd)).
set_1(X):-member(X,[f(f(1))]).
p :- X in 1..3,set_1(f(X)).
当我查询 p 时,我得到一个错误:
?- p.
ERROR: Type error: `integer' expected, found `f(1)'
我希望输出看起来像:
?- p.
false
即使我将 member(X,[f(f(1))]) 更改为 member(X,[f(f(f(1)))]) 或其他一些集合,我也希望看到 false对我的程序进行任何其他更改。
我正在使用 swi-prolog v 5.10.4