我有一个带有两个参数的谓词,其中第一个参数可以是复合参数,第二个参数始终是 B。我还定义了一些新的运算符,例如+和&。
pvc(A, B) :- somestuff(A, B).
在这里,用户可以键入类似pvc((x+y)&(A+b), B)
.
作为 Prolog 的初学者,我想做的是将复合转换A
为全小写并somestuff
使用 new调用AN
。应该是这样somestuff((x+y)&(a+b), B)
。
我尝试了类似pvc(A, B) :- downcase_atom(A,AN),somestuff(AN, B).
但它似乎不是正确的方法。我将不胜感激。