diff options
author | Carlo Zancanaro <carlo@pc-4w14-0.cs.usyd.edu.au> | 2012-07-09 17:09:49 +1000 |
---|---|---|
committer | Carlo Zancanaro <carlo@pc-4w14-0.cs.usyd.edu.au> | 2012-07-09 17:09:49 +1000 |
commit | 5cdc743d491a04ee0446bd757cedb4c7b6bc585f (patch) | |
tree | f9096fd6a5b8c8c9ec33719158a3d7ffdf3b25df /impl/ImprovementOperator.hpp | |
parent | 8040a5fd511912cb2141e46e5ca9eb1ab766133e (diff) |
Cleaning up a bit of code around the place.
- Especially making logging a bit nicer.
Diffstat (limited to 'impl/ImprovementOperator.hpp')
-rw-r--r-- | impl/ImprovementOperator.hpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/impl/ImprovementOperator.hpp b/impl/ImprovementOperator.hpp index 716768d..d99ccbc 100644 --- a/impl/ImprovementOperator.hpp +++ b/impl/ImprovementOperator.hpp @@ -39,7 +39,7 @@ struct NaiveImprovementOperator : public ImprovementOperator<Domain> { strat.set(expr, index); } } - //log::strategy << strat; + //log::strategy << strat << std::endl; return changed; } }; @@ -169,7 +169,6 @@ struct SmartImprovementOperator : public ImprovementOperator<Domain> { }; void invalidateSubexpressions(IdSet<MaxExpression<Domain>>& set, const Expression<Domain>* expr) const { - if (!expr) return; const MaxExpression<Domain>* maxExpr = dynamic_cast<const MaxExpression<Domain>*>(expr); if (maxExpr != NULL) { if (!set.contains(*maxExpr)) { @@ -178,8 +177,7 @@ struct SmartImprovementOperator : public ImprovementOperator<Domain> { end = maxExpr->arguments().end(); it != end; ++it) { - if (*it) - invalidateSubexpressions(set, *it); + invalidateSubexpressions(set, *it); } } } @@ -226,17 +224,20 @@ struct SmartImprovementOperator : public ImprovementOperator<Domain> { stableSet = invalidSet.inverse(); } - log::strategy << "stable: " << stableSet; - log::strategy << "infl: " << _influence; + log::strategy << "stable: " << stableSet << std::endl; + log::strategy << "infl: " << _influence << std::endl; DynamicMaxStrategy strat(_system, stratOut, _influence, rho, stableSet, changedSet); - log::strategy << "invalid: " << invalidSet; + log::strategy << "invalid: " << invalidSet << std::endl; for (auto it = invalidSet.begin(), end = invalidSet.end(); it != end; ++it) { - log::strategy << _system.maxExpression(*it); - strat.get(_system.maxExpression(*it)); + unsigned int subExpression = strat.get(_system.maxExpression(*it)); + log::strategy << _system.maxExpression(*it) + << " -> " + << subExpression << std::endl; } + log::strategy << std::endl; IdSet<MaxExpression<Domain>> seen; for (auto it = changedSet.begin(), end = changedSet.end(); |