Make sure conflicts are not rewritten (in arithmetic) (#5219)
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>
Wed, 7 Oct 2020 14:13:41 +0000 (16:13 +0200)
committerGitHub <noreply@github.com>
Wed, 7 Oct 2020 14:13:41 +0000 (09:13 -0500)
commiteb4321c5040258ac1ac41eb955aa5b6b5199011e
tree01524ae48f79b8aa0ab60728e29e3a4b80e92e8f
parent1a97c19443833604d57f1453a1bebfe0714d3d8e
Make sure conflicts are not rewritten (in arithmetic) (#5219)

The arithmetic inference manager did rewrite conflicts, which lead to nodes from the conflict not being assumptions (but rewritten assumptions) triggering an assertion. This rewrite is now removed.
Furthermore rewrites triggering the same assertion within the icp subsolver have been refactored to avoid this issue.
src/theory/arith/bound_inference.cpp
src/theory/arith/inference_id.cpp
src/theory/arith/inference_manager.cpp
src/theory/arith/nl/icp/icp_solver.cpp
test/regress/CMakeLists.txt
test/regress/regress0/arith/issue5219-conflict-rewrite.smt2 [new file with mode: 0644]