diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-10-31 00:54:24 +0000 |
---|---|---|
committer | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-10-31 00:54:24 +0000 |
commit | f40d0a7cc8d6af511cc0817caf8df3296a59f380 (patch) | |
tree | a79f142c5b6fbeaec34978f8da2b2db308a33e79 /src/theory/quantifiers/inst_match.cpp | |
parent | 5b4c416608bda1df62e1ffe7131648a89882ddc7 (diff) |
cleaning up some of the equality query stuff, implemented a new representative selection strategy for quantifier instantiation
Diffstat (limited to 'src/theory/quantifiers/inst_match.cpp')
-rw-r--r-- | src/theory/quantifiers/inst_match.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/theory/quantifiers/inst_match.cpp b/src/theory/quantifiers/inst_match.cpp index 36f265c30..4a89a4dd3 100644 --- a/src/theory/quantifiers/inst_match.cpp +++ b/src/theory/quantifiers/inst_match.cpp @@ -91,7 +91,7 @@ void InstMatch::debugPrint( const char* c ){ // Debug( c ) << std::endl; //} } - +/* void InstMatch::makeComplete( Node f, QuantifiersEngine* qe ){ for( size_t i=0; i<f[0].getNumChildren(); i++ ){ Node ic = qe->getTermDatabase()->getInstantiationConstant( f, i ); @@ -113,13 +113,15 @@ void InstMatch::makeInternal( QuantifiersEngine* qe ){ } } } - +*/ void InstMatch::makeRepresentative( QuantifiersEngine* qe ){ for( std::map< Node, Node >::iterator it = d_map.begin(); it != d_map.end(); ++it ){ - d_map[ it->first ] = qe->getEqualityQuery()->getInternalRepresentative( it->second ); - if( options::cbqi() && it->second.hasAttribute(InstConstantAttribute()) ){ - d_map[ it->first ] = qe->getTermDatabase()->getFreeVariableForInstConstant( it->first ); + if( qe->getEqualityQuery()->getEngine()->hasTerm( it->second ) ){ + d_map[ it->first ] = qe->getEqualityQuery()->getEngine()->getRepresentative( it->second ); } + //if( options::cbqi() && it->second.hasAttribute(InstConstantAttribute()) ){ + // d_map[ it->first ] = qe->getTermDatabase()->getFreeVariableForInstConstant( it->first ); + //} } } |