问题标签 [mathsat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
z3 - z3 可以读取 MathSAT 的输出文件作为其输入文件吗?
我需要使用 z3 和 mathsat 进行一些实验。我已经完成了 mathsat 的实验。为 mathsat 编写输入文件需要很多时间,我不想再次为 z3 编写输入文件。Mathsat 支持从“msat”文件生成“smt”文件。转换命令如下图:
我的问题是z3可以识别这个'smt'文件吗?
z3 - 如何使用 Alt-Ergo 执行以下 SMT-LIB 代码
以下 SMT-LIB 代码在 Z3、MathSat 和 CVC4 中运行没有问题,但在 Alt-Ergo 中没有运行,请告诉我发生了什么,非常感谢:
z3 - 如何使用 Mathsat 确定给定实例的解数
Mathsat 支持该命令check-allsat
,Z3 不支持。请考虑以下示例:
使用 mathsat 执行此代码会获得所有一致的分配。问题是如何使用 Mathsat 确定此类一致作业的数量?
z3 - 根据求解器的决定执行 get-model 或 unsat-core
我想知道,SMT-LIB 2.0 脚本中是否有可能访问求解器的最后一个可满足性决策(sat、unsat、...)。例如,下面的代码:
在 Z3 中运行返回:
并在 MathSAT 中运行返回:
在 MathSAT 5 中,它只是中断(get-model),甚至没有达到(get-unsat-core)。如果决定是 SAT,SMT-LIB 2.0 语言中是否有任何方法可以获取模型,如果决定是 UNSAT,则为 unsat-core?例如,解决方案可能如下所示:
我搜索了 SMT-LIB 2.0 语言文档,但没有找到任何提示。
编辑:我也尝试了下面的代码,不幸的是它没有工作。
z3 - Z3 和 CVC4 中有哪些用于位向量的转换运算符?
我正在编写一个需要将一些转换Int
为BitVec
反之亦然的问题的 BV 编码。
在mathsat
/optimathsat
一个可以使用:
在z3
一个可以使用:
在CVC4
一个可以使用:
问:
- 有签名
z3
的功能吗?(看起来没有。)bv2int
BitVec
CVC4
有什么功能bv2int
吗?(我没有任何线索。)- 是否有记录这些转换功能的地方?(关于逻辑/理论的 SMT-LIB 网页似乎没有任何关于它们的信息。)
注意:我受限于基于文本的 SMT-LIB 接口(没有 API 解决方案)。