我试图了解如何使用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都能做到这一点吗?
答案 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) )