summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/options_handlers.h
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2014-11-16 16:38:50 +0100
committerajreynol <andrew.j.reynolds@gmail.com>2014-11-16 16:38:50 +0100
commitd8da3b13bc9df7750723cf3da38edc8cb6f67d3d (patch)
tree5eaf5af8346b95c84d41c0feb1e14864c02bf035 /src/theory/quantifiers/options_handlers.h
parent83c0e6c14955e04b3dca56037508e4ceb6691f10 (diff)
Add term db mode. Minor changes to quantifiers rewriter: split ITE's where equality resolution is possible on condition, pull nested quantifiers from ITE branches. Minor cleanup.
Diffstat (limited to 'src/theory/quantifiers/options_handlers.h')
-rw-r--r--src/theory/quantifiers/options_handlers.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/theory/quantifiers/options_handlers.h b/src/theory/quantifiers/options_handlers.h
index e00879303..08fcf319d 100644
--- a/src/theory/quantifiers/options_handlers.h
+++ b/src/theory/quantifiers/options_handlers.h
@@ -188,6 +188,16 @@ none \n\
+ Do not enforce fairness. \n\
\n\
";
+static const std::string termDbModeHelp = "\
+Modes for term database, supported by --term-db-mode:\n\
+\n\
+all \n\
++ Consider all terms in the system.\n\
+\n\
+relevant \n\
++ Consider only terms connected to current assertions. \n\
+\n\
+";
inline InstWhenMode stringToInstWhenMode(std::string option, std::string optarg, SmtEngine* smt) throw(OptionException) {
if(optarg == "pre-full") {
@@ -380,6 +390,20 @@ inline CegqiFairMode stringToCegqiFairMode(std::string option, std::string optar
}
}
+inline TermDbMode stringToTermDbMode(std::string option, std::string optarg, SmtEngine* smt) throw(OptionException) {
+ if(optarg == "all" ) {
+ return TERM_DB_ALL;
+ } else if(optarg == "relevant") {
+ return TERM_DB_RELEVANT;
+ } else if(optarg == "help") {
+ puts(termDbModeHelp.c_str());
+ exit(1);
+ } else {
+ throw OptionException(std::string("unknown option for --term-db-mode: `") +
+ optarg + "'. Try --term-db-mode help.");
+ }
+}
+
}/* CVC4::theory::quantifiers namespace */
}/* CVC4::theory namespace */
}/* CVC4 namespace */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback