我一直在使用(ML)z3绑定和API函数
val mk_distinct : context -> ast array -> ast
多年来忠实地服务。我现在正试图改变
到SMTLIB2接口,但我发现distinct
命令
是unsupported
。例如,查询:
(declare-fun x () Int)
(declare-fun y () Int)
(distinct x y)
(assert (= x y))
(check-sat)
产生回复:
unsupported
; distinct
sat
在网络上演示。有一些解决方法吗?
谢谢!
兰吉特。
答案 0 :(得分:3)
您应该使用(assert (distinct x y))
代替(distinct x y)
。
以下是更新示例的链接:http://rise4fun.com/Z3/uVrX