summaryrefslogtreecommitdiff
path: root/src/theory/bv
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2016-06-17 15:55:56 -0500
committerajreynol <andrew.j.reynolds@gmail.com>2016-06-17 15:57:28 -0500
commit1a2547995acc5a98c8969e628ac5e1c45b0efe94 (patch)
tree0d9abd19ba7b3b742da3e745da00c0457237f84b /src/theory/bv
parent0348b525a951a8709f9dc4b5757ce0bcb48a9472 (diff)
Support for separation logic. Enable cbqi by default for pure BV.
Diffstat (limited to 'src/theory/bv')
-rw-r--r--src/theory/bv/bv_subtheory_algebraic.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/theory/bv/bv_subtheory_algebraic.cpp b/src/theory/bv/bv_subtheory_algebraic.cpp
index 00d337395..b7e973928 100644
--- a/src/theory/bv/bv_subtheory_algebraic.cpp
+++ b/src/theory/bv/bv_subtheory_algebraic.cpp
@@ -714,7 +714,8 @@ void AlgebraicSolver::collectModelInfo(TheoryModel* model, bool fullModel) {
Assert (!value.isNull() || !fullModel);
// may be a shared term that did not appear in the current assertions
- if (!value.isNull()) {
+ // AJR: need to check whether already in map for cases where collectModelInfo is called multiple times in the same context
+ if (!value.isNull() && !d_modelMap->hasSubstitution(var)) {
Debug("bitvector-model") << " " << var << " => " << value << "\n";
Assert (value.getKind() == kind::CONST_BITVECTOR);
d_modelMap->addSubstitution(var, value);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback