位向量策略导致Z3Py中的退出代码139

时间:2016-07-16 08:56:20

标签: python z3 smt z3py bitvector

这是一个简单的位向量问题:

import z3

s = z3.Tactic('bv').solver()
m = z3.Function('m', z3.BitVecSort(32), z3.BitVecSort(32))
a, b = z3.BitVecs('a b', 32)

axioms = [
    a == m(12432),
    z3.Not(a == b)
]

s.add(axioms)
print(s.check())

Python崩溃,错误代码为139.请注意,这不是我的真正问题,所以我必须在我的项目中使用位向量策略,尽管它没有任何问题<{1}}策略甚至smt策略。

1 个答案:

答案 0 :(得分:0)

这似乎是4.4.0中的一个错误。使用4.4.0和Ubuntu 16.04 LTS和Python 2.7,您可以重现该问题。但是在Z3的较新版本中,它已得到修复。我尝试了4.4.2并返回sat

https://github.com/Z3Prover/z3/issues/685