如何在 Z3py 中激活部分模式?
How to activate partial mode in Z3py?
我正在使用 Z3 的 Python 绑定并且很好奇部分模式是否会加速我的模型。但是在 Python 中似乎没有办法做到这一点。 (set_param(...)
似乎没有参数)
我考虑迁移到 pySMT,因为它声称支持 Z3 的部分模式,但我更愿意保留 Z3Py。
额外问题:部分模式真的对我有好处吗?我在数组中模拟计算机内存并希望 Z3 忽略从未引用的条目。
这是设置部分模型的方法:
from z3 import *
print get_param('model.partial')
set_param('model.partial', True)
print get_param('model.partial')
这会打印:
false
true
关于你的奖金问题:我怀疑部分模型会给你买任何东西。 SMT 求解器通常会在 sat
的情况下找到模型,然后根据需要完成模型。 "finding the model" 部分通常是代价高昂的操作,没有完成模型。但这当然取决于您的具体问题;所以试试也不会有什么坏处。
我正在使用 Z3 的 Python 绑定并且很好奇部分模式是否会加速我的模型。但是在 Python 中似乎没有办法做到这一点。 (set_param(...)
似乎没有参数)
我考虑迁移到 pySMT,因为它声称支持 Z3 的部分模式,但我更愿意保留 Z3Py。
额外问题:部分模式真的对我有好处吗?我在数组中模拟计算机内存并希望 Z3 忽略从未引用的条目。
这是设置部分模型的方法:
from z3 import *
print get_param('model.partial')
set_param('model.partial', True)
print get_param('model.partial')
这会打印:
false
true
关于你的奖金问题:我怀疑部分模型会给你买任何东西。 SMT 求解器通常会在 sat
的情况下找到模型,然后根据需要完成模型。 "finding the model" 部分通常是代价高昂的操作,没有完成模型。但这当然取决于您的具体问题;所以试试也不会有什么坏处。