标签: z3 z3py
我正在尝试使用z3py解决整数上的可满足性问题,其中我的一个约束要求数组中每个变量的值都大于最后十一个变量的中值。现在,我正在像这样编码约束:
PbLe((((v [i] <= v [i-11],1),...(v [i] <= v [i-1],1)),6)
这似乎导致求解器使用大量内存。我认为PbLe会在后端或类似的东西上转换为析取范式,并导致表达式的大小爆炸。
在z3中,是否有一种更有效的方式来表示数组中的值“大于滚动中值”?