Z3解决-eq如何使用

时间:2013-09-27 16:40:17

标签: z3

我试图了解如何使用solve-eq,我期望Z3解决这个问题

(declare-const mem (Array Int Int))
(declare-const adr_a Int)
(declare-const a Int)
(assert (= (select mem adr_a) a))
(assert (<= 0 (select mem adr_a)))
(apply solve-eqs)

(<= 0 a)

但我改为

(<= 0 (select mem adr_a))

我可以指定应该简化哪些varibales吗?任何其他的tactique都能做到这一点吗?

1 个答案:

答案 0 :(得分:0)

简单示例:

(declare-const a Int)
(declare-const b Int)
(assert (= b a))
(assert (<= 0 b))
(apply solve-eqs)

输出是:

(goals (goal (<= 0 a) :precision precise :depth 1) )