【问题标题】:to_smt2() for Optimize classto_smt2() 用于优化类
【发布时间】:2018-03-28 14:10:13
【问题描述】:

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

【问题讨论】:

    标签: z3 smt z3py


    【解决方案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 扩展。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      • 2012-06-03
      • 1970-01-01
      相关资源
      最近更新 更多