From f056522a587d1b080224992355be070b73d97a3b Mon Sep 17 00:00:00 2001 From: Kshitij Bansal Date: Thu, 6 Dec 2012 16:31:56 -0500 Subject: [PATCH] Fix performance issue in a DFS search (bug 474) --- src/decision/justification_heuristic.cpp | 7 ++++++- src/decision/justification_heuristic.h | 6 ++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/decision/justification_heuristic.cpp b/src/decision/justification_heuristic.cpp index 494da72bf..46ec6f09f 100644 --- a/src/decision/justification_heuristic.cpp +++ b/src/decision/justification_heuristic.cpp @@ -70,13 +70,17 @@ SatValue JustificationHeuristic::tryGetSatValue(Node n) void JustificationHeuristic::computeITEs(TNode n, IteList &l) { Trace("jh-ite") << " computeITEs( " << n << ", &l)\n"; + d_visitedComputeITE.insert(n); for(unsigned i=0; i d_visited; + + /** + * Set to track visited nodes in a dfs search done in computeITE + * function + */ + hash_set d_visitedComputeITE; public: JustificationHeuristic(CVC4::DecisionEngine* de, context::Context *uc, -- 2.30.2