除非使用 PROOF_MODE 选项,否则响应不饱和

发布于 2024-11-29 03:44:16 字数 218 浏览 3 评论 0原文

我使用 Z3 来证明实时任务系统获得的调度的稳健性。当我检查此脚本 http://www.cs.ru.nl/~georgeta/ script.smt2 我得到了一个不满意的回复。但是,当我使用 PROOF_MODE=1 选项时,响应是 sat。在前一种情况下可能会出现什么问题?

I am using Z3 for proving the robustness of schedules obtained for real time task systems. When I check this script http://www.cs.ru.nl/~georgeta/script.smt2 I get an unsat response. However, when I use the PROOF_MODE=1 option, the response is sat. What could possibly go wrong in the former case?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

千寻… 2024-12-06 03:44:16

我下载了你的例子。指定的逻辑不正确,命令:

(设置逻辑 QF_AUFLIA)

此逻辑指定脚本将仅包含数组、未解释的函数和整数变量,并且不包含量词。但是,它包含实数变量。
如果删除此命令,在这两种情况下您都会得到正确的答案 (sat)。
当使用 PROOF_MODE=1 时,您得到了不同的答案,因为 Z3 中的某些预处理器不支持证明生成,然后当打开证明生成时它们将被禁用。

话虽如此,我们在 Z3 2.19 中修复了许多错误。新版本3.0即将发布。
您已经可以使用我们提交到 SMT-COMP 的预发行版本。

I downloaded your example. The specified logic is incorrect, command:

(set-logic QF_AUFLIA)

This logic specifies that the script will contain only arrays, uninterpreted functions and integer variables, and no quantifiers. However, it contains Real variables.
If you remove this command, you will get the correct answer (sat) in both cases.
You got a different answer when using PROOF_MODE=1 because some preprocessors in Z3 do not support proof generation, then they are disabled when proof generation is turned on.

That being said, we fixed many bugs in Z3 2.19. The new version 3.0 will be released soon.
You can already use the pre-release version we submitted to SMT-COMP.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文