z3:公式及其否定是不可满足的

z3: A formula and its negation are unsatisfiable

一个公式及其否定都是不可满足的。

http://rise4fun.com/Z3/qJHD

(define-fun max1 ((x Int) (y Int)) Int
    (ite (< y x) x y))

(define-fun myMax ((a Int) (b Int)) Int
    (ite (< a b) (- b 1) 0))


(define-const f Bool 
(forall ((a Int) (b Int))
(=> (exists ((i Int)) (and (<= (+ a 1) i) (< i b)))
(= (myMax a b) (max1 a (myMax (+ a 1) b))))))

(assert f)
;(assert (not f))

(check-sat)

有人能帮我理解一下吗?我期待他们中的一个人坐下来。 请注意,函数 max1 和 myMax 均已定义。

这是模块中的一个错误,它试图使用 Fourier Motzkin 消元法来消去量化变量。现在将在 master 分支中签入修复程序。