summaryrefslogtreecommitdiff
path: root/src/theory/logic_info.h
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-05-17 20:45:32 +0000
committerMorgan Deters <mdeters@gmail.com>2012-05-17 20:45:32 +0000
commitf49378f9acb65b78ab29d89d37c644d0b203ebae (patch)
treef4a1a8a3c4cc2212ffba3c2e83c22367f77ef4d9 /src/theory/logic_info.h
parent1703b160511396cd23be5203d9af86641b45766e (diff)
Fixing an issue with LogicInfo::isPure() that turned off simplification in QF_UF and maybe others
Diffstat (limited to 'src/theory/logic_info.h')
-rw-r--r--src/theory/logic_info.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/theory/logic_info.h b/src/theory/logic_info.h
index 560b72509..d5b8be58d 100644
--- a/src/theory/logic_info.h
+++ b/src/theory/logic_info.h
@@ -110,10 +110,11 @@ public:
* use "isPure(theory) && !isQuantified()".
*/
bool isPure(theory::TheoryId theory) const {
- // the third conjuct is really just to rule out the misleading case where you ask
- // isPure(THEORY_BOOL) and get true even in e.g. QF_LIA
+ // the third and fourth conjucts are really just to rule out the misleading
+ // case where you ask isPure(THEORY_BOOL) and get true even in e.g. QF_LIA
return isTheoryEnabled(theory) && !isSharingEnabled() &&
- ( !isTrueTheory(theory) || d_sharingTheories == 1 );
+ ( !isTrueTheory(theory) || d_sharingTheories == 1 ) &&
+ ( isTrueTheory(theory) || d_sharingTheories == 0 );
}
// these are for arithmetic
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback