【发布时间】:2023-03-31 12:52:01
【问题描述】:
我想使用 z3py 的 simple() 函数,但不将按位和 '&' 更改为按位或 '|'。
简化函数似乎存在一个名为“elim_and”的选项,但我无法让它用于按位运算。函数 help_simplify() 状态:
elim_and (bool) 连词使用否定和析取进行重写(默认值:false)
>>> from z3 import *
>>> x = BitVec('x', 8)
>>> y = BitVec('y', 8)
>>> z = x & y
>>> z
x & y
>>> simplify(z)
~(~x | ~y)
>>> simplify(z, elim_and=False)
~(~x | ~y)
我希望结果是“x & y”。 有什么办法吗?
【问题讨论】: