当我尝试获取模型字符串以及定义的变量时,在模型中得到的额外输出为-

 z3name!0=3, z3name!1=-2, z3name!10=0, z3name!11=0, z3name!12=0, z3name!13=0, z3name!14=0, z3name!15=0, z3name!2=0, z3name!3=0, z3name!4=2, z3name!5=2, z3name!6=0, z3name!7=-3, z3name!8=2, z3name!9=0


我想知道这是错误的输出吗?
还是Z3正在使用某些中间变量?

因为我定义的变量的值对我来说似乎还可以。
我以前没有看到任何此类输出,因此我对此表示怀疑。

最佳答案

Z3有几个预处理步骤。其中一些引入了新变量。通常将从结果模型中删除新变量。如果不是,这是一个错误。但是,此错误不会影响正确性。这只是一个不便。

如果您可以发布问题,那就太好了。我们将能够确定哪个预处理步骤不会消除引入的辅助变量。

10-07 18:20