有没有办法使用z3将公式转换为CNF(使用Tseitsin样式编码)?我正在寻找类似simplify
命令的东西,但保证返回的公式是CNF。
答案 0 :(得分:3)
您可以使用apply
命令执行此操作。我们可以为这个命令提供任意的策略/策略。有关Z3 4.0中的策略和策略的更多信息,请查看教程http://rise4fun.com/Z3/tutorial/strategies
命令(help-tactic)
可用于显示Z3 4.0中的所有可用策略及其参数。程序化使用更方便,更灵活。这是一个基于新Python API的教程:http://rise4fun.com/Z3Py/tutorial/strategies。
.Net和C / C ++ API提供了相同的功能。
以下脚本演示了如何使用此框架将公式转换为CNF: