diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-10-09 21:59:58 +0000 |
---|---|---|
committer | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-10-09 21:59:58 +0000 |
commit | a957f6f97f2e83d29f6c5d66f01e40f588ad95c5 (patch) | |
tree | 8b95b65fad71aab9b0baee4b6bfc976b731f9502 /src/theory/quantifiers/model_builder.cpp | |
parent | dba60e91f02ae9ca3c3126c76d79a09c95f95a45 (diff) |
fixed datatypes rewriter to detect clashes between non-datatype subfields. cleaned up model code, TheoryModel::getValue is now const.
Diffstat (limited to 'src/theory/quantifiers/model_builder.cpp')
-rw-r--r-- | src/theory/quantifiers/model_builder.cpp | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/src/theory/quantifiers/model_builder.cpp b/src/theory/quantifiers/model_builder.cpp index 805d27008..81efa4289 100644 --- a/src/theory/quantifiers/model_builder.cpp +++ b/src/theory/quantifiers/model_builder.cpp @@ -42,33 +42,6 @@ d_qe( qe ), d_curr_model( c, NULL ){ d_considerAxioms = true; } -Node ModelEngineBuilder::chooseRepresentative( TheoryModel* m, Node eqc, bool fullModel ){ - if( fullModel ){ - return TheoryEngineModelBuilder::chooseRepresentative( m, eqc, fullModel ); - }else{ - Assert( m->d_equalityEngine.hasTerm( eqc ) ); - Assert( m->d_equalityEngine.getRepresentative( eqc )==eqc ); - //avoid bad representatives - if( isBadRepresentative( eqc ) ){ - eq::EqClassIterator eqc_i = eq::EqClassIterator( eqc, &m->d_equalityEngine ); - while( !eqc_i.isFinished() ){ - if( !isBadRepresentative( *eqc_i ) ){ - return *eqc_i; - } - ++eqc_i; - } - //otherwise, make new value? - //Message() << "Warning: Bad rep " << eqc << std::endl; - } - return eqc; - } -} - -bool ModelEngineBuilder::isBadRepresentative( Node n ){ - //avoid interpreted symbols - return n.getKind()==SELECT || n.getKind()==APPLY_SELECTOR; -} - void ModelEngineBuilder::processBuildModel( TheoryModel* m, bool fullModel ) { FirstOrderModel* fm = (FirstOrderModel*)m; if( fullModel ){ |