summaryrefslogtreecommitdiff
path: root/src/theory/bv/bitblaster.cpp
diff options
context:
space:
mode:
authorDejan Jovanović <dejan.jovanovic@gmail.com>2012-06-14 01:08:11 +0000
committerDejan Jovanović <dejan.jovanovic@gmail.com>2012-06-14 01:08:11 +0000
commitdd713fdbc16b07adc8011dea09b53fb3bc168662 (patch)
treecc58788ed58fd86c5aaa58c0fafa2bbb0f8b6567 /src/theory/bv/bitblaster.cpp
parent1267706e0c508ada17d75c07c4606eb108ae5309 (diff)
* removing rewriteEquality from the rewriter
* theories now get either an assertion from the SAT solver (normalized) or an (dis-)equality between two shared terms that is non-normalized
Diffstat (limited to 'src/theory/bv/bitblaster.cpp')
-rw-r--r--src/theory/bv/bitblaster.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/theory/bv/bitblaster.cpp b/src/theory/bv/bitblaster.cpp
index 5bb906841..a9c6d2676 100644
--- a/src/theory/bv/bitblaster.cpp
+++ b/src/theory/bv/bitblaster.cpp
@@ -94,17 +94,15 @@ void Bitblaster::bbAtom(TNode node) {
BVDebug("bitvector-bitblast") << "Bitblasting node " << node <<"\n";
++d_statistics.d_numAtoms;
// the bitblasted definition of the atom
- Node atom_bb = d_atomBBStrategies[node.getKind()](node, this);
+ Node atom_bb = Rewriter::rewrite(d_atomBBStrategies[node.getKind()](node, this));
// asserting that the atom is true iff the definition holds
Node atom_definition = mkNode(kind::IFF, node, atom_bb);
- // do boolean simplifications if possible
- Node rewritten = Rewriter::rewrite(atom_definition);
if (!Options::current()->bitvectorEagerBitblast) {
- d_cnfStream->convertAndAssert(rewritten, true, false);
+ d_cnfStream->convertAndAssert(atom_definition, true, false);
d_bitblastedAtoms.insert(node);
} else {
- d_bvOutput->lemma(rewritten, false);
+ d_bvOutput->lemma(atom_definition, false);
}
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback