我使用Z3来证明为实时任务系统获得的时间表的稳健性。当我查看这个脚本http://www.cs.ru.nl/~georgeta/script.smt2时,我收到了不满的回复。但是,当我使用PROOF_MODE = 1选项时,响应是坐着的。在前一种情况下可能出现什么问题?
答案 0 :(得分:2)
我下载了你的例子。指定的逻辑不正确,命令:
(设置逻辑QF_AUFLIA)
此逻辑指定脚本将仅包含数组,未解释的函数和整数变量,并且不包含量词。但是,它包含Real变量。 如果删除此命令,则在两种情况下都会得到正确的答案(sat)。 使用PROOF_MODE = 1时,您得到了不同的答案,因为Z3中的某些预处理器不支持校样生成,因此在打开校样生成时会禁用它们。
话虽如此,我们修复了Z3 2.19中的许多错误。新版本3.0即将发布。 您已经可以使用我们提交给SMT-COMP的预发布版本。