Make linear arithmetic use its inference manager (#5934)
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>
Thu, 11 Mar 2021 22:48:11 +0000 (23:48 +0100)
committerGitHub <noreply@github.com>
Thu, 11 Mar 2021 22:48:11 +0000 (22:48 +0000)
commita22deeb091673226a1edb5a89bc8a596a3d51fc7
treef51d6edc2fe374cb0001681c3f882e1a1e7f4a3a
parent5998d7f5a9168b0dd1c26f3aa1b85e570fe72af8
Make linear arithmetic use its inference manager (#5934)

This PR refactors the linear arithmetic solver to properly use its inference manager, instead of directly sending lemmas to the output channel. To do this, it introduces new InferenceIds for the various linear lemmas.
14 files changed:
src/theory/arith/callbacks.cpp
src/theory/arith/callbacks.h
src/theory/arith/constraint.cpp
src/theory/arith/nl/nonlinear_extension.cpp
src/theory/arith/simplex.cpp
src/theory/arith/soi_simplex.cpp
src/theory/arith/theory_arith.cpp
src/theory/arith/theory_arith.h
src/theory/arith/theory_arith_private.cpp
src/theory/arith/theory_arith_private.h
src/theory/inference_id.h
src/theory/theory.h
test/unit/theory/theory_arith_white.cpp
test/unit/theory/theory_white.cpp