summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/instantiation_engine.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2013-06-17 15:31:28 -0500
committerAndrew Reynolds <andrew.j.reynolds@gmail.com>2013-06-17 15:31:38 -0500
commit66ee6c6472264be842f4e80a7106399d7f51d28a (patch)
tree55c6adcdcadc41c7b34d46eea7081d8bdc2eb7a0 /src/theory/quantifiers/instantiation_engine.cpp
parent8936ca3ab2a1b9e3612e08a73542f7a288ee1df8 (diff)
Make --var-elim-quant true by default. Add rewrite engine to quantifiers module.
Diffstat (limited to 'src/theory/quantifiers/instantiation_engine.cpp')
-rw-r--r--src/theory/quantifiers/instantiation_engine.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/theory/quantifiers/instantiation_engine.cpp b/src/theory/quantifiers/instantiation_engine.cpp
index 77df69456..38ee4a57f 100644
--- a/src/theory/quantifiers/instantiation_engine.cpp
+++ b/src/theory/quantifiers/instantiation_engine.cpp
@@ -197,6 +197,7 @@ void InstantiationEngine::check( Theory::Effort e ){
<< d_quantEngine->getModel()->getNumAssertedQuantifiers() << std::endl;
for( int i=0; i<(int)d_quantEngine->getModel()->getNumAssertedQuantifiers(); i++ ){
Node n = d_quantEngine->getModel()->getAssertedQuantifier( i );
+ //it is not active if we have found the skolemized negation is unsat
if( options::cbqi() && hasAddedCbqiLemma( n ) ){
Node cel = d_quantEngine->getTermDatabase()->getCounterexampleLiteral( n );
bool active, value;
@@ -226,6 +227,9 @@ void InstantiationEngine::check( Theory::Effort e ){
Debug("quantifiers") << ", ce is asserted";
}
Debug("quantifiers") << std::endl;
+ //it is not active if it corresponds to a rewrite rule: we will process in rewrite engine
+ }else if( n.hasAttribute(QRewriteRuleAttribute()) ){
+ d_quant_active[n] = false;
}else{
d_quant_active[n] = true;
quantActive = true;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback