如何使用Alt-Ergo运行以下SMT-LIB代码

时间:2013-11-29 23:25:00

标签: z3 cvc4 alt-ergo

以下SMT-LIB代码在Z3,MathSat和CVC4中运行没有问题,但它没有在Alt-Ergo中运行,请让我知道会发生什么,非常感谢:

(set-logic QF_LIA)
(set-option :interactive-mode true) 
(set-option :incremental true)
(declare-fun w () Int)
(declare-fun x () Int)
(declare-fun y () Int)
(declare-fun z () Int)
(assert (> x y))
(assert (> y z))
(push 1)
(assert (> z x))
(check-sat)
(pop 1)
(get-info :all-statistics)
(push 1)
(assert (= x w))
(check-sat)
(get-assertions)
(exit)

在线here

运行此示例
  1. 在Z3中,生成了消息unsupported ; :incremental,但这不会改变计算并获得正确的答案。

  2. 在mathsat中,会生成一些消息unsupported,但会显示正确的答案。

  3. 在Cvc4中,代码执行没有问题,并获得了正确的答案。

  4. 在Alt-Ergo中,代码在没有消息的情况下执行,但生成了错误的答案unsat(正确的答案是:unsat, sat)。

1 个答案:

答案 0 :(得分:1)

关于Alt-Ergo和SMT-LIB2,请考虑阅读您之前的一篇帖子的答案:How to execute the following SMT-LIB code using Alt-Ergo