diff options
author | Morgan Deters <mdeters@gmail.com> | 2012-02-20 17:59:33 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2012-02-20 17:59:33 +0000 |
commit | 3d2b33d66998261f9369cccc098140f64bc8b417 (patch) | |
tree | 9176ad2684415f8fb95f75a5655e8b17dcdf9793 /src/theory/arith | |
parent | 92155f5e40ed2cf452dc5e2f618e7be6542293e8 (diff) |
portfolio merge
Diffstat (limited to 'src/theory/arith')
-rw-r--r-- | src/theory/arith/arith_priority_queue.cpp | 3 | ||||
-rw-r--r-- | src/theory/arith/simplex.cpp | 4 | ||||
-rw-r--r-- | src/theory/arith/theory_arith.cpp | 2 | ||||
-rw-r--r-- | src/theory/arith/theory_arith_type_rules.h | 6 |
4 files changed, 9 insertions, 6 deletions
diff --git a/src/theory/arith/arith_priority_queue.cpp b/src/theory/arith/arith_priority_queue.cpp index 3b1f5f395..e74a250a3 100644 --- a/src/theory/arith/arith_priority_queue.cpp +++ b/src/theory/arith/arith_priority_queue.cpp @@ -191,12 +191,15 @@ void ArithPriorityQueue::transitionToDifferenceMode() { switch(d_pivotRule){ case MINIMUM: + Debug("arith::pivotRule") << "Making the minimum heap." << endl; make_heap(d_diffQueue.begin(), d_diffQueue.end(), VarDRatPair::minimumRule); break; case BREAK_TIES: + Debug("arith::pivotRule") << "Making the break ties heap." << endl; make_heap(d_diffQueue.begin(), d_diffQueue.end(), VarDRatPair::breakTiesRules); break; case MAXIMUM: + Debug("arith::pivotRule") << "Making the maximum heap." << endl; make_heap(d_diffQueue.begin(), d_diffQueue.end(), VarDRatPair::maximumRule); break; } diff --git a/src/theory/arith/simplex.cpp b/src/theory/arith/simplex.cpp index 27fb0bb02..26cdb2cdb 100644 --- a/src/theory/arith/simplex.cpp +++ b/src/theory/arith/simplex.cpp @@ -619,9 +619,9 @@ Node SimplexDecisionProcedure::updateInconsistentVars(){ if(d_queue.empty()){ return Node::null(); } - static unsigned int instance = 0; - ++instance; + static CVC4_THREADLOCAL(unsigned int) instance = 0; + ++instance; Debug("arith::updateInconsistentVars") << "begin updateInconsistentVars() " << instance << endl; diff --git a/src/theory/arith/theory_arith.cpp b/src/theory/arith/theory_arith.cpp index 64e713b0a..268829105 100644 --- a/src/theory/arith/theory_arith.cpp +++ b/src/theory/arith/theory_arith.cpp @@ -1223,7 +1223,7 @@ void TheoryArith::presolve(){ if(Debug.isOn("paranoid:check_tableau")){ d_simplex.debugCheckTableau(); } - static int callCount = 0; + static CVC4_THREADLOCAL(unsigned) callCount = 0; Debug("arith::presolve") << "TheoryArith::presolve #" << (callCount++) << endl; d_learner.clear(); diff --git a/src/theory/arith/theory_arith_type_rules.h b/src/theory/arith/theory_arith_type_rules.h index 9c69ec684..511982d48 100644 --- a/src/theory/arith/theory_arith_type_rules.h +++ b/src/theory/arith/theory_arith_type_rules.h @@ -29,7 +29,7 @@ namespace arith { class ArithConstantTypeRule { public: inline static TypeNode computeType(NodeManager* nodeManager, TNode n, bool check) - throw (TypeCheckingExceptionPrivate) { + throw (TypeCheckingExceptionPrivate, AssertionException) { if (n.getKind() == kind::CONST_RATIONAL) return nodeManager->realType(); return nodeManager->integerType(); } @@ -38,7 +38,7 @@ public: class ArithOperatorTypeRule { public: inline static TypeNode computeType(NodeManager* nodeManager, TNode n, bool check) - throw (TypeCheckingExceptionPrivate) { + throw (TypeCheckingExceptionPrivate, AssertionException) { TypeNode integerType = nodeManager->integerType(); TypeNode realType = nodeManager->realType(); TNode::iterator child_it = n.begin(); @@ -65,7 +65,7 @@ public: class ArithPredicateTypeRule { public: inline static TypeNode computeType(NodeManager* nodeManager, TNode n, bool check) - throw (TypeCheckingExceptionPrivate) { + throw (TypeCheckingExceptionPrivate, AssertionException) { if( check ) { TypeNode integerType = nodeManager->integerType(); TypeNode realType = nodeManager->realType(); |