与Z3一点一点?

时间:2012-12-27 05:38:43

标签: z3

我编写了以下Z3 python代码

x, y = Ints('x y')
F = (x == y & 16)      # x has the value of (y & 16)
print F

但我得到了吼声错误:

TypeError: unsupported operand type(s) for &: 'instance' and 'int'

如何在Z3方程中进行逐位算术(在这种情况下)?

感谢。

1 个答案:

答案 0 :(得分:6)

xy应该是位向量:

x, y = BitVecs('x y', 32)
F = (x == y & 16)      # x has the value of (y & 16)
print F

请参阅http://rise4fun.com/Z3/tutorial/guide

下的Bitvectors部分