5

我编写了以下 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 方程中进行按位算术(在本例中为 &)?

谢谢。

4

1 回答 1

8

x并且y应该是位向量:

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下的位向量部分

于 2012-12-27T05:50:58.280 回答