Closed
Description
Hello guys,
I think I found another bug for Spacer where it erroneously returns unsat. This seems to be connected to inlining of rules :
(set-logic HORN)
(declare-fun inv1 (Int Int Int) Bool)
(declare-fun u_pred (Int) Bool)
(assert (u_pred 0))
(assert (inv1 0 0 8))
(assert (forall ((D (Array Int Int)) (F Int) (H Int))
(=> (inv1 F 0 8) (inv1 (+ 1 F) H (select (store D F 0) H)))))
(assert (forall ((D Int)) (=> (and (inv1 1 D 8) (u_pred D)) false)))
(check-sat)
Specifically I executed:
$ z3 fp.xform.inline_eager=false test.smt2
unsat
$ z3 --version
Z3 version 4.13.4 - 64 bit - build hashcode 943d881340fc77496dcfc75d9ba65a617a51475e