summaryrefslogtreecommitdiff
path: root/src/theory/theory_engine.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2020-08-21 08:39:25 -0500
committerGitHub <noreply@github.com>2020-08-21 08:39:25 -0500
commit971a6ac1ccdeb52572565b6b47afedb9eccb7833 (patch)
tree119b7a9cb0e174daf4d730165c6476330972d534 /src/theory/theory_engine.cpp
parent01a9d18f2b2ce20cf7a0672a865cf0c2873d6f6a (diff)
Remove BV equality slicer (#4928)
This class is not used based on our coverage tests (although it appears to be possibly enabled based on non-standard runtime checking of assertions), and uses the equality engine in a highly nonstandard way that will be a burden to the new standardization of equality engine in theory solvers. FYI @aniemetz @mpreiner
Diffstat (limited to 'src/theory/theory_engine.cpp')
-rw-r--r--src/theory/theory_engine.cpp44
1 files changed, 0 insertions, 44 deletions
diff --git a/src/theory/theory_engine.cpp b/src/theory/theory_engine.cpp
index f8694e760..7431b26e4 100644
--- a/src/theory/theory_engine.cpp
+++ b/src/theory/theory_engine.cpp
@@ -1777,50 +1777,6 @@ void TheoryEngine::conflict(TNode conflict, TheoryId theoryId) {
});
}
-void TheoryEngine::staticInitializeBVOptions(
- const std::vector<Node>& assertions)
-{
- bool useSlicer = true;
- if (options::bitvectorEqualitySlicer() == options::BvSlicerMode::ON)
- {
- if (!d_logicInfo.isPure(theory::THEORY_BV) || d_logicInfo.isQuantified())
- throw ModalException(
- "Slicer currently only supports pure QF_BV formulas. Use "
- "--bv-eq-slicer=off");
- if (options::incrementalSolving())
- throw ModalException(
- "Slicer does not currently support incremental mode. Use "
- "--bv-eq-slicer=off");
- if (options::produceModels())
- throw ModalException(
- "Slicer does not currently support model generation. Use "
- "--bv-eq-slicer=off");
- }
- else if (options::bitvectorEqualitySlicer() == options::BvSlicerMode::OFF)
- {
- return;
- }
- else if (options::bitvectorEqualitySlicer() == options::BvSlicerMode::AUTO)
- {
- if ((!d_logicInfo.isPure(theory::THEORY_BV) || d_logicInfo.isQuantified())
- || options::incrementalSolving()
- || options::produceModels())
- return;
-
- bv::utils::TNodeBoolMap cache;
- for (unsigned i = 0; i < assertions.size(); ++i)
- {
- useSlicer = useSlicer && bv::utils::isCoreTerm(assertions[i], cache);
- }
- }
-
- if (useSlicer)
- {
- bv::TheoryBV* bv_theory = (bv::TheoryBV*)d_theoryTable[THEORY_BV];
- bv_theory->enableCoreTheorySlicer();
- }
-}
-
SharedTermsDatabase* TheoryEngine::getSharedTermsDatabase()
{
return &d_sharedTerms;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback