Z3的运行时间分析

Z3的运行时间分析,z3,smt,sat,Z3,Smt,Sat,我使用的是通过python实现的Z3 SMT解算器。我有源代码,我想有一些,任何,进程正在运行的迹象。是否可以使用一些详细的命令或任何东西来了解进程当前正在做什么?我知道它背后的算法,但我想可视化,即使使用printf,代码中发生了什么 谢谢 您可以使用: set_option(verbose=10) 获取标准错误的详细输出 解算器完成后,可以使用 statistics() 方法 在调试模式下,您可以使用 enable_trace("arith") 获取

我使用的是通过python实现的Z3 SMT解算器。我有源代码,我想有一些,任何,进程正在运行的迹象。是否可以使用一些详细的命令或任何东西来了解进程当前正在做什么?我知道它背后的算法,但我想可视化,即使使用printf,代码中发生了什么

谢谢

您可以使用:

      set_option(verbose=10)
获取标准错误的详细输出

解算器完成后,可以使用

     statistics()
方法

在调试模式下,您可以使用

     enable_trace("arith")  
获取低级别跟踪(此处以“arith”作为示例标记)。
这仅用于调试。

谢谢,这是一个有用的起点。我现在真正要找的是源文件,在那里对SAT解算器进行回溯。我认为SMT简化为SAT问题,然后使用类似回溯的算法来寻找解决方案。我找到了C++文件SATHSOLVIE.CPP,但我可以看出,在运行ExpRel.Py代码时它不会被使用。我真的只想把“回溯”之类的东西打印到控制台上。