From 20d266f9e641062004633e24e74878791be2b919 Mon Sep 17 00:00:00 2001 From: Mathias Preiner Date: Tue, 16 Feb 2021 16:36:57 -0800 Subject: Add bit-level propagation support to BV bitblast solver. (#5906) This commit adds support for bit-level propagation for the BV bitblast solver to quickly detect conflicts on effort levels != FULL. Bit-level propagation for the bitblast solver is by default disabled for now. Further, bit-blasting of facts is now handled more lazily with a bit-blast queue. --- src/smt/set_defaults.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/smt') diff --git a/src/smt/set_defaults.cpp b/src/smt/set_defaults.cpp index d18b30430..93196fde4 100644 --- a/src/smt/set_defaults.cpp +++ b/src/smt/set_defaults.cpp @@ -132,6 +132,12 @@ void setDefaults(LogicInfo& logic, bool isInternalSubsolver) options::bvLazyRewriteExtf.set(false); } + /* Disable bit-level propagation by default for the BITBLAST solver. */ + if (options::bvSolver() == options::BVSolver::BITBLAST) + { + options::bitvectorPropagate.set(false); + } + if (options::solveIntAsBV() > 0) { // not compatible with incremental -- cgit v1.2.3