to_smt2()用于Optimize类

时间:2018-03-28 14:10:14

标签: z3 smt z3py

是否有一个函数to_smt2()用于Optimize类,它与Solver类中具有相同名称的函数做同样的事情,我们创建一个带有优化问题的smt-lib文件。 谢谢!

1 个答案:

答案 0 :(得分:1)

以下适用于我:

from z3 import *

o = Optimize ()
i = Int('x')
o.add (i > 5)
o.add (i < 10)
o.maximize(i)
print o.sexpr()
print o.check()
print o.model()

打印:

$ python a.py
(declare-fun x () Int)
(assert (> x 5))
(assert (< x 10))
(maximize x)
(check-sat)

sat
[x = 9]

请注意,maximize不是SMTLib函数,而是z3扩展名。