diff options
author | Aina Niemetz <aina.niemetz@gmail.com> | 2020-03-10 14:51:32 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-10 14:51:32 -0700 |
commit | e9f4cec2cad02e270747759223090c16b9d2d44c (patch) | |
tree | ff902073b926d48cb0ae23848bee4b90e96000c7 /test/regress/regress0/smtlib | |
parent | bcaebfa163bb27e1cf14c0f763afb47b185a5f99 (diff) |
Fix issue with reset-assertions. (#3988)
Calling (reset-assertions) in start mode was not handled correctly.
Additionally, when calling (check-sat) after (reset-assertions) after a
(check-sat) call that answered unsat, we answered unsat instead of sat.
This cleans up and fixes reset-assertions) handling.
Diffstat (limited to 'test/regress/regress0/smtlib')
-rw-r--r-- | test/regress/regress0/smtlib/reset-assertions-global.smt2 | 18 | ||||
-rw-r--r-- | test/regress/regress0/smtlib/reset-assertions1.smt2 | 11 | ||||
-rw-r--r-- | test/regress/regress0/smtlib/reset-assertions2.smt2 | 17 |
3 files changed, 46 insertions, 0 deletions
diff --git a/test/regress/regress0/smtlib/reset-assertions-global.smt2 b/test/regress/regress0/smtlib/reset-assertions-global.smt2 new file mode 100644 index 000000000..f6e2aaed2 --- /dev/null +++ b/test/regress/regress0/smtlib/reset-assertions-global.smt2 @@ -0,0 +1,18 @@ +; EXPECT: unsat +; EXPECT: sat +; EXPECT: unsat +(set-option :global-declarations true) +(set-logic QF_BV) +(set-option :incremental true) +(declare-fun x2 () (_ BitVec 3)) +(declare-fun x1 () (_ BitVec 3)) +(declare-fun x0 () (_ BitVec 3)) +(assert (bvult (bvudiv (bvudiv (bvudiv x0 x0) x1) x2) x1)) +(assert (= #b000 x2)) +(check-sat) +(reset-assertions) +(assert (= x2 x1)) +(check-sat) +(reset-assertions) +(assert (distinct x1 x1)) +(check-sat) diff --git a/test/regress/regress0/smtlib/reset-assertions1.smt2 b/test/regress/regress0/smtlib/reset-assertions1.smt2 new file mode 100644 index 000000000..7b4006c5d --- /dev/null +++ b/test/regress/regress0/smtlib/reset-assertions1.smt2 @@ -0,0 +1,11 @@ +; EXPECT: unsat +; EXPECT: sat +(set-logic QF_BV) +(declare-fun v0 () (_ BitVec 4)) +(set-option :produce-models true) +(reset-assertions) +(set-option :incremental true) +(assert (and (= v0 (_ bv0 4)) (distinct v0 (_ bv0 4)))) +(check-sat) +(reset-assertions) +(check-sat) diff --git a/test/regress/regress0/smtlib/reset-assertions2.smt2 b/test/regress/regress0/smtlib/reset-assertions2.smt2 new file mode 100644 index 000000000..3c37f2cba --- /dev/null +++ b/test/regress/regress0/smtlib/reset-assertions2.smt2 @@ -0,0 +1,17 @@ +; EXPECT: sat +; EXPECT: sat +(set-logic QF_ALL) +(set-option :incremental true) +(set-option :produce-models true) + +(declare-fun x () Real) +(declare-fun y () Real) +(assert (> x 0.0)) +(assert (> y 0.0)) +(assert (= (+ (* 2 x) y) 4)) +(check-sat) +(reset-assertions) + +(declare-fun a () (Array Int Int)) +(assert (= (select a 4) 10)) +(check-sat) |