Add ArithLemma and arith::InferenceManager (#4960)
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>
Wed, 2 Sep 2020 13:48:12 +0000 (15:48 +0200)
committerGitHub <noreply@github.com>
Wed, 2 Sep 2020 13:48:12 +0000 (08:48 -0500)
commit02e682821028bc704c57a762dadeb6f82bb70ebf
tree4eb20c4d3e6b06eaee58b808909e603da013b554
parent78917e16f6521b0e8a074f3649fc6adf37614617
Add ArithLemma and arith::InferenceManager (#4960)

This PR adds a new ArithLemma that is essentiall NlLemma, but derived from the new theory::Lemma and meant to be used all across the arithmetic theory.
Also, based on theory::InferenceManagerBuffered this PR adds arith::InferenceManager that shall become the sole interface between the arithmetic theory and the OutputChannel.
15 files changed:
src/CMakeLists.txt
src/theory/arith/arith_lemma.cpp [new file with mode: 0644]
src/theory/arith/arith_lemma.h [new file with mode: 0644]
src/theory/arith/inference_manager.cpp [new file with mode: 0644]
src/theory/arith/inference_manager.h [new file with mode: 0644]
src/theory/arith/nl/cad_solver.cpp
src/theory/arith/nl/nl_lemma_utils.cpp
src/theory/arith/nl/nl_lemma_utils.h
src/theory/arith/nl/nl_model.cpp
src/theory/arith/nl/nl_solver.cpp
src/theory/arith/nl/nonlinear_extension.cpp
src/theory/arith/nl/nonlinear_extension.h
src/theory/arith/nl/transcendental_solver.cpp
src/theory/inference_manager_buffered.cpp
src/theory/inference_manager_buffered.h