gpt4 book ai didi

z3 - 如何访问位爆破时使用的变量映射?

转载 作者:行者123 更新时间:2023-12-04 19:58:30 31 4
gpt4 key购买 nike

我正在修改一个使用 Z3(特别是 Python API)来解决位向量约束的工具。我需要使用特定的外部 SAT 求解器而不是内部 Z3 求解器,因此我首先使用该策略进行了爆破

Then('simplify', 'bit-blast', 'tseitin-cnf')

之后我可以相对轻松地将子句转储到 DIMACS 文件中。问题是将生成的命题模型映射回原始约束的模型:据我所知,Python API 不提供访问与策略对应的模型转换器的方法。这是真的?如果是这样,可以使用不同的 API 来完成,还是有更简单的方法?基本上我只需要知道最终 CNF 子句中的命题变量如何对应于原始位向量变量。

最佳答案

这听起来很特别。最简单的方法可能是您检测目标 2sat 转换(并重新编译 Z3)以保存
文件中的翻译表。我认为通过 API 公开的任何功能都不会为您提供此信息。

关于z3 - 如何访问位爆破时使用的变量映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30921416/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com