void TheoryBV::check(Effort e)
{
- Trace("bitvector") <<"TheoryBV::check (" << e << ")\n";
Debug("bitvector") << "TheoryBV::check(" << e << ")" << std::endl;
if (options::bitvectorEagerBitblast()) {
return;
while (!done()) {
TNode fact = get().assertion;
- // checkForLemma(fact);
+ checkForLemma(fact);
for (unsigned i = 0; i < d_subtheories.size(); ++i) {
d_subtheories[i]->assertFact(fact);
}
Node TheoryBV::ppRewrite(TNode t)
{
if (RewriteRule<BitwiseEq>::applies(t)) {
- Node result = RewriteRule<BitwiseEq>::run<false>(t);
+ Node result = RewriteRule<BitwiseEq>::run<false>(t);
return Rewriter::rewrite(result);
}
// if both arguments are constants evaluates
RewriteRule<UltZero>
// a < 0 rewrites to false
- // RewriteRule<UltOne>,
- // RewriteRule<ZeroUlt>
- >::apply(node);
+ >::apply(node);
return RewriteResponse(REWRITE_DONE, resultNode);
}
RewriteResponse TheoryBVRewriter::RewriteSlt(TNode node, bool preregister){
Node resultNode = LinearRewriteStrategy
< RewriteRule < EvalSlt >
- // RewriteRule < SltZero >
- >::apply(node);
+ >::apply(node);
return RewriteResponse(REWRITE_DONE, resultNode);
RewriteRule<UleMax>,
RewriteRule<ZeroUle>,
RewriteRule<UleZero>,
- RewriteRule<UleSelf>//,
- // RewriteRule<UleEliminate>
+ RewriteRule<UleSelf>,
+ RewriteRule<UleEliminate>
>::apply(node);
return RewriteResponse(resultNode == node ? REWRITE_DONE : REWRITE_AGAIN, resultNode);
}
RewriteResponse TheoryBVRewriter::RewriteSle(TNode node, bool preregister){
Node resultNode = LinearRewriteStrategy
- < RewriteRule <EvalSle>//,
- // RewriteRule <SleEliminate>
+ < RewriteRule <EvalSle>,
+ RewriteRule <SleEliminate>
>::apply(node);
return RewriteResponse(resultNode == node? REWRITE_DONE : REWRITE_AGAIN, resultNode);
}