Z3中整数的min函数

时间:2012-06-27 03:41:01

标签: z3

Z3是否支持整数的min函数,即返回两个数中的最小值?我在Z3的网站上找不到它。

此外,它是否支持某种功能,可以返回一组数字的最小值?像这样的东西: (断言(= y(min x1 x2 x3 x4 x5))), 其中x和y是整数。

感谢。

1 个答案:

答案 0 :(得分:1)

min是即将出现的浮点理论的保留关键字。 您可以使用define-fun命令定义宏min2(二进制),min3(三元组)等。 以下是定义min2min3min4的示例。

http://rise4fun.com/Z3/akWje

SMT 2.0标准不支持具有任意数量参数的宏。 如果您愿意,可以使用其中一个Z3 API来执行此操作。 Python前端非常灵活。这是Z3Py中的一个例子。

http://rise4fun.com/Z3Py/Vvp