diff options
author | Morgan Deters <mdeters@gmail.com> | 2012-05-17 20:45:32 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2012-05-17 20:45:32 +0000 |
commit | f49378f9acb65b78ab29d89d37c644d0b203ebae (patch) | |
tree | f4a1a8a3c4cc2212ffba3c2e83c22367f77ef4d9 /src | |
parent | 1703b160511396cd23be5203d9af86641b45766e (diff) |
Fixing an issue with LogicInfo::isPure() that turned off simplification in QF_UF and maybe others
Diffstat (limited to 'src')
-rw-r--r-- | src/theory/logic_info.h | 7 |
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 |