summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/quant_conflict_find.cpp
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2015-11-04 10:41:49 +0100
committerajreynol <andrew.j.reynolds@gmail.com>2015-11-04 10:42:01 +0100
commitf9e109b0ac12ffbfd167a19dcd60f16241a0542c (patch)
tree07547a834d60cbbbd75c91e1695c5518774c813e /src/theory/quantifiers/quant_conflict_find.cpp
parent5fae5ff49bfc9c96c03c52f5e2a5caa52ac40d03 (diff)
Better combination of UF with cbqi, refactor quantifiers intialization.
Diffstat (limited to 'src/theory/quantifiers/quant_conflict_find.cpp')
-rw-r--r--src/theory/quantifiers/quant_conflict_find.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/theory/quantifiers/quant_conflict_find.cpp b/src/theory/quantifiers/quant_conflict_find.cpp
index a1af1313d..26b598413 100644
--- a/src/theory/quantifiers/quant_conflict_find.cpp
+++ b/src/theory/quantifiers/quant_conflict_find.cpp
@@ -624,7 +624,7 @@ bool QuantInfo::completeMatch( QuantConflictFind * p, std::vector< int >& assign
}
if( !d_unassigned.empty() && ( success || doContinue ) ){
- Trace("qcf-check") << "Assign to unassigned..." << std::endl;
+ Trace("qcf-check") << "Assign to unassigned (" << d_unassigned.size() << ")..." << std::endl;
do {
if( doFail ){
Trace("qcf-check-unassign") << "Failure, try again..." << std::endl;
@@ -702,6 +702,7 @@ bool QuantInfo::completeMatch( QuantConflictFind * p, std::vector< int >& assign
}
}
}while( success && isMatchSpurious( p ) );
+ Trace("qcf-check") << "done assigning." << std::endl;
}
if( success ){
for( unsigned i=0; i<d_unassigned.size(); i++ ){
@@ -2113,7 +2114,9 @@ void QuantConflictFind::computeRelevantEqr() {
itt->second.push_back( r );
}
}else{
- d_eqcs[rtn].push_back( r );
+ if( !options::cbqi() || !TermDb::hasInstConstAttr( r ) ){
+ d_eqcs[rtn].push_back( r );
+ }
}
}
++eqcs_i;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback