在Z3Py中以实数发言

在Z3Py中以实数发言,z3,z3py,Z3,Z3py,在Z3Py中给定一个像real('x')这样的实数,我如何得到它的地板或天花板?同样地,我如何取整它?我知道在SMT规范中,to_int是一个东西,但我不知道如何从Python调用它。函数“ToInt”开始了讨论 from z3 import * x = Real('x') print ToInt(x) print ToInt(RealVal("1/2")) print simplify(ToInt(RealVal("1/2"))) 我很想知道ToInt/“to_int”在实际解算器性能方面

在Z3Py中给定一个像
real('x')
这样的实数,我如何得到它的地板或天花板?同样地,我如何取整它?我知道在SMT规范中,
to_int
是一个东西,但我不知道如何从Python调用它。

函数“ToInt”开始了讨论

from z3 import *

x = Real('x')
print ToInt(x)
print ToInt(RealVal("1/2"))
print simplify(ToInt(RealVal("1/2")))

我很想知道
ToInt
/“to_int”在实际解算器性能方面有多有效。既然可以使用这种技巧对丢番图方程进行编码(即,用实数表示,然后断言分数部分为零),我们是否应该更频繁地在存在to_int调用的情况下获得
未知
结果?我理解我的评论相当含糊,但我想听听你对此的看法。