summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2017-05-05 17:41:18 -0500
committerajreynol <andrew.j.reynolds@gmail.com>2017-05-05 17:41:18 -0500
commitf4b158635255affcafe52c7664fc5de4660c3f83 (patch)
treec22a6b39b7b8137b5ca476188b4d8fad1430f45c /src
parent5ce46e8a6ac10388b7a2032c7d67a81da0edbd5e (diff)
Do not eliminate extended arithmetic symbols when finite model finding is on, add regression.
Diffstat (limited to 'src')
-rw-r--r--src/options/quantifiers_options2
-rw-r--r--src/smt/smt_engine.cpp6
2 files changed, 6 insertions, 2 deletions
diff --git a/src/options/quantifiers_options b/src/options/quantifiers_options
index a5ecc8e72..f15723e08 100644
--- a/src/options/quantifiers_options
+++ b/src/options/quantifiers_options
@@ -54,7 +54,7 @@ option aggressiveMiniscopeQuant --ag-miniscope-quant bool :default false
perform aggressive miniscoping for quantifiers
option elimTautQuant --elim-taut-quant bool :default true
eliminate tautological disjuncts of quantified formulas
-option elimExtArithQuant --elim-ext-arith-quant bool :default true
+option elimExtArithQuant --elim-ext-arith-quant bool :read-write :default true
eliminate extended arithmetic symbols in quantified formulas
option condRewriteQuant --cond-rewrite-quant bool :default true
conditional rewriting of quantified formulas
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp
index 16da6691c..4e75a7937 100644
--- a/src/smt/smt_engine.cpp
+++ b/src/smt/smt_engine.cpp
@@ -1781,11 +1781,15 @@ void SmtEngine::setDefaults() {
if( !options::quantDynamicSplit.wasSetByUser() ){
options::quantDynamicSplit.set( quantifiers::QUANT_DSPLIT_MODE_DEFAULT );
}
+ //do not eliminate extended arithmetic symbols from quantified formulas
+ if( !options::elimExtArithQuant.wasSetByUser() ){
+ options::elimExtArithQuant.set( false );
+ }
if( !options::eMatching.wasSetByUser() ){
options::eMatching.set( options::fmfInstEngine() );
}
if( !options::instWhenMode.wasSetByUser() ){
- //instantiate only on last call FIXME: remove?
+ //instantiate only on last call
if( options::eMatching() ){
options::instWhenMode.set( quantifiers::INST_WHEN_LAST_CALL );
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback