有没有办法在 Z3 中表达假设(我正在使用 Z3Py 库),这样引擎不会检查它们的有效性,而是将它们作为基础理论,就像在定理证明中一样?
例如,假设我有两个参数类型为 Real 的一元函数。我想告诉 Z3 引擎,对于所有输入值,f1(t) 等于 f2(t)。
在 Z3Py 中编码如下所示:
t = Real("t")
假设 1 = ForAll(t, f1(t) = f2(t))。
所呈现代码的问题是我的断言集非常大并且我使用量词(我试图证明实时系统的可满足性)。如果我将上述断言添加到其他断言集中,则检查过程不会终止。