diff options
author | Clark Barrett <barrett@cs.nyu.edu> | 2012-06-18 16:19:10 +0000 |
---|---|---|
committer | Clark Barrett <barrett@cs.nyu.edu> | 2012-06-18 16:19:10 +0000 |
commit | a25f3475eee00a4920762b9a8b3d127b6211e0f6 (patch) | |
tree | f1e6594371b9b5db98578553bc7cb00a093f9cfb /src/theory | |
parent | ebf837cd9401828603ccc949aa1f6ead74572a5b (diff) |
small bug fix and performance fix in ite simplifier
Diffstat (limited to 'src/theory')
-rw-r--r-- | src/theory/ite_simplifier.cpp | 10 | ||||
-rw-r--r-- | 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; } |