在 C++ 中支持 Z3 的浮点理论 API
Has Floating point theory of Z3 supported in C++ API
从RELEASE_NOTESZ3最新版本Z3-4.4.1开始,支持浮点理论。我已经成功地以离线方式对其进行了测试。但是,在我目前的项目中,Z3需要在C++中使用API,阅读相关文档和源代码后,我没有找到任何API浮点理论的功能。 C++支持Z3的浮点理论吗API?
尽管如此,也许我可以将我的约束集写入一个smt 格式的文件,然后使用Z3 API 来解析这个文件。但是,这是我最后的选择。
C++ API 本质上是 C API 的包装器,用于常见的习语,例如,自动化引用计数。两者可以而且应该一起使用。例如,C-API example 展示了如何通过调用 C 函数 Z3_mk_bvsrem
创建一个带符号的位向量余项(没有 C++ 函数)。同样的技巧适用于所有浮点项;只需通过相应的 C 函数创建它们,然后将它们保存在 (C++) z3::expr
对象中。
从RELEASE_NOTESZ3最新版本Z3-4.4.1开始,支持浮点理论。我已经成功地以离线方式对其进行了测试。但是,在我目前的项目中,Z3需要在C++中使用API,阅读相关文档和源代码后,我没有找到任何API浮点理论的功能。 C++支持Z3的浮点理论吗API?
尽管如此,也许我可以将我的约束集写入一个smt 格式的文件,然后使用Z3 API 来解析这个文件。但是,这是我最后的选择。
C++ API 本质上是 C API 的包装器,用于常见的习语,例如,自动化引用计数。两者可以而且应该一起使用。例如,C-API example 展示了如何通过调用 C 函数 Z3_mk_bvsrem
创建一个带符号的位向量余项(没有 C++ 函数)。同样的技巧适用于所有浮点项;只需通过相应的 C 函数创建它们,然后将它们保存在 (C++) z3::expr
对象中。