Z3支持-m选项

时间:2012-11-02 15:46:58

标签: z3

在unix上我试图使用使用Z3的AProVE。我下载并构建了源代码(4.1.2;虽然z3 -version显示了4.2)。 AProVE使用z3和-m选项,但4.2不支持-m。据AProVE开发人员介绍,-m在z3 4.0中可用。

如何获取支持-m的z3的源文件?或者,我的问题有一个简单的解决方法吗?

1 个答案:

答案 0 :(得分:1)

默认情况下启用模型生成。我们不再需要提供选项-m。 如果您无法更改AProVE,则可以为Z3创建一个包装器,在调用Z3之前删除选项-m。另一种选择是破解Z3源代码中的文件shell\main.cpp。 它包含一个名为

的函数
void parse_cmd_line_args(int argc, char ** argv)

要包含无法执行任何操作的虚拟-m选项,您只需添加新的if-statement

        else if (strcmp(opt_name, "m") == 0) {
            // do nothing
        }