ctx-solver-simplified(和类似的策略)是否会产生等效的公式,或者仅仅是SAT等价的,还是我做错了?

时间:2012-10-23 22:51:39

标签: z3

我正在尝试使z3(我使用z3py)为我简化一些公式(这样我可以有更多或更少的人类可读输出)。使用ctx-solver-simplify战术对我来说似乎是一个不错的选择,因为在几次传球中它会产生很好的紧凑公式。但很快我遇到ctx-solver-simplify的输出似乎不等于原始公式的情况(它看起来更像是可满足性等同于左右)。此外,可能是因为我没有正确处理战术。

这就是我想要做的事:http://rise4fun.com/Z3Py/g5sX。因此,我构造了一个公式Set2Set2的定义之前的所有内容只是定义它所需的设置),它具有特定的令人满意的赋值。应用ctx-solver-simplify后,我得到一个单一的公式(作为目标),此分配不满足。那么我错了什么?

  • 假设ctx-solver-simplify会产生等效的公式,我错了吗?
  • 我是否以错误的方式处理策略及其输出?
  • 还有别的吗?

感谢。

1 个答案:

答案 0 :(得分:1)

我一直在研究这个,但到目前为止还无法直接重现这个bug 与我们目前的分支机构上下文简化中的一个错误已经修复了一段时间,它可以 用Z3的在线版本来表现自己。 我还可以做一些事情来仔细检查我们是否可以重现这个bug 我将用我发现的内容更新这篇文章。