diff options
author | ajreynol <andrew.j.reynolds@gmail.com> | 2015-08-28 13:36:44 +0200 |
---|---|---|
committer | ajreynol <andrew.j.reynolds@gmail.com> | 2015-08-28 13:36:44 +0200 |
commit | 6842b50e9e59c89efc21b83faa541df069b5c333 (patch) | |
tree | 8dad5fc6558728f5945620052caa07cdc77d30bb /src/smt | |
parent | 0ddf1b9c74f2b2a78e0960b710c2edbdc5f8d02d (diff) |
Improvements to sygus, register equivalent terms based on rewrites of original conjecture, set default invariant template mode to post-condition.
Diffstat (limited to 'src/smt')
-rw-r--r-- | src/smt/smt_engine.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp index 498b2ee12..1a9887e93 100644 --- a/src/smt/smt_engine.cpp +++ b/src/smt/smt_engine.cpp @@ -85,6 +85,7 @@ #include "theory/quantifiers/macros.h" #include "theory/quantifiers/fun_def_process.h" #include "theory/quantifiers/quantifiers_rewriter.h" +#include "theory/quantifiers/ce_guided_instantiation.h" #include "theory/quantifiers/options.h" #include "theory/datatypes/options.h" #include "theory/strings/theory_strings_preprocess.h" @@ -3170,6 +3171,13 @@ void SmtEnginePrivate::processAssertions() { Debug("smt") << " d_assertions : " << d_assertions.size() << endl; + if( options::ceGuidedInst() ){ + //register sygus conjecture pre-rewrite (motivated by solution reconstruction) + for (unsigned i = 0; i < d_assertions.size(); ++ i) { + d_smt.d_theoryEngine->getQuantifiersEngine()->getCegInstantiation()->preregisterAssertion( d_assertions[i] ); + } + } + if (options::bitblastMode() == theory::bv::BITBLAST_MODE_EAGER && !d_smt.d_logic.isPure(THEORY_BV)) { throw ModalException("Eager bit-blasting does not currently support theory combination. " |