diff options
author | Aina Niemetz <aina.niemetz@gmail.com> | 2019-05-15 13:29:00 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-15 13:29:00 -0700 |
commit | ee9fd3e11b761bddfc1042ddf735be152f400a43 (patch) | |
tree | 54399961b4459cb33413116c38915854a8c79ede /src/options/options_handler.cpp | |
parent | f2d113cf3cbb0f4966a7c909b9cd2c14aa753eb1 (diff) |
BV: Do not enable abstraction when eager bit-blasting by default. (#3001)
Diffstat (limited to 'src/options/options_handler.cpp')
-rw-r--r-- | src/options/options_handler.cpp | 51 |
1 files changed, 30 insertions, 21 deletions
diff --git a/src/options/options_handler.cpp b/src/options/options_handler.cpp index 7a4967de5..2a59ace11 100644 --- a/src/options/options_handler.cpp +++ b/src/options/options_handler.cpp @@ -1298,26 +1298,34 @@ eager\n\ theory::bv::BitblastMode OptionsHandler::stringToBitblastMode( std::string option, std::string optarg) { - if(optarg == "lazy") { - if (!options::bitvectorPropagate.wasSetByUser()) { + if (optarg == "lazy") + { + if (!options::bitvectorPropagate.wasSetByUser()) + { options::bitvectorPropagate.set(true); } - if (!options::bitvectorEqualitySolver.wasSetByUser()) { + if (!options::bitvectorEqualitySolver.wasSetByUser()) + { options::bitvectorEqualitySolver.set(true); } - if (!options::bitvectorEqualitySlicer.wasSetByUser()) { - if (options::incrementalSolving() || - options::produceModels()) { + if (!options::bitvectorEqualitySlicer.wasSetByUser()) + { + if (options::incrementalSolving() || options::produceModels()) + { options::bitvectorEqualitySlicer.set(theory::bv::BITVECTOR_SLICER_OFF); - } else { + } + else + { options::bitvectorEqualitySlicer.set(theory::bv::BITVECTOR_SLICER_AUTO); } } - if (!options::bitvectorInequalitySolver.wasSetByUser()) { + if (!options::bitvectorInequalitySolver.wasSetByUser()) + { options::bitvectorInequalitySolver.set(true); } - if (!options::bitvectorAlgebraicSolver.wasSetByUser()) { + if (!options::bitvectorAlgebraicSolver.wasSetByUser()) + { options::bitvectorAlgebraicSolver.set(true); } if (options::bvSatSolver() != theory::bv::SAT_SOLVER_MINISAT) @@ -1325,23 +1333,24 @@ theory::bv::BitblastMode OptionsHandler::stringToBitblastMode( throwLazyBBUnsupported(options::bvSatSolver()); } return theory::bv::BITBLAST_MODE_LAZY; - } else if(optarg == "eager") { - if (!options::bitvectorToBool.wasSetByUser()) { + } + else if (optarg == "eager") + { + if (!options::bitvectorToBool.wasSetByUser()) + { options::bitvectorToBool.set(true); } - - if (!options::bvAbstraction.wasSetByUser() && - !options::skolemizeArguments.wasSetByUser()) { - options::bvAbstraction.set(true); - options::skolemizeArguments.set(true); - } return theory::bv::BITBLAST_MODE_EAGER; - } else if(optarg == "help") { + } + else if (optarg == "help") + { puts(s_bitblastingModeHelp.c_str()); exit(1); - } else { - throw OptionException(std::string("unknown option for --bitblast: `") + - optarg + "'. Try --bitblast=help."); + } + else + { + throw OptionException(std::string("unknown option for --bitblast: `") + + optarg + "'. Try --bitblast=help."); } } |