Z3 转换为;设置选项";SMTLib格式

Z3 转换为;设置选项";SMTLib格式,z3,z3py,Z3,Z3py,我想把这个z3py代码()转换成标准的SMTLib格式。除了设置选项属性“(设置选项:Product models true)(设置选项:timeout 4000)”,所有内容都转换为SMTLib格式。为什么不工作?转换代码是由莱昂纳多·德莫拉提出的 我希望输出像这样- ; benchmark (set-info :status unknown) (set-option :produce-models true) (set-option :timeout 4000) (set-logic QF

我想把这个z3py代码()转换成标准的SMTLib格式。除了设置选项属性“(设置选项:Product models true)(设置选项:timeout 4000)”,所有内容都转换为SMTLib格式。为什么不工作?转换代码是由莱昂纳多·德莫拉提出的

我希望输出像这样-

; benchmark 
(set-info :status unknown)
(set-option :produce-models true)
(set-option :timeout 4000)
(set-logic QF_UFLIA)
(assert true)
(check-sat)

谢谢

我正在运行您的代码,我正在获取

; benchmark
(set-info :status unknown)
(set-logic QF_UFLIA)
(assert true)
(check-sat)

SMT-LIB2打印机不打印选项。 漂亮的打印机返回一个字符串,然后你
应该能够预先购买您选择的选项。

感谢您的及时回复。这是为解算器定义集选项的正确方法吗。“s=Solver();s.set(unsat_core=True)s.set(models=True);s.set(timeout=4000)”因为如果我设置任意关键字,那么z3py不会提供任何错误。是否有它支持的关键字的文档?