(cad solver) Add a partial check method. (#4904)
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>
Wed, 19 Aug 2020 21:06:57 +0000 (23:06 +0200)
committerGitHub <noreply@github.com>
Wed, 19 Aug 2020 21:06:57 +0000 (16:06 -0500)
commit6710b082bc6fa8c7f67203a4013657e069479119
tree3f3ba1065e1100e86526a0b13ab26c759e77f1c2
parent31717bf7c014bf1971cabcc9b871de5818278126
(cad solver) Add a partial check method. (#4904)

This PR extends the CAD-based solver to enable partial checks. Essentially, we only collect the first interval that is excluded for the first variable and return that one as a lemma. This does not leave a lot of choice on "how partial" the check should be, but it is fairly easy to implement and does not add additional overhead.
It also fixes some confusion in excluding_interval_to_lemma...
src/theory/arith/nl/cad/cdcac.cpp
src/theory/arith/nl/cad/cdcac.h
src/theory/arith/nl/cad_solver.cpp
src/theory/arith/nl/cad_solver.h
src/theory/arith/nl/poly_conversion.cpp