Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我注意到 Z3 可以从一些纸上完成所有工作。在我的项目中,我必须在 SMT 公式中搜索确定性变量。通过确定性,我的意思是变量只能采用一个 int 值来使公式可满足。是否有可以执行此任务的 c++/c API 函数?
到目前为止,我能做的最好的事情是多次调用 solver.check() 函数来否定我感兴趣的每个变量。有没有更快的方法通过使用 API 来做到这一点?
基本上,我想做 allsmt 和谓词抽象/投影。
没有专门的 API 来检查给定变量的所有模型是否必须就相同的值达成一致。您可以在 Z3 之上实现或多或少有效的算法来解决这个问题。这是一个可能的算法: