summaryrefslogtreecommitdiff
path: root/src/theory/arith
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@cs.nyu.edu>2014-11-17 09:33:55 -0500
committerMorgan Deters <mdeters@cs.nyu.edu>2014-11-17 16:21:40 -0500
commite5e33a2de5419da0d9e43746871224eeb48bd5ed (patch)
tree367de520cf6cb4e7d47669aa57639b22ece8b6d0 /src/theory/arith
parenta64af5c3903cbe75214016aef4b5a3994256e6f8 (diff)
Short-circuit in TheoryArithPrivate::check(), care of Tim.
Diffstat (limited to 'src/theory/arith')
-rw-r--r--src/theory/arith/theory_arith_private.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/theory/arith/theory_arith_private.cpp b/src/theory/arith/theory_arith_private.cpp
index d6537c562..c8e7991a5 100644
--- a/src/theory/arith/theory_arith_private.cpp
+++ b/src/theory/arith/theory_arith_private.cpp
@@ -3346,6 +3346,11 @@ bool TheoryArithPrivate::hasFreshArithLiteral(Node n) const{
void TheoryArithPrivate::check(Theory::Effort effortLevel){
Assert(d_currentPropagationList.empty());
+
+ if(done() && !Theory::fullEffort(effortLevel) && ( d_qflraStatus == Result::SAT) ){
+ return;
+ }
+
TimerStat::CodeTimer checkTimer(d_containing.d_checkTime);
//cout << "TheoryArithPrivate::check " << effortLevel << std::endl;
Debug("effortlevel") << "TheoryArithPrivate::check " << effortLevel << std::endl;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback