summaryrefslogtreecommitdiff
path: root/src/theory/bv/slicer.cpp
diff options
context:
space:
mode:
authorlianah <lianahady@gmail.com>2013-01-14 21:13:10 -0500
committerlianah <lianahady@gmail.com>2013-01-14 21:13:10 -0500
commit990073166e45c76bad5119d77a9c964ae2deee1f (patch)
tree90b2b640dbd4c2919448db1d174d4e9c3603c9b1 /src/theory/bv/slicer.cpp
parentf8c88fa4b7b9b2d59f48d0e33f1344196a06f5da (diff)
fixed more minor bugs
Diffstat (limited to 'src/theory/bv/slicer.cpp')
-rw-r--r--src/theory/bv/slicer.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/theory/bv/slicer.cpp b/src/theory/bv/slicer.cpp
index 1dbb48eed..e67c0b827 100644
--- a/src/theory/bv/slicer.cpp
+++ b/src/theory/bv/slicer.cpp
@@ -354,7 +354,7 @@ void Slicer::registerSimpleEquality(TNode eq) {
Splinter* s = new Splinter(low -1 , 0);
slice->addSplinter(0, s);
}
- if (high + granularity < size) {
+ if (high != size - 1) {
Splinter* s = new Splinter(size - 1, high + 1);
slice->addSplinter(high+1, s);
}
@@ -427,7 +427,9 @@ bool Slicer::isCoreTerm(TNode node) {
Kind kind = node.getKind();
if (kind != kind::BITVECTOR_EXTRACT &&
kind != kind::BITVECTOR_CONCAT &&
- kind != kind::EQUAL && kind != kind::NOT) {
+ kind != kind::EQUAL && kind != kind::NOT &&
+ node.getMetaKind() != kind::metakind::VARIABLE &&
+ kind != kind::CONST_BITVECTOR) {
d_coreTermCache[node] = false;
return false;
} else {
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback