Z3 4.0: get complete model

后端 未结 1 701
时光说笑
时光说笑 2020-12-06 22:24

I need a complete model of an SMTLIB2 formula:

http://pastebin.com/KiwFJTrK

Z3 (version 3.2 and 4.0) returns values for all variables but not for var4

相关标签:
1条回答
  • 2020-12-06 23:00

    You can avoid this problem by adding the following option in the beginning of your script.

    (set-option :auto-config false)
    

    I will fix it for the next release. Here is a short explanation of what is going on. Z3 has a solver for 0-1 integer problems. After preprocessing, your script is tagged as a 0-1 integer problem by Z3. The value of var4 is a "don't care" when the problem is viewed as a 0-1 problem, but it is not a "don't care" when the problem is viewed as an integer problem (var4 must be 0 or 1). By default, Z3 will not display the value of "don't care" variables.

    The MODEL_COMPLETION=true will complete the model as you request values for constants that are not included in the model. For example, if we execute (eval var4), Z3 will produce an interepretation for var4.

    0 讨论(0)
提交回复
热议问题