diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-07-28 11:03:33 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-28 11:03:33 -0500 |
commit | c38f35164adc5ab255803765a568ef820fa8f3b2 (patch) | |
tree | 6cbd4b21e8e9ff364b5b2f14467cd986ea69acf2 /src/theory/arith/nl/nonlinear_extension.cpp | |
parent | b90cfb462bde3e75c07bb14e2393ee8e4b4f4d42 (diff) |
Use lemma property enum for OutputChannel::lemma (#4755)
There are 3 Boolean flags for OutputChannel::lemma, and plans to add another for relevance.
This makes them into a enum.
Diffstat (limited to 'src/theory/arith/nl/nonlinear_extension.cpp')
-rw-r--r-- | src/theory/arith/nl/nonlinear_extension.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/theory/arith/nl/nonlinear_extension.cpp b/src/theory/arith/nl/nonlinear_extension.cpp index 432c25f27..4cb1c9fe6 100644 --- a/src/theory/arith/nl/nonlinear_extension.cpp +++ b/src/theory/arith/nl/nonlinear_extension.cpp @@ -18,6 +18,7 @@ #include "theory/arith/nl/nonlinear_extension.h" #include "options/arith_options.h" +#include "options/theory_options.h" #include "theory/arith/arith_utilities.h" #include "theory/arith/theory_arith.h" #include "theory/ext_theory.h" @@ -164,14 +165,14 @@ void NonlinearExtension::sendLemmas(const std::vector<NlLemma>& out) for (const NlLemma& nlem : out) { Node lem = nlem.d_lemma; - bool preprocess = nlem.d_preprocess; + LemmaProperty p = nlem.getLemmaProperty(); Trace("nl-ext-lemma") << "NonlinearExtension::Lemma : " << nlem.d_id << " : " << lem << std::endl; - d_containing.getOutputChannel().lemma(lem, false, preprocess); + d_containing.getOutputChannel().lemma(lem, p); // process the side effect processSideEffect(nlem); - // add to cache if not preprocess - if (preprocess) + // add to cache based on preprocess + if (isLemmaPropertyPreprocess(p)) { d_lemmasPp.insert(lem); } @@ -408,7 +409,8 @@ bool NonlinearExtension::checkModel(const std::vector<Node>& assertions, Trace("nl-ext-cm") << "-----" << std::endl; unsigned tdegree = d_trSlv.getTaylorDegree(); - bool ret = d_model.checkModel(passertions, tdegree, lemmas, gs); + bool ret = + d_model.checkModel(passertions, tdegree, lemmas, gs); return ret; } |