diff options
author | Gereon Kremer <nafur42@gmail.com> | 2021-06-02 13:55:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-02 11:55:40 +0000 |
commit | 61b2694ac72d41aeff9c67e3631278e5a3bea5cb (patch) | |
tree | 1188888a726c908963fa55ffd332fe234b6eb8fd /test/regress/regress0 | |
parent | a158366e1e7fdc76e00926393b9d091870e30bad (diff) |
Fix issues with double negation in circuit propagator (#6669)
This PR fixes a subtle issue with double negations when producing proofs in the circuit propagator.
Adds the test case as a new regression, as well as some similar instances.
Fixes cvc5/cvc5-projects#277.
Diffstat (limited to 'test/regress/regress0')
-rw-r--r-- | test/regress/regress0/proofs/issue277-circuit-propagator.smt2 | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/test/regress/regress0/proofs/issue277-circuit-propagator.smt2 b/test/regress/regress0/proofs/issue277-circuit-propagator.smt2 new file mode 100644 index 000000000..f0815e8f2 --- /dev/null +++ b/test/regress/regress0/proofs/issue277-circuit-propagator.smt2 @@ -0,0 +1,47 @@ +; EXPECT: sat +; EXPECT: sat +; EXPECT: sat +; EXPECT: sat +; EXPECT: sat +; EXPECT: sat +(set-logic QF_UF) +(set-option :produce-proofs true) +(set-option :incremental true) +(declare-fun p () Bool) +(declare-fun q () Bool) + +(push) +(assert (not (= p (not q)))) +(assert p) +(check-sat) +(pop) + +(push) +(assert (not (= (not q) p))) +(assert p) +(check-sat) +(pop) + +(push) +(assert (not (= (not p) (not (not q))))) +(assert p) +(check-sat) +(pop) + +(push) +(assert (not (= (not (not q)) (not p)))) +(assert p) +(check-sat) +(pop) + +(push) +(assert (not (= (not (not p)) (not (not (not q)))))) +(assert p) +(check-sat) +(pop) + +(push) +(assert (not (= (not (not (not q))) (not (not p))))) +(assert p) +(check-sat) +(pop)
\ No newline at end of file |