summaryrefslogtreecommitdiff
path: root/src/theory/bv/eager_bitblaster.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/bv/eager_bitblaster.cpp')
-rw-r--r--src/theory/bv/eager_bitblaster.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/theory/bv/eager_bitblaster.cpp b/src/theory/bv/eager_bitblaster.cpp
index 710e25345..f8317cf15 100644
--- a/src/theory/bv/eager_bitblaster.cpp
+++ b/src/theory/bv/eager_bitblaster.cpp
@@ -2,9 +2,9 @@
/*! \file eager_bitblaster.cpp
** \verbatim
** Top contributors (to current version):
- ** Liana Hadarean, Tim King, Guy Katz
+ ** Liana Hadarean, Tim King, Aina Niemetz
** This file is part of the CVC4 project.
- ** Copyright (c) 2009-2017 by the authors listed in the file AUTHORS
+ ** Copyright (c) 2009-2018 by the authors listed in the file AUTHORS
** in the top-level source directory) and their institutional affiliations.
** All rights reserved. See the file COPYING in the top-level source
** directory for licensing information.\endverbatim
@@ -88,10 +88,12 @@ void EagerBitblaster::bbFormula(TNode node) {
* @param node the atom to be bitblasted
*
*/
-void EagerBitblaster::bbAtom(TNode node) {
+void EagerBitblaster::bbAtom(TNode node)
+{
node = node.getKind() == kind::NOT ? node[0] : node;
if (node.getKind() == kind::BITVECTOR_BITOF) return;
- if (hasBBAtom(node)) {
+ if (hasBBAtom(node))
+ {
return;
}
@@ -104,17 +106,19 @@ void EagerBitblaster::bbAtom(TNode node) {
? d_atomBBStrategies[normalized.getKind()](normalized, this)
: normalized;
- if (!options::proof()) {
+ if (!options::proof())
+ {
atom_bb = Rewriter::rewrite(atom_bb);
}
// asserting that the atom is true iff the definition holds
- Node atom_definition = utils::mkNode(kind::EQUAL, node, atom_bb);
+ Node atom_definition =
+ NodeManager::currentNM()->mkNode(kind::EQUAL, node, atom_bb);
AlwaysAssert(options::bitblastMode() == theory::bv::BITBLAST_MODE_EAGER);
storeBBAtom(node, atom_bb);
- d_cnfStream->convertAndAssert(atom_definition, false, false, RULE_INVALID,
- TNode::null());
+ d_cnfStream->convertAndAssert(
+ atom_definition, false, false, RULE_INVALID, TNode::null());
}
void EagerBitblaster::storeBBAtom(TNode atom, Node atom_bb) {
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback