From a25f3475eee00a4920762b9a8b3d127b6211e0f6 Mon Sep 17 00:00:00 2001 From: Clark Barrett Date: Mon, 18 Jun 2012 16:19:10 +0000 Subject: [PATCH] small bug fix and performance fix in ite simplifier --- src/theory/ite_simplifier.cpp | 10 ++-------- src/theory/theory_engine.cpp | 2 +- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/theory/ite_simplifier.cpp b/src/theory/ite_simplifier.cpp index bf031fc94..ab8f159a9 100644 --- a/src/theory/ite_simplifier.cpp +++ b/src/theory/ite_simplifier.cpp @@ -447,10 +447,7 @@ Node ITESimplifier::simplifyWithCare(TNode e) if (done) break; Assert(v.getNumChildren() > 1); - cs2 = getNewSet(); - cs2.getCareSet() = css; - cs2.getCareSet().insert(v[1]); - updateQueue(queue, v[0], cs2); + updateQueue(queue, v[0], cs); cs2 = getNewSet(); cs2.getCareSet() = css; cs2.getCareSet().insert(v[0]); @@ -473,10 +470,7 @@ Node ITESimplifier::simplifyWithCare(TNode e) if (done) break; Assert(v.getNumChildren() > 1); - cs2 = getNewSet(); - cs2.getCareSet() = css; - cs2.getCareSet().insert(v[1].negate()); - updateQueue(queue, v[0], cs2); + updateQueue(queue, v[0], cs); cs2 = getNewSet(); cs2.getCareSet() = css; cs2.getCareSet().insert(v[0].negate()); diff --git a/src/theory/theory_engine.cpp b/src/theory/theory_engine.cpp index 161d0febd..0e7d7d51c 100644 --- a/src/theory/theory_engine.cpp +++ b/src/theory/theory_engine.cpp @@ -1172,7 +1172,7 @@ void TheoryEngine::conflict(TNode conflict, TheoryId theoryId) { Node TheoryEngine::ppSimpITE(TNode assertion) { Node result = d_iteSimplifier.simpITE(assertion); - result = d_iteSimplifier.simplifyWithCare(result); + result = d_iteSimplifier.simplifyWithCare(Rewriter::rewrite(result)); result = Rewriter::rewrite(result); return result; } -- 2.30.2