是否有可能使用现有的SMT求解器获得QF_UF公式的等于满足的布尔公式?

时间:2017-07-13 07:07:59

标签: z3 smt satisfiability

在急切的SMT求解器中,SMT公式被编码为一个满足的布尔公式,并被提供给SAT求解器。通常,对于QF_UF公式,通过Ackermann减少或Bryant减少来减少未解释的函数,然后通过等式图方法构造等公差布尔公式。

所以我想知道是否可以调用现有的SMT求解器来获得给定QF_UF公式的equisatisfiable布尔公式,而不会破解求解器的低级实现。例如,Z3有一些转换输入问题的策略(例如tseitin-cnfelim-term-ite),是否存在这种翻译的策略?

1 个答案:

答案 0 :(得分:2)

在z3中,您可以使用https://gist.github.com/nunoplopes/8cd9fb433b2663c99cb34c8a95ae812f

等补丁转储DIMACS

您还可以使用bit-blast策略来获取SAT公式,该公式将超过布尔Z3变量。我认为不保证会以CNF或NNF或其他任何形式存在。