我从未使用过SWI Prolog或AIlog,但我认为语法是相同的(可能是错误的)。
将数字与存储变量进行比较时遇到问题,例如:“is 10 < age_limit?
”。当我收到错误:"Error in built-in predicate 10 < age_limit."
代码如下:
...
% data values
age_limit(18).
% 3 AGE CLASSIFICATION 1
patient_child <-
age = X & X < age_limit.
% 4 AGE CLASSIFICATION 2
patient_adult <-
age = X & X >= age_limit.
askable age = X.
我不知道我做错了什么,在手册中找不到。
请建议我正确的语法。非常感谢!
答案 0 :(得分:0)
在Prolog中我们会写
patient_child <-
age = X, age_limit(Y), X < Y.
(因为Prolog没有askable
,我假设age = X
部分是对的。)
答案 1 :(得分:0)
最后我得到了它的工作。与“Alexey Romanov”的建议类似,代码将是:
patient_child <- age = X & age_limit(AL) & X < AL.