Prolog操作员声明
示例
在Prolog中,可以使用op/3以下命令定义自定义运算符:
op(+Precedence,+Type,:Operator)
声明运算符为具有优先级的类型的运算符。运算符也可以是名称列表,在这种情况下,列表的所有元素都声明为相同的运算符。
优先级是介于0和1200之间的整数,其中0删除声明。
类型为下列之一:xf,yf,xfx,xfy,yfx,fy或fx其中f指示函子的位置和x与y指示的参数的位置。y表示优先级低于或等于函子的优先级的术语,而x表示严格较低的优先级。
前缀: fx,fy
中缀:( xfx不关联),xfy(右关联), yfx(左关联)
后缀: xf,yf
用法示例:
:- op(900, xf, is_true). X_0 is_true :- X_0.
查询示例:
?- dif(X, a) is_true. dif(X, a).