You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This problem exposes 2 bugs: one in the previous MBP and one in QEL. In the previous MBP, variable are not removed. In QEL, one of the axioms is not applied properly (the rule to factor out read terms as new variables)
To reproduce the QEL issue: (declare-datatypes ((arr_int_tuple 0)) (((arr_int_tuple (d (Array Int Int)) (e Int))))) (declare-datatypes ((dtp 0)) (((dtp (g (Array Int arr_int_tuple)) (h Int))))) (declare-fun a () (dtp)) (declare-fun b () (dtp)) (assert (and (<= (e (select (g a) 0)) 0) (not (<= (e (select (g a) 0)) (e (select (g b) 0)))))) (check-sat) (mbp (and (<= (e (select (g a) 0)) 0) (not (<= (e (select (g a) 0)) (e (select (g b) 0))))) (a))
returns true where it should have returned (<= (e (select (g b) 0)) (-1))
Hey everyone,
for this case z3 returns unexpectedly UNSAT:
A model is given by:
Contrary to #7466 , this seems to be independent from slicing as we also have
I am using Z3 version 4.13.0 - 64 bit.
Is this also a bug?
The text was updated successfully, but these errors were encountered: