diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2013-06-28 15:46:13 -0500 |
---|---|---|
committer | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2013-06-28 15:46:20 -0500 |
commit | a23c5715ce7cd279d83e75b232fd24b5c53032ba (patch) | |
tree | d61ea9030f7d50995942d77e912a07c656d6807a /src/theory/quantifiers/model_engine.cpp | |
parent | 3355cd887a424ace6bc7b51e63f8adc90d24e3a9 (diff) |
More bug fixes for interval models.
Diffstat (limited to 'src/theory/quantifiers/model_engine.cpp')
-rw-r--r-- | src/theory/quantifiers/model_engine.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/theory/quantifiers/model_engine.cpp b/src/theory/quantifiers/model_engine.cpp index c0fe23b94..0678e230f 100644 --- a/src/theory/quantifiers/model_engine.cpp +++ b/src/theory/quantifiers/model_engine.cpp @@ -55,6 +55,7 @@ void ModelEngine::check( Theory::Effort e ){ clSet = double(clock())/double(CLOCKS_PER_SEC); } ++(d_statistics.d_inst_rounds); + bool buildAtFullModel = d_builder->optBuildAtFullModel(); //two effort levels: first try exhaustive instantiation without axioms, then with. int startEffort = ( !fm->isAxiomAsserted() || options::axiomInstMode()==AXIOM_INST_MODE_DEFAULT ) ? 1 : 0; for( int effort=startEffort; effort<2; effort++ ){ @@ -66,7 +67,7 @@ void ModelEngine::check( Theory::Effort e ){ Trace("model-engine-debug") << "Build model..." << std::endl; d_builder->d_considerAxioms = effort>=1; d_builder->d_addedLemmas = 0; - d_builder->buildModel( fm, false ); + d_builder->buildModel( fm, buildAtFullModel ); addedLemmas += (int)d_builder->d_addedLemmas; //if builder has lemmas, add and return if( addedLemmas==0 ){ @@ -103,7 +104,7 @@ void ModelEngine::check( Theory::Effort e ){ //CVC4 will answer SAT or unknown Trace("fmf-consistent") << std::endl; debugPrint("fmf-consistent"); - if( options::produceModels() ){ + if( options::produceModels() && !buildAtFullModel ){ // finish building the model d_builder->buildModel( fm, true ); } |