// If the bit-blaster discovers new constants, should the term simplifier be re-run.
simplify_during_BB_flag=false;
- set("bb-equiv","1");
-
} //End of constructor for UserDefinedFlags
}; //End of struct UserDefinedFlags
// leaves just one instance of the constraint, so it we replace it with true/false
// the constraint is lost. This is subsumed by constant bit propagation, so I suspect
// it's not a big loss.
- if (!_bm->UserFlags.isSet("bb-equiv",""))
+ if (!_bm->UserFlags.isSet("bb-equiv","1"))
AlwaysTrueHashSet.insert(key.GetNodeNum());
}
fromTo.insert(make_pair(n, r));
}
- if (form.GetSTPMgr()->UserFlags.isSet("bb-equiv",""))
+ if (form.GetSTPMgr()->UserFlags.isSet("bb-equiv","1"))
{
HASHMAP <intptr_t ,ASTNode> nodeToFn;
typename map<ASTNode, BBNode>::iterator it;
}
typedef HASHMAP<vector<BBNode>, ASTNode,BBVecHasher <BBNode>, BBVecEquals<BBNode> > M;
- if (form.GetSTPMgr()->UserFlags.isSet("bb-equiv",""))
+ if (form.GetSTPMgr()->UserFlags.isSet("bb-equiv","1"))
{
M lookup;
typename std::map<ASTNode, vector<BBNode> >::iterator it;
results.push_back(BBTerm(term[i], support));
const int bitWidth = term[0].GetValueWidth();
- std::vector<list<BBNode> > products(bitWidth);
+ std::vector<list<BBNode> > products(bitWidth+1);
for (int i = 0; i < bitWidth; i++)
{
for (int j = 0; j < results.size(); j++)