我是prolog中的新手,我想知道是否有办法替换部分元素描述如下:
S = ( tab/field = 2 ), (X/Y=V)=S.
S = ( +field > 2 ), (+Y>V)=S.
通过以下示例,我想替换表达式的一部分(X和Y部分)但保留运算符,如下所示:
( replacedValue = 2)
( replacedValue > 2)
谢谢你的帮助
?- S = (tab/field = 2), display(S), S =.. [Op, L, R], Result =.. [Op, replaced, R].
=(/(tab,field),2)
S = (tab/field=2),
Op = (=),
L = tab/field,
R = 2,
Result = (replaced=2).
?- S = (+field > 2), display(S), S =.. [Op, L, R], Result =.. [Op, replaced, R].
>(+(field),2)
S = (+field>2),
Op = (>),
L = +field,
R = 2,
Result = (replaced>2).