diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2017-10-05 07:12:47 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-05 07:12:47 -0500 |
commit | f56f46f5bb5845cff0c329926f51a0377379365b (patch) | |
tree | ff22d91db4f2265b17634b3797cc724ee079f410 /src/theory/quantifiers/model_builder.cpp | |
parent | 3c5c0c2287203b61acc94bb83fac1b91ae290007 (diff) |
Ho model (#1120)
* Update model construction for higher order. If HO_APPLY terms are present for a function, we use a curried (tree) model construction to avoid exponential size model representations for function definitions.
* Update comments.
* Change terminology in comment.
* Improve comments.
Diffstat (limited to 'src/theory/quantifiers/model_builder.cpp')
-rw-r--r-- | src/theory/quantifiers/model_builder.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/theory/quantifiers/model_builder.cpp b/src/theory/quantifiers/model_builder.cpp index 41c68a117..2b7ba7ac9 100644 --- a/src/theory/quantifiers/model_builder.cpp +++ b/src/theory/quantifiers/model_builder.cpp @@ -275,7 +275,8 @@ bool QModelBuilderIG::processBuildModel( TheoryModel* m ) { it->second.update( fm ); Trace("model-func") << "QModelBuilder: Make function value from tree " << it->first << std::endl; //construct function values - fm->d_uf_models[ it->first ] = it->second.getFunctionValue( "$x" ); + Node f_def = it->second.getFunctionValue( "$x" ); + fm->assignFunctionDefinition( it->first, f_def ); } Assert( d_addedLemmas==0 ); return TheoryEngineModelBuilder::processBuildModel( m ); |