1 |
|
/****************************************************************************** |
2 |
|
* Top contributors (to current version): |
3 |
|
* Tim King, Gereon Kremer, Andrew Reynolds |
4 |
|
* |
5 |
|
* This file is part of the cvc5 project. |
6 |
|
* |
7 |
|
* Copyright (c) 2009-2021 by the authors listed in the file AUTHORS |
8 |
|
* in the top-level source directory and their institutional affiliations. |
9 |
|
* All rights reserved. See the file COPYING in the top-level source |
10 |
|
* directory for licensing information. |
11 |
|
* **************************************************************************** |
12 |
|
* |
13 |
|
* Global (command-line, set-option, ...) parameters for SMT. |
14 |
|
*/ |
15 |
|
|
16 |
|
#include "options/options_public.h" |
17 |
|
|
18 |
|
#if !defined(_BSD_SOURCE) && defined(__MINGW32__) && !defined(__MINGW64__) |
19 |
|
// force use of optreset; mingw32 croaks on argv-switching otherwise |
20 |
|
#include "base/cvc5config.h" |
21 |
|
#define _BSD_SOURCE |
22 |
|
#undef HAVE_DECL_OPTRESET |
23 |
|
#define HAVE_DECL_OPTRESET 1 |
24 |
|
#define CVC5_IS_NOT_REALLY_BSD |
25 |
|
#endif /* !_BSD_SOURCE && __MINGW32__ && !__MINGW64__ */ |
26 |
|
|
27 |
|
#ifdef __MINGW64__ |
28 |
|
extern int optreset; |
29 |
|
#endif /* __MINGW64__ */ |
30 |
|
|
31 |
|
#include <getopt.h> |
32 |
|
|
33 |
|
// clean up |
34 |
|
#ifdef CVC5_IS_NOT_REALLY_BSD |
35 |
|
# undef _BSD_SOURCE |
36 |
|
#endif /* CVC5_IS_NOT_REALLY_BSD */ |
37 |
|
|
38 |
|
#include "base/check.h" |
39 |
|
#include "base/output.h" |
40 |
|
#include "options/didyoumean.h" |
41 |
|
#include "options/options_handler.h" |
42 |
|
#include "options/options_listener.h" |
43 |
|
#include "options/options.h" |
44 |
|
#include "options/uf_options.h" |
45 |
|
#include "options/arith_options.h" |
46 |
|
#include "options/arrays_options.h" |
47 |
|
#include "options/base_options.h" |
48 |
|
#include "options/booleans_options.h" |
49 |
|
#include "options/builtin_options.h" |
50 |
|
#include "options/bv_options.h" |
51 |
|
#include "options/datatypes_options.h" |
52 |
|
#include "options/decision_options.h" |
53 |
|
#include "options/expr_options.h" |
54 |
|
#include "options/fp_options.h" |
55 |
|
#include "options/main_options.h" |
56 |
|
#include "options/parser_options.h" |
57 |
|
#include "options/printer_options.h" |
58 |
|
#include "options/proof_options.h" |
59 |
|
#include "options/prop_options.h" |
60 |
|
#include "options/quantifiers_options.h" |
61 |
|
#include "options/sep_options.h" |
62 |
|
#include "options/sets_options.h" |
63 |
|
#include "options/smt_options.h" |
64 |
|
#include "options/strings_options.h" |
65 |
|
#include "options/theory_options.h" |
66 |
|
#include "options/uf_options.h" |
67 |
|
|
68 |
|
|
69 |
|
#include <cstring> |
70 |
|
#include <iostream> |
71 |
|
#include <limits> |
72 |
|
|
73 |
|
namespace cvc5::options { |
74 |
|
|
75 |
|
bool getUfHo(const Options& opts) { return opts.uf.ufHo; } |
76 |
|
|
77 |
|
// clang-format off |
78 |
9774 |
static const std::string mostCommonOptionsDescription = |
79 |
|
"\ |
80 |
|
Most commonly-used cvc5 options:\n" |
81 |
|
" --incremental | -i enable incremental solving [*]\n" |
82 |
|
" --lang=LANG | --input-language=LANG | -L LANG\n" |
83 |
|
" force input language (default is \"auto\"; see --lang\n" |
84 |
|
" help)\n" |
85 |
|
" --output-lang=LANG | --output-language=LANG\n" |
86 |
|
" force output language (default is \"auto\"; see\n" |
87 |
|
" --output-lang help)\n" |
88 |
|
" --quiet | -q decrease verbosity (may be repeated)\n" |
89 |
|
" --rlimit-per=N | --reproducible-resource-limit=N\n" |
90 |
|
" set resource limit per query\n" |
91 |
|
" --rlimit=N set resource limit\n" |
92 |
|
" --stats give statistics on exit [*]\n" |
93 |
|
" --tlimit-per=MS set time limit per query in milliseconds\n" |
94 |
|
" --tlimit=MS set time limit in milliseconds of wall clock time\n" |
95 |
|
" --verbose | -v increase verbosity (may be repeated)\n" |
96 |
|
" --copyright show cvc5 copyright information\n" |
97 |
|
" --help | -h full command line reference\n" |
98 |
|
" --seed=N | -s N seed for random number generator\n" |
99 |
|
" --show-config show cvc5 static configuration\n" |
100 |
|
" --version | -V identify this cvc5 binary\n" |
101 |
|
" --strict-parsing be less tolerant of non-conforming inputs [*]\n" |
102 |
|
" --dump-to=FILE all dumping goes to FILE (instead of stdout)\n" |
103 |
|
" --dump=MODE dump preprocessed assertions, etc., see --dump=help\n" |
104 |
|
" --produce-assertions keep an assertions list (enables get-assertions\n" |
105 |
|
" command) [*]\n" |
106 |
|
" --produce-models | -m support the get-value and get-model commands [*]\n" |
107 |
|
; |
108 |
|
|
109 |
9774 |
static const std::string optionsDescription = |
110 |
|
mostCommonOptionsDescription + "\n\nAdditional cvc5 options:\n" |
111 |
|
"\nFrom the Arithmetic Theory module:\n" |
112 |
|
" --approx-branch-depth=N\n" |
113 |
|
" maximum branch depth the approximate solver is allowed\n" |
114 |
|
" to take\n" |
115 |
|
" --arith-brab whether to use simple rounding, similar to a unit-cube\n" |
116 |
|
" test, for integers [*]\n" |
117 |
|
" --arith-cong-man (experimental) whether to use the congruence manager\n" |
118 |
|
" when the equality solver is enabled [*]\n" |
119 |
|
" --arith-eq-solver whether to use the equality solver in the theory of\n" |
120 |
|
" arithmetic [*]\n" |
121 |
|
" --arith-no-partial-fun do not use partial function semantics for arithmetic\n" |
122 |
|
" (not SMT LIB compliant) [*]\n" |
123 |
|
" --arith-prop-clauses=N rows shorter than this are propagated as clauses\n" |
124 |
|
" --arith-prop=MODE turns on arithmetic propagation (default is 'old', see\n" |
125 |
|
" --arith-prop=help)\n" |
126 |
|
" --arith-rewrite-equalities\n" |
127 |
|
" turns on the preprocessing rewrite turning equalities\n" |
128 |
|
" into a conjunction of inequalities [*]\n" |
129 |
|
" --collect-pivot-stats collect the pivot history [*]\n" |
130 |
|
" --cut-all-bounded turns on the integer solving step of periodically\n" |
131 |
|
" cutting all integer variables that have both upper and\n" |
132 |
|
" lower bounds [*]\n" |
133 |
|
" --dio-decomps let skolem variables for integer divisibility\n" |
134 |
|
" constraints leak from the dio solver [*]\n" |
135 |
|
" --dio-repeat handle dio solver constraints in mass or one at a time\n" |
136 |
|
" [*]\n" |
137 |
|
" --dio-solver turns on Linear Diophantine Equation solver (Griggio,\n" |
138 |
|
" JSAT 2012) [*]\n" |
139 |
|
" --dio-turns=N turns in a row dio solver cutting gets\n" |
140 |
|
" --error-selection-rule=RULE\n" |
141 |
|
" change the pivot rule for the basic variable (default\n" |
142 |
|
" is 'min', see --pivot-rule help)\n" |
143 |
|
" --fc-penalties turns on degenerate pivot penalties [*]\n" |
144 |
|
" --heuristic-pivots=N the number of times to apply the heuristic pivot rule;\n" |
145 |
|
" if N < 0, this defaults to the number of variables; if\n" |
146 |
|
" this is unset, this is tuned by the logic selection\n" |
147 |
|
" --lemmas-on-replay-failure\n" |
148 |
|
" attempt to use external lemmas if approximate solve\n" |
149 |
|
" integer failed [*]\n" |
150 |
|
" --maxCutsInContext=N maximum cuts in a given context before signalling a\n" |
151 |
|
" restart\n" |
152 |
|
" --miplib-trick turns on the preprocessing step of attempting to infer\n" |
153 |
|
" bounds on miplib problems [*]\n" |
154 |
|
" --miplib-trick-subs=N do substitution for miplib 'tmp' vars if defined in <=\n" |
155 |
|
" N eliminated vars\n" |
156 |
|
" --new-prop use the new row propagation system [*]\n" |
157 |
|
" --nl-cad whether to use the cylindrical algebraic decomposition\n" |
158 |
|
" solver for non-linear arithmetic [*]\n" |
159 |
|
" --nl-cad-initial whether to use the linear model as initial guess for\n" |
160 |
|
" the cylindrical algebraic decomposition solver [*]\n" |
161 |
|
" --nl-cad-lift=MODE choose the CAD lifting mode (EXPERTS only)\n" |
162 |
|
" --nl-cad-proj=MODE choose the CAD projection operator (EXPERTS only)\n" |
163 |
|
" --nl-ext-ent-conf check for entailed conflicts in non-linear solver [*]\n" |
164 |
|
" --nl-ext-factor use factoring inference in non-linear incremental\n" |
165 |
|
" linearization solver [*]\n" |
166 |
|
" --nl-ext-inc-prec whether to increment the precision for irrational\n" |
167 |
|
" function constraints [*]\n" |
168 |
|
" --nl-ext-purify purify non-linear terms at preprocess [*]\n" |
169 |
|
" --nl-ext-rbound use resolution-style inference for inferring new bounds\n" |
170 |
|
" in non-linear incremental linearization solver [*]\n" |
171 |
|
" --nl-ext-rewrite do context-dependent simplification based on rewrites\n" |
172 |
|
" in non-linear solver [*]\n" |
173 |
|
" --nl-ext-split-zero initial splits on zero for all variables [*]\n" |
174 |
|
" --nl-ext-tf-taylor-deg=N\n" |
175 |
|
" initial degree of polynomials for Taylor approximation\n" |
176 |
|
" --nl-ext-tf-tplanes use non-terminating tangent plane strategy for\n" |
177 |
|
" transcendental functions for non-linear incremental\n" |
178 |
|
" linearization solver [*]\n" |
179 |
|
" --nl-ext-tplanes use non-terminating tangent plane strategy for\n" |
180 |
|
" non-linear incremental linearization solver [*]\n" |
181 |
|
" --nl-ext-tplanes-interleave\n" |
182 |
|
" interleave tangent plane strategy for non-linear\n" |
183 |
|
" incremental linearization solver [*]\n" |
184 |
|
" --nl-ext=MODE incremental linearization approach to non-linear\n" |
185 |
|
" --nl-icp whether to use ICP-style propagations for non-linear\n" |
186 |
|
" arithmetic [*]\n" |
187 |
|
" --nl-rlv=MODE choose mode for using relevance of assertions in\n" |
188 |
|
" non-linear arithmetic\n" |
189 |
|
" --pb-rewrites apply pseudo boolean rewrites [*]\n" |
190 |
|
" --pivot-threshold=N sets the number of pivots using --pivot-rule per basic\n" |
191 |
|
" variable per simplex instance before using variable\n" |
192 |
|
" order\n" |
193 |
|
" --pp-assert-max-sub-size=N\n" |
194 |
|
" threshold for substituting an equality in ppAssert\n" |
195 |
|
" --prop-row-length=N sets the maximum row length to be used in propagation\n" |
196 |
|
" --replay-early-close-depth=N\n" |
197 |
|
" multiples of the depths to try to close the approx log\n" |
198 |
|
" eagerly\n" |
199 |
|
" --replay-failure-penalty=N\n" |
200 |
|
" number of solve integer attempts to skips after a\n" |
201 |
|
" numeric failure\n" |
202 |
|
" --replay-lemma-reject-cut=N\n" |
203 |
|
" maximum complexity of any coefficient while outputting\n" |
204 |
|
" replaying cut lemmas\n" |
205 |
|
" --replay-num-err-penalty=N\n" |
206 |
|
" number of solve integer attempts to skips after a\n" |
207 |
|
" numeric failure\n" |
208 |
|
" --replay-reject-cut=N maximum complexity of any coefficient while replaying\n" |
209 |
|
" cuts\n" |
210 |
|
" --replay-soi-major-threshold-pen=N\n" |
211 |
|
" threshold for a major tolerance failure by the\n" |
212 |
|
" approximate solver\n" |
213 |
|
" --replay-soi-major-threshold=T\n" |
214 |
|
" threshold for a major tolerance failure by the\n" |
215 |
|
" approximate solver\n" |
216 |
|
" --replay-soi-minor-threshold-pen=N\n" |
217 |
|
" threshold for a minor tolerance failure by the\n" |
218 |
|
" approximate solver\n" |
219 |
|
" --replay-soi-minor-threshold=T\n" |
220 |
|
" threshold for a minor tolerance failure by the\n" |
221 |
|
" approximate solver\n" |
222 |
|
" --restrict-pivots have a pivot cap for simplex at effort levels below\n" |
223 |
|
" fullEffort [*]\n" |
224 |
|
" --revert-arith-models-on-unsat\n" |
225 |
|
" revert the arithmetic model to a known safe model on\n" |
226 |
|
" unsat if one is cached [*]\n" |
227 |
|
" --rr-turns=N round robin turn\n" |
228 |
|
" --se-solve-int attempt to use the approximate solve integer method on\n" |
229 |
|
" standard effort [*]\n" |
230 |
|
" --simplex-check-period=N\n" |
231 |
|
" the number of pivots to do in simplex before rechecking\n" |
232 |
|
" for a conflict on all variables\n" |
233 |
|
" --soi-qe use quick explain to minimize the sum of infeasibility\n" |
234 |
|
" conflicts [*]\n" |
235 |
|
" --standard-effort-variable-order-pivots=N\n" |
236 |
|
" limits the number of pivots in a single invocation of\n" |
237 |
|
" check() at a non-full effort level using Bland's pivot\n" |
238 |
|
" rule (EXPERTS only)\n" |
239 |
|
" --unate-lemmas=MODE determines which lemmas to add before solving (default\n" |
240 |
|
" is 'all', see --unate-lemmas=help)\n" |
241 |
|
" --use-approx attempt to use an approximate solver [*]\n" |
242 |
|
" --use-fcsimplex use focusing and converging simplex (FMCAD 2013\n" |
243 |
|
" submission) [*]\n" |
244 |
|
" --use-soi use sum of infeasibility simplex (FMCAD 2013\n" |
245 |
|
" submission) [*]\n" |
246 |
|
"\nFrom the Arrays Theory module:\n" |
247 |
|
" --arrays-config=N set different array option configurations - for\n" |
248 |
|
" developers only\n" |
249 |
|
" --arrays-eager-index turn on eager index splitting for generated array\n" |
250 |
|
" lemmas [*]\n" |
251 |
|
" --arrays-eager-lemmas turn on eager lemma generation for arrays [*]\n" |
252 |
|
" --arrays-exp enable experimental features in the theory of arrays\n" |
253 |
|
" [*]\n" |
254 |
|
" --arrays-model-based turn on model-based array solver [*]\n" |
255 |
|
" --arrays-optimize-linear\n" |
256 |
|
" turn on optimization for linear array terms (see de\n" |
257 |
|
" Moura FMCAD 09 arrays paper) [*]\n" |
258 |
|
" --arrays-prop=N propagation effort for arrays: 0 is none, 1 is some, 2\n" |
259 |
|
" is full\n" |
260 |
|
" --arrays-reduce-sharing\n" |
261 |
|
" use model information to reduce size of care graph for\n" |
262 |
|
" arrays [*]\n" |
263 |
|
" --arrays-weak-equiv use algorithm from Christ/Hoenicke (SMT 2014) [*]\n" |
264 |
|
"\nFrom the Base module:\n" |
265 |
|
" --debug=TAG | -d TAG debug something (e.g. -d arith), can repeat\n" |
266 |
|
" --output=TAG | -o TAG Enable output tag.\n" |
267 |
|
" --parse-only exit after parsing input [*]\n" |
268 |
|
" --preprocess-only exit after preprocessing input [*]\n" |
269 |
|
" --print-success print the \"success\" output required of SMT-LIBv2 [*]\n" |
270 |
|
" --rweight=VAL=N set a single resource weight (EXPERTS only)\n" |
271 |
|
" --stats-all print unchanged (defaulted) statistics as well (EXPERTS\n" |
272 |
|
" only) [*]\n" |
273 |
|
" --stats-every-query in incremental mode, print stats after every\n" |
274 |
|
" satisfiability or validity query [*]\n" |
275 |
|
" --stats-expert print expert (non-public) statistics as well (EXPERTS\n" |
276 |
|
" only) [*]\n" |
277 |
|
" --trace=TAG | -t TAG trace something (e.g. -t pushpop), can repeat\n" |
278 |
|
" --verbosity=N the verbosity level of cvc5\n" |
279 |
|
"\nFrom the Bitvector Theory module:\n" |
280 |
|
" --bitblast-aig bitblast by first converting to AIG (implies\n" |
281 |
|
" --bitblast=eager) [*]\n" |
282 |
|
" --bitblast=MODE choose bitblasting mode, see --bitblast=help\n" |
283 |
|
" --bitwise-eq lift equivalence with one-bit bit-vectors to be boolean\n" |
284 |
|
" operations [*]\n" |
285 |
|
" --bool-to-bv=MODE convert booleans to bit-vectors of size 1 at various\n" |
286 |
|
" levels of aggressiveness, see --bool-to-bv=help\n" |
287 |
|
" --bv-aig-simp=COMMAND abc command to run AIG simplifications (implies\n" |
288 |
|
" --bitblast-aig, default is \"balance;drw\") (EXPERTS\n" |
289 |
|
" only)\n" |
290 |
|
" --bv-alg-extf algebraic inferences for extended functions [*]\n" |
291 |
|
" --bv-algebraic-budget=N\n" |
292 |
|
" the budget allowed for the algebraic solver in number\n" |
293 |
|
" of SAT conflicts (EXPERTS only)\n" |
294 |
|
" --bv-algebraic-solver turn on experimental algebraic solver for the\n" |
295 |
|
" bit-vector theory (only if --bv-solver=layered) [*]\n" |
296 |
|
" --bv-assert-input assert input assertions on user-level 0 instead of\n" |
297 |
|
" assuming them in the bit-vector SAT solver [*]\n" |
298 |
|
" --bv-eager-explanations\n" |
299 |
|
" compute bit-blasting propagation explanations eagerly\n" |
300 |
|
" (EXPERTS only) [*]\n" |
301 |
|
" --bv-eq-solver use the equality engine for the bit-vector theory (only\n" |
302 |
|
" if --bv-solver=layered) [*]\n" |
303 |
|
" --bv-extract-arith enable rewrite pushing extract [i:0] over arithmetic\n" |
304 |
|
" operations (can blow up) (EXPERTS only) [*]\n" |
305 |
|
" --bv-gauss-elim simplify formula via Gaussian Elimination if applicable\n" |
306 |
|
" (EXPERTS only) [*]\n" |
307 |
|
" --bv-inequality-solver turn on the inequality solver for the bit-vector theory\n" |
308 |
|
" (only if --bv-solver=layered) [*]\n" |
309 |
|
" --bv-intro-pow2 introduce bitvector powers of two as a preprocessing\n" |
310 |
|
" pass (EXPERTS only) [*]\n" |
311 |
|
" --bv-num-func=N number of function symbols in conflicts that are\n" |
312 |
|
" generalized (EXPERTS only)\n" |
313 |
|
" --bv-print-consts-as-indexed-symbols\n" |
314 |
|
" print bit-vector constants in decimal (e.g. (_ bv1 4))\n" |
315 |
|
" instead of binary (e.g. #b0001), applies to SMT-LIB 2.x\n" |
316 |
|
" [*]\n" |
317 |
|
" --bv-propagate use bit-vector propagation in the bit-blaster [*]\n" |
318 |
|
" --bv-quick-xplain minimize bv conflicts using the QuickXplain algorithm\n" |
319 |
|
" (EXPERTS only) [*]\n" |
320 |
|
" --bv-sat-solver=MODE choose which sat solver to use, see\n" |
321 |
|
" --bv-sat-solver=help (EXPERTS only)\n" |
322 |
|
" --bv-solver=MODE choose bit-vector solver, see --bv-solver=help\n" |
323 |
|
" --bv-to-bool lift bit-vectors of size 1 to booleans when possible\n" |
324 |
|
" [*]\n" |
325 |
|
"\nFrom the Datatypes Theory module:\n" |
326 |
|
" --cdt-bisimilar do bisimilarity check for co-datatypes [*]\n" |
327 |
|
" --dt-binary-split do binary splits for datatype constructor types [*]\n" |
328 |
|
" --dt-blast-splits when applicable, blast splitting lemmas for all\n" |
329 |
|
" variables at once [*]\n" |
330 |
|
" --dt-cyclic do cyclicity check for datatypes [*]\n" |
331 |
|
" --dt-force-assignment force the datatypes solver to give specific values to\n" |
332 |
|
" all datatypes terms before answering sat [*]\n" |
333 |
|
" --dt-infer-as-lemmas always send lemmas out instead of making internal\n" |
334 |
|
" inferences [*]\n" |
335 |
|
" --dt-nested-rec allow nested recursion in datatype definitions [*]\n" |
336 |
|
" --dt-polite-optimize turn on optimization for polite combination [*]\n" |
337 |
|
" --dt-rewrite-error-sel rewrite incorrectly applied selectors to arbitrary\n" |
338 |
|
" ground term (EXPERTS only) [*]\n" |
339 |
|
" --dt-share-sel internally use shared selectors across multiple\n" |
340 |
|
" constructors [*]\n" |
341 |
|
" --sygus-abort-size=N tells enumerative sygus to only consider solutions up\n" |
342 |
|
" to term size N (-1 == no limit, default)\n" |
343 |
|
" --sygus-fair-max use max instead of sum for multi-function sygus\n" |
344 |
|
" conjectures [*]\n" |
345 |
|
" --sygus-fair=MODE if and how to apply fairness for sygus\n" |
346 |
|
" --sygus-sym-break simple sygus symmetry breaking lemmas [*]\n" |
347 |
|
" --sygus-sym-break-agg use aggressive checks for simple sygus symmetry\n" |
348 |
|
" breaking lemmas [*]\n" |
349 |
|
" --sygus-sym-break-dynamic\n" |
350 |
|
" dynamic sygus symmetry breaking lemmas [*]\n" |
351 |
|
" --sygus-sym-break-lazy lazily add symmetry breaking lemmas for terms [*]\n" |
352 |
|
" --sygus-sym-break-pbe sygus symmetry breaking lemmas based on pbe conjectures\n" |
353 |
|
" [*]\n" |
354 |
|
" --sygus-sym-break-rlv add relevancy conditions to symmetry breaking lemmas\n" |
355 |
|
" [*]\n" |
356 |
|
"\nFrom the Decision Heuristics module:\n" |
357 |
|
" --decision-random-weight=N\n" |
358 |
|
" assign random weights to nodes between 0 and N-1 (0:\n" |
359 |
|
" disable) (EXPERTS only)\n" |
360 |
|
" --decision-threshold=N ignore all nodes greater than threshold in first\n" |
361 |
|
" attempt to pick decision (EXPERTS only)\n" |
362 |
|
" --decision-use-weight use the weight nodes (locally, by looking at children)\n" |
363 |
|
" to direct recursive search (EXPERTS only) [*]\n" |
364 |
|
" --decision-weight-internal=HOW\n" |
365 |
|
" compute weights of internal nodes using children: off,\n" |
366 |
|
" max, sum, usr1 (EXPERTS only)\n" |
367 |
|
" --decision=MODE | --decision-mode=MODE\n" |
368 |
|
" choose decision mode, see --decision=help\n" |
369 |
|
" --jh-rlv-order maintain activity-based ordering for decision\n" |
370 |
|
" justification heuristic (EXPERTS only) [*]\n" |
371 |
|
" --jh-skolem-rlv=MODE policy for when to consider skolem definitions relevant\n" |
372 |
|
" in justification heuristic (EXPERTS only)\n" |
373 |
|
" --jh-skolem=MODE policy for when to satisfy skolem definitions in\n" |
374 |
|
" justification heuristic (EXPERTS only)\n" |
375 |
|
"\nFrom the Expression module:\n" |
376 |
|
" --dag-thresh=N dagify common subexprs appearing > N times (1 ==\n" |
377 |
|
" default, 0 == don't dagify)\n" |
378 |
|
" --expr-depth=N print exprs to depth N (0 == default, -1 == no limit)\n" |
379 |
|
" --type-checking type check expressions [*]\n" |
380 |
|
"\nFrom the Floating-Point module:\n" |
381 |
|
" --fp-exp Allow floating-point sorts of all sizes, rather than\n" |
382 |
|
" only Float32 (8/24) or Float64 (11/53) (experimental)\n" |
383 |
|
" [*]\n" |
384 |
|
" --fp-lazy-wb Enable lazier word-blasting (on preNotifyFact instead\n" |
385 |
|
" of registerTerm) [*]\n" |
386 |
|
"\nFrom the Driver module:\n" |
387 |
|
" --dump-instantiations output instantiations of quantified formulas after\n" |
388 |
|
" every UNSAT/VALID response [*]\n" |
389 |
|
" --dump-instantiations-debug\n" |
390 |
|
" output instantiations of quantified formulas after\n" |
391 |
|
" every UNSAT/VALID response, with debug information [*]\n" |
392 |
|
" --dump-models output models after every SAT/INVALID/UNKNOWN response\n" |
393 |
|
" [*]\n" |
394 |
|
" --dump-proofs output proofs after every UNSAT/VALID response [*]\n" |
395 |
|
" --dump-unsat-cores output unsat cores after every UNSAT/VALID response [*]\n" |
396 |
|
" --dump-unsat-cores-full\n" |
397 |
|
" dump the full unsat core, including unlabeled\n" |
398 |
|
" assertions [*]\n" |
399 |
|
" --early-exit do not run destructors at exit; default on except in\n" |
400 |
|
" debug builds (EXPERTS only) [*]\n" |
401 |
|
" --force-no-limit-cpu-while-dump\n" |
402 |
|
" Force no CPU limit when dumping models and proofs [*]\n" |
403 |
|
" --interactive force interactive/non-interactive mode [*]\n" |
404 |
|
" --segv-spin spin on segfault/other crash waiting for gdb [*]\n" |
405 |
|
" --show-debug-tags show all available tags for debugging\n" |
406 |
|
" --show-trace-tags show all available tags for tracing\n" |
407 |
|
"\nFrom the Parser module:\n" |
408 |
|
" --force-logic=LOGIC set the logic, and override all further user attempts\n" |
409 |
|
" to change it (EXPERTS only)\n" |
410 |
|
" --global-declarations force all declarations and definitions to be global [*]\n" |
411 |
|
" --mmap memory map file input [*]\n" |
412 |
|
" --semantic-checks enable semantic checks, including type checks [*]\n" |
413 |
|
"\nFrom the Printing module:\n" |
414 |
|
" --flatten-ho-chains print (binary) application chains in a flattened way,\n" |
415 |
|
" e.g. (a b c) rather than ((a b) c) [*]\n" |
416 |
|
" --inst-format=MODE print format mode for instantiations, see\n" |
417 |
|
" --inst-format=help\n" |
418 |
|
" --model-format=MODE print format mode for models, see --model-format=help\n" |
419 |
|
" --print-inst-full print instantiations for formulas that do not have\n" |
420 |
|
" given identifiers [*]\n" |
421 |
|
" --print-inst=MODE print format for printing instantiations\n" |
422 |
|
"\nFrom the Proof module:\n" |
423 |
|
" --proof-eager-checking check proofs eagerly with proof for local debugging [*]\n" |
424 |
|
" --proof-format-mode=MODE\n" |
425 |
|
" select language of proof output\n" |
426 |
|
" --proof-granularity=MODE\n" |
427 |
|
" modes for proof granularity\n" |
428 |
|
" --proof-pedantic=N assertion failure for any incorrect rule application or\n" |
429 |
|
" untrusted lemma having pedantic level <=N with proof\n" |
430 |
|
" --proof-print-conclusion\n" |
431 |
|
" Print conclusion of proof steps when printing AST [*]\n" |
432 |
|
"\nFrom the SAT Layer module:\n" |
433 |
|
" --minisat-dump-dimacs instead of solving minisat dumps the asserted clauses\n" |
434 |
|
" in Dimacs format [*]\n" |
435 |
|
" --minisat-elimination use Minisat elimination [*]\n" |
436 |
|
" --random-freq=P | --random-frequency=P\n" |
437 |
|
" sets the frequency of random decisions in the sat\n" |
438 |
|
" solver (P=0.0 by default)\n" |
439 |
|
" --random-seed=S sets the random seed for the sat solver\n" |
440 |
|
" --refine-conflicts refine theory conflict clauses (default false) [*]\n" |
441 |
|
" --restart-int-base=N sets the base restart interval for the sat solver (N=25\n" |
442 |
|
" by default)\n" |
443 |
|
" --restart-int-inc=F sets the restart interval increase factor for the sat\n" |
444 |
|
" solver (F=3.0 by default)\n" |
445 |
|
"\nFrom the Quantifiers module:\n" |
446 |
|
" --ag-miniscope-quant perform aggressive miniscoping for quantifiers [*]\n" |
447 |
|
" --cegis-sample=MODE mode for using samples in the counterexample-guided\n" |
448 |
|
" inductive synthesis loop\n" |
449 |
|
" --cegqi turns on counterexample-based quantifier instantiation\n" |
450 |
|
" [*]\n" |
451 |
|
" --cegqi-all apply counterexample-based instantiation to all\n" |
452 |
|
" quantified formulas [*]\n" |
453 |
|
" --cegqi-bv use word-level inversion approach for\n" |
454 |
|
" counterexample-guided quantifier instantiation for\n" |
455 |
|
" bit-vectors [*]\n" |
456 |
|
" --cegqi-bv-concat-inv compute inverse for concat over equalities rather than\n" |
457 |
|
" producing an invertibility condition [*]\n" |
458 |
|
" --cegqi-bv-ineq=MODE choose mode for handling bit-vector inequalities with\n" |
459 |
|
" counterexample-guided instantiation\n" |
460 |
|
" --cegqi-bv-interleave-value\n" |
461 |
|
" interleave model value instantiation with word-level\n" |
462 |
|
" inversion approach [*]\n" |
463 |
|
" --cegqi-bv-linear linearize adder chains for variables [*]\n" |
464 |
|
" --cegqi-bv-rm-extract replaces extract terms with variables for\n" |
465 |
|
" counterexample-guided instantiation for bit-vectors [*]\n" |
466 |
|
" --cegqi-bv-solve-nl try to solve non-linear bv literals using model value\n" |
467 |
|
" projections [*]\n" |
468 |
|
" --cegqi-full turns on full effort counterexample-based quantifier\n" |
469 |
|
" instantiation, which may resort to model-value\n" |
470 |
|
" instantiation [*]\n" |
471 |
|
" --cegqi-innermost only process innermost quantified formulas in\n" |
472 |
|
" counterexample-based quantifier instantiation [*]\n" |
473 |
|
" --cegqi-midpoint choose substitutions based on midpoints of lower and\n" |
474 |
|
" upper bounds for counterexample-based quantifier\n" |
475 |
|
" instantiation [*]\n" |
476 |
|
" --cegqi-min-bounds use minimally constrained lower/upper bound for\n" |
477 |
|
" counterexample-based quantifier instantiation [*]\n" |
478 |
|
" --cegqi-model guide instantiations by model values for\n" |
479 |
|
" counterexample-based quantifier instantiation [*]\n" |
480 |
|
" --cegqi-multi-inst when applicable, do multi instantiations per quantifier\n" |
481 |
|
" per round in counterexample-based quantifier\n" |
482 |
|
" instantiation [*]\n" |
483 |
|
" --cegqi-nested-qe process nested quantified formulas with quantifier\n" |
484 |
|
" elimination in counterexample-based quantifier\n" |
485 |
|
" instantiation [*]\n" |
486 |
|
" --cegqi-nopt non-optimal bounds for counterexample-based quantifier\n" |
487 |
|
" instantiation [*]\n" |
488 |
|
" --cegqi-repeat-lit solve literals more than once in counterexample-based\n" |
489 |
|
" quantifier instantiation [*]\n" |
490 |
|
" --cegqi-round-up-lia round up integer lower bounds in substitutions for\n" |
491 |
|
" counterexample-based quantifier instantiation [*]\n" |
492 |
|
" --cegqi-sat answer sat when quantifiers are asserted with\n" |
493 |
|
" counterexample-based quantifier instantiation [*]\n" |
494 |
|
" --cegqi-use-inf-int use integer infinity for vts in counterexample-based\n" |
495 |
|
" quantifier instantiation [*]\n" |
496 |
|
" --cegqi-use-inf-real use real infinity for vts in counterexample-based\n" |
497 |
|
" quantifier instantiation [*]\n" |
498 |
|
" --cond-var-split-agg-quant\n" |
499 |
|
" aggressive split quantified formulas that lead to\n" |
500 |
|
" variable eliminations [*]\n" |
501 |
|
" --cond-var-split-quant split quantified formulas that lead to variable\n" |
502 |
|
" eliminations [*]\n" |
503 |
|
" --conjecture-filter-active-terms\n" |
504 |
|
" filter based on active terms [*]\n" |
505 |
|
" --conjecture-filter-canonical\n" |
506 |
|
" filter based on canonicity [*]\n" |
507 |
|
" --conjecture-filter-model\n" |
508 |
|
" filter based on model [*]\n" |
509 |
|
" --conjecture-gen generate candidate conjectures for inductive proofs [*]\n" |
510 |
|
" --conjecture-gen-gt-enum=N\n" |
511 |
|
" number of ground terms to generate for model filtering\n" |
512 |
|
" --conjecture-gen-max-depth=N\n" |
513 |
|
" maximum depth of terms to consider for conjectures\n" |
514 |
|
" --conjecture-gen-per-round=N\n" |
515 |
|
" number of conjectures to generate per instantiation\n" |
516 |
|
" round\n" |
517 |
|
" --conjecture-gen-uee-intro\n" |
518 |
|
" more aggressive merging for universal equality engine,\n" |
519 |
|
" introduces terms [*]\n" |
520 |
|
" --conjecture-no-filter do not filter conjectures [*]\n" |
521 |
|
" --dt-stc-ind apply strengthening for existential quantification over\n" |
522 |
|
" datatypes based on structural induction [*]\n" |
523 |
|
" --dt-var-exp-quant expand datatype variables bound to one constructor in\n" |
524 |
|
" quantifiers [*]\n" |
525 |
|
" --e-matching whether to do heuristic E-matching [*]\n" |
526 |
|
" --elim-taut-quant eliminate tautological disjuncts of quantified formulas\n" |
527 |
|
" [*]\n" |
528 |
|
" --ext-rewrite-quant apply extended rewriting to bodies of quantified\n" |
529 |
|
" formulas [*]\n" |
530 |
|
" --finite-model-find use finite model finding heuristic for quantifier\n" |
531 |
|
" instantiation [*]\n" |
532 |
|
" --fmf-bound finite model finding on bounded quantification [*]\n" |
533 |
|
" --fmf-bound-int finite model finding on bounded integer quantification\n" |
534 |
|
" [*]\n" |
535 |
|
" --fmf-bound-lazy enforce bounds for bounded quantification lazily via\n" |
536 |
|
" use of proxy variables [*]\n" |
537 |
|
" --fmf-fmc-simple simple models in full model check for finite model\n" |
538 |
|
" finding [*]\n" |
539 |
|
" --fmf-fresh-dc use fresh distinguished representative when applying\n" |
540 |
|
" Inst-Gen techniques [*]\n" |
541 |
|
" --fmf-fun find models for recursively defined functions, assumes\n" |
542 |
|
" functions are admissible [*]\n" |
543 |
|
" --fmf-fun-rlv find models for recursively defined functions, assumes\n" |
544 |
|
" functions are admissible, allows empty type when\n" |
545 |
|
" function is irrelevant [*]\n" |
546 |
|
" --fmf-inst-engine use instantiation engine in conjunction with finite\n" |
547 |
|
" model finding [*]\n" |
548 |
|
" --fmf-type-completion-thresh=N\n" |
549 |
|
" the maximum cardinality of an interpreted type for\n" |
550 |
|
" which exhaustive enumeration in finite model finding is\n" |
551 |
|
" attempted\n" |
552 |
|
" --fs-interleave interleave enumerative instantiation with other\n" |
553 |
|
" techniques [*]\n" |
554 |
|
" --fs-stratify stratify effort levels in enumerative instantiation,\n" |
555 |
|
" which favors speed over fairness [*]\n" |
556 |
|
" --fs-sum enumerating tuples of quantifiers by increasing the sum\n" |
557 |
|
" of indices, rather than the maximum [*]\n" |
558 |
|
" --full-saturate-quant enumerative instantiation: instantiate with ground\n" |
559 |
|
" terms from relevant domain, then arbitrary ground terms\n" |
560 |
|
" before answering unknown [*]\n" |
561 |
|
" --full-saturate-quant-limit=N\n" |
562 |
|
" maximum number of rounds of enumerative instantiation\n" |
563 |
|
" to apply (-1 means no limit)\n" |
564 |
|
" --full-saturate-quant-rd\n" |
565 |
|
" whether to use relevant domain first for enumerative\n" |
566 |
|
" instantiation strategy [*]\n" |
567 |
|
" --global-negate do global negation of input formula [*]\n" |
568 |
|
" --ho-elim eagerly eliminate higher-order constraints [*]\n" |
569 |
|
" --ho-elim-store-ax use store axiom during ho-elim [*]\n" |
570 |
|
" --ho-matching do higher-order matching algorithm for triggers with\n" |
571 |
|
" variable operators [*]\n" |
572 |
|
" --ho-matching-var-priority\n" |
573 |
|
" give priority to variable arguments over constant\n" |
574 |
|
" arguments [*]\n" |
575 |
|
" --ho-merge-term-db merge term indices modulo equality [*]\n" |
576 |
|
" --increment-triggers generate additional triggers as needed during search\n" |
577 |
|
" [*]\n" |
578 |
|
" --inst-level-input-only\n" |
579 |
|
" only input terms are assigned instantiation level zero\n" |
580 |
|
" [*]\n" |
581 |
|
" --inst-max-level=N maximum inst level of terms used to instantiate\n" |
582 |
|
" quantified formulas with (-1 == no limit, default)\n" |
583 |
|
" --inst-max-rounds=N maximum number of instantiation rounds (-1 == no limit,\n" |
584 |
|
" default)\n" |
585 |
|
" --inst-no-entail do not consider instances of quantified formulas that\n" |
586 |
|
" are currently entailed [*]\n" |
587 |
|
" --inst-when-phase=N instantiation rounds quantifiers takes (>=1) before\n" |
588 |
|
" allowing theory combination to happen\n" |
589 |
|
" --inst-when-strict-interleave\n" |
590 |
|
" ensure theory combination and standard quantifier\n" |
591 |
|
" effort strategies take turns [*]\n" |
592 |
|
" --inst-when-tc-first allow theory combination to happen once initially,\n" |
593 |
|
" before quantifier strategies are run [*]\n" |
594 |
|
" --inst-when=MODE when to apply instantiation\n" |
595 |
|
" --int-wf-ind apply strengthening for integers based on well-founded\n" |
596 |
|
" induction [*]\n" |
597 |
|
" --ite-dtt-split-quant split ites with dt testers as conditions [*]\n" |
598 |
|
" --ite-lift-quant=MODE ite lifting mode for quantified formulas\n" |
599 |
|
" --literal-matching=MODE\n" |
600 |
|
" choose literal matching mode\n" |
601 |
|
" --macros-quant perform quantifiers macro expansion [*]\n" |
602 |
|
" --macros-quant-mode=MODE\n" |
603 |
|
" mode for quantifiers macro expansion\n" |
604 |
|
" --mbqi-interleave interleave model-based quantifier instantiation with\n" |
605 |
|
" other techniques [*]\n" |
606 |
|
" --mbqi-one-inst-per-round\n" |
607 |
|
" only add one instantiation per quantifier per round for\n" |
608 |
|
" mbqi [*]\n" |
609 |
|
" --mbqi=MODE choose mode for model-based quantifier instantiation\n" |
610 |
|
" --miniscope-quant miniscope quantifiers [*]\n" |
611 |
|
" --miniscope-quant-fv miniscope quantifiers for ground subformulas [*]\n" |
612 |
|
" --multi-trigger-cache caching version of multi triggers [*]\n" |
613 |
|
" --multi-trigger-linear implementation of multi triggers where maximum number\n" |
614 |
|
" of instantiations is linear wrt number of ground terms\n" |
615 |
|
" [*]\n" |
616 |
|
" --multi-trigger-priority\n" |
617 |
|
" only try multi triggers if single triggers give no\n" |
618 |
|
" instantiations [*]\n" |
619 |
|
" --multi-trigger-when-single\n" |
620 |
|
" select multi triggers when single triggers exist [*]\n" |
621 |
|
" --partial-triggers use triggers that do not contain all free variables [*]\n" |
622 |
|
" --pool-inst pool-based instantiation: instantiate with ground terms\n" |
623 |
|
" occurring in user-specified pools [*]\n" |
624 |
|
" --pre-skolem-quant apply skolemization eagerly to bodies of quantified\n" |
625 |
|
" formulas [*]\n" |
626 |
|
" --pre-skolem-quant-agg apply skolemization to quantified formulas aggressively\n" |
627 |
|
" [*]\n" |
628 |
|
" --pre-skolem-quant-nested\n" |
629 |
|
" apply skolemization to nested quantified formulas [*]\n" |
630 |
|
" --prenex-quant-user prenex quantified formulas with user patterns [*]\n" |
631 |
|
" --prenex-quant=MODE prenex mode for quantified formulas\n" |
632 |
|
" --purify-triggers purify triggers, e.g. f( x+1 ) becomes f( y ), x mapsto\n" |
633 |
|
" y-1 [*]\n" |
634 |
|
" --qcf-all-conflict add all available conflicting instances during\n" |
635 |
|
" conflict-based instantiation [*]\n" |
636 |
|
" --qcf-eager-check-rd optimization, eagerly check relevant domain of matched\n" |
637 |
|
" position [*]\n" |
638 |
|
" --qcf-eager-test optimization, test qcf instances eagerly [*]\n" |
639 |
|
" --qcf-nested-conflict consider conflicts for nested quantifiers [*]\n" |
640 |
|
" --qcf-skip-rd optimization, skip instances based on possibly\n" |
641 |
|
" irrelevant portions of quantified formulas [*]\n" |
642 |
|
" --qcf-tconstraint enable entailment checks for t-constraints in qcf\n" |
643 |
|
" algorithm [*]\n" |
644 |
|
" --qcf-vo-exp qcf experimental variable ordering [*]\n" |
645 |
|
" --quant-alpha-equiv infer alpha equivalence between quantified formulas [*]\n" |
646 |
|
" --quant-cf enable conflict find mechanism for quantifiers [*]\n" |
647 |
|
" --quant-cf-mode=MODE what effort to apply conflict find mechanism\n" |
648 |
|
" --quant-cf-when=MODE when to invoke conflict find mechanism for quantifiers\n" |
649 |
|
" --quant-dsplit-mode=MODE\n" |
650 |
|
" mode for dynamic quantifiers splitting\n" |
651 |
|
" --quant-fun-wd assume that function defined by quantifiers are well\n" |
652 |
|
" defined [*]\n" |
653 |
|
" --quant-ind use all available techniques for inductive reasoning\n" |
654 |
|
" [*]\n" |
655 |
|
" --quant-rep-mode=MODE selection mode for representatives in quantifiers\n" |
656 |
|
" engine\n" |
657 |
|
" --quant-split apply splitting to quantified formulas based on\n" |
658 |
|
" variable disjoint disjuncts [*]\n" |
659 |
|
" --register-quant-body-terms\n" |
660 |
|
" consider ground terms within bodies of quantified\n" |
661 |
|
" formulas for matching [*]\n" |
662 |
|
" --relational-triggers choose relational triggers such as x = f(y), x >= f(y)\n" |
663 |
|
" [*]\n" |
664 |
|
" --relevant-triggers prefer triggers that are more relevant based on SInE\n" |
665 |
|
" style analysis [*]\n" |
666 |
|
" --strict-triggers only instantiate quantifiers with user patterns based\n" |
667 |
|
" on triggers [*]\n" |
668 |
|
" --sygus use sygus solver (default is true for sygus inputs) [*]\n" |
669 |
|
" --sygus-active-gen-cfactor=N\n" |
670 |
|
" the branching factor for the number of interpreted\n" |
671 |
|
" constants to consider for each size when using\n" |
672 |
|
" --sygus-active-gen=enum\n" |
673 |
|
" --sygus-active-gen=MODE\n" |
674 |
|
" mode for actively-generated sygus enumerators\n" |
675 |
|
" --sygus-add-const-grammar\n" |
676 |
|
" statically add constants appearing in conjecture to\n" |
677 |
|
" grammars [*]\n" |
678 |
|
" --sygus-arg-relevant static inference techniques for computing whether\n" |
679 |
|
" arguments of functions-to-synthesize are relevant [*]\n" |
680 |
|
" --sygus-auto-unfold enable approach which automatically unfolds transition\n" |
681 |
|
" systems for directly solving invariant synthesis\n" |
682 |
|
" problems [*]\n" |
683 |
|
" --sygus-bool-ite-return-const\n" |
684 |
|
" Only use Boolean constants for return values in\n" |
685 |
|
" unification-based function synthesis [*]\n" |
686 |
|
" --sygus-core-connective\n" |
687 |
|
" use unsat core analysis to construct Boolean connective\n" |
688 |
|
" to sygus conjectures [*]\n" |
689 |
|
" --sygus-crepair-abort abort if constant repair techniques are not applicable\n" |
690 |
|
" [*]\n" |
691 |
|
" --sygus-eval-opt use optimized approach for evaluation in sygus [*]\n" |
692 |
|
" --sygus-eval-unfold do unfolding of sygus evaluation functions [*]\n" |
693 |
|
" --sygus-eval-unfold-bool\n" |
694 |
|
" do unfolding of Boolean evaluation functions that\n" |
695 |
|
" appear in refinement lemmas [*]\n" |
696 |
|
" --sygus-expr-miner-check-timeout=N\n" |
697 |
|
" timeout (in milliseconds) for satisfiability checks in\n" |
698 |
|
" expression miners\n" |
699 |
|
" --sygus-ext-rew use extended rewriter for sygus [*]\n" |
700 |
|
" --sygus-filter-sol-rev compute backwards filtering to compute whether previous\n" |
701 |
|
" solutions are filtered based on later ones (EXPERTS\n" |
702 |
|
" only) [*]\n" |
703 |
|
" --sygus-filter-sol=MODE\n" |
704 |
|
" mode for filtering sygus solutions\n" |
705 |
|
" --sygus-grammar-cons=MODE\n" |
706 |
|
" mode for SyGuS grammar construction\n" |
707 |
|
" --sygus-grammar-norm statically normalize sygus grammars based on flattening\n" |
708 |
|
" (linearization) [*]\n" |
709 |
|
" --sygus-inference attempt to preprocess arbitrary inputs to sygus\n" |
710 |
|
" conjectures [*]\n" |
711 |
|
" --sygus-inst Enable SyGuS instantiation quantifiers module [*]\n" |
712 |
|
" --sygus-inst-mode=MODE select instantiation lemma mode\n" |
713 |
|
" --sygus-inst-scope=MODE\n" |
714 |
|
" select scope of ground terms\n" |
715 |
|
" --sygus-inst-term-sel=MODE\n" |
716 |
|
" granularity for ground terms\n" |
717 |
|
" --sygus-inv-templ-when-sg\n" |
718 |
|
" use invariant templates (with solution reconstruction)\n" |
719 |
|
" for syntax guided problems [*]\n" |
720 |
|
" --sygus-inv-templ=MODE template mode for sygus invariant synthesis (weaken\n" |
721 |
|
" pre-condition, strengthen post-condition, or none)\n" |
722 |
|
" --sygus-min-grammar statically minimize sygus grammars [*]\n" |
723 |
|
" --sygus-pbe enable approach which unifies conditional solutions,\n" |
724 |
|
" specialized for programming-by-examples (pbe)\n" |
725 |
|
" conjectures [*]\n" |
726 |
|
" --sygus-pbe-multi-fair when using multiple enumerators, ensure that we only\n" |
727 |
|
" register value of minimial term size [*]\n" |
728 |
|
" --sygus-pbe-multi-fair-diff=N\n" |
729 |
|
" when using multiple enumerators, ensure that we only\n" |
730 |
|
" register values of minimial term size plus this value\n" |
731 |
|
" (default 0)\n" |
732 |
|
" --sygus-qe-preproc use quantifier elimination as a preprocessing step for\n" |
733 |
|
" sygus [*]\n" |
734 |
|
" --sygus-query-gen use sygus to enumerate interesting satisfiability\n" |
735 |
|
" queries [*]\n" |
736 |
|
" --sygus-query-gen-check\n" |
737 |
|
" use interesting satisfiability queries to check\n" |
738 |
|
" soundness of cvc5 [*]\n" |
739 |
|
" --sygus-query-gen-dump-files=MODE\n" |
740 |
|
" mode for dumping external files corresponding to\n" |
741 |
|
" interesting satisfiability queries with sygus-query-gen\n" |
742 |
|
" --sygus-query-gen-thresh=N\n" |
743 |
|
" number of points that we allow to be equal for\n" |
744 |
|
" enumerating satisfiable queries with sygus-query-gen\n" |
745 |
|
" --sygus-rec-fun enable efficient support for recursive functions in\n" |
746 |
|
" sygus grammars [*]\n" |
747 |
|
" --sygus-rec-fun-eval-limit=N\n" |
748 |
|
" use a hard limit for how many times in a given\n" |
749 |
|
" evaluator call a recursive function can be evaluated\n" |
750 |
|
" (so infinite loops can be avoided)\n" |
751 |
|
" --sygus-repair-const use approach to repair constants in sygus candidate\n" |
752 |
|
" solutions [*]\n" |
753 |
|
" --sygus-repair-const-timeout=N\n" |
754 |
|
" timeout (in milliseconds) for the satisfiability check\n" |
755 |
|
" to repair constants in sygus candidate solutions\n" |
756 |
|
" --sygus-rr use sygus to enumerate and verify correctness of\n" |
757 |
|
" rewrite rules [*]\n" |
758 |
|
" --sygus-rr-synth use sygus to enumerate candidate rewrite rules [*]\n" |
759 |
|
" --sygus-rr-synth-accel add dynamic symmetry breaking clauses based on\n" |
760 |
|
" candidate rewrites [*]\n" |
761 |
|
" --sygus-rr-synth-check use satisfiability check to verify correctness of\n" |
762 |
|
" candidate rewrites [*]\n" |
763 |
|
" --sygus-rr-synth-filter-cong\n" |
764 |
|
" filter candidate rewrites based on congruence [*]\n" |
765 |
|
" --sygus-rr-synth-filter-match\n" |
766 |
|
" filter candidate rewrites based on matching [*]\n" |
767 |
|
" --sygus-rr-synth-filter-nl\n" |
768 |
|
" filter non-linear candidate rewrites [*]\n" |
769 |
|
" --sygus-rr-synth-filter-order\n" |
770 |
|
" filter candidate rewrites based on variable ordering\n" |
771 |
|
" [*]\n" |
772 |
|
" --sygus-rr-synth-input synthesize rewrite rules based on the input formula [*]\n" |
773 |
|
" --sygus-rr-synth-input-nvars=N\n" |
774 |
|
" the maximum number of variables per type that appear in\n" |
775 |
|
" rewrites from sygus-rr-synth-input\n" |
776 |
|
" --sygus-rr-synth-input-use-bool\n" |
777 |
|
" synthesize Boolean rewrite rules based on the input\n" |
778 |
|
" formula [*]\n" |
779 |
|
" --sygus-rr-synth-rec synthesize rewrite rules over all sygus grammar types\n" |
780 |
|
" recursively [*]\n" |
781 |
|
" --sygus-rr-verify use sygus to verify the correctness of rewrite rules\n" |
782 |
|
" via sampling [*]\n" |
783 |
|
" --sygus-rr-verify-abort\n" |
784 |
|
" abort when sygus-rr-verify finds an instance of\n" |
785 |
|
" unsoundness [*]\n" |
786 |
|
" --sygus-sample-fp-uniform\n" |
787 |
|
" sample floating-point values uniformly instead of in a\n" |
788 |
|
" biased fashion [*]\n" |
789 |
|
" --sygus-sample-grammar when applicable, use grammar for choosing sample points\n" |
790 |
|
" [*]\n" |
791 |
|
" --sygus-samples=N number of points to consider when doing sygus rewriter\n" |
792 |
|
" sample testing\n" |
793 |
|
" --sygus-si-abort abort if synthesis conjecture is not single invocation\n" |
794 |
|
" [*]\n" |
795 |
|
" --sygus-si-partial combined techniques for synthesis conjectures that are\n" |
796 |
|
" partially single invocation [*]\n" |
797 |
|
" --sygus-si-rcons-limit=N\n" |
798 |
|
" number of rounds of enumeration to use during solution\n" |
799 |
|
" reconstruction (negative means unlimited)\n" |
800 |
|
" --sygus-si-rcons=MODE policy for reconstructing solutions for single\n" |
801 |
|
" invocation conjectures\n" |
802 |
|
" --sygus-si-reconstruct-const\n" |
803 |
|
" include constants when reconstruct solutions for single\n" |
804 |
|
" invocation conjectures in original grammar [*]\n" |
805 |
|
" --sygus-si=MODE mode for processing single invocation synthesis\n" |
806 |
|
" conjectures\n" |
807 |
|
" --sygus-stream enumerate a stream of solutions instead of terminating\n" |
808 |
|
" after the first one [*]\n" |
809 |
|
" --sygus-templ-embed-grammar\n" |
810 |
|
" embed sygus templates into grammars [*]\n" |
811 |
|
" --sygus-unif-cond-independent-no-repeat-sol\n" |
812 |
|
" Do not try repeated solutions when using independent\n" |
813 |
|
" synthesis of conditions in unification-based function\n" |
814 |
|
" synthesis [*]\n" |
815 |
|
" --sygus-unif-pi=MODE mode for synthesis via piecewise-indepedent unification\n" |
816 |
|
" --sygus-unif-shuffle-cond\n" |
817 |
|
" Shuffle condition pool when building solutions (may\n" |
818 |
|
" change solutions sizes) [*]\n" |
819 |
|
" --sygus-verify-inst-max-rounds=N\n" |
820 |
|
" maximum number of instantiation rounds for sygus\n" |
821 |
|
" verification calls (-1 == no limit, default is 3)\n" |
822 |
|
" --term-db-cd register terms in term database based on the SAT\n" |
823 |
|
" context [*]\n" |
824 |
|
" --term-db-mode=MODE which ground terms to consider for instantiation\n" |
825 |
|
" --trigger-active-sel=MODE\n" |
826 |
|
" selection mode to activate triggers\n" |
827 |
|
" --trigger-sel=MODE selection mode for triggers\n" |
828 |
|
" --user-pat=MODE policy for handling user-provided patterns for\n" |
829 |
|
" quantifier instantiation\n" |
830 |
|
" --var-elim-quant enable simple variable elimination for quantified\n" |
831 |
|
" formulas [*]\n" |
832 |
|
" --var-ineq-elim-quant enable variable elimination based on infinite\n" |
833 |
|
" projection of unbound arithmetic variables [*]\n" |
834 |
|
"\nFrom the Separation Logic Theory module:\n" |
835 |
|
" --sep-check-neg check negated spatial assertions [*]\n" |
836 |
|
" --sep-child-refine child-specific refinements of negated star, positive\n" |
837 |
|
" wand [*]\n" |
838 |
|
" --sep-deq-c assume cardinality elements are distinct [*]\n" |
839 |
|
" --sep-exp experimental flag for sep [*]\n" |
840 |
|
" --sep-min-refine only add refinement lemmas for minimal (innermost)\n" |
841 |
|
" assertions [*]\n" |
842 |
|
" --sep-pre-skolem-emp eliminate emp constraint at preprocess time [*]\n" |
843 |
|
"\nFrom the Sets Theory module:\n" |
844 |
|
" --sets-ext enable extended symbols such as complement and universe\n" |
845 |
|
" in theory of sets [*]\n" |
846 |
|
" --sets-infer-as-lemmas send inferences as lemmas [*]\n" |
847 |
|
" --sets-proxy-lemmas introduce proxy variables eagerly to shorten lemmas [*]\n" |
848 |
|
"\nFrom the SMT Layer module:\n" |
849 |
|
" --abstract-values in models, output arrays (and in future, maybe others)\n" |
850 |
|
" using abstract values, as required by the SMT-LIB\n" |
851 |
|
" standard [*]\n" |
852 |
|
" --ackermann eliminate functions by ackermannization [*]\n" |
853 |
|
" --block-models=MODE mode for producing several models\n" |
854 |
|
" --check-abducts checks whether produced solutions to get-abduct are\n" |
855 |
|
" correct [*]\n" |
856 |
|
" --check-interpols checks whether produced solutions to get-interpol are\n" |
857 |
|
" correct [*]\n" |
858 |
|
" --check-models after SAT/INVALID/UNKNOWN, check that the generated\n" |
859 |
|
" model satisfies user assertions [*]\n" |
860 |
|
" --check-proofs after UNSAT/VALID, check the generated proof (with\n" |
861 |
|
" proof) [*]\n" |
862 |
|
" --check-synth-sol checks whether produced solutions to\n" |
863 |
|
" functions-to-synthesize satisfy the conjecture [*]\n" |
864 |
|
" --check-unsat-cores after UNSAT/VALID, produce and check an unsat core\n" |
865 |
|
" (expensive) [*]\n" |
866 |
|
" --debug-check-models after SAT/INVALID/UNKNOWN, check that the generated\n" |
867 |
|
" model satisfies user and internal assertions [*]\n" |
868 |
|
" --early-ite-removal remove ITEs early in preprocessing [*]\n" |
869 |
|
" --expand-definitions always expand symbol definitions in output [*]\n" |
870 |
|
" --ext-rew-prep use extended rewriter as a preprocessing pass [*]\n" |
871 |
|
" --ext-rew-prep-agg use aggressive extended rewriter as a preprocessing\n" |
872 |
|
" pass [*]\n" |
873 |
|
" --foreign-theory-rewrite\n" |
874 |
|
" Cross-theory rewrites [*]\n" |
875 |
|
" --ite-simp turn on ite simplification (Kim (and Somenzi) et al.,\n" |
876 |
|
" SAT 2009) [*]\n" |
877 |
|
" --learned-rewrite rewrite the input based on learned literals [*]\n" |
878 |
|
" --minimal-unsat-cores if an unsat core is produced, it is reduced to a\n" |
879 |
|
" minimal unsat core [*]\n" |
880 |
|
" --model-cores=MODE mode for producing model cores\n" |
881 |
|
" --model-u-print=MODE | --model-uninterp-print=MODE\n" |
882 |
|
" determines how to print uninterpreted elements in\n" |
883 |
|
" models\n" |
884 |
|
" --model-witness-value in models, use a witness constant for choice functions\n" |
885 |
|
" [*]\n" |
886 |
|
" --on-repeat-ite-simp do the ite simplification pass again if repeating\n" |
887 |
|
" simplification [*]\n" |
888 |
|
" --produce-assignments support the get-assignment command [*]\n" |
889 |
|
" --produce-proofs produce proofs, support check-proofs and get-proof [*]\n" |
890 |
|
" --produce-unsat-assumptions\n" |
891 |
|
" turn on unsat assumptions generation [*]\n" |
892 |
|
" --produce-unsat-cores turn on unsat core generation. Unless otherwise\n" |
893 |
|
" specified, cores will be produced using SAT soving\n" |
894 |
|
" under assumptions and preprocessing proofs. [*]\n" |
895 |
|
" --repeat-simp make multiple passes with nonclausal simplifier [*]\n" |
896 |
|
" --simp-ite-compress enables compressing ites after ite simplification [*]\n" |
897 |
|
" --simp-ite-hunt-zombies=N\n" |
898 |
|
" post ite compression enables zombie removal while the\n" |
899 |
|
" number of nodes is above this threshold\n" |
900 |
|
" --simp-with-care enables simplifyWithCare in ite simplificiation [*]\n" |
901 |
|
" --simplification=MODE | --simplification-mode=MODE\n" |
902 |
|
" choose simplification mode, see --simplification=help\n" |
903 |
|
" --sort-inference calculate sort inference of input problem, convert the\n" |
904 |
|
" input based on monotonic sorts [*]\n" |
905 |
|
" --static-learning use static learning (on by default) [*]\n" |
906 |
|
" --sygus-out=MODE output mode for sygus\n" |
907 |
|
" --sygus-print-callbacks\n" |
908 |
|
" use sygus print callbacks to print sygus terms in the\n" |
909 |
|
" user-provided form (disable for debugging) [*]\n" |
910 |
|
" --unconstrained-simp turn on unconstrained simplification (see\n" |
911 |
|
" Bruttomesso/Brummayer PhD thesis). Fully supported only\n" |
912 |
|
" in (subsets of) the logic QF_ABV. [*]\n" |
913 |
|
" --unsat-cores-mode=MODE\n" |
914 |
|
" choose unsat core mode, see --unsat-cores-mode=help\n" |
915 |
|
"\nFrom the Strings Theory module:\n" |
916 |
|
" --re-elim elimination techniques for regular expressions [*]\n" |
917 |
|
" --re-elim-agg aggressive elimination techniques for regular\n" |
918 |
|
" expressions [*]\n" |
919 |
|
" --re-inter-mode=MODE determines which regular expressions intersections to\n" |
920 |
|
" compute (EXPERTS only)\n" |
921 |
|
" --strings-check-entail-len\n" |
922 |
|
" check entailment between length terms to reduce\n" |
923 |
|
" splitting [*]\n" |
924 |
|
" --strings-eager strings eager check [*]\n" |
925 |
|
" --strings-eager-eval perform eager context-dependent evaluation for\n" |
926 |
|
" applications of string kinds [*]\n" |
927 |
|
" --strings-eager-len strings eager length lemmas [*]\n" |
928 |
|
" --strings-exp experimental features in the theory of strings [*]\n" |
929 |
|
" --strings-ff do flat form inferences [*]\n" |
930 |
|
" --strings-fmf the finite model finding used by the theory of strings\n" |
931 |
|
" [*]\n" |
932 |
|
" --strings-guess-model use model guessing to avoid string extended function\n" |
933 |
|
" reductions [*]\n" |
934 |
|
" --strings-infer-as-lemmas\n" |
935 |
|
" always send lemmas out instead of making internal\n" |
936 |
|
" inferences [*]\n" |
937 |
|
" --strings-infer-sym strings split on empty string [*]\n" |
938 |
|
" --strings-lazy-pp perform string preprocessing lazily [*]\n" |
939 |
|
" --strings-len-norm strings length normalization lemma [*]\n" |
940 |
|
" --strings-lprop-csp do length propagation based on constant splits [*]\n" |
941 |
|
" --strings-min-prefix-explain\n" |
942 |
|
" minimize explanations for prefix of normal forms in\n" |
943 |
|
" strings [*]\n" |
944 |
|
" --strings-process-loop-mode=MODE\n" |
945 |
|
" determines how to process looping string equations\n" |
946 |
|
" (EXPERTS only)\n" |
947 |
|
" --strings-rexplain-lemmas\n" |
948 |
|
" regression explanations for string lemmas [*]\n" |
949 |
|
" --strings-unified-vspt use a single skolem for the variable splitting rule [*]\n" |
950 |
|
"\nFrom the Theory Layer module:\n" |
951 |
|
" --assign-function-values\n" |
952 |
|
" assign values for uninterpreted functions in models [*]\n" |
953 |
|
" --condense-function-values\n" |
954 |
|
" condense values for functions in models rather than\n" |
955 |
|
" explicitly representing them [*]\n" |
956 |
|
" --ee-mode=MODE mode for managing equalities across theory solvers\n" |
957 |
|
" (EXPERTS only)\n" |
958 |
|
" --relevance-filter enable analysis of relevance of asserted literals with\n" |
959 |
|
" respect to the input formula [*]\n" |
960 |
|
" --tc-mode=MODE mode for theory combination (EXPERTS only)\n" |
961 |
|
" --theoryof-mode=MODE mode for Theory::theoryof() (EXPERTS only)\n" |
962 |
|
"\nFrom the Uninterpreted Functions Theory module:\n" |
963 |
|
" --symmetry-breaker | --uf-symmetry-breaker\n" |
964 |
|
" use UF symmetry breaker (Deharbe et al., CADE 2011) [*]\n" |
965 |
|
" --uf-ho enable support for higher-order reasoning [*]\n" |
966 |
|
" --uf-ho-ext apply extensionality on function symbols [*]\n" |
967 |
|
" --uf-ss-abort-card=N tells the uf with cardinality to only consider models\n" |
968 |
|
" that interpret uninterpreted sorts of cardinality at\n" |
969 |
|
" most N (-1 == no limit, default)\n" |
970 |
|
" --uf-ss-fair use fair strategy for finite model finding multiple\n" |
971 |
|
" sorts [*]\n" |
972 |
|
" --uf-ss-fair-monotone group monotone sorts when enforcing fairness for finite\n" |
973 |
|
" model finding [*]\n" |
974 |
|
" --uf-ss-totality-limited=N\n" |
975 |
|
" apply totality axioms, but only up to cardinality N (-1\n" |
976 |
|
" == do not apply totality axioms, default)\n" |
977 |
|
" --uf-ss-totality-sym-break\n" |
978 |
|
" apply symmetry breaking for totality axioms [*]\n" |
979 |
|
" --uf-ss=MODE mode of operation for uf with cardinality solver.\n"; |
980 |
|
|
981 |
9774 |
static const std::string optionsFootnote = "\n\ |
982 |
|
[*] Each of these options has a --no-OPTIONNAME variant, which reverses the\n\ |
983 |
|
sense of the option.\n\ |
984 |
|
"; |
985 |
|
|
986 |
9774 |
static const std::string languageDescription = |
987 |
|
"\ |
988 |
|
Languages currently supported as arguments to the -L / --lang option:\n\ |
989 |
|
auto attempt to automatically determine language\n\ |
990 |
|
cvc | presentation | pl CVC presentation language\n\ |
991 |
|
smt | smtlib | smt2 |\n\ |
992 |
|
smt2.6 | smtlib2.6 SMT-LIB format 2.6 with support for the strings standard\n\ |
993 |
|
tptp TPTP format (cnf, fof and tff)\n\ |
994 |
|
sygus | sygus2 SyGuS version 2.0\n\ |
995 |
|
\n\ |
996 |
|
Languages currently supported as arguments to the --output-lang option:\n\ |
997 |
|
auto match output language to input language\n\ |
998 |
|
cvc | presentation | pl CVC presentation language\n\ |
999 |
|
smt | smtlib | smt2 |\n\ |
1000 |
|
smt2.6 | smtlib2.6 SMT-LIB format 2.6 with support for the strings standard\n\ |
1001 |
|
tptp TPTP format\n\ |
1002 |
|
ast internal format (simple syntax trees)\n\ |
1003 |
|
"; |
1004 |
|
// clang-format on |
1005 |
|
|
1006 |
|
const std::string& getDescription() |
1007 |
|
{ |
1008 |
|
return optionsDescription; |
1009 |
|
} |
1010 |
|
|
1011 |
|
void printUsage(const std::string& msg, std::ostream& os) { |
1012 |
|
os << msg << optionsDescription << std::endl |
1013 |
|
<< optionsFootnote << std::endl << std::flush; |
1014 |
|
} |
1015 |
|
|
1016 |
|
void printShortUsage(const std::string& msg, std::ostream& os) { |
1017 |
|
os << msg << mostCommonOptionsDescription << std::endl |
1018 |
|
<< optionsFootnote << std::endl |
1019 |
|
<< "For full usage, please use --help." |
1020 |
|
<< std::endl << std::endl << std::flush; |
1021 |
|
} |
1022 |
|
|
1023 |
|
void printLanguageHelp(std::ostream& os) { |
1024 |
|
os << languageDescription << std::flush; |
1025 |
|
} |
1026 |
|
|
1027 |
|
/** Set a given Options* as "current" just for a particular scope. */ |
1028 |
|
class OptionsGuard { |
1029 |
|
Options** d_field; |
1030 |
|
Options* d_old; |
1031 |
|
public: |
1032 |
8796 |
OptionsGuard(Options** field, Options* opts) : |
1033 |
|
d_field(field), |
1034 |
8796 |
d_old(*field) { |
1035 |
8796 |
*field = opts; |
1036 |
8796 |
} |
1037 |
12388 |
~OptionsGuard() { |
1038 |
6194 |
*d_field = d_old; |
1039 |
6194 |
} |
1040 |
|
};/* class OptionsGuard */ |
1041 |
|
|
1042 |
|
/** |
1043 |
|
* This is a table of long options. By policy, each short option |
1044 |
|
* should have an equivalent long option (but the reverse isn't the |
1045 |
|
* case), so this table should thus contain all command-line options. |
1046 |
|
* |
1047 |
|
* Each option in this array has four elements: |
1048 |
|
* |
1049 |
|
* 1. the long option string |
1050 |
|
* 2. argument behavior for the option: |
1051 |
|
* no_argument - no argument permitted |
1052 |
|
* required_argument - an argument is expected |
1053 |
|
* optional_argument - an argument is permitted but not required |
1054 |
|
* 3. this is a pointer to an int which is set to the 4th entry of the |
1055 |
|
* array if the option is present; or NULL, in which case |
1056 |
|
* getopt_long() returns the 4th entry |
1057 |
|
* 4. the return value for getopt_long() when this long option (or the |
1058 |
|
* value to set the 3rd entry to; see #3) |
1059 |
|
* |
1060 |
|
* If you add something here, you should add it in src/main/usage.h |
1061 |
|
* also, to document it. |
1062 |
|
* |
1063 |
|
* If you add something that has a short option equivalent, you should |
1064 |
|
* add it to the getopt_long() call in parse(). |
1065 |
|
*/ |
1066 |
|
// clang-format off |
1067 |
|
static struct option cmdlineOptions[] = { |
1068 |
|
{ "approx-branch-depth", required_argument, nullptr, 256 }, |
1069 |
|
{ "arith-brab", no_argument, nullptr, 257 }, |
1070 |
|
{ "no-arith-brab", no_argument, nullptr, 258 }, |
1071 |
|
{ "arith-cong-man", no_argument, nullptr, 259 }, |
1072 |
|
{ "no-arith-cong-man", no_argument, nullptr, 260 }, |
1073 |
|
{ "arith-eq-solver", no_argument, nullptr, 261 }, |
1074 |
|
{ "no-arith-eq-solver", no_argument, nullptr, 262 }, |
1075 |
|
{ "arith-no-partial-fun", no_argument, nullptr, 263 }, |
1076 |
|
{ "no-arith-no-partial-fun", no_argument, nullptr, 264 }, |
1077 |
|
{ "arith-prop-clauses", required_argument, nullptr, 265 }, |
1078 |
|
{ "arith-prop", required_argument, nullptr, 266 }, |
1079 |
|
{ "arith-rewrite-equalities", no_argument, nullptr, 267 }, |
1080 |
|
{ "no-arith-rewrite-equalities", no_argument, nullptr, 268 }, |
1081 |
|
{ "collect-pivot-stats", no_argument, nullptr, 269 }, |
1082 |
|
{ "no-collect-pivot-stats", no_argument, nullptr, 270 }, |
1083 |
|
{ "cut-all-bounded", no_argument, nullptr, 271 }, |
1084 |
|
{ "no-cut-all-bounded", no_argument, nullptr, 272 }, |
1085 |
|
{ "dio-decomps", no_argument, nullptr, 273 }, |
1086 |
|
{ "no-dio-decomps", no_argument, nullptr, 274 }, |
1087 |
|
{ "dio-repeat", no_argument, nullptr, 275 }, |
1088 |
|
{ "no-dio-repeat", no_argument, nullptr, 276 }, |
1089 |
|
{ "dio-solver", no_argument, nullptr, 277 }, |
1090 |
|
{ "no-dio-solver", no_argument, nullptr, 278 }, |
1091 |
|
{ "dio-turns", required_argument, nullptr, 279 }, |
1092 |
|
{ "error-selection-rule", required_argument, nullptr, 280 }, |
1093 |
|
{ "fc-penalties", no_argument, nullptr, 281 }, |
1094 |
|
{ "no-fc-penalties", no_argument, nullptr, 282 }, |
1095 |
|
{ "heuristic-pivots", required_argument, nullptr, 283 }, |
1096 |
|
{ "lemmas-on-replay-failure", no_argument, nullptr, 284 }, |
1097 |
|
{ "no-lemmas-on-replay-failure", no_argument, nullptr, 285 }, |
1098 |
|
{ "maxCutsInContext", required_argument, nullptr, 286 }, |
1099 |
|
{ "miplib-trick", no_argument, nullptr, 287 }, |
1100 |
|
{ "no-miplib-trick", no_argument, nullptr, 288 }, |
1101 |
|
{ "miplib-trick-subs", required_argument, nullptr, 289 }, |
1102 |
|
{ "new-prop", no_argument, nullptr, 290 }, |
1103 |
|
{ "no-new-prop", no_argument, nullptr, 291 }, |
1104 |
|
{ "nl-cad", no_argument, nullptr, 292 }, |
1105 |
|
{ "no-nl-cad", no_argument, nullptr, 293 }, |
1106 |
|
{ "nl-cad-initial", no_argument, nullptr, 294 }, |
1107 |
|
{ "no-nl-cad-initial", no_argument, nullptr, 295 }, |
1108 |
|
{ "nl-cad-lift", required_argument, nullptr, 296 }, |
1109 |
|
{ "nl-cad-proj", required_argument, nullptr, 297 }, |
1110 |
|
{ "nl-ext-ent-conf", no_argument, nullptr, 298 }, |
1111 |
|
{ "no-nl-ext-ent-conf", no_argument, nullptr, 299 }, |
1112 |
|
{ "nl-ext-factor", no_argument, nullptr, 300 }, |
1113 |
|
{ "no-nl-ext-factor", no_argument, nullptr, 301 }, |
1114 |
|
{ "nl-ext-inc-prec", no_argument, nullptr, 302 }, |
1115 |
|
{ "no-nl-ext-inc-prec", no_argument, nullptr, 303 }, |
1116 |
|
{ "nl-ext-purify", no_argument, nullptr, 304 }, |
1117 |
|
{ "no-nl-ext-purify", no_argument, nullptr, 305 }, |
1118 |
|
{ "nl-ext-rbound", no_argument, nullptr, 306 }, |
1119 |
|
{ "no-nl-ext-rbound", no_argument, nullptr, 307 }, |
1120 |
|
{ "nl-ext-rewrite", no_argument, nullptr, 308 }, |
1121 |
|
{ "no-nl-ext-rewrite", no_argument, nullptr, 309 }, |
1122 |
|
{ "nl-ext-split-zero", no_argument, nullptr, 310 }, |
1123 |
|
{ "no-nl-ext-split-zero", no_argument, nullptr, 311 }, |
1124 |
|
{ "nl-ext-tf-taylor-deg", required_argument, nullptr, 312 }, |
1125 |
|
{ "nl-ext-tf-tplanes", no_argument, nullptr, 313 }, |
1126 |
|
{ "no-nl-ext-tf-tplanes", no_argument, nullptr, 314 }, |
1127 |
|
{ "nl-ext-tplanes", no_argument, nullptr, 315 }, |
1128 |
|
{ "no-nl-ext-tplanes", no_argument, nullptr, 316 }, |
1129 |
|
{ "nl-ext-tplanes-interleave", no_argument, nullptr, 317 }, |
1130 |
|
{ "no-nl-ext-tplanes-interleave", no_argument, nullptr, 318 }, |
1131 |
|
{ "nl-ext", required_argument, nullptr, 319 }, |
1132 |
|
{ "nl-icp", no_argument, nullptr, 320 }, |
1133 |
|
{ "no-nl-icp", no_argument, nullptr, 321 }, |
1134 |
|
{ "nl-rlv", required_argument, nullptr, 322 }, |
1135 |
|
{ "pb-rewrites", no_argument, nullptr, 323 }, |
1136 |
|
{ "no-pb-rewrites", no_argument, nullptr, 324 }, |
1137 |
|
{ "pivot-threshold", required_argument, nullptr, 325 }, |
1138 |
|
{ "pp-assert-max-sub-size", required_argument, nullptr, 326 }, |
1139 |
|
{ "prop-row-length", required_argument, nullptr, 327 }, |
1140 |
|
{ "replay-early-close-depth", required_argument, nullptr, 328 }, |
1141 |
|
{ "replay-failure-penalty", required_argument, nullptr, 329 }, |
1142 |
|
{ "replay-lemma-reject-cut", required_argument, nullptr, 330 }, |
1143 |
|
{ "replay-num-err-penalty", required_argument, nullptr, 331 }, |
1144 |
|
{ "replay-reject-cut", required_argument, nullptr, 332 }, |
1145 |
|
{ "replay-soi-major-threshold-pen", required_argument, nullptr, 333 }, |
1146 |
|
{ "replay-soi-major-threshold", required_argument, nullptr, 334 }, |
1147 |
|
{ "replay-soi-minor-threshold-pen", required_argument, nullptr, 335 }, |
1148 |
|
{ "replay-soi-minor-threshold", required_argument, nullptr, 336 }, |
1149 |
|
{ "restrict-pivots", no_argument, nullptr, 337 }, |
1150 |
|
{ "no-restrict-pivots", no_argument, nullptr, 338 }, |
1151 |
|
{ "revert-arith-models-on-unsat", no_argument, nullptr, 339 }, |
1152 |
|
{ "no-revert-arith-models-on-unsat", no_argument, nullptr, 340 }, |
1153 |
|
{ "rr-turns", required_argument, nullptr, 341 }, |
1154 |
|
{ "se-solve-int", no_argument, nullptr, 342 }, |
1155 |
|
{ "no-se-solve-int", no_argument, nullptr, 343 }, |
1156 |
|
{ "simplex-check-period", required_argument, nullptr, 344 }, |
1157 |
|
{ "soi-qe", no_argument, nullptr, 345 }, |
1158 |
|
{ "no-soi-qe", no_argument, nullptr, 346 }, |
1159 |
|
{ "standard-effort-variable-order-pivots", required_argument, nullptr, 347 }, |
1160 |
|
{ "unate-lemmas", required_argument, nullptr, 348 }, |
1161 |
|
{ "use-approx", no_argument, nullptr, 349 }, |
1162 |
|
{ "no-use-approx", no_argument, nullptr, 350 }, |
1163 |
|
{ "use-fcsimplex", no_argument, nullptr, 351 }, |
1164 |
|
{ "no-use-fcsimplex", no_argument, nullptr, 352 }, |
1165 |
|
{ "use-soi", no_argument, nullptr, 353 }, |
1166 |
|
{ "no-use-soi", no_argument, nullptr, 354 }, |
1167 |
|
{ "arrays-config", required_argument, nullptr, 355 }, |
1168 |
|
{ "arrays-eager-index", no_argument, nullptr, 356 }, |
1169 |
|
{ "no-arrays-eager-index", no_argument, nullptr, 357 }, |
1170 |
|
{ "arrays-eager-lemmas", no_argument, nullptr, 358 }, |
1171 |
|
{ "no-arrays-eager-lemmas", no_argument, nullptr, 359 }, |
1172 |
|
{ "arrays-exp", no_argument, nullptr, 360 }, |
1173 |
|
{ "no-arrays-exp", no_argument, nullptr, 361 }, |
1174 |
|
{ "arrays-model-based", no_argument, nullptr, 362 }, |
1175 |
|
{ "no-arrays-model-based", no_argument, nullptr, 363 }, |
1176 |
|
{ "arrays-optimize-linear", no_argument, nullptr, 364 }, |
1177 |
|
{ "no-arrays-optimize-linear", no_argument, nullptr, 365 }, |
1178 |
|
{ "arrays-prop", required_argument, nullptr, 366 }, |
1179 |
|
{ "arrays-reduce-sharing", no_argument, nullptr, 367 }, |
1180 |
|
{ "no-arrays-reduce-sharing", no_argument, nullptr, 368 }, |
1181 |
|
{ "arrays-weak-equiv", no_argument, nullptr, 369 }, |
1182 |
|
{ "no-arrays-weak-equiv", no_argument, nullptr, 370 }, |
1183 |
|
{ "debug", required_argument, nullptr, 371 }, |
1184 |
|
{ "err", required_argument, nullptr, 372 }, |
1185 |
|
{ "diagnostic-output-channel", required_argument, nullptr, 373 }, |
1186 |
|
{ "in", required_argument, nullptr, 374 }, |
1187 |
|
{ "incremental", no_argument, nullptr, 375 }, |
1188 |
|
{ "no-incremental", no_argument, nullptr, 376 }, |
1189 |
|
{ "lang", required_argument, nullptr, 377 }, |
1190 |
|
{ "input-language", required_argument, nullptr, 378 }, |
1191 |
|
{ "out", required_argument, nullptr, 379 }, |
1192 |
|
{ "regular-output-channel", required_argument, nullptr, 380 }, |
1193 |
|
{ "output-lang", required_argument, nullptr, 381 }, |
1194 |
|
{ "output-language", required_argument, nullptr, 382 }, |
1195 |
|
{ "output", required_argument, nullptr, 383 }, |
1196 |
|
{ "parse-only", no_argument, nullptr, 384 }, |
1197 |
|
{ "no-parse-only", no_argument, nullptr, 385 }, |
1198 |
|
{ "preprocess-only", no_argument, nullptr, 386 }, |
1199 |
|
{ "no-preprocess-only", no_argument, nullptr, 387 }, |
1200 |
|
{ "print-success", no_argument, nullptr, 388 }, |
1201 |
|
{ "no-print-success", no_argument, nullptr, 389 }, |
1202 |
|
{ "quiet", no_argument, nullptr, 390 }, |
1203 |
|
{ "rlimit-per", required_argument, nullptr, 391 }, |
1204 |
|
{ "reproducible-resource-limit", required_argument, nullptr, 392 }, |
1205 |
|
{ "rlimit", required_argument, nullptr, 393 }, |
1206 |
|
{ "rweight", required_argument, nullptr, 394 }, |
1207 |
|
{ "stats", no_argument, nullptr, 395 }, |
1208 |
|
{ "no-stats", no_argument, nullptr, 396 }, |
1209 |
|
{ "stats-all", no_argument, nullptr, 397 }, |
1210 |
|
{ "no-stats-all", no_argument, nullptr, 398 }, |
1211 |
|
{ "stats-every-query", no_argument, nullptr, 399 }, |
1212 |
|
{ "no-stats-every-query", no_argument, nullptr, 400 }, |
1213 |
|
{ "stats-expert", no_argument, nullptr, 401 }, |
1214 |
|
{ "no-stats-expert", no_argument, nullptr, 402 }, |
1215 |
|
{ "tlimit-per", required_argument, nullptr, 403 }, |
1216 |
|
{ "tlimit", required_argument, nullptr, 404 }, |
1217 |
|
{ "trace", required_argument, nullptr, 405 }, |
1218 |
|
{ "verbose", no_argument, nullptr, 406 }, |
1219 |
|
{ "verbosity", required_argument, nullptr, 407 }, |
1220 |
|
{ "bitblast-aig", no_argument, nullptr, 408 }, |
1221 |
|
{ "no-bitblast-aig", no_argument, nullptr, 409 }, |
1222 |
|
{ "bitblast", required_argument, nullptr, 410 }, |
1223 |
|
{ "bitwise-eq", no_argument, nullptr, 411 }, |
1224 |
|
{ "no-bitwise-eq", no_argument, nullptr, 412 }, |
1225 |
|
{ "bool-to-bv", required_argument, nullptr, 413 }, |
1226 |
|
{ "bv-abstraction", no_argument, nullptr, 414 }, |
1227 |
|
{ "no-bv-abstraction", no_argument, nullptr, 415 }, |
1228 |
|
{ "bv-aig-simp", required_argument, nullptr, 416 }, |
1229 |
|
{ "bv-alg-extf", no_argument, nullptr, 417 }, |
1230 |
|
{ "no-bv-alg-extf", no_argument, nullptr, 418 }, |
1231 |
|
{ "bv-algebraic-budget", required_argument, nullptr, 419 }, |
1232 |
|
{ "bv-algebraic-solver", no_argument, nullptr, 420 }, |
1233 |
|
{ "no-bv-algebraic-solver", no_argument, nullptr, 421 }, |
1234 |
|
{ "bv-assert-input", no_argument, nullptr, 422 }, |
1235 |
|
{ "no-bv-assert-input", no_argument, nullptr, 423 }, |
1236 |
|
{ "bv-eager-explanations", no_argument, nullptr, 424 }, |
1237 |
|
{ "no-bv-eager-explanations", no_argument, nullptr, 425 }, |
1238 |
|
{ "bv-eq-solver", no_argument, nullptr, 426 }, |
1239 |
|
{ "no-bv-eq-solver", no_argument, nullptr, 427 }, |
1240 |
|
{ "bv-extract-arith", no_argument, nullptr, 428 }, |
1241 |
|
{ "no-bv-extract-arith", no_argument, nullptr, 429 }, |
1242 |
|
{ "bv-gauss-elim", no_argument, nullptr, 430 }, |
1243 |
|
{ "no-bv-gauss-elim", no_argument, nullptr, 431 }, |
1244 |
|
{ "bv-inequality-solver", no_argument, nullptr, 432 }, |
1245 |
|
{ "no-bv-inequality-solver", no_argument, nullptr, 433 }, |
1246 |
|
{ "bv-intro-pow2", no_argument, nullptr, 434 }, |
1247 |
|
{ "no-bv-intro-pow2", no_argument, nullptr, 435 }, |
1248 |
|
{ "bv-num-func", required_argument, nullptr, 436 }, |
1249 |
|
{ "bv-print-consts-as-indexed-symbols", no_argument, nullptr, 437 }, |
1250 |
|
{ "no-bv-print-consts-as-indexed-symbols", no_argument, nullptr, 438 }, |
1251 |
|
{ "bv-propagate", no_argument, nullptr, 439 }, |
1252 |
|
{ "no-bv-propagate", no_argument, nullptr, 440 }, |
1253 |
|
{ "bv-quick-xplain", no_argument, nullptr, 441 }, |
1254 |
|
{ "no-bv-quick-xplain", no_argument, nullptr, 442 }, |
1255 |
|
{ "bv-sat-solver", required_argument, nullptr, 443 }, |
1256 |
|
{ "bv-skolemize", no_argument, nullptr, 444 }, |
1257 |
|
{ "no-bv-skolemize", no_argument, nullptr, 445 }, |
1258 |
|
{ "bv-solver", required_argument, nullptr, 446 }, |
1259 |
|
{ "bv-to-bool", no_argument, nullptr, 447 }, |
1260 |
|
{ "no-bv-to-bool", no_argument, nullptr, 448 }, |
1261 |
|
{ "cdt-bisimilar", no_argument, nullptr, 449 }, |
1262 |
|
{ "no-cdt-bisimilar", no_argument, nullptr, 450 }, |
1263 |
|
{ "dt-binary-split", no_argument, nullptr, 451 }, |
1264 |
|
{ "no-dt-binary-split", no_argument, nullptr, 452 }, |
1265 |
|
{ "dt-blast-splits", no_argument, nullptr, 453 }, |
1266 |
|
{ "no-dt-blast-splits", no_argument, nullptr, 454 }, |
1267 |
|
{ "dt-cyclic", no_argument, nullptr, 455 }, |
1268 |
|
{ "no-dt-cyclic", no_argument, nullptr, 456 }, |
1269 |
|
{ "dt-force-assignment", no_argument, nullptr, 457 }, |
1270 |
|
{ "no-dt-force-assignment", no_argument, nullptr, 458 }, |
1271 |
|
{ "dt-infer-as-lemmas", no_argument, nullptr, 459 }, |
1272 |
|
{ "no-dt-infer-as-lemmas", no_argument, nullptr, 460 }, |
1273 |
|
{ "dt-nested-rec", no_argument, nullptr, 461 }, |
1274 |
|
{ "no-dt-nested-rec", no_argument, nullptr, 462 }, |
1275 |
|
{ "dt-polite-optimize", no_argument, nullptr, 463 }, |
1276 |
|
{ "no-dt-polite-optimize", no_argument, nullptr, 464 }, |
1277 |
|
{ "dt-rewrite-error-sel", no_argument, nullptr, 465 }, |
1278 |
|
{ "no-dt-rewrite-error-sel", no_argument, nullptr, 466 }, |
1279 |
|
{ "dt-share-sel", no_argument, nullptr, 467 }, |
1280 |
|
{ "no-dt-share-sel", no_argument, nullptr, 468 }, |
1281 |
|
{ "sygus-abort-size", required_argument, nullptr, 469 }, |
1282 |
|
{ "sygus-fair-max", no_argument, nullptr, 470 }, |
1283 |
|
{ "no-sygus-fair-max", no_argument, nullptr, 471 }, |
1284 |
|
{ "sygus-fair", required_argument, nullptr, 472 }, |
1285 |
|
{ "sygus-sym-break", no_argument, nullptr, 473 }, |
1286 |
|
{ "no-sygus-sym-break", no_argument, nullptr, 474 }, |
1287 |
|
{ "sygus-sym-break-agg", no_argument, nullptr, 475 }, |
1288 |
|
{ "no-sygus-sym-break-agg", no_argument, nullptr, 476 }, |
1289 |
|
{ "sygus-sym-break-dynamic", no_argument, nullptr, 477 }, |
1290 |
|
{ "no-sygus-sym-break-dynamic", no_argument, nullptr, 478 }, |
1291 |
|
{ "sygus-sym-break-lazy", no_argument, nullptr, 479 }, |
1292 |
|
{ "no-sygus-sym-break-lazy", no_argument, nullptr, 480 }, |
1293 |
|
{ "sygus-sym-break-pbe", no_argument, nullptr, 481 }, |
1294 |
|
{ "no-sygus-sym-break-pbe", no_argument, nullptr, 482 }, |
1295 |
|
{ "sygus-sym-break-rlv", no_argument, nullptr, 483 }, |
1296 |
|
{ "no-sygus-sym-break-rlv", no_argument, nullptr, 484 }, |
1297 |
|
{ "decision-random-weight", required_argument, nullptr, 485 }, |
1298 |
|
{ "decision-threshold", required_argument, nullptr, 486 }, |
1299 |
|
{ "decision-use-weight", no_argument, nullptr, 487 }, |
1300 |
|
{ "no-decision-use-weight", no_argument, nullptr, 488 }, |
1301 |
|
{ "decision-weight-internal", required_argument, nullptr, 489 }, |
1302 |
|
{ "decision", required_argument, nullptr, 490 }, |
1303 |
|
{ "decision-mode", required_argument, nullptr, 491 }, |
1304 |
|
{ "jh-rlv-order", no_argument, nullptr, 492 }, |
1305 |
|
{ "no-jh-rlv-order", no_argument, nullptr, 493 }, |
1306 |
|
{ "jh-skolem-rlv", required_argument, nullptr, 494 }, |
1307 |
|
{ "jh-skolem", required_argument, nullptr, 495 }, |
1308 |
|
{ "dag-thresh", required_argument, nullptr, 496 }, |
1309 |
|
{ "expr-depth", required_argument, nullptr, 497 }, |
1310 |
|
{ "type-checking", no_argument, nullptr, 498 }, |
1311 |
|
{ "no-type-checking", no_argument, nullptr, 499 }, |
1312 |
|
{ "fp-exp", no_argument, nullptr, 500 }, |
1313 |
|
{ "no-fp-exp", no_argument, nullptr, 501 }, |
1314 |
|
{ "fp-lazy-wb", no_argument, nullptr, 502 }, |
1315 |
|
{ "no-fp-lazy-wb", no_argument, nullptr, 503 }, |
1316 |
|
{ "copyright", no_argument, nullptr, 504 }, |
1317 |
|
{ "dump-instantiations", no_argument, nullptr, 505 }, |
1318 |
|
{ "no-dump-instantiations", no_argument, nullptr, 506 }, |
1319 |
|
{ "dump-instantiations-debug", no_argument, nullptr, 507 }, |
1320 |
|
{ "no-dump-instantiations-debug", no_argument, nullptr, 508 }, |
1321 |
|
{ "dump-models", no_argument, nullptr, 509 }, |
1322 |
|
{ "no-dump-models", no_argument, nullptr, 510 }, |
1323 |
|
{ "dump-proofs", no_argument, nullptr, 511 }, |
1324 |
|
{ "no-dump-proofs", no_argument, nullptr, 512 }, |
1325 |
|
{ "dump-unsat-cores", no_argument, nullptr, 513 }, |
1326 |
|
{ "no-dump-unsat-cores", no_argument, nullptr, 514 }, |
1327 |
|
{ "dump-unsat-cores-full", no_argument, nullptr, 515 }, |
1328 |
|
{ "no-dump-unsat-cores-full", no_argument, nullptr, 516 }, |
1329 |
|
{ "early-exit", no_argument, nullptr, 517 }, |
1330 |
|
{ "no-early-exit", no_argument, nullptr, 518 }, |
1331 |
|
{ "force-no-limit-cpu-while-dump", no_argument, nullptr, 519 }, |
1332 |
|
{ "no-force-no-limit-cpu-while-dump", no_argument, nullptr, 520 }, |
1333 |
|
{ "help", no_argument, nullptr, 521 }, |
1334 |
|
{ "interactive", no_argument, nullptr, 522 }, |
1335 |
|
{ "no-interactive", no_argument, nullptr, 523 }, |
1336 |
|
{ "interactive-prompt", no_argument, nullptr, 524 }, |
1337 |
|
{ "no-interactive-prompt", no_argument, nullptr, 525 }, |
1338 |
|
{ "seed", required_argument, nullptr, 526 }, |
1339 |
|
{ "segv-spin", no_argument, nullptr, 527 }, |
1340 |
|
{ "no-segv-spin", no_argument, nullptr, 528 }, |
1341 |
|
{ "show-config", no_argument, nullptr, 529 }, |
1342 |
|
{ "show-debug-tags", no_argument, nullptr, 530 }, |
1343 |
|
{ "show-trace-tags", no_argument, nullptr, 531 }, |
1344 |
|
{ "version", no_argument, nullptr, 532 }, |
1345 |
|
{ "filesystem-access", no_argument, nullptr, 533 }, |
1346 |
|
{ "no-filesystem-access", no_argument, nullptr, 534 }, |
1347 |
|
{ "force-logic", required_argument, nullptr, 535 }, |
1348 |
|
{ "global-declarations", no_argument, nullptr, 536 }, |
1349 |
|
{ "no-global-declarations", no_argument, nullptr, 537 }, |
1350 |
|
{ "mmap", no_argument, nullptr, 538 }, |
1351 |
|
{ "no-mmap", no_argument, nullptr, 539 }, |
1352 |
|
{ "semantic-checks", no_argument, nullptr, 540 }, |
1353 |
|
{ "no-semantic-checks", no_argument, nullptr, 541 }, |
1354 |
|
{ "strict-parsing", no_argument, nullptr, 542 }, |
1355 |
|
{ "no-strict-parsing", no_argument, nullptr, 543 }, |
1356 |
|
{ "flatten-ho-chains", no_argument, nullptr, 544 }, |
1357 |
|
{ "no-flatten-ho-chains", no_argument, nullptr, 545 }, |
1358 |
|
{ "inst-format", required_argument, nullptr, 546 }, |
1359 |
|
{ "model-format", required_argument, nullptr, 547 }, |
1360 |
|
{ "print-inst-full", no_argument, nullptr, 548 }, |
1361 |
|
{ "no-print-inst-full", no_argument, nullptr, 549 }, |
1362 |
|
{ "print-inst", required_argument, nullptr, 550 }, |
1363 |
|
{ "proof-eager-checking", no_argument, nullptr, 551 }, |
1364 |
|
{ "no-proof-eager-checking", no_argument, nullptr, 552 }, |
1365 |
|
{ "proof-format-mode", required_argument, nullptr, 553 }, |
1366 |
|
{ "proof-granularity", required_argument, nullptr, 554 }, |
1367 |
|
{ "proof-pedantic", required_argument, nullptr, 555 }, |
1368 |
|
{ "proof-print-conclusion", no_argument, nullptr, 556 }, |
1369 |
|
{ "no-proof-print-conclusion", no_argument, nullptr, 557 }, |
1370 |
|
{ "minisat-dump-dimacs", no_argument, nullptr, 558 }, |
1371 |
|
{ "no-minisat-dump-dimacs", no_argument, nullptr, 559 }, |
1372 |
|
{ "minisat-elimination", no_argument, nullptr, 560 }, |
1373 |
|
{ "no-minisat-elimination", no_argument, nullptr, 561 }, |
1374 |
|
{ "random-freq", required_argument, nullptr, 562 }, |
1375 |
|
{ "random-frequency", required_argument, nullptr, 563 }, |
1376 |
|
{ "random-seed", required_argument, nullptr, 564 }, |
1377 |
|
{ "refine-conflicts", no_argument, nullptr, 565 }, |
1378 |
|
{ "no-refine-conflicts", no_argument, nullptr, 566 }, |
1379 |
|
{ "restart-int-base", required_argument, nullptr, 567 }, |
1380 |
|
{ "restart-int-inc", required_argument, nullptr, 568 }, |
1381 |
|
{ "ag-miniscope-quant", no_argument, nullptr, 569 }, |
1382 |
|
{ "no-ag-miniscope-quant", no_argument, nullptr, 570 }, |
1383 |
|
{ "cegis-sample", required_argument, nullptr, 571 }, |
1384 |
|
{ "cegqi", no_argument, nullptr, 572 }, |
1385 |
|
{ "no-cegqi", no_argument, nullptr, 573 }, |
1386 |
|
{ "cegqi-all", no_argument, nullptr, 574 }, |
1387 |
|
{ "no-cegqi-all", no_argument, nullptr, 575 }, |
1388 |
|
{ "cegqi-bv", no_argument, nullptr, 576 }, |
1389 |
|
{ "no-cegqi-bv", no_argument, nullptr, 577 }, |
1390 |
|
{ "cegqi-bv-concat-inv", no_argument, nullptr, 578 }, |
1391 |
|
{ "no-cegqi-bv-concat-inv", no_argument, nullptr, 579 }, |
1392 |
|
{ "cegqi-bv-ineq", required_argument, nullptr, 580 }, |
1393 |
|
{ "cegqi-bv-interleave-value", no_argument, nullptr, 581 }, |
1394 |
|
{ "no-cegqi-bv-interleave-value", no_argument, nullptr, 582 }, |
1395 |
|
{ "cegqi-bv-linear", no_argument, nullptr, 583 }, |
1396 |
|
{ "no-cegqi-bv-linear", no_argument, nullptr, 584 }, |
1397 |
|
{ "cegqi-bv-rm-extract", no_argument, nullptr, 585 }, |
1398 |
|
{ "no-cegqi-bv-rm-extract", no_argument, nullptr, 586 }, |
1399 |
|
{ "cegqi-bv-solve-nl", no_argument, nullptr, 587 }, |
1400 |
|
{ "no-cegqi-bv-solve-nl", no_argument, nullptr, 588 }, |
1401 |
|
{ "cegqi-full", no_argument, nullptr, 589 }, |
1402 |
|
{ "no-cegqi-full", no_argument, nullptr, 590 }, |
1403 |
|
{ "cegqi-innermost", no_argument, nullptr, 591 }, |
1404 |
|
{ "no-cegqi-innermost", no_argument, nullptr, 592 }, |
1405 |
|
{ "cegqi-midpoint", no_argument, nullptr, 593 }, |
1406 |
|
{ "no-cegqi-midpoint", no_argument, nullptr, 594 }, |
1407 |
|
{ "cegqi-min-bounds", no_argument, nullptr, 595 }, |
1408 |
|
{ "no-cegqi-min-bounds", no_argument, nullptr, 596 }, |
1409 |
|
{ "cegqi-model", no_argument, nullptr, 597 }, |
1410 |
|
{ "no-cegqi-model", no_argument, nullptr, 598 }, |
1411 |
|
{ "cegqi-multi-inst", no_argument, nullptr, 599 }, |
1412 |
|
{ "no-cegqi-multi-inst", no_argument, nullptr, 600 }, |
1413 |
|
{ "cegqi-nested-qe", no_argument, nullptr, 601 }, |
1414 |
|
{ "no-cegqi-nested-qe", no_argument, nullptr, 602 }, |
1415 |
|
{ "cegqi-nopt", no_argument, nullptr, 603 }, |
1416 |
|
{ "no-cegqi-nopt", no_argument, nullptr, 604 }, |
1417 |
|
{ "cegqi-repeat-lit", no_argument, nullptr, 605 }, |
1418 |
|
{ "no-cegqi-repeat-lit", no_argument, nullptr, 606 }, |
1419 |
|
{ "cegqi-round-up-lia", no_argument, nullptr, 607 }, |
1420 |
|
{ "no-cegqi-round-up-lia", no_argument, nullptr, 608 }, |
1421 |
|
{ "cegqi-sat", no_argument, nullptr, 609 }, |
1422 |
|
{ "no-cegqi-sat", no_argument, nullptr, 610 }, |
1423 |
|
{ "cegqi-use-inf-int", no_argument, nullptr, 611 }, |
1424 |
|
{ "no-cegqi-use-inf-int", no_argument, nullptr, 612 }, |
1425 |
|
{ "cegqi-use-inf-real", no_argument, nullptr, 613 }, |
1426 |
|
{ "no-cegqi-use-inf-real", no_argument, nullptr, 614 }, |
1427 |
|
{ "cond-var-split-agg-quant", no_argument, nullptr, 615 }, |
1428 |
|
{ "no-cond-var-split-agg-quant", no_argument, nullptr, 616 }, |
1429 |
|
{ "cond-var-split-quant", no_argument, nullptr, 617 }, |
1430 |
|
{ "no-cond-var-split-quant", no_argument, nullptr, 618 }, |
1431 |
|
{ "conjecture-filter-active-terms", no_argument, nullptr, 619 }, |
1432 |
|
{ "no-conjecture-filter-active-terms", no_argument, nullptr, 620 }, |
1433 |
|
{ "conjecture-filter-canonical", no_argument, nullptr, 621 }, |
1434 |
|
{ "no-conjecture-filter-canonical", no_argument, nullptr, 622 }, |
1435 |
|
{ "conjecture-filter-model", no_argument, nullptr, 623 }, |
1436 |
|
{ "no-conjecture-filter-model", no_argument, nullptr, 624 }, |
1437 |
|
{ "conjecture-gen", no_argument, nullptr, 625 }, |
1438 |
|
{ "no-conjecture-gen", no_argument, nullptr, 626 }, |
1439 |
|
{ "conjecture-gen-gt-enum", required_argument, nullptr, 627 }, |
1440 |
|
{ "conjecture-gen-max-depth", required_argument, nullptr, 628 }, |
1441 |
|
{ "conjecture-gen-per-round", required_argument, nullptr, 629 }, |
1442 |
|
{ "conjecture-gen-uee-intro", no_argument, nullptr, 630 }, |
1443 |
|
{ "no-conjecture-gen-uee-intro", no_argument, nullptr, 631 }, |
1444 |
|
{ "conjecture-no-filter", no_argument, nullptr, 632 }, |
1445 |
|
{ "no-conjecture-no-filter", no_argument, nullptr, 633 }, |
1446 |
|
{ "dt-stc-ind", no_argument, nullptr, 634 }, |
1447 |
|
{ "no-dt-stc-ind", no_argument, nullptr, 635 }, |
1448 |
|
{ "dt-var-exp-quant", no_argument, nullptr, 636 }, |
1449 |
|
{ "no-dt-var-exp-quant", no_argument, nullptr, 637 }, |
1450 |
|
{ "e-matching", no_argument, nullptr, 638 }, |
1451 |
|
{ "no-e-matching", no_argument, nullptr, 639 }, |
1452 |
|
{ "elim-taut-quant", no_argument, nullptr, 640 }, |
1453 |
|
{ "no-elim-taut-quant", no_argument, nullptr, 641 }, |
1454 |
|
{ "ext-rewrite-quant", no_argument, nullptr, 642 }, |
1455 |
|
{ "no-ext-rewrite-quant", no_argument, nullptr, 643 }, |
1456 |
|
{ "finite-model-find", no_argument, nullptr, 644 }, |
1457 |
|
{ "no-finite-model-find", no_argument, nullptr, 645 }, |
1458 |
|
{ "fmf-bound", no_argument, nullptr, 646 }, |
1459 |
|
{ "no-fmf-bound", no_argument, nullptr, 647 }, |
1460 |
|
{ "fmf-bound-int", no_argument, nullptr, 648 }, |
1461 |
|
{ "no-fmf-bound-int", no_argument, nullptr, 649 }, |
1462 |
|
{ "fmf-bound-lazy", no_argument, nullptr, 650 }, |
1463 |
|
{ "no-fmf-bound-lazy", no_argument, nullptr, 651 }, |
1464 |
|
{ "fmf-fmc-simple", no_argument, nullptr, 652 }, |
1465 |
|
{ "no-fmf-fmc-simple", no_argument, nullptr, 653 }, |
1466 |
|
{ "fmf-fresh-dc", no_argument, nullptr, 654 }, |
1467 |
|
{ "no-fmf-fresh-dc", no_argument, nullptr, 655 }, |
1468 |
|
{ "fmf-fun", no_argument, nullptr, 656 }, |
1469 |
|
{ "no-fmf-fun", no_argument, nullptr, 657 }, |
1470 |
|
{ "fmf-fun-rlv", no_argument, nullptr, 658 }, |
1471 |
|
{ "no-fmf-fun-rlv", no_argument, nullptr, 659 }, |
1472 |
|
{ "fmf-inst-engine", no_argument, nullptr, 660 }, |
1473 |
|
{ "no-fmf-inst-engine", no_argument, nullptr, 661 }, |
1474 |
|
{ "fmf-type-completion-thresh", required_argument, nullptr, 662 }, |
1475 |
|
{ "fs-interleave", no_argument, nullptr, 663 }, |
1476 |
|
{ "no-fs-interleave", no_argument, nullptr, 664 }, |
1477 |
|
{ "fs-stratify", no_argument, nullptr, 665 }, |
1478 |
|
{ "no-fs-stratify", no_argument, nullptr, 666 }, |
1479 |
|
{ "fs-sum", no_argument, nullptr, 667 }, |
1480 |
|
{ "no-fs-sum", no_argument, nullptr, 668 }, |
1481 |
|
{ "full-saturate-quant", no_argument, nullptr, 669 }, |
1482 |
|
{ "no-full-saturate-quant", no_argument, nullptr, 670 }, |
1483 |
|
{ "full-saturate-quant-limit", required_argument, nullptr, 671 }, |
1484 |
|
{ "full-saturate-quant-rd", no_argument, nullptr, 672 }, |
1485 |
|
{ "no-full-saturate-quant-rd", no_argument, nullptr, 673 }, |
1486 |
|
{ "global-negate", no_argument, nullptr, 674 }, |
1487 |
|
{ "no-global-negate", no_argument, nullptr, 675 }, |
1488 |
|
{ "ho-elim", no_argument, nullptr, 676 }, |
1489 |
|
{ "no-ho-elim", no_argument, nullptr, 677 }, |
1490 |
|
{ "ho-elim-store-ax", no_argument, nullptr, 678 }, |
1491 |
|
{ "no-ho-elim-store-ax", no_argument, nullptr, 679 }, |
1492 |
|
{ "ho-matching", no_argument, nullptr, 680 }, |
1493 |
|
{ "no-ho-matching", no_argument, nullptr, 681 }, |
1494 |
|
{ "ho-matching-var-priority", no_argument, nullptr, 682 }, |
1495 |
|
{ "no-ho-matching-var-priority", no_argument, nullptr, 683 }, |
1496 |
|
{ "ho-merge-term-db", no_argument, nullptr, 684 }, |
1497 |
|
{ "no-ho-merge-term-db", no_argument, nullptr, 685 }, |
1498 |
|
{ "increment-triggers", no_argument, nullptr, 686 }, |
1499 |
|
{ "no-increment-triggers", no_argument, nullptr, 687 }, |
1500 |
|
{ "inst-level-input-only", no_argument, nullptr, 688 }, |
1501 |
|
{ "no-inst-level-input-only", no_argument, nullptr, 689 }, |
1502 |
|
{ "inst-max-level", required_argument, nullptr, 690 }, |
1503 |
|
{ "inst-max-rounds", required_argument, nullptr, 691 }, |
1504 |
|
{ "inst-no-entail", no_argument, nullptr, 692 }, |
1505 |
|
{ "no-inst-no-entail", no_argument, nullptr, 693 }, |
1506 |
|
{ "inst-when-phase", required_argument, nullptr, 694 }, |
1507 |
|
{ "inst-when-strict-interleave", no_argument, nullptr, 695 }, |
1508 |
|
{ "no-inst-when-strict-interleave", no_argument, nullptr, 696 }, |
1509 |
|
{ "inst-when-tc-first", no_argument, nullptr, 697 }, |
1510 |
|
{ "no-inst-when-tc-first", no_argument, nullptr, 698 }, |
1511 |
|
{ "inst-when", required_argument, nullptr, 699 }, |
1512 |
|
{ "int-wf-ind", no_argument, nullptr, 700 }, |
1513 |
|
{ "no-int-wf-ind", no_argument, nullptr, 701 }, |
1514 |
|
{ "ite-dtt-split-quant", no_argument, nullptr, 702 }, |
1515 |
|
{ "no-ite-dtt-split-quant", no_argument, nullptr, 703 }, |
1516 |
|
{ "ite-lift-quant", required_argument, nullptr, 704 }, |
1517 |
|
{ "literal-matching", required_argument, nullptr, 705 }, |
1518 |
|
{ "macros-quant", no_argument, nullptr, 706 }, |
1519 |
|
{ "no-macros-quant", no_argument, nullptr, 707 }, |
1520 |
|
{ "macros-quant-mode", required_argument, nullptr, 708 }, |
1521 |
|
{ "mbqi-interleave", no_argument, nullptr, 709 }, |
1522 |
|
{ "no-mbqi-interleave", no_argument, nullptr, 710 }, |
1523 |
|
{ "mbqi-one-inst-per-round", no_argument, nullptr, 711 }, |
1524 |
|
{ "no-mbqi-one-inst-per-round", no_argument, nullptr, 712 }, |
1525 |
|
{ "mbqi", required_argument, nullptr, 713 }, |
1526 |
|
{ "miniscope-quant", no_argument, nullptr, 714 }, |
1527 |
|
{ "no-miniscope-quant", no_argument, nullptr, 715 }, |
1528 |
|
{ "miniscope-quant-fv", no_argument, nullptr, 716 }, |
1529 |
|
{ "no-miniscope-quant-fv", no_argument, nullptr, 717 }, |
1530 |
|
{ "multi-trigger-cache", no_argument, nullptr, 718 }, |
1531 |
|
{ "no-multi-trigger-cache", no_argument, nullptr, 719 }, |
1532 |
|
{ "multi-trigger-linear", no_argument, nullptr, 720 }, |
1533 |
|
{ "no-multi-trigger-linear", no_argument, nullptr, 721 }, |
1534 |
|
{ "multi-trigger-priority", no_argument, nullptr, 722 }, |
1535 |
|
{ "no-multi-trigger-priority", no_argument, nullptr, 723 }, |
1536 |
|
{ "multi-trigger-when-single", no_argument, nullptr, 724 }, |
1537 |
|
{ "no-multi-trigger-when-single", no_argument, nullptr, 725 }, |
1538 |
|
{ "partial-triggers", no_argument, nullptr, 726 }, |
1539 |
|
{ "no-partial-triggers", no_argument, nullptr, 727 }, |
1540 |
|
{ "pool-inst", no_argument, nullptr, 728 }, |
1541 |
|
{ "no-pool-inst", no_argument, nullptr, 729 }, |
1542 |
|
{ "pre-skolem-quant", no_argument, nullptr, 730 }, |
1543 |
|
{ "no-pre-skolem-quant", no_argument, nullptr, 731 }, |
1544 |
|
{ "pre-skolem-quant-agg", no_argument, nullptr, 732 }, |
1545 |
|
{ "no-pre-skolem-quant-agg", no_argument, nullptr, 733 }, |
1546 |
|
{ "pre-skolem-quant-nested", no_argument, nullptr, 734 }, |
1547 |
|
{ "no-pre-skolem-quant-nested", no_argument, nullptr, 735 }, |
1548 |
|
{ "prenex-quant-user", no_argument, nullptr, 736 }, |
1549 |
|
{ "no-prenex-quant-user", no_argument, nullptr, 737 }, |
1550 |
|
{ "prenex-quant", required_argument, nullptr, 738 }, |
1551 |
|
{ "purify-triggers", no_argument, nullptr, 739 }, |
1552 |
|
{ "no-purify-triggers", no_argument, nullptr, 740 }, |
1553 |
|
{ "qcf-all-conflict", no_argument, nullptr, 741 }, |
1554 |
|
{ "no-qcf-all-conflict", no_argument, nullptr, 742 }, |
1555 |
|
{ "qcf-eager-check-rd", no_argument, nullptr, 743 }, |
1556 |
|
{ "no-qcf-eager-check-rd", no_argument, nullptr, 744 }, |
1557 |
|
{ "qcf-eager-test", no_argument, nullptr, 745 }, |
1558 |
|
{ "no-qcf-eager-test", no_argument, nullptr, 746 }, |
1559 |
|
{ "qcf-nested-conflict", no_argument, nullptr, 747 }, |
1560 |
|
{ "no-qcf-nested-conflict", no_argument, nullptr, 748 }, |
1561 |
|
{ "qcf-skip-rd", no_argument, nullptr, 749 }, |
1562 |
|
{ "no-qcf-skip-rd", no_argument, nullptr, 750 }, |
1563 |
|
{ "qcf-tconstraint", no_argument, nullptr, 751 }, |
1564 |
|
{ "no-qcf-tconstraint", no_argument, nullptr, 752 }, |
1565 |
|
{ "qcf-vo-exp", no_argument, nullptr, 753 }, |
1566 |
|
{ "no-qcf-vo-exp", no_argument, nullptr, 754 }, |
1567 |
|
{ "quant-alpha-equiv", no_argument, nullptr, 755 }, |
1568 |
|
{ "no-quant-alpha-equiv", no_argument, nullptr, 756 }, |
1569 |
|
{ "quant-cf", no_argument, nullptr, 757 }, |
1570 |
|
{ "no-quant-cf", no_argument, nullptr, 758 }, |
1571 |
|
{ "quant-cf-mode", required_argument, nullptr, 759 }, |
1572 |
|
{ "quant-cf-when", required_argument, nullptr, 760 }, |
1573 |
|
{ "quant-dsplit-mode", required_argument, nullptr, 761 }, |
1574 |
|
{ "quant-fun-wd", no_argument, nullptr, 762 }, |
1575 |
|
{ "no-quant-fun-wd", no_argument, nullptr, 763 }, |
1576 |
|
{ "quant-ind", no_argument, nullptr, 764 }, |
1577 |
|
{ "no-quant-ind", no_argument, nullptr, 765 }, |
1578 |
|
{ "quant-rep-mode", required_argument, nullptr, 766 }, |
1579 |
|
{ "quant-split", no_argument, nullptr, 767 }, |
1580 |
|
{ "no-quant-split", no_argument, nullptr, 768 }, |
1581 |
|
{ "register-quant-body-terms", no_argument, nullptr, 769 }, |
1582 |
|
{ "no-register-quant-body-terms", no_argument, nullptr, 770 }, |
1583 |
|
{ "relational-triggers", no_argument, nullptr, 771 }, |
1584 |
|
{ "no-relational-triggers", no_argument, nullptr, 772 }, |
1585 |
|
{ "relevant-triggers", no_argument, nullptr, 773 }, |
1586 |
|
{ "no-relevant-triggers", no_argument, nullptr, 774 }, |
1587 |
|
{ "strict-triggers", no_argument, nullptr, 775 }, |
1588 |
|
{ "no-strict-triggers", no_argument, nullptr, 776 }, |
1589 |
|
{ "sygus", no_argument, nullptr, 777 }, |
1590 |
|
{ "no-sygus", no_argument, nullptr, 778 }, |
1591 |
|
{ "sygus-active-gen-cfactor", required_argument, nullptr, 779 }, |
1592 |
|
{ "sygus-active-gen", required_argument, nullptr, 780 }, |
1593 |
|
{ "sygus-add-const-grammar", no_argument, nullptr, 781 }, |
1594 |
|
{ "no-sygus-add-const-grammar", no_argument, nullptr, 782 }, |
1595 |
|
{ "sygus-arg-relevant", no_argument, nullptr, 783 }, |
1596 |
|
{ "no-sygus-arg-relevant", no_argument, nullptr, 784 }, |
1597 |
|
{ "sygus-auto-unfold", no_argument, nullptr, 785 }, |
1598 |
|
{ "no-sygus-auto-unfold", no_argument, nullptr, 786 }, |
1599 |
|
{ "sygus-bool-ite-return-const", no_argument, nullptr, 787 }, |
1600 |
|
{ "no-sygus-bool-ite-return-const", no_argument, nullptr, 788 }, |
1601 |
|
{ "sygus-core-connective", no_argument, nullptr, 789 }, |
1602 |
|
{ "no-sygus-core-connective", no_argument, nullptr, 790 }, |
1603 |
|
{ "sygus-crepair-abort", no_argument, nullptr, 791 }, |
1604 |
|
{ "no-sygus-crepair-abort", no_argument, nullptr, 792 }, |
1605 |
|
{ "sygus-eval-opt", no_argument, nullptr, 793 }, |
1606 |
|
{ "no-sygus-eval-opt", no_argument, nullptr, 794 }, |
1607 |
|
{ "sygus-eval-unfold", no_argument, nullptr, 795 }, |
1608 |
|
{ "no-sygus-eval-unfold", no_argument, nullptr, 796 }, |
1609 |
|
{ "sygus-eval-unfold-bool", no_argument, nullptr, 797 }, |
1610 |
|
{ "no-sygus-eval-unfold-bool", no_argument, nullptr, 798 }, |
1611 |
|
{ "sygus-expr-miner-check-timeout", required_argument, nullptr, 799 }, |
1612 |
|
{ "sygus-ext-rew", no_argument, nullptr, 800 }, |
1613 |
|
{ "no-sygus-ext-rew", no_argument, nullptr, 801 }, |
1614 |
|
{ "sygus-filter-sol-rev", no_argument, nullptr, 802 }, |
1615 |
|
{ "no-sygus-filter-sol-rev", no_argument, nullptr, 803 }, |
1616 |
|
{ "sygus-filter-sol", required_argument, nullptr, 804 }, |
1617 |
|
{ "sygus-grammar-cons", required_argument, nullptr, 805 }, |
1618 |
|
{ "sygus-grammar-norm", no_argument, nullptr, 806 }, |
1619 |
|
{ "no-sygus-grammar-norm", no_argument, nullptr, 807 }, |
1620 |
|
{ "sygus-inference", no_argument, nullptr, 808 }, |
1621 |
|
{ "no-sygus-inference", no_argument, nullptr, 809 }, |
1622 |
|
{ "sygus-inst", no_argument, nullptr, 810 }, |
1623 |
|
{ "no-sygus-inst", no_argument, nullptr, 811 }, |
1624 |
|
{ "sygus-inst-mode", required_argument, nullptr, 812 }, |
1625 |
|
{ "sygus-inst-scope", required_argument, nullptr, 813 }, |
1626 |
|
{ "sygus-inst-term-sel", required_argument, nullptr, 814 }, |
1627 |
|
{ "sygus-inv-templ-when-sg", no_argument, nullptr, 815 }, |
1628 |
|
{ "no-sygus-inv-templ-when-sg", no_argument, nullptr, 816 }, |
1629 |
|
{ "sygus-inv-templ", required_argument, nullptr, 817 }, |
1630 |
|
{ "sygus-min-grammar", no_argument, nullptr, 818 }, |
1631 |
|
{ "no-sygus-min-grammar", no_argument, nullptr, 819 }, |
1632 |
|
{ "sygus-pbe", no_argument, nullptr, 820 }, |
1633 |
|
{ "no-sygus-pbe", no_argument, nullptr, 821 }, |
1634 |
|
{ "sygus-pbe-multi-fair", no_argument, nullptr, 822 }, |
1635 |
|
{ "no-sygus-pbe-multi-fair", no_argument, nullptr, 823 }, |
1636 |
|
{ "sygus-pbe-multi-fair-diff", required_argument, nullptr, 824 }, |
1637 |
|
{ "sygus-qe-preproc", no_argument, nullptr, 825 }, |
1638 |
|
{ "no-sygus-qe-preproc", no_argument, nullptr, 826 }, |
1639 |
|
{ "sygus-query-gen", no_argument, nullptr, 827 }, |
1640 |
|
{ "no-sygus-query-gen", no_argument, nullptr, 828 }, |
1641 |
|
{ "sygus-query-gen-check", no_argument, nullptr, 829 }, |
1642 |
|
{ "no-sygus-query-gen-check", no_argument, nullptr, 830 }, |
1643 |
|
{ "sygus-query-gen-dump-files", required_argument, nullptr, 831 }, |
1644 |
|
{ "sygus-query-gen-thresh", required_argument, nullptr, 832 }, |
1645 |
|
{ "sygus-rec-fun", no_argument, nullptr, 833 }, |
1646 |
|
{ "no-sygus-rec-fun", no_argument, nullptr, 834 }, |
1647 |
|
{ "sygus-rec-fun-eval-limit", required_argument, nullptr, 835 }, |
1648 |
|
{ "sygus-repair-const", no_argument, nullptr, 836 }, |
1649 |
|
{ "no-sygus-repair-const", no_argument, nullptr, 837 }, |
1650 |
|
{ "sygus-repair-const-timeout", required_argument, nullptr, 838 }, |
1651 |
|
{ "sygus-rr", no_argument, nullptr, 839 }, |
1652 |
|
{ "no-sygus-rr", no_argument, nullptr, 840 }, |
1653 |
|
{ "sygus-rr-synth", no_argument, nullptr, 841 }, |
1654 |
|
{ "no-sygus-rr-synth", no_argument, nullptr, 842 }, |
1655 |
|
{ "sygus-rr-synth-accel", no_argument, nullptr, 843 }, |
1656 |
|
{ "no-sygus-rr-synth-accel", no_argument, nullptr, 844 }, |
1657 |
|
{ "sygus-rr-synth-check", no_argument, nullptr, 845 }, |
1658 |
|
{ "no-sygus-rr-synth-check", no_argument, nullptr, 846 }, |
1659 |
|
{ "sygus-rr-synth-filter-cong", no_argument, nullptr, 847 }, |
1660 |
|
{ "no-sygus-rr-synth-filter-cong", no_argument, nullptr, 848 }, |
1661 |
|
{ "sygus-rr-synth-filter-match", no_argument, nullptr, 849 }, |
1662 |
|
{ "no-sygus-rr-synth-filter-match", no_argument, nullptr, 850 }, |
1663 |
|
{ "sygus-rr-synth-filter-nl", no_argument, nullptr, 851 }, |
1664 |
|
{ "no-sygus-rr-synth-filter-nl", no_argument, nullptr, 852 }, |
1665 |
|
{ "sygus-rr-synth-filter-order", no_argument, nullptr, 853 }, |
1666 |
|
{ "no-sygus-rr-synth-filter-order", no_argument, nullptr, 854 }, |
1667 |
|
{ "sygus-rr-synth-input", no_argument, nullptr, 855 }, |
1668 |
|
{ "no-sygus-rr-synth-input", no_argument, nullptr, 856 }, |
1669 |
|
{ "sygus-rr-synth-input-nvars", required_argument, nullptr, 857 }, |
1670 |
|
{ "sygus-rr-synth-input-use-bool", no_argument, nullptr, 858 }, |
1671 |
|
{ "no-sygus-rr-synth-input-use-bool", no_argument, nullptr, 859 }, |
1672 |
|
{ "sygus-rr-synth-rec", no_argument, nullptr, 860 }, |
1673 |
|
{ "no-sygus-rr-synth-rec", no_argument, nullptr, 861 }, |
1674 |
|
{ "sygus-rr-verify", no_argument, nullptr, 862 }, |
1675 |
|
{ "no-sygus-rr-verify", no_argument, nullptr, 863 }, |
1676 |
|
{ "sygus-rr-verify-abort", no_argument, nullptr, 864 }, |
1677 |
|
{ "no-sygus-rr-verify-abort", no_argument, nullptr, 865 }, |
1678 |
|
{ "sygus-sample-fp-uniform", no_argument, nullptr, 866 }, |
1679 |
|
{ "no-sygus-sample-fp-uniform", no_argument, nullptr, 867 }, |
1680 |
|
{ "sygus-sample-grammar", no_argument, nullptr, 868 }, |
1681 |
|
{ "no-sygus-sample-grammar", no_argument, nullptr, 869 }, |
1682 |
|
{ "sygus-samples", required_argument, nullptr, 870 }, |
1683 |
|
{ "sygus-si-abort", no_argument, nullptr, 871 }, |
1684 |
|
{ "no-sygus-si-abort", no_argument, nullptr, 872 }, |
1685 |
|
{ "sygus-si-partial", no_argument, nullptr, 873 }, |
1686 |
|
{ "no-sygus-si-partial", no_argument, nullptr, 874 }, |
1687 |
|
{ "sygus-si-rcons-limit", required_argument, nullptr, 875 }, |
1688 |
|
{ "sygus-si-rcons", required_argument, nullptr, 876 }, |
1689 |
|
{ "sygus-si-reconstruct-const", no_argument, nullptr, 877 }, |
1690 |
|
{ "no-sygus-si-reconstruct-const", no_argument, nullptr, 878 }, |
1691 |
|
{ "sygus-si", required_argument, nullptr, 879 }, |
1692 |
|
{ "sygus-stream", no_argument, nullptr, 880 }, |
1693 |
|
{ "no-sygus-stream", no_argument, nullptr, 881 }, |
1694 |
|
{ "sygus-templ-embed-grammar", no_argument, nullptr, 882 }, |
1695 |
|
{ "no-sygus-templ-embed-grammar", no_argument, nullptr, 883 }, |
1696 |
|
{ "sygus-unif-cond-independent-no-repeat-sol", no_argument, nullptr, 884 }, |
1697 |
|
{ "no-sygus-unif-cond-independent-no-repeat-sol", no_argument, nullptr, 885 }, |
1698 |
|
{ "sygus-unif-pi", required_argument, nullptr, 886 }, |
1699 |
|
{ "sygus-unif-shuffle-cond", no_argument, nullptr, 887 }, |
1700 |
|
{ "no-sygus-unif-shuffle-cond", no_argument, nullptr, 888 }, |
1701 |
|
{ "sygus-verify-inst-max-rounds", required_argument, nullptr, 889 }, |
1702 |
|
{ "term-db-cd", no_argument, nullptr, 890 }, |
1703 |
|
{ "no-term-db-cd", no_argument, nullptr, 891 }, |
1704 |
|
{ "term-db-mode", required_argument, nullptr, 892 }, |
1705 |
|
{ "trigger-active-sel", required_argument, nullptr, 893 }, |
1706 |
|
{ "trigger-sel", required_argument, nullptr, 894 }, |
1707 |
|
{ "user-pat", required_argument, nullptr, 895 }, |
1708 |
|
{ "var-elim-quant", no_argument, nullptr, 896 }, |
1709 |
|
{ "no-var-elim-quant", no_argument, nullptr, 897 }, |
1710 |
|
{ "var-ineq-elim-quant", no_argument, nullptr, 898 }, |
1711 |
|
{ "no-var-ineq-elim-quant", no_argument, nullptr, 899 }, |
1712 |
|
{ "sep-check-neg", no_argument, nullptr, 900 }, |
1713 |
|
{ "no-sep-check-neg", no_argument, nullptr, 901 }, |
1714 |
|
{ "sep-child-refine", no_argument, nullptr, 902 }, |
1715 |
|
{ "no-sep-child-refine", no_argument, nullptr, 903 }, |
1716 |
|
{ "sep-deq-c", no_argument, nullptr, 904 }, |
1717 |
|
{ "no-sep-deq-c", no_argument, nullptr, 905 }, |
1718 |
|
{ "sep-exp", no_argument, nullptr, 906 }, |
1719 |
|
{ "no-sep-exp", no_argument, nullptr, 907 }, |
1720 |
|
{ "sep-min-refine", no_argument, nullptr, 908 }, |
1721 |
|
{ "no-sep-min-refine", no_argument, nullptr, 909 }, |
1722 |
|
{ "sep-pre-skolem-emp", no_argument, nullptr, 910 }, |
1723 |
|
{ "no-sep-pre-skolem-emp", no_argument, nullptr, 911 }, |
1724 |
|
{ "sets-ext", no_argument, nullptr, 912 }, |
1725 |
|
{ "no-sets-ext", no_argument, nullptr, 913 }, |
1726 |
|
{ "sets-infer-as-lemmas", no_argument, nullptr, 914 }, |
1727 |
|
{ "no-sets-infer-as-lemmas", no_argument, nullptr, 915 }, |
1728 |
|
{ "sets-proxy-lemmas", no_argument, nullptr, 916 }, |
1729 |
|
{ "no-sets-proxy-lemmas", no_argument, nullptr, 917 }, |
1730 |
|
{ "abstract-values", no_argument, nullptr, 918 }, |
1731 |
|
{ "no-abstract-values", no_argument, nullptr, 919 }, |
1732 |
|
{ "ackermann", no_argument, nullptr, 920 }, |
1733 |
|
{ "no-ackermann", no_argument, nullptr, 921 }, |
1734 |
|
{ "block-models", required_argument, nullptr, 922 }, |
1735 |
|
{ "bvand-integer-granularity", required_argument, nullptr, 923 }, |
1736 |
|
{ "check-abducts", no_argument, nullptr, 924 }, |
1737 |
|
{ "no-check-abducts", no_argument, nullptr, 925 }, |
1738 |
|
{ "check-interpols", no_argument, nullptr, 926 }, |
1739 |
|
{ "no-check-interpols", no_argument, nullptr, 927 }, |
1740 |
|
{ "check-models", no_argument, nullptr, 928 }, |
1741 |
|
{ "no-check-models", no_argument, nullptr, 929 }, |
1742 |
|
{ "check-proofs", no_argument, nullptr, 930 }, |
1743 |
|
{ "no-check-proofs", no_argument, nullptr, 931 }, |
1744 |
|
{ "check-synth-sol", no_argument, nullptr, 932 }, |
1745 |
|
{ "no-check-synth-sol", no_argument, nullptr, 933 }, |
1746 |
|
{ "check-unsat-cores", no_argument, nullptr, 934 }, |
1747 |
|
{ "no-check-unsat-cores", no_argument, nullptr, 935 }, |
1748 |
|
{ "debug-check-models", no_argument, nullptr, 936 }, |
1749 |
|
{ "no-debug-check-models", no_argument, nullptr, 937 }, |
1750 |
|
{ "dump-to", required_argument, nullptr, 938 }, |
1751 |
|
{ "dump", required_argument, nullptr, 939 }, |
1752 |
|
{ "early-ite-removal", no_argument, nullptr, 940 }, |
1753 |
|
{ "no-early-ite-removal", no_argument, nullptr, 941 }, |
1754 |
|
{ "expand-definitions", no_argument, nullptr, 942 }, |
1755 |
|
{ "no-expand-definitions", no_argument, nullptr, 943 }, |
1756 |
|
{ "ext-rew-prep", no_argument, nullptr, 944 }, |
1757 |
|
{ "no-ext-rew-prep", no_argument, nullptr, 945 }, |
1758 |
|
{ "ext-rew-prep-agg", no_argument, nullptr, 946 }, |
1759 |
|
{ "no-ext-rew-prep-agg", no_argument, nullptr, 947 }, |
1760 |
|
{ "foreign-theory-rewrite", no_argument, nullptr, 948 }, |
1761 |
|
{ "no-foreign-theory-rewrite", no_argument, nullptr, 949 }, |
1762 |
|
{ "iand-mode", required_argument, nullptr, 950 }, |
1763 |
|
{ "interactive-mode", no_argument, nullptr, 951 }, |
1764 |
|
{ "no-interactive-mode", no_argument, nullptr, 952 }, |
1765 |
|
{ "ite-simp", no_argument, nullptr, 953 }, |
1766 |
|
{ "no-ite-simp", no_argument, nullptr, 954 }, |
1767 |
|
{ "learned-rewrite", no_argument, nullptr, 955 }, |
1768 |
|
{ "no-learned-rewrite", no_argument, nullptr, 956 }, |
1769 |
|
{ "minimal-unsat-cores", no_argument, nullptr, 957 }, |
1770 |
|
{ "no-minimal-unsat-cores", no_argument, nullptr, 958 }, |
1771 |
|
{ "model-cores", required_argument, nullptr, 959 }, |
1772 |
|
{ "model-u-print", required_argument, nullptr, 960 }, |
1773 |
|
{ "model-uninterp-print", required_argument, nullptr, 961 }, |
1774 |
|
{ "model-witness-value", no_argument, nullptr, 962 }, |
1775 |
|
{ "no-model-witness-value", no_argument, nullptr, 963 }, |
1776 |
|
{ "on-repeat-ite-simp", no_argument, nullptr, 964 }, |
1777 |
|
{ "no-on-repeat-ite-simp", no_argument, nullptr, 965 }, |
1778 |
|
{ "produce-abducts", no_argument, nullptr, 966 }, |
1779 |
|
{ "no-produce-abducts", no_argument, nullptr, 967 }, |
1780 |
|
{ "produce-assertions", no_argument, nullptr, 968 }, |
1781 |
|
{ "no-produce-assertions", no_argument, nullptr, 969 }, |
1782 |
|
{ "produce-assignments", no_argument, nullptr, 970 }, |
1783 |
|
{ "no-produce-assignments", no_argument, nullptr, 971 }, |
1784 |
|
{ "produce-interpols", required_argument, nullptr, 972 }, |
1785 |
|
{ "produce-models", no_argument, nullptr, 973 }, |
1786 |
|
{ "no-produce-models", no_argument, nullptr, 974 }, |
1787 |
|
{ "produce-proofs", no_argument, nullptr, 975 }, |
1788 |
|
{ "no-produce-proofs", no_argument, nullptr, 976 }, |
1789 |
|
{ "produce-unsat-assumptions", no_argument, nullptr, 977 }, |
1790 |
|
{ "no-produce-unsat-assumptions", no_argument, nullptr, 978 }, |
1791 |
|
{ "produce-unsat-cores", no_argument, nullptr, 979 }, |
1792 |
|
{ "no-produce-unsat-cores", no_argument, nullptr, 980 }, |
1793 |
|
{ "repeat-simp", no_argument, nullptr, 981 }, |
1794 |
|
{ "no-repeat-simp", no_argument, nullptr, 982 }, |
1795 |
|
{ "simp-ite-compress", no_argument, nullptr, 983 }, |
1796 |
|
{ "no-simp-ite-compress", no_argument, nullptr, 984 }, |
1797 |
|
{ "simp-ite-hunt-zombies", required_argument, nullptr, 985 }, |
1798 |
|
{ "simp-with-care", no_argument, nullptr, 986 }, |
1799 |
|
{ "no-simp-with-care", no_argument, nullptr, 987 }, |
1800 |
|
{ "simplification", required_argument, nullptr, 988 }, |
1801 |
|
{ "simplification-mode", required_argument, nullptr, 989 }, |
1802 |
|
{ "solve-bv-as-int", required_argument, nullptr, 990 }, |
1803 |
|
{ "solve-int-as-bv", required_argument, nullptr, 991 }, |
1804 |
|
{ "solve-real-as-int", no_argument, nullptr, 992 }, |
1805 |
|
{ "no-solve-real-as-int", no_argument, nullptr, 993 }, |
1806 |
|
{ "sort-inference", no_argument, nullptr, 994 }, |
1807 |
|
{ "no-sort-inference", no_argument, nullptr, 995 }, |
1808 |
|
{ "static-learning", no_argument, nullptr, 996 }, |
1809 |
|
{ "no-static-learning", no_argument, nullptr, 997 }, |
1810 |
|
{ "sygus-out", required_argument, nullptr, 998 }, |
1811 |
|
{ "sygus-print-callbacks", no_argument, nullptr, 999 }, |
1812 |
|
{ "no-sygus-print-callbacks", no_argument, nullptr, 1000 }, |
1813 |
|
{ "unconstrained-simp", no_argument, nullptr, 1001 }, |
1814 |
|
{ "no-unconstrained-simp", no_argument, nullptr, 1002 }, |
1815 |
|
{ "unsat-cores-mode", required_argument, nullptr, 1003 }, |
1816 |
|
{ "re-elim", no_argument, nullptr, 1004 }, |
1817 |
|
{ "no-re-elim", no_argument, nullptr, 1005 }, |
1818 |
|
{ "re-elim-agg", no_argument, nullptr, 1006 }, |
1819 |
|
{ "no-re-elim-agg", no_argument, nullptr, 1007 }, |
1820 |
|
{ "re-inter-mode", required_argument, nullptr, 1008 }, |
1821 |
|
{ "strings-check-entail-len", no_argument, nullptr, 1009 }, |
1822 |
|
{ "no-strings-check-entail-len", no_argument, nullptr, 1010 }, |
1823 |
|
{ "strings-eager", no_argument, nullptr, 1011 }, |
1824 |
|
{ "no-strings-eager", no_argument, nullptr, 1012 }, |
1825 |
|
{ "strings-eager-eval", no_argument, nullptr, 1013 }, |
1826 |
|
{ "no-strings-eager-eval", no_argument, nullptr, 1014 }, |
1827 |
|
{ "strings-eager-len", no_argument, nullptr, 1015 }, |
1828 |
|
{ "no-strings-eager-len", no_argument, nullptr, 1016 }, |
1829 |
|
{ "strings-exp", no_argument, nullptr, 1017 }, |
1830 |
|
{ "no-strings-exp", no_argument, nullptr, 1018 }, |
1831 |
|
{ "strings-ff", no_argument, nullptr, 1019 }, |
1832 |
|
{ "no-strings-ff", no_argument, nullptr, 1020 }, |
1833 |
|
{ "strings-fmf", no_argument, nullptr, 1021 }, |
1834 |
|
{ "no-strings-fmf", no_argument, nullptr, 1022 }, |
1835 |
|
{ "strings-guess-model", no_argument, nullptr, 1023 }, |
1836 |
|
{ "no-strings-guess-model", no_argument, nullptr, 1024 }, |
1837 |
|
{ "strings-infer-as-lemmas", no_argument, nullptr, 1025 }, |
1838 |
|
{ "no-strings-infer-as-lemmas", no_argument, nullptr, 1026 }, |
1839 |
|
{ "strings-infer-sym", no_argument, nullptr, 1027 }, |
1840 |
|
{ "no-strings-infer-sym", no_argument, nullptr, 1028 }, |
1841 |
|
{ "strings-lazy-pp", no_argument, nullptr, 1029 }, |
1842 |
|
{ "no-strings-lazy-pp", no_argument, nullptr, 1030 }, |
1843 |
|
{ "strings-len-norm", no_argument, nullptr, 1031 }, |
1844 |
|
{ "no-strings-len-norm", no_argument, nullptr, 1032 }, |
1845 |
|
{ "strings-lprop-csp", no_argument, nullptr, 1033 }, |
1846 |
|
{ "no-strings-lprop-csp", no_argument, nullptr, 1034 }, |
1847 |
|
{ "strings-min-prefix-explain", no_argument, nullptr, 1035 }, |
1848 |
|
{ "no-strings-min-prefix-explain", no_argument, nullptr, 1036 }, |
1849 |
|
{ "strings-process-loop-mode", required_argument, nullptr, 1037 }, |
1850 |
|
{ "strings-rexplain-lemmas", no_argument, nullptr, 1038 }, |
1851 |
|
{ "no-strings-rexplain-lemmas", no_argument, nullptr, 1039 }, |
1852 |
|
{ "strings-unified-vspt", no_argument, nullptr, 1040 }, |
1853 |
|
{ "no-strings-unified-vspt", no_argument, nullptr, 1041 }, |
1854 |
|
{ "assign-function-values", no_argument, nullptr, 1042 }, |
1855 |
|
{ "no-assign-function-values", no_argument, nullptr, 1043 }, |
1856 |
|
{ "condense-function-values", no_argument, nullptr, 1044 }, |
1857 |
|
{ "no-condense-function-values", no_argument, nullptr, 1045 }, |
1858 |
|
{ "ee-mode", required_argument, nullptr, 1046 }, |
1859 |
|
{ "relevance-filter", no_argument, nullptr, 1047 }, |
1860 |
|
{ "no-relevance-filter", no_argument, nullptr, 1048 }, |
1861 |
|
{ "tc-mode", required_argument, nullptr, 1049 }, |
1862 |
|
{ "theoryof-mode", required_argument, nullptr, 1050 }, |
1863 |
|
{ "symmetry-breaker", no_argument, nullptr, 1051 }, |
1864 |
|
{ "uf-symmetry-breaker", no_argument, nullptr, 1052 }, |
1865 |
|
{ "no-symmetry-breaker", no_argument, nullptr, 1053 }, |
1866 |
|
{ "no-uf-symmetry-breaker", no_argument, nullptr, 1054 }, |
1867 |
|
{ "uf-ho", no_argument, nullptr, 1055 }, |
1868 |
|
{ "no-uf-ho", no_argument, nullptr, 1056 }, |
1869 |
|
{ "uf-ho-ext", no_argument, nullptr, 1057 }, |
1870 |
|
{ "no-uf-ho-ext", no_argument, nullptr, 1058 }, |
1871 |
|
{ "uf-ss-abort-card", required_argument, nullptr, 1059 }, |
1872 |
|
{ "uf-ss-fair", no_argument, nullptr, 1060 }, |
1873 |
|
{ "no-uf-ss-fair", no_argument, nullptr, 1061 }, |
1874 |
|
{ "uf-ss-fair-monotone", no_argument, nullptr, 1062 }, |
1875 |
|
{ "no-uf-ss-fair-monotone", no_argument, nullptr, 1063 }, |
1876 |
|
{ "uf-ss-totality-limited", required_argument, nullptr, 1064 }, |
1877 |
|
{ "uf-ss-totality-sym-break", no_argument, nullptr, 1065 }, |
1878 |
|
{ "no-uf-ss-totality-sym-break", no_argument, nullptr, 1066 }, |
1879 |
|
{ "uf-ss", required_argument, nullptr, 1067 }, |
1880 |
|
{nullptr, no_argument, nullptr, '\0'}}; |
1881 |
|
// clang-format on |
1882 |
|
|
1883 |
|
std::string suggestCommandLineOptions(const std::string& optionName) |
1884 |
|
{ |
1885 |
|
DidYouMean didYouMean; |
1886 |
|
|
1887 |
|
const char* opt; |
1888 |
|
for(size_t i = 0; (opt = cmdlineOptions[i].name) != nullptr; ++i) { |
1889 |
|
didYouMean.addWord(std::string("--") + cmdlineOptions[i].name); |
1890 |
|
} |
1891 |
|
|
1892 |
|
return didYouMean.getMatchAsString(optionName.substr(0, optionName.find('='))); |
1893 |
|
} |
1894 |
|
|
1895 |
|
/** |
1896 |
|
* This is a default handler for options of built-in C++ type. This |
1897 |
|
* template is really just a helper for the handleOption() template, |
1898 |
|
* below. Variants of this template handle numeric and non-numeric, |
1899 |
|
* integral and non-integral, signed and unsigned C++ types. |
1900 |
|
* handleOption() makes sure to instantiate the right one. |
1901 |
|
* |
1902 |
|
* This implements default behavior when e.g. an option is |
1903 |
|
* unsigned but the user specifies a negative argument; etc. |
1904 |
|
*/ |
1905 |
|
template <class T, bool is_numeric, bool is_integer> |
1906 |
|
struct OptionHandler { |
1907 |
|
static T handle(const std::string& option, const std::string& flag, const std::string& optionarg); |
1908 |
|
};/* struct OptionHandler<> */ |
1909 |
|
|
1910 |
|
/** Variant for integral C++ types */ |
1911 |
|
template <class T> |
1912 |
|
struct OptionHandler<T, true, true> { |
1913 |
134 |
static bool stringToInt(T& t, const std::string& str) { |
1914 |
268 |
std::istringstream ss(str); |
1915 |
134 |
ss >> t; |
1916 |
|
char tmp; |
1917 |
268 |
return !(ss.fail() || ss.get(tmp)); |
1918 |
|
} |
1919 |
|
|
1920 |
101 |
static bool containsMinus(const std::string& str) { |
1921 |
101 |
return str.find('-') != std::string::npos; |
1922 |
|
} |
1923 |
|
|
1924 |
134 |
static T handle(const std::string& option, const std::string& flag, const std::string& optionarg) { |
1925 |
|
try { |
1926 |
|
T i; |
1927 |
134 |
bool success = stringToInt(i, optionarg); |
1928 |
|
|
1929 |
134 |
if(!success){ |
1930 |
|
throw OptionException(flag + ": failed to parse "+ optionarg + |
1931 |
|
" as an integer of the appropriate type."); |
1932 |
|
} |
1933 |
|
|
1934 |
|
// Depending in the platform unsigned numbers with '-' signs may parse. |
1935 |
|
// Reject these by looking for any minus if it is not signed. |
1936 |
101 |
if( (! std::numeric_limits<T>::is_signed) && containsMinus(optionarg) ) { |
1937 |
|
// unsigned type but user gave negative argument |
1938 |
|
throw OptionException(flag + " requires a nonnegative argument"); |
1939 |
134 |
} else if(i < std::numeric_limits<T>::min()) { |
1940 |
|
// negative overflow for type |
1941 |
|
std::stringstream ss; |
1942 |
|
ss << flag << " requires an argument >= " |
1943 |
|
<< std::numeric_limits<T>::min(); |
1944 |
|
throw OptionException(ss.str()); |
1945 |
134 |
} else if(i > std::numeric_limits<T>::max()) { |
1946 |
|
// positive overflow for type |
1947 |
|
std::stringstream ss; |
1948 |
|
ss << flag << " requires an argument <= " |
1949 |
|
<< std::numeric_limits<T>::max(); |
1950 |
|
throw OptionException(ss.str()); |
1951 |
|
} |
1952 |
|
|
1953 |
134 |
return i; |
1954 |
|
|
1955 |
|
// if(std::numeric_limits<T>::is_signed) { |
1956 |
|
// return T(i.getLong()); |
1957 |
|
// } else { |
1958 |
|
// return T(i.getUnsignedLong()); |
1959 |
|
// } |
1960 |
|
} catch(std::invalid_argument&) { |
1961 |
|
// user gave something other than an integer |
1962 |
|
throw OptionException(flag + " requires an integer argument"); |
1963 |
|
} |
1964 |
|
} |
1965 |
|
};/* struct OptionHandler<T, true, true> */ |
1966 |
|
|
1967 |
|
/** Variant for numeric but non-integral C++ types */ |
1968 |
|
template <class T> |
1969 |
|
struct OptionHandler<T, true, false> { |
1970 |
|
static T handle(const std::string& option, const std::string& flag, const std::string& optionarg) { |
1971 |
|
std::stringstream inss(optionarg); |
1972 |
|
long double r; |
1973 |
|
inss >> r; |
1974 |
|
if(! inss.eof()) { |
1975 |
|
// we didn't consume the whole string (junk at end) |
1976 |
|
throw OptionException(flag + " requires a numeric argument"); |
1977 |
|
} |
1978 |
|
|
1979 |
|
if(! std::numeric_limits<T>::is_signed && r < 0.0) { |
1980 |
|
// unsigned type but user gave negative value |
1981 |
|
throw OptionException(flag + " requires a nonnegative argument"); |
1982 |
|
} else if(r < -std::numeric_limits<T>::max()) { |
1983 |
|
// negative overflow for type |
1984 |
|
std::stringstream ss; |
1985 |
|
ss << flag << " requires an argument >= " |
1986 |
|
<< -std::numeric_limits<T>::max(); |
1987 |
|
throw OptionException(ss.str()); |
1988 |
|
} else if(r > std::numeric_limits<T>::max()) { |
1989 |
|
// positive overflow for type |
1990 |
|
std::stringstream ss; |
1991 |
|
ss << flag << " requires an argument <= " |
1992 |
|
<< std::numeric_limits<T>::max(); |
1993 |
|
throw OptionException(ss.str()); |
1994 |
|
} |
1995 |
|
|
1996 |
|
return T(r); |
1997 |
|
} |
1998 |
|
};/* struct OptionHandler<T, true, false> */ |
1999 |
|
|
2000 |
|
/** Variant for non-numeric C++ types */ |
2001 |
|
template <class T> |
2002 |
|
struct OptionHandler<T, false, false> { |
2003 |
|
static T handle(const std::string& option, const std::string& flag, const std::string& optionarg) { |
2004 |
|
T::unsupported_handleOption_call___please_write_me; |
2005 |
|
// The above line causes a compiler error if this version of the template |
2006 |
|
// is ever instantiated (meaning that a specialization is missing). So |
2007 |
|
// don't worry about the segfault in the next line, the "return" is only |
2008 |
|
// there to keep the compiler from giving additional, distracting errors |
2009 |
|
// and warnings. |
2010 |
|
return *(T*)0; |
2011 |
|
} |
2012 |
|
};/* struct OptionHandler<T, false, false> */ |
2013 |
|
|
2014 |
|
/** Specialization for ManagedErr */ |
2015 |
|
template <> |
2016 |
|
struct OptionHandler<ManagedErr, false, false> |
2017 |
|
{ |
2018 |
|
static ManagedErr handle(const std::string& option, |
2019 |
|
const std::string& flag, |
2020 |
|
const std::string& optionarg) |
2021 |
|
{ |
2022 |
|
ManagedErr res; |
2023 |
|
res.open(optionarg); |
2024 |
|
return res; |
2025 |
|
} |
2026 |
|
}; |
2027 |
|
/** Specialization for ManagedIn */ |
2028 |
|
template <> |
2029 |
|
struct OptionHandler<ManagedIn, false, false> |
2030 |
|
{ |
2031 |
|
static ManagedIn handle(const std::string& option, |
2032 |
|
const std::string& flag, |
2033 |
|
const std::string& optionarg) |
2034 |
|
{ |
2035 |
|
ManagedIn res; |
2036 |
|
res.open(optionarg); |
2037 |
|
return res; |
2038 |
|
} |
2039 |
|
}; |
2040 |
|
/** Specialization for ManagedOut */ |
2041 |
|
template <> |
2042 |
|
struct OptionHandler<ManagedOut, false, false> |
2043 |
|
{ |
2044 |
|
static ManagedOut handle(const std::string& option, |
2045 |
|
const std::string& flag, |
2046 |
|
const std::string& optionarg) |
2047 |
|
{ |
2048 |
|
ManagedOut res; |
2049 |
|
res.open(optionarg); |
2050 |
|
return res; |
2051 |
|
} |
2052 |
|
}; |
2053 |
|
|
2054 |
|
/** Handle an option of type T in the default way. */ |
2055 |
|
template <class T> |
2056 |
134 |
T handleOption(const std::string& option, const std::string& flag, const std::string& optionarg) { |
2057 |
134 |
return OptionHandler<T, std::numeric_limits<T>::is_specialized, std::numeric_limits<T>::is_integer>::handle(option, flag, optionarg); |
2058 |
|
} |
2059 |
|
|
2060 |
|
/** Handle an option of type std::string in the default way. */ |
2061 |
|
template <> |
2062 |
12 |
std::string handleOption<std::string>(const std::string& option, const std::string& flag, const std::string& optionarg) { |
2063 |
12 |
return optionarg; |
2064 |
|
} |
2065 |
|
|
2066 |
|
// clang-format off |
2067 |
|
|
2068 |
|
void assign_arith_maxApproxDepth(Options& opts, const std::string& option, const std::string& optionarg) { |
2069 |
|
auto value = handleOption<int64_t>("approx-branch-depth", option, optionarg); |
2070 |
|
|
2071 |
|
opts.arith.maxApproxDepth = value; |
2072 |
|
opts.arith.maxApproxDepthWasSetByUser = true; |
2073 |
|
Trace("options") << "user assigned option maxApproxDepth = " << value << std::endl; |
2074 |
|
} |
2075 |
|
|
2076 |
4 |
void assign_arith_brabTest(Options& opts, const std::string& option, bool value) { |
2077 |
|
|
2078 |
4 |
opts.arith.brabTest = value; |
2079 |
4 |
opts.arith.brabTestWasSetByUser = true; |
2080 |
4 |
Trace("options") << "user assigned option brabTest = " << value << std::endl; |
2081 |
4 |
} |
2082 |
|
|
2083 |
|
void assign_arith_arithCongMan(Options& opts, const std::string& option, bool value) { |
2084 |
|
|
2085 |
|
opts.arith.arithCongMan = value; |
2086 |
|
opts.arith.arithCongManWasSetByUser = true; |
2087 |
|
Trace("options") << "user assigned option arithCongMan = " << value << std::endl; |
2088 |
|
} |
2089 |
|
|
2090 |
6 |
void assign_arith_arithEqSolver(Options& opts, const std::string& option, bool value) { |
2091 |
|
|
2092 |
6 |
opts.arith.arithEqSolver = value; |
2093 |
6 |
opts.arith.arithEqSolverWasSetByUser = true; |
2094 |
6 |
Trace("options") << "user assigned option arithEqSolver = " << value << std::endl; |
2095 |
6 |
} |
2096 |
|
|
2097 |
3 |
void assign_arith_arithNoPartialFun(Options& opts, const std::string& option, bool value) { |
2098 |
|
|
2099 |
3 |
opts.arith.arithNoPartialFun = value; |
2100 |
3 |
opts.arith.arithNoPartialFunWasSetByUser = true; |
2101 |
3 |
Trace("options") << "user assigned option arithNoPartialFun = " << value << std::endl; |
2102 |
3 |
} |
2103 |
|
|
2104 |
|
void assign_arith_arithPropAsLemmaLength(Options& opts, const std::string& option, const std::string& optionarg) { |
2105 |
|
auto value = handleOption<uint64_t>("arith-prop-clauses", option, optionarg); |
2106 |
|
|
2107 |
|
opts.arith.arithPropAsLemmaLength = value; |
2108 |
|
opts.arith.arithPropAsLemmaLengthWasSetByUser = true; |
2109 |
|
Trace("options") << "user assigned option arithPropAsLemmaLength = " << value << std::endl; |
2110 |
|
} |
2111 |
|
|
2112 |
|
void assign_arith_arithPropagationMode(Options& opts, const std::string& option, const std::string& optionarg) { |
2113 |
|
auto value = stringToArithPropagationMode(optionarg); |
2114 |
|
|
2115 |
|
opts.arith.arithPropagationMode = value; |
2116 |
|
opts.arith.arithPropagationModeWasSetByUser = true; |
2117 |
|
Trace("options") << "user assigned option arithPropagationMode = " << value << std::endl; |
2118 |
|
} |
2119 |
|
|
2120 |
9 |
void assign_arith_arithRewriteEq(Options& opts, const std::string& option, bool value) { |
2121 |
|
|
2122 |
9 |
opts.arith.arithRewriteEq = value; |
2123 |
9 |
opts.arith.arithRewriteEqWasSetByUser = true; |
2124 |
9 |
Trace("options") << "user assigned option arithRewriteEq = " << value << std::endl; |
2125 |
9 |
} |
2126 |
|
|
2127 |
|
void assign_arith_collectPivots(Options& opts, const std::string& option, bool value) { |
2128 |
|
|
2129 |
|
opts.arith.collectPivots = value; |
2130 |
|
opts.arith.collectPivotsWasSetByUser = true; |
2131 |
|
Trace("options") << "user assigned option collectPivots = " << value << std::endl; |
2132 |
|
} |
2133 |
|
|
2134 |
|
void assign_arith_doCutAllBounded(Options& opts, const std::string& option, bool value) { |
2135 |
|
|
2136 |
|
opts.arith.doCutAllBounded = value; |
2137 |
|
opts.arith.doCutAllBoundedWasSetByUser = true; |
2138 |
|
Trace("options") << "user assigned option doCutAllBounded = " << value << std::endl; |
2139 |
|
} |
2140 |
|
|
2141 |
|
void assign_arith_exportDioDecompositions(Options& opts, const std::string& option, bool value) { |
2142 |
|
|
2143 |
|
opts.arith.exportDioDecompositions = value; |
2144 |
|
opts.arith.exportDioDecompositionsWasSetByUser = true; |
2145 |
|
Trace("options") << "user assigned option exportDioDecompositions = " << value << std::endl; |
2146 |
|
} |
2147 |
|
|
2148 |
|
void assign_arith_dioRepeat(Options& opts, const std::string& option, bool value) { |
2149 |
|
|
2150 |
|
opts.arith.dioRepeat = value; |
2151 |
|
opts.arith.dioRepeatWasSetByUser = true; |
2152 |
|
Trace("options") << "user assigned option dioRepeat = " << value << std::endl; |
2153 |
|
} |
2154 |
|
|
2155 |
|
void assign_arith_arithDioSolver(Options& opts, const std::string& option, bool value) { |
2156 |
|
|
2157 |
|
opts.arith.arithDioSolver = value; |
2158 |
|
opts.arith.arithDioSolverWasSetByUser = true; |
2159 |
|
Trace("options") << "user assigned option arithDioSolver = " << value << std::endl; |
2160 |
|
} |
2161 |
|
|
2162 |
|
void assign_arith_dioSolverTurns(Options& opts, const std::string& option, const std::string& optionarg) { |
2163 |
|
auto value = handleOption<int64_t>("dio-turns", option, optionarg); |
2164 |
|
|
2165 |
|
opts.arith.dioSolverTurns = value; |
2166 |
|
opts.arith.dioSolverTurnsWasSetByUser = true; |
2167 |
|
Trace("options") << "user assigned option dioSolverTurns = " << value << std::endl; |
2168 |
|
} |
2169 |
|
|
2170 |
|
void assign_arith_arithErrorSelectionRule(Options& opts, const std::string& option, const std::string& optionarg) { |
2171 |
|
auto value = stringToErrorSelectionRule(optionarg); |
2172 |
|
|
2173 |
|
opts.arith.arithErrorSelectionRule = value; |
2174 |
|
opts.arith.arithErrorSelectionRuleWasSetByUser = true; |
2175 |
|
Trace("options") << "user assigned option arithErrorSelectionRule = " << value << std::endl; |
2176 |
|
} |
2177 |
|
|
2178 |
|
void assign_arith_havePenalties(Options& opts, const std::string& option, bool value) { |
2179 |
|
|
2180 |
|
opts.arith.havePenalties = value; |
2181 |
|
opts.arith.havePenaltiesWasSetByUser = true; |
2182 |
|
Trace("options") << "user assigned option havePenalties = " << value << std::endl; |
2183 |
|
} |
2184 |
|
|
2185 |
|
void assign_arith_arithHeuristicPivots(Options& opts, const std::string& option, const std::string& optionarg) { |
2186 |
|
auto value = handleOption<int64_t>("heuristic-pivots", option, optionarg); |
2187 |
|
|
2188 |
|
opts.arith.arithHeuristicPivots = value; |
2189 |
|
opts.arith.arithHeuristicPivotsWasSetByUser = true; |
2190 |
|
Trace("options") << "user assigned option arithHeuristicPivots = " << value << std::endl; |
2191 |
|
} |
2192 |
|
|
2193 |
|
void assign_arith_replayFailureLemma(Options& opts, const std::string& option, bool value) { |
2194 |
|
|
2195 |
|
opts.arith.replayFailureLemma = value; |
2196 |
|
opts.arith.replayFailureLemmaWasSetByUser = true; |
2197 |
|
Trace("options") << "user assigned option replayFailureLemma = " << value << std::endl; |
2198 |
|
} |
2199 |
|
|
2200 |
|
void assign_arith_maxCutsInContext(Options& opts, const std::string& option, const std::string& optionarg) { |
2201 |
|
auto value = handleOption<uint64_t>("maxCutsInContext", option, optionarg); |
2202 |
|
|
2203 |
|
opts.arith.maxCutsInContext = value; |
2204 |
|
opts.arith.maxCutsInContextWasSetByUser = true; |
2205 |
|
Trace("options") << "user assigned option maxCutsInContext = " << value << std::endl; |
2206 |
|
} |
2207 |
|
|
2208 |
8 |
void assign_arith_arithMLTrick(Options& opts, const std::string& option, bool value) { |
2209 |
|
|
2210 |
8 |
opts.arith.arithMLTrick = value; |
2211 |
8 |
opts.arith.arithMLTrickWasSetByUser = true; |
2212 |
8 |
Trace("options") << "user assigned option arithMLTrick = " << value << std::endl; |
2213 |
8 |
} |
2214 |
|
|
2215 |
|
void assign_arith_arithMLTrickSubstitutions(Options& opts, const std::string& option, const std::string& optionarg) { |
2216 |
|
auto value = handleOption<uint64_t>("miplib-trick-subs", option, optionarg); |
2217 |
|
|
2218 |
|
opts.arith.arithMLTrickSubstitutions = value; |
2219 |
|
opts.arith.arithMLTrickSubstitutionsWasSetByUser = true; |
2220 |
|
Trace("options") << "user assigned option arithMLTrickSubstitutions = " << value << std::endl; |
2221 |
|
} |
2222 |
|
|
2223 |
8 |
void assign_arith_newProp(Options& opts, const std::string& option, bool value) { |
2224 |
|
|
2225 |
8 |
opts.arith.newProp = value; |
2226 |
8 |
opts.arith.newPropWasSetByUser = true; |
2227 |
8 |
Trace("options") << "user assigned option newProp = " << value << std::endl; |
2228 |
8 |
} |
2229 |
|
|
2230 |
5 |
void assign_arith_nlCad(Options& opts, const std::string& option, bool value) { |
2231 |
|
|
2232 |
5 |
opts.arith.nlCad = value; |
2233 |
5 |
opts.arith.nlCadWasSetByUser = true; |
2234 |
5 |
Trace("options") << "user assigned option nlCad = " << value << std::endl; |
2235 |
5 |
} |
2236 |
|
|
2237 |
|
void assign_arith_nlCadUseInitial(Options& opts, const std::string& option, bool value) { |
2238 |
|
|
2239 |
|
opts.arith.nlCadUseInitial = value; |
2240 |
|
opts.arith.nlCadUseInitialWasSetByUser = true; |
2241 |
|
Trace("options") << "user assigned option nlCadUseInitial = " << value << std::endl; |
2242 |
|
} |
2243 |
|
|
2244 |
|
void assign_arith_nlCadLifting(Options& opts, const std::string& option, const std::string& optionarg) { |
2245 |
|
auto value = stringToNlCadLiftingMode(optionarg); |
2246 |
|
|
2247 |
|
opts.arith.nlCadLifting = value; |
2248 |
|
opts.arith.nlCadLiftingWasSetByUser = true; |
2249 |
|
Trace("options") << "user assigned option nlCadLifting = " << value << std::endl; |
2250 |
|
} |
2251 |
|
|
2252 |
|
void assign_arith_nlCadProjection(Options& opts, const std::string& option, const std::string& optionarg) { |
2253 |
|
auto value = stringToNlCadProjectionMode(optionarg); |
2254 |
|
|
2255 |
|
opts.arith.nlCadProjection = value; |
2256 |
|
opts.arith.nlCadProjectionWasSetByUser = true; |
2257 |
|
Trace("options") << "user assigned option nlCadProjection = " << value << std::endl; |
2258 |
|
} |
2259 |
|
|
2260 |
|
void assign_arith_nlExtEntailConflicts(Options& opts, const std::string& option, bool value) { |
2261 |
|
|
2262 |
|
opts.arith.nlExtEntailConflicts = value; |
2263 |
|
opts.arith.nlExtEntailConflictsWasSetByUser = true; |
2264 |
|
Trace("options") << "user assigned option nlExtEntailConflicts = " << value << std::endl; |
2265 |
|
} |
2266 |
|
|
2267 |
|
void assign_arith_nlExtFactor(Options& opts, const std::string& option, bool value) { |
2268 |
|
|
2269 |
|
opts.arith.nlExtFactor = value; |
2270 |
|
opts.arith.nlExtFactorWasSetByUser = true; |
2271 |
|
Trace("options") << "user assigned option nlExtFactor = " << value << std::endl; |
2272 |
|
} |
2273 |
|
|
2274 |
2 |
void assign_arith_nlExtIncPrecision(Options& opts, const std::string& option, bool value) { |
2275 |
|
|
2276 |
2 |
opts.arith.nlExtIncPrecision = value; |
2277 |
2 |
opts.arith.nlExtIncPrecisionWasSetByUser = true; |
2278 |
2 |
Trace("options") << "user assigned option nlExtIncPrecision = " << value << std::endl; |
2279 |
2 |
} |
2280 |
|
|
2281 |
4 |
void assign_arith_nlExtPurify(Options& opts, const std::string& option, bool value) { |
2282 |
|
|
2283 |
4 |
opts.arith.nlExtPurify = value; |
2284 |
4 |
opts.arith.nlExtPurifyWasSetByUser = true; |
2285 |
4 |
Trace("options") << "user assigned option nlExtPurify = " << value << std::endl; |
2286 |
4 |
} |
2287 |
|
|
2288 |
|
void assign_arith_nlExtResBound(Options& opts, const std::string& option, bool value) { |
2289 |
|
|
2290 |
|
opts.arith.nlExtResBound = value; |
2291 |
|
opts.arith.nlExtResBoundWasSetByUser = true; |
2292 |
|
Trace("options") << "user assigned option nlExtResBound = " << value << std::endl; |
2293 |
|
} |
2294 |
|
|
2295 |
|
void assign_arith_nlExtRewrites(Options& opts, const std::string& option, bool value) { |
2296 |
|
|
2297 |
|
opts.arith.nlExtRewrites = value; |
2298 |
|
opts.arith.nlExtRewritesWasSetByUser = true; |
2299 |
|
Trace("options") << "user assigned option nlExtRewrites = " << value << std::endl; |
2300 |
|
} |
2301 |
|
|
2302 |
|
void assign_arith_nlExtSplitZero(Options& opts, const std::string& option, bool value) { |
2303 |
|
|
2304 |
|
opts.arith.nlExtSplitZero = value; |
2305 |
|
opts.arith.nlExtSplitZeroWasSetByUser = true; |
2306 |
|
Trace("options") << "user assigned option nlExtSplitZero = " << value << std::endl; |
2307 |
|
} |
2308 |
|
|
2309 |
|
void assign_arith_nlExtTfTaylorDegree(Options& opts, const std::string& option, const std::string& optionarg) { |
2310 |
|
auto value = handleOption<int64_t>("nl-ext-tf-taylor-deg", option, optionarg); |
2311 |
|
|
2312 |
|
opts.arith.nlExtTfTaylorDegree = value; |
2313 |
|
opts.arith.nlExtTfTaylorDegreeWasSetByUser = true; |
2314 |
|
Trace("options") << "user assigned option nlExtTfTaylorDegree = " << value << std::endl; |
2315 |
|
} |
2316 |
|
|
2317 |
41 |
void assign_arith_nlExtTfTangentPlanes(Options& opts, const std::string& option, bool value) { |
2318 |
|
|
2319 |
41 |
opts.arith.nlExtTfTangentPlanes = value; |
2320 |
41 |
opts.arith.nlExtTfTangentPlanesWasSetByUser = true; |
2321 |
41 |
Trace("options") << "user assigned option nlExtTfTangentPlanes = " << value << std::endl; |
2322 |
41 |
} |
2323 |
|
|
2324 |
42 |
void assign_arith_nlExtTangentPlanes(Options& opts, const std::string& option, bool value) { |
2325 |
|
|
2326 |
42 |
opts.arith.nlExtTangentPlanes = value; |
2327 |
42 |
opts.arith.nlExtTangentPlanesWasSetByUser = true; |
2328 |
42 |
Trace("options") << "user assigned option nlExtTangentPlanes = " << value << std::endl; |
2329 |
42 |
} |
2330 |
|
|
2331 |
|
void assign_arith_nlExtTangentPlanesInterleave(Options& opts, const std::string& option, bool value) { |
2332 |
|
|
2333 |
|
opts.arith.nlExtTangentPlanesInterleave = value; |
2334 |
|
opts.arith.nlExtTangentPlanesInterleaveWasSetByUser = true; |
2335 |
|
Trace("options") << "user assigned option nlExtTangentPlanesInterleave = " << value << std::endl; |
2336 |
|
} |
2337 |
|
|
2338 |
125 |
void assign_arith_nlExt(Options& opts, const std::string& option, const std::string& optionarg) { |
2339 |
125 |
auto value = stringToNlExtMode(optionarg); |
2340 |
|
|
2341 |
125 |
opts.arith.nlExt = value; |
2342 |
125 |
opts.arith.nlExtWasSetByUser = true; |
2343 |
125 |
Trace("options") << "user assigned option nlExt = " << value << std::endl; |
2344 |
125 |
} |
2345 |
|
|
2346 |
2 |
void assign_arith_nlICP(Options& opts, const std::string& option, bool value) { |
2347 |
|
|
2348 |
2 |
opts.arith.nlICP = value; |
2349 |
2 |
opts.arith.nlICPWasSetByUser = true; |
2350 |
2 |
Trace("options") << "user assigned option nlICP = " << value << std::endl; |
2351 |
2 |
} |
2352 |
|
|
2353 |
10 |
void assign_arith_nlRlvMode(Options& opts, const std::string& option, const std::string& optionarg) { |
2354 |
10 |
auto value = stringToNlRlvMode(optionarg); |
2355 |
|
|
2356 |
10 |
opts.arith.nlRlvMode = value; |
2357 |
10 |
opts.arith.nlRlvModeWasSetByUser = true; |
2358 |
10 |
Trace("options") << "user assigned option nlRlvMode = " << value << std::endl; |
2359 |
10 |
} |
2360 |
|
|
2361 |
2 |
void assign_arith_pbRewrites(Options& opts, const std::string& option, bool value) { |
2362 |
|
|
2363 |
2 |
opts.arith.pbRewrites = value; |
2364 |
2 |
opts.arith.pbRewritesWasSetByUser = true; |
2365 |
2 |
Trace("options") << "user assigned option pbRewrites = " << value << std::endl; |
2366 |
2 |
} |
2367 |
|
|
2368 |
|
void assign_arith_arithPivotThreshold(Options& opts, const std::string& option, const std::string& optionarg) { |
2369 |
|
auto value = handleOption<uint64_t>("pivot-threshold", option, optionarg); |
2370 |
|
|
2371 |
|
opts.arith.arithPivotThreshold = value; |
2372 |
|
opts.arith.arithPivotThresholdWasSetByUser = true; |
2373 |
|
Trace("options") << "user assigned option arithPivotThreshold = " << value << std::endl; |
2374 |
|
} |
2375 |
|
|
2376 |
|
void assign_arith_ppAssertMaxSubSize(Options& opts, const std::string& option, const std::string& optionarg) { |
2377 |
|
auto value = handleOption<uint64_t>("pp-assert-max-sub-size", option, optionarg); |
2378 |
|
|
2379 |
|
opts.arith.ppAssertMaxSubSize = value; |
2380 |
|
opts.arith.ppAssertMaxSubSizeWasSetByUser = true; |
2381 |
|
Trace("options") << "user assigned option ppAssertMaxSubSize = " << value << std::endl; |
2382 |
|
} |
2383 |
|
|
2384 |
|
void assign_arith_arithPropagateMaxLength(Options& opts, const std::string& option, const std::string& optionarg) { |
2385 |
|
auto value = handleOption<uint64_t>("prop-row-length", option, optionarg); |
2386 |
|
|
2387 |
|
opts.arith.arithPropagateMaxLength = value; |
2388 |
|
opts.arith.arithPropagateMaxLengthWasSetByUser = true; |
2389 |
|
Trace("options") << "user assigned option arithPropagateMaxLength = " << value << std::endl; |
2390 |
|
} |
2391 |
|
|
2392 |
|
void assign_arith_replayEarlyCloseDepths(Options& opts, const std::string& option, const std::string& optionarg) { |
2393 |
|
auto value = handleOption<int64_t>("replay-early-close-depth", option, optionarg); |
2394 |
|
|
2395 |
|
opts.arith.replayEarlyCloseDepths = value; |
2396 |
|
opts.arith.replayEarlyCloseDepthsWasSetByUser = true; |
2397 |
|
Trace("options") << "user assigned option replayEarlyCloseDepths = " << value << std::endl; |
2398 |
|
} |
2399 |
|
|
2400 |
|
void assign_arith_replayFailurePenalty(Options& opts, const std::string& option, const std::string& optionarg) { |
2401 |
|
auto value = handleOption<int64_t>("replay-failure-penalty", option, optionarg); |
2402 |
|
|
2403 |
|
opts.arith.replayFailurePenalty = value; |
2404 |
|
opts.arith.replayFailurePenaltyWasSetByUser = true; |
2405 |
|
Trace("options") << "user assigned option replayFailurePenalty = " << value << std::endl; |
2406 |
|
} |
2407 |
|
|
2408 |
|
void assign_arith_lemmaRejectCutSize(Options& opts, const std::string& option, const std::string& optionarg) { |
2409 |
|
auto value = handleOption<uint64_t>("replay-lemma-reject-cut", option, optionarg); |
2410 |
|
|
2411 |
|
opts.arith.lemmaRejectCutSize = value; |
2412 |
|
opts.arith.lemmaRejectCutSizeWasSetByUser = true; |
2413 |
|
Trace("options") << "user assigned option lemmaRejectCutSize = " << value << std::endl; |
2414 |
|
} |
2415 |
|
|
2416 |
|
void assign_arith_replayNumericFailurePenalty(Options& opts, const std::string& option, const std::string& optionarg) { |
2417 |
|
auto value = handleOption<int64_t>("replay-num-err-penalty", option, optionarg); |
2418 |
|
|
2419 |
|
opts.arith.replayNumericFailurePenalty = value; |
2420 |
|
opts.arith.replayNumericFailurePenaltyWasSetByUser = true; |
2421 |
|
Trace("options") << "user assigned option replayNumericFailurePenalty = " << value << std::endl; |
2422 |
|
} |
2423 |
|
|
2424 |
|
void assign_arith_replayRejectCutSize(Options& opts, const std::string& option, const std::string& optionarg) { |
2425 |
|
auto value = handleOption<uint64_t>("replay-reject-cut", option, optionarg); |
2426 |
|
|
2427 |
|
opts.arith.replayRejectCutSize = value; |
2428 |
|
opts.arith.replayRejectCutSizeWasSetByUser = true; |
2429 |
|
Trace("options") << "user assigned option replayRejectCutSize = " << value << std::endl; |
2430 |
|
} |
2431 |
|
|
2432 |
|
void assign_arith_soiApproxMajorFailurePen(Options& opts, const std::string& option, const std::string& optionarg) { |
2433 |
|
auto value = handleOption<int64_t>("replay-soi-major-threshold-pen", option, optionarg); |
2434 |
|
|
2435 |
|
opts.arith.soiApproxMajorFailurePen = value; |
2436 |
|
opts.arith.soiApproxMajorFailurePenWasSetByUser = true; |
2437 |
|
Trace("options") << "user assigned option soiApproxMajorFailurePen = " << value << std::endl; |
2438 |
|
} |
2439 |
|
|
2440 |
|
void assign_arith_soiApproxMajorFailure(Options& opts, const std::string& option, const std::string& optionarg) { |
2441 |
|
auto value = handleOption<double>("replay-soi-major-threshold", option, optionarg); |
2442 |
|
|
2443 |
|
opts.arith.soiApproxMajorFailure = value; |
2444 |
|
opts.arith.soiApproxMajorFailureWasSetByUser = true; |
2445 |
|
Trace("options") << "user assigned option soiApproxMajorFailure = " << value << std::endl; |
2446 |
|
} |
2447 |
|
|
2448 |
|
void assign_arith_soiApproxMinorFailurePen(Options& opts, const std::string& option, const std::string& optionarg) { |
2449 |
|
auto value = handleOption<int64_t>("replay-soi-minor-threshold-pen", option, optionarg); |
2450 |
|
|
2451 |
|
opts.arith.soiApproxMinorFailurePen = value; |
2452 |
|
opts.arith.soiApproxMinorFailurePenWasSetByUser = true; |
2453 |
|
Trace("options") << "user assigned option soiApproxMinorFailurePen = " << value << std::endl; |
2454 |
|
} |
2455 |
|
|
2456 |
|
void assign_arith_soiApproxMinorFailure(Options& opts, const std::string& option, const std::string& optionarg) { |
2457 |
|
auto value = handleOption<double>("replay-soi-minor-threshold", option, optionarg); |
2458 |
|
|
2459 |
|
opts.arith.soiApproxMinorFailure = value; |
2460 |
|
opts.arith.soiApproxMinorFailureWasSetByUser = true; |
2461 |
|
Trace("options") << "user assigned option soiApproxMinorFailure = " << value << std::endl; |
2462 |
|
} |
2463 |
|
|
2464 |
|
void assign_arith_restrictedPivots(Options& opts, const std::string& option, bool value) { |
2465 |
|
|
2466 |
|
opts.arith.restrictedPivots = value; |
2467 |
|
opts.arith.restrictedPivotsWasSetByUser = true; |
2468 |
|
Trace("options") << "user assigned option restrictedPivots = " << value << std::endl; |
2469 |
|
} |
2470 |
|
|
2471 |
|
void assign_arith_revertArithModels(Options& opts, const std::string& option, bool value) { |
2472 |
|
|
2473 |
|
opts.arith.revertArithModels = value; |
2474 |
|
opts.arith.revertArithModelsWasSetByUser = true; |
2475 |
|
Trace("options") << "user assigned option revertArithModels = " << value << std::endl; |
2476 |
|
} |
2477 |
|
|
2478 |
|
void assign_arith_rrTurns(Options& opts, const std::string& option, const std::string& optionarg) { |
2479 |
|
auto value = handleOption<int64_t>("rr-turns", option, optionarg); |
2480 |
|
|
2481 |
|
opts.arith.rrTurns = value; |
2482 |
|
opts.arith.rrTurnsWasSetByUser = true; |
2483 |
|
Trace("options") << "user assigned option rrTurns = " << value << std::endl; |
2484 |
|
} |
2485 |
|
|
2486 |
|
void assign_arith_trySolveIntStandardEffort(Options& opts, const std::string& option, bool value) { |
2487 |
|
|
2488 |
|
opts.arith.trySolveIntStandardEffort = value; |
2489 |
|
opts.arith.trySolveIntStandardEffortWasSetByUser = true; |
2490 |
|
Trace("options") << "user assigned option trySolveIntStandardEffort = " << value << std::endl; |
2491 |
|
} |
2492 |
|
|
2493 |
|
void assign_arith_arithSimplexCheckPeriod(Options& opts, const std::string& option, const std::string& optionarg) { |
2494 |
|
auto value = handleOption<uint64_t>("simplex-check-period", option, optionarg); |
2495 |
|
|
2496 |
|
opts.arith.arithSimplexCheckPeriod = value; |
2497 |
|
opts.arith.arithSimplexCheckPeriodWasSetByUser = true; |
2498 |
|
Trace("options") << "user assigned option arithSimplexCheckPeriod = " << value << std::endl; |
2499 |
|
} |
2500 |
|
|
2501 |
|
void assign_arith_soiQuickExplain(Options& opts, const std::string& option, bool value) { |
2502 |
|
|
2503 |
|
opts.arith.soiQuickExplain = value; |
2504 |
|
opts.arith.soiQuickExplainWasSetByUser = true; |
2505 |
|
Trace("options") << "user assigned option soiQuickExplain = " << value << std::endl; |
2506 |
|
} |
2507 |
|
|
2508 |
|
void assign_arith_arithStandardCheckVarOrderPivots(Options& opts, const std::string& option, const std::string& optionarg) { |
2509 |
|
auto value = handleOption<int64_t>("standard-effort-variable-order-pivots", option, optionarg); |
2510 |
|
|
2511 |
|
opts.arith.arithStandardCheckVarOrderPivots = value; |
2512 |
|
opts.arith.arithStandardCheckVarOrderPivotsWasSetByUser = true; |
2513 |
|
Trace("options") << "user assigned option arithStandardCheckVarOrderPivots = " << value << std::endl; |
2514 |
|
} |
2515 |
|
|
2516 |
|
void assign_arith_arithUnateLemmaMode(Options& opts, const std::string& option, const std::string& optionarg) { |
2517 |
|
auto value = stringToArithUnateLemmaMode(optionarg); |
2518 |
|
|
2519 |
|
opts.arith.arithUnateLemmaMode = value; |
2520 |
|
opts.arith.arithUnateLemmaModeWasSetByUser = true; |
2521 |
|
Trace("options") << "user assigned option arithUnateLemmaMode = " << value << std::endl; |
2522 |
|
} |
2523 |
|
|
2524 |
|
void assign_arith_useApprox(Options& opts, const std::string& option, bool value) { |
2525 |
|
|
2526 |
|
opts.arith.useApprox = value; |
2527 |
|
opts.arith.useApproxWasSetByUser = true; |
2528 |
|
Trace("options") << "user assigned option useApprox = " << value << std::endl; |
2529 |
|
} |
2530 |
|
|
2531 |
|
void assign_arith_useFC(Options& opts, const std::string& option, bool value) { |
2532 |
|
|
2533 |
|
opts.arith.useFC = value; |
2534 |
|
opts.arith.useFCWasSetByUser = true; |
2535 |
|
Trace("options") << "user assigned option useFC = " << value << std::endl; |
2536 |
|
} |
2537 |
|
|
2538 |
|
void assign_arith_useSOI(Options& opts, const std::string& option, bool value) { |
2539 |
|
|
2540 |
|
opts.arith.useSOI = value; |
2541 |
|
opts.arith.useSOIWasSetByUser = true; |
2542 |
|
Trace("options") << "user assigned option useSOI = " << value << std::endl; |
2543 |
|
} |
2544 |
|
|
2545 |
|
void assign_arrays_arraysConfig(Options& opts, const std::string& option, const std::string& optionarg) { |
2546 |
|
auto value = handleOption<int64_t>("arrays-config", option, optionarg); |
2547 |
|
|
2548 |
|
opts.arrays.arraysConfig = value; |
2549 |
|
opts.arrays.arraysConfigWasSetByUser = true; |
2550 |
|
Trace("options") << "user assigned option arraysConfig = " << value << std::endl; |
2551 |
|
} |
2552 |
|
|
2553 |
|
void assign_arrays_arraysEagerIndexSplitting(Options& opts, const std::string& option, bool value) { |
2554 |
|
|
2555 |
|
opts.arrays.arraysEagerIndexSplitting = value; |
2556 |
|
opts.arrays.arraysEagerIndexSplittingWasSetByUser = true; |
2557 |
|
Trace("options") << "user assigned option arraysEagerIndexSplitting = " << value << std::endl; |
2558 |
|
} |
2559 |
|
|
2560 |
|
void assign_arrays_arraysEagerLemmas(Options& opts, const std::string& option, bool value) { |
2561 |
|
|
2562 |
|
opts.arrays.arraysEagerLemmas = value; |
2563 |
|
opts.arrays.arraysEagerLemmasWasSetByUser = true; |
2564 |
|
Trace("options") << "user assigned option arraysEagerLemmas = " << value << std::endl; |
2565 |
|
} |
2566 |
|
|
2567 |
10 |
void assign_arrays_arraysExp(Options& opts, const std::string& option, bool value) { |
2568 |
|
|
2569 |
10 |
opts.arrays.arraysExp = value; |
2570 |
10 |
opts.arrays.arraysExpWasSetByUser = true; |
2571 |
10 |
Trace("options") << "user assigned option arraysExp = " << value << std::endl; |
2572 |
10 |
} |
2573 |
|
|
2574 |
|
void assign_arrays_arraysModelBased(Options& opts, const std::string& option, bool value) { |
2575 |
|
|
2576 |
|
opts.arrays.arraysModelBased = value; |
2577 |
|
opts.arrays.arraysModelBasedWasSetByUser = true; |
2578 |
|
Trace("options") << "user assigned option arraysModelBased = " << value << std::endl; |
2579 |
|
} |
2580 |
|
|
2581 |
|
void assign_arrays_arraysOptimizeLinear(Options& opts, const std::string& option, bool value) { |
2582 |
|
|
2583 |
|
opts.arrays.arraysOptimizeLinear = value; |
2584 |
|
opts.arrays.arraysOptimizeLinearWasSetByUser = true; |
2585 |
|
Trace("options") << "user assigned option arraysOptimizeLinear = " << value << std::endl; |
2586 |
|
} |
2587 |
|
|
2588 |
|
void assign_arrays_arraysPropagate(Options& opts, const std::string& option, const std::string& optionarg) { |
2589 |
|
auto value = handleOption<int64_t>("arrays-prop", option, optionarg); |
2590 |
|
|
2591 |
|
opts.arrays.arraysPropagate = value; |
2592 |
|
opts.arrays.arraysPropagateWasSetByUser = true; |
2593 |
|
Trace("options") << "user assigned option arraysPropagate = " << value << std::endl; |
2594 |
|
} |
2595 |
|
|
2596 |
|
void assign_arrays_arraysReduceSharing(Options& opts, const std::string& option, bool value) { |
2597 |
|
|
2598 |
|
opts.arrays.arraysReduceSharing = value; |
2599 |
|
opts.arrays.arraysReduceSharingWasSetByUser = true; |
2600 |
|
Trace("options") << "user assigned option arraysReduceSharing = " << value << std::endl; |
2601 |
|
} |
2602 |
|
|
2603 |
|
void assign_arrays_arraysWeakEquivalence(Options& opts, const std::string& option, bool value) { |
2604 |
|
|
2605 |
|
opts.arrays.arraysWeakEquivalence = value; |
2606 |
|
opts.arrays.arraysWeakEquivalenceWasSetByUser = true; |
2607 |
|
Trace("options") << "user assigned option arraysWeakEquivalence = " << value << std::endl; |
2608 |
|
} |
2609 |
|
|
2610 |
|
void assign_base_err(Options& opts, const std::string& option, const std::string& optionarg) { |
2611 |
|
auto value = handleOption<ManagedErr>("err", option, optionarg); |
2612 |
|
opts.handler().setErrStream("err", option, value); |
2613 |
|
opts.base.err = value; |
2614 |
|
opts.base.errWasSetByUser = true; |
2615 |
|
Trace("options") << "user assigned option err = " << value << std::endl; |
2616 |
|
} |
2617 |
|
|
2618 |
|
void assign_base_in(Options& opts, const std::string& option, const std::string& optionarg) { |
2619 |
|
auto value = handleOption<ManagedIn>("in", option, optionarg); |
2620 |
|
opts.handler().setInStream("in", option, value); |
2621 |
|
opts.base.in = value; |
2622 |
|
opts.base.inWasSetByUser = true; |
2623 |
|
Trace("options") << "user assigned option in = " << value << std::endl; |
2624 |
|
} |
2625 |
|
|
2626 |
7285 |
void assign_base_incrementalSolving(Options& opts, const std::string& option, bool value) { |
2627 |
|
|
2628 |
7285 |
opts.base.incrementalSolving = value; |
2629 |
7285 |
opts.base.incrementalSolvingWasSetByUser = true; |
2630 |
7285 |
Trace("options") << "user assigned option incrementalSolving = " << value << std::endl; |
2631 |
7285 |
} |
2632 |
|
|
2633 |
525 |
void assign_base_inputLanguage(Options& opts, const std::string& option, const std::string& optionarg) { |
2634 |
525 |
auto value = opts.handler().stringToInputLanguage("lang", option, optionarg); |
2635 |
|
|
2636 |
525 |
opts.base.inputLanguage = value; |
2637 |
525 |
opts.base.inputLanguageWasSetByUser = true; |
2638 |
525 |
Trace("options") << "user assigned option inputLanguage = " << value << std::endl; |
2639 |
525 |
} |
2640 |
|
|
2641 |
|
void assign_base_languageHelp(Options& opts, const std::string& option, bool value) { |
2642 |
|
|
2643 |
|
opts.base.languageHelp = value; |
2644 |
|
opts.base.languageHelpWasSetByUser = true; |
2645 |
|
Trace("options") << "user assigned option languageHelp = " << value << std::endl; |
2646 |
|
} |
2647 |
|
|
2648 |
|
void assign_base_out(Options& opts, const std::string& option, const std::string& optionarg) { |
2649 |
|
auto value = handleOption<ManagedOut>("out", option, optionarg); |
2650 |
|
opts.handler().setOutStream("out", option, value); |
2651 |
|
opts.base.out = value; |
2652 |
|
opts.base.outWasSetByUser = true; |
2653 |
|
Trace("options") << "user assigned option out = " << value << std::endl; |
2654 |
|
} |
2655 |
|
|
2656 |
90 |
void assign_base_outputLanguage(Options& opts, const std::string& option, const std::string& optionarg) { |
2657 |
90 |
auto value = opts.handler().stringToOutputLanguage("output-lang", option, optionarg); |
2658 |
|
|
2659 |
90 |
opts.base.outputLanguage = value; |
2660 |
90 |
opts.base.outputLanguageWasSetByUser = true; |
2661 |
90 |
Trace("options") << "user assigned option outputLanguage = " << value << std::endl; |
2662 |
90 |
} |
2663 |
|
|
2664 |
16 |
void assign_base_parseOnly(Options& opts, const std::string& option, bool value) { |
2665 |
|
|
2666 |
16 |
opts.base.parseOnly = value; |
2667 |
16 |
opts.base.parseOnlyWasSetByUser = true; |
2668 |
16 |
Trace("options") << "user assigned option parseOnly = " << value << std::endl; |
2669 |
16 |
} |
2670 |
|
|
2671 |
3 |
void assign_base_preprocessOnly(Options& opts, const std::string& option, bool value) { |
2672 |
|
|
2673 |
3 |
opts.base.preprocessOnly = value; |
2674 |
3 |
opts.base.preprocessOnlyWasSetByUser = true; |
2675 |
3 |
Trace("options") << "user assigned option preprocessOnly = " << value << std::endl; |
2676 |
3 |
} |
2677 |
|
|
2678 |
30 |
void assign_base_printSuccess(Options& opts, const std::string& option, bool value) { |
2679 |
30 |
opts.handler().setPrintSuccess("print-success", option, value); |
2680 |
30 |
opts.base.printSuccess = value; |
2681 |
30 |
opts.base.printSuccessWasSetByUser = true; |
2682 |
30 |
Trace("options") << "user assigned option printSuccess = " << value << std::endl; |
2683 |
30 |
} |
2684 |
|
|
2685 |
|
void assign_base_perCallResourceLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
2686 |
|
auto value = handleOption<uint64_t>("rlimit-per", option, optionarg); |
2687 |
|
|
2688 |
|
opts.base.perCallResourceLimit = value; |
2689 |
|
opts.base.perCallResourceLimitWasSetByUser = true; |
2690 |
|
Trace("options") << "user assigned option perCallResourceLimit = " << value << std::endl; |
2691 |
|
} |
2692 |
|
|
2693 |
|
void assign_base_cumulativeResourceLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
2694 |
|
auto value = handleOption<uint64_t>("rlimit", option, optionarg); |
2695 |
|
|
2696 |
|
opts.base.cumulativeResourceLimit = value; |
2697 |
|
opts.base.cumulativeResourceLimitWasSetByUser = true; |
2698 |
|
Trace("options") << "user assigned option cumulativeResourceLimit = " << value << std::endl; |
2699 |
|
} |
2700 |
|
|
2701 |
2 |
void assign_base_statistics(Options& opts, const std::string& option, bool value) { |
2702 |
2 |
opts.handler().setStats("stats", option, value); |
2703 |
2 |
opts.base.statistics = value; |
2704 |
2 |
opts.base.statisticsWasSetByUser = true; |
2705 |
2 |
Trace("options") << "user assigned option statistics = " << value << std::endl; |
2706 |
2 |
} |
2707 |
|
|
2708 |
1 |
void assign_base_statisticsAll(Options& opts, const std::string& option, bool value) { |
2709 |
1 |
opts.handler().setStats("stats-all", option, value); |
2710 |
1 |
opts.base.statisticsAll = value; |
2711 |
1 |
opts.base.statisticsAllWasSetByUser = true; |
2712 |
1 |
Trace("options") << "user assigned option statisticsAll = " << value << std::endl; |
2713 |
1 |
} |
2714 |
|
|
2715 |
|
void assign_base_statisticsEveryQuery(Options& opts, const std::string& option, bool value) { |
2716 |
|
opts.handler().setStats("stats-every-query", option, value); |
2717 |
|
opts.base.statisticsEveryQuery = value; |
2718 |
|
opts.base.statisticsEveryQueryWasSetByUser = true; |
2719 |
|
Trace("options") << "user assigned option statisticsEveryQuery = " << value << std::endl; |
2720 |
|
} |
2721 |
|
|
2722 |
1 |
void assign_base_statisticsExpert(Options& opts, const std::string& option, bool value) { |
2723 |
1 |
opts.handler().setStats("stats-expert", option, value); |
2724 |
1 |
opts.base.statisticsExpert = value; |
2725 |
1 |
opts.base.statisticsExpertWasSetByUser = true; |
2726 |
1 |
Trace("options") << "user assigned option statisticsExpert = " << value << std::endl; |
2727 |
1 |
} |
2728 |
|
|
2729 |
6 |
void assign_base_perCallMillisecondLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
2730 |
6 |
auto value = handleOption<uint64_t>("tlimit-per", option, optionarg); |
2731 |
|
|
2732 |
6 |
opts.base.perCallMillisecondLimit = value; |
2733 |
6 |
opts.base.perCallMillisecondLimitWasSetByUser = true; |
2734 |
6 |
Trace("options") << "user assigned option perCallMillisecondLimit = " << value << std::endl; |
2735 |
6 |
} |
2736 |
|
|
2737 |
|
void assign_base_cumulativeMillisecondLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
2738 |
|
auto value = handleOption<uint64_t>("tlimit", option, optionarg); |
2739 |
|
|
2740 |
|
opts.base.cumulativeMillisecondLimit = value; |
2741 |
|
opts.base.cumulativeMillisecondLimitWasSetByUser = true; |
2742 |
|
Trace("options") << "user assigned option cumulativeMillisecondLimit = " << value << std::endl; |
2743 |
|
} |
2744 |
|
|
2745 |
6 |
void assign_base_verbosity(Options& opts, const std::string& option, const std::string& optionarg) { |
2746 |
6 |
auto value = handleOption<int64_t>("verbosity", option, optionarg); |
2747 |
6 |
opts.handler().setVerbosity("verbosity", option, value); |
2748 |
6 |
opts.base.verbosity = value; |
2749 |
6 |
opts.base.verbosityWasSetByUser = true; |
2750 |
6 |
Trace("options") << "user assigned option verbosity = " << value << std::endl; |
2751 |
6 |
} |
2752 |
|
|
2753 |
|
void assign_bv_bitvectorAig(Options& opts, const std::string& option, bool value) { |
2754 |
|
opts.handler().abcEnabledBuild("bitblast-aig", option, value); |
2755 |
|
opts.handler().setBitblastAig("bitblast-aig", option, value); |
2756 |
|
opts.bv.bitvectorAig = value; |
2757 |
|
opts.bv.bitvectorAigWasSetByUser = true; |
2758 |
|
Trace("options") << "user assigned option bitvectorAig = " << value << std::endl; |
2759 |
|
} |
2760 |
|
|
2761 |
40 |
void assign_bv_bitblastMode(Options& opts, const std::string& option, const std::string& optionarg) { |
2762 |
40 |
auto value = stringToBitblastMode(optionarg); |
2763 |
|
|
2764 |
40 |
opts.bv.bitblastMode = value; |
2765 |
40 |
opts.bv.bitblastModeWasSetByUser = true; |
2766 |
40 |
Trace("options") << "user assigned option bitblastMode = " << value << std::endl; |
2767 |
40 |
} |
2768 |
|
|
2769 |
|
void assign_bv_bitwiseEq(Options& opts, const std::string& option, bool value) { |
2770 |
|
|
2771 |
|
opts.bv.bitwiseEq = value; |
2772 |
|
opts.bv.bitwiseEqWasSetByUser = true; |
2773 |
|
Trace("options") << "user assigned option bitwiseEq = " << value << std::endl; |
2774 |
|
} |
2775 |
|
|
2776 |
12 |
void assign_bv_boolToBitvector(Options& opts, const std::string& option, const std::string& optionarg) { |
2777 |
12 |
auto value = stringToBoolToBVMode(optionarg); |
2778 |
|
|
2779 |
12 |
opts.bv.boolToBitvector = value; |
2780 |
12 |
opts.bv.boolToBitvectorWasSetByUser = true; |
2781 |
12 |
Trace("options") << "user assigned option boolToBitvector = " << value << std::endl; |
2782 |
12 |
} |
2783 |
|
|
2784 |
4 |
void assign_bv_bvAbstraction(Options& opts, const std::string& option, bool value) { |
2785 |
|
|
2786 |
4 |
opts.bv.bvAbstraction = value; |
2787 |
4 |
opts.bv.bvAbstractionWasSetByUser = true; |
2788 |
4 |
Trace("options") << "user assigned option bvAbstraction = " << value << std::endl; |
2789 |
4 |
} |
2790 |
|
|
2791 |
|
void assign_bv_bitvectorAigSimplifications(Options& opts, const std::string& option, const std::string& optionarg) { |
2792 |
|
auto value = handleOption<std::string>("bv-aig-simp", option, optionarg); |
2793 |
|
opts.handler().abcEnabledBuild("bv-aig-simp", option, value); |
2794 |
|
opts.bv.bitvectorAigSimplifications = value; |
2795 |
|
opts.bv.bitvectorAigSimplificationsWasSetByUser = true; |
2796 |
|
Trace("options") << "user assigned option bitvectorAigSimplifications = " << value << std::endl; |
2797 |
|
} |
2798 |
|
|
2799 |
|
void assign_bv_bvAlgExtf(Options& opts, const std::string& option, bool value) { |
2800 |
|
|
2801 |
|
opts.bv.bvAlgExtf = value; |
2802 |
|
opts.bv.bvAlgExtfWasSetByUser = true; |
2803 |
|
Trace("options") << "user assigned option bvAlgExtf = " << value << std::endl; |
2804 |
|
} |
2805 |
|
|
2806 |
|
void assign_bv_bitvectorAlgebraicBudget(Options& opts, const std::string& option, const std::string& optionarg) { |
2807 |
|
auto value = handleOption<uint64_t>("bv-algebraic-budget", option, optionarg); |
2808 |
|
|
2809 |
|
opts.bv.bitvectorAlgebraicBudget = value; |
2810 |
|
opts.bv.bitvectorAlgebraicBudgetWasSetByUser = true; |
2811 |
|
Trace("options") << "user assigned option bitvectorAlgebraicBudget = " << value << std::endl; |
2812 |
|
} |
2813 |
|
|
2814 |
|
void assign_bv_bitvectorAlgebraicSolver(Options& opts, const std::string& option, bool value) { |
2815 |
|
|
2816 |
|
opts.bv.bitvectorAlgebraicSolver = value; |
2817 |
|
opts.bv.bitvectorAlgebraicSolverWasSetByUser = true; |
2818 |
|
Trace("options") << "user assigned option bitvectorAlgebraicSolver = " << value << std::endl; |
2819 |
|
} |
2820 |
|
|
2821 |
6 |
void assign_bv_bvAssertInput(Options& opts, const std::string& option, bool value) { |
2822 |
|
|
2823 |
6 |
opts.bv.bvAssertInput = value; |
2824 |
6 |
opts.bv.bvAssertInputWasSetByUser = true; |
2825 |
6 |
Trace("options") << "user assigned option bvAssertInput = " << value << std::endl; |
2826 |
6 |
} |
2827 |
|
|
2828 |
|
void assign_bv_bvEagerExplanations(Options& opts, const std::string& option, bool value) { |
2829 |
|
|
2830 |
|
opts.bv.bvEagerExplanations = value; |
2831 |
|
opts.bv.bvEagerExplanationsWasSetByUser = true; |
2832 |
|
Trace("options") << "user assigned option bvEagerExplanations = " << value << std::endl; |
2833 |
|
} |
2834 |
|
|
2835 |
2 |
void assign_bv_bitvectorEqualitySolver(Options& opts, const std::string& option, bool value) { |
2836 |
|
|
2837 |
2 |
opts.bv.bitvectorEqualitySolver = value; |
2838 |
2 |
opts.bv.bitvectorEqualitySolverWasSetByUser = true; |
2839 |
2 |
Trace("options") << "user assigned option bitvectorEqualitySolver = " << value << std::endl; |
2840 |
2 |
} |
2841 |
|
|
2842 |
|
void assign_bv_bvExtractArithRewrite(Options& opts, const std::string& option, bool value) { |
2843 |
|
|
2844 |
|
opts.bv.bvExtractArithRewrite = value; |
2845 |
|
opts.bv.bvExtractArithRewriteWasSetByUser = true; |
2846 |
|
Trace("options") << "user assigned option bvExtractArithRewrite = " << value << std::endl; |
2847 |
|
} |
2848 |
|
|
2849 |
|
void assign_bv_bvGaussElim(Options& opts, const std::string& option, bool value) { |
2850 |
|
|
2851 |
|
opts.bv.bvGaussElim = value; |
2852 |
|
opts.bv.bvGaussElimWasSetByUser = true; |
2853 |
|
Trace("options") << "user assigned option bvGaussElim = " << value << std::endl; |
2854 |
|
} |
2855 |
|
|
2856 |
|
void assign_bv_bitvectorInequalitySolver(Options& opts, const std::string& option, bool value) { |
2857 |
|
|
2858 |
|
opts.bv.bitvectorInequalitySolver = value; |
2859 |
|
opts.bv.bitvectorInequalitySolverWasSetByUser = true; |
2860 |
|
Trace("options") << "user assigned option bitvectorInequalitySolver = " << value << std::endl; |
2861 |
|
} |
2862 |
|
|
2863 |
2 |
void assign_bv_bvIntroducePow2(Options& opts, const std::string& option, bool value) { |
2864 |
|
|
2865 |
2 |
opts.bv.bvIntroducePow2 = value; |
2866 |
2 |
opts.bv.bvIntroducePow2WasSetByUser = true; |
2867 |
2 |
Trace("options") << "user assigned option bvIntroducePow2 = " << value << std::endl; |
2868 |
2 |
} |
2869 |
|
|
2870 |
|
void assign_bv_bvNumFunc(Options& opts, const std::string& option, const std::string& optionarg) { |
2871 |
|
auto value = handleOption<uint64_t>("bv-num-func", option, optionarg); |
2872 |
|
|
2873 |
|
opts.bv.bvNumFunc = value; |
2874 |
|
opts.bv.bvNumFuncWasSetByUser = true; |
2875 |
|
Trace("options") << "user assigned option bvNumFunc = " << value << std::endl; |
2876 |
|
} |
2877 |
|
|
2878 |
2 |
void assign_bv_bvPrintConstsAsIndexedSymbols(Options& opts, const std::string& option, bool value) { |
2879 |
|
|
2880 |
2 |
opts.bv.bvPrintConstsAsIndexedSymbols = value; |
2881 |
2 |
opts.bv.bvPrintConstsAsIndexedSymbolsWasSetByUser = true; |
2882 |
2 |
Trace("options") << "user assigned option bvPrintConstsAsIndexedSymbols = " << value << std::endl; |
2883 |
2 |
} |
2884 |
|
|
2885 |
|
void assign_bv_bitvectorPropagate(Options& opts, const std::string& option, bool value) { |
2886 |
|
|
2887 |
|
opts.bv.bitvectorPropagate = value; |
2888 |
|
opts.bv.bitvectorPropagateWasSetByUser = true; |
2889 |
|
Trace("options") << "user assigned option bitvectorPropagate = " << value << std::endl; |
2890 |
|
} |
2891 |
|
|
2892 |
|
void assign_bv_bitvectorQuickXplain(Options& opts, const std::string& option, bool value) { |
2893 |
|
|
2894 |
|
opts.bv.bitvectorQuickXplain = value; |
2895 |
|
opts.bv.bitvectorQuickXplainWasSetByUser = true; |
2896 |
|
Trace("options") << "user assigned option bitvectorQuickXplain = " << value << std::endl; |
2897 |
|
} |
2898 |
|
|
2899 |
18 |
void assign_bv_bvSatSolver(Options& opts, const std::string& option, const std::string& optionarg) { |
2900 |
18 |
auto value = stringToSatSolverMode(optionarg); |
2901 |
16 |
opts.handler().checkBvSatSolver("bv-sat-solver", option, value); |
2902 |
16 |
opts.bv.bvSatSolver = value; |
2903 |
16 |
opts.bv.bvSatSolverWasSetByUser = true; |
2904 |
16 |
Trace("options") << "user assigned option bvSatSolver = " << value << std::endl; |
2905 |
16 |
} |
2906 |
|
|
2907 |
|
void assign_bv_skolemizeArguments(Options& opts, const std::string& option, bool value) { |
2908 |
|
|
2909 |
|
opts.bv.skolemizeArguments = value; |
2910 |
|
opts.bv.skolemizeArgumentsWasSetByUser = true; |
2911 |
|
Trace("options") << "user assigned option skolemizeArguments = " << value << std::endl; |
2912 |
|
} |
2913 |
|
|
2914 |
46 |
void assign_bv_bvSolver(Options& opts, const std::string& option, const std::string& optionarg) { |
2915 |
46 |
auto value = stringToBVSolver(optionarg); |
2916 |
|
|
2917 |
46 |
opts.bv.bvSolver = value; |
2918 |
46 |
opts.bv.bvSolverWasSetByUser = true; |
2919 |
46 |
Trace("options") << "user assigned option bvSolver = " << value << std::endl; |
2920 |
46 |
} |
2921 |
|
|
2922 |
10 |
void assign_bv_bitvectorToBool(Options& opts, const std::string& option, bool value) { |
2923 |
|
|
2924 |
10 |
opts.bv.bitvectorToBool = value; |
2925 |
10 |
opts.bv.bitvectorToBoolWasSetByUser = true; |
2926 |
10 |
Trace("options") << "user assigned option bitvectorToBool = " << value << std::endl; |
2927 |
10 |
} |
2928 |
|
|
2929 |
|
void assign_datatypes_cdtBisimilar(Options& opts, const std::string& option, bool value) { |
2930 |
|
|
2931 |
|
opts.datatypes.cdtBisimilar = value; |
2932 |
|
opts.datatypes.cdtBisimilarWasSetByUser = true; |
2933 |
|
Trace("options") << "user assigned option cdtBisimilar = " << value << std::endl; |
2934 |
|
} |
2935 |
|
|
2936 |
|
void assign_datatypes_dtBinarySplit(Options& opts, const std::string& option, bool value) { |
2937 |
|
|
2938 |
|
opts.datatypes.dtBinarySplit = value; |
2939 |
|
opts.datatypes.dtBinarySplitWasSetByUser = true; |
2940 |
|
Trace("options") << "user assigned option dtBinarySplit = " << value << std::endl; |
2941 |
|
} |
2942 |
|
|
2943 |
|
void assign_datatypes_dtBlastSplits(Options& opts, const std::string& option, bool value) { |
2944 |
|
|
2945 |
|
opts.datatypes.dtBlastSplits = value; |
2946 |
|
opts.datatypes.dtBlastSplitsWasSetByUser = true; |
2947 |
|
Trace("options") << "user assigned option dtBlastSplits = " << value << std::endl; |
2948 |
|
} |
2949 |
|
|
2950 |
|
void assign_datatypes_dtCyclic(Options& opts, const std::string& option, bool value) { |
2951 |
|
|
2952 |
|
opts.datatypes.dtCyclic = value; |
2953 |
|
opts.datatypes.dtCyclicWasSetByUser = true; |
2954 |
|
Trace("options") << "user assigned option dtCyclic = " << value << std::endl; |
2955 |
|
} |
2956 |
|
|
2957 |
|
void assign_datatypes_dtForceAssignment(Options& opts, const std::string& option, bool value) { |
2958 |
|
|
2959 |
|
opts.datatypes.dtForceAssignment = value; |
2960 |
|
opts.datatypes.dtForceAssignmentWasSetByUser = true; |
2961 |
|
Trace("options") << "user assigned option dtForceAssignment = " << value << std::endl; |
2962 |
|
} |
2963 |
|
|
2964 |
|
void assign_datatypes_dtInferAsLemmas(Options& opts, const std::string& option, bool value) { |
2965 |
|
|
2966 |
|
opts.datatypes.dtInferAsLemmas = value; |
2967 |
|
opts.datatypes.dtInferAsLemmasWasSetByUser = true; |
2968 |
|
Trace("options") << "user assigned option dtInferAsLemmas = " << value << std::endl; |
2969 |
|
} |
2970 |
|
|
2971 |
10 |
void assign_datatypes_dtNestedRec(Options& opts, const std::string& option, bool value) { |
2972 |
|
|
2973 |
10 |
opts.datatypes.dtNestedRec = value; |
2974 |
10 |
opts.datatypes.dtNestedRecWasSetByUser = true; |
2975 |
10 |
Trace("options") << "user assigned option dtNestedRec = " << value << std::endl; |
2976 |
10 |
} |
2977 |
|
|
2978 |
|
void assign_datatypes_dtPoliteOptimize(Options& opts, const std::string& option, bool value) { |
2979 |
|
|
2980 |
|
opts.datatypes.dtPoliteOptimize = value; |
2981 |
|
opts.datatypes.dtPoliteOptimizeWasSetByUser = true; |
2982 |
|
Trace("options") << "user assigned option dtPoliteOptimize = " << value << std::endl; |
2983 |
|
} |
2984 |
|
|
2985 |
5 |
void assign_datatypes_dtRewriteErrorSel(Options& opts, const std::string& option, bool value) { |
2986 |
|
|
2987 |
5 |
opts.datatypes.dtRewriteErrorSel = value; |
2988 |
5 |
opts.datatypes.dtRewriteErrorSelWasSetByUser = true; |
2989 |
5 |
Trace("options") << "user assigned option dtRewriteErrorSel = " << value << std::endl; |
2990 |
5 |
} |
2991 |
|
|
2992 |
|
void assign_datatypes_dtSharedSelectors(Options& opts, const std::string& option, bool value) { |
2993 |
|
|
2994 |
|
opts.datatypes.dtSharedSelectors = value; |
2995 |
|
opts.datatypes.dtSharedSelectorsWasSetByUser = true; |
2996 |
|
Trace("options") << "user assigned option dtSharedSelectors = " << value << std::endl; |
2997 |
|
} |
2998 |
|
|
2999 |
11 |
void assign_datatypes_sygusAbortSize(Options& opts, const std::string& option, const std::string& optionarg) { |
3000 |
11 |
auto value = handleOption<int64_t>("sygus-abort-size", option, optionarg); |
3001 |
|
|
3002 |
11 |
opts.datatypes.sygusAbortSize = value; |
3003 |
11 |
opts.datatypes.sygusAbortSizeWasSetByUser = true; |
3004 |
11 |
Trace("options") << "user assigned option sygusAbortSize = " << value << std::endl; |
3005 |
11 |
} |
3006 |
|
|
3007 |
|
void assign_datatypes_sygusFairMax(Options& opts, const std::string& option, bool value) { |
3008 |
|
|
3009 |
|
opts.datatypes.sygusFairMax = value; |
3010 |
|
opts.datatypes.sygusFairMaxWasSetByUser = true; |
3011 |
|
Trace("options") << "user assigned option sygusFairMax = " << value << std::endl; |
3012 |
|
} |
3013 |
|
|
3014 |
2 |
void assign_datatypes_sygusFair(Options& opts, const std::string& option, const std::string& optionarg) { |
3015 |
2 |
auto value = stringToSygusFairMode(optionarg); |
3016 |
|
|
3017 |
2 |
opts.datatypes.sygusFair = value; |
3018 |
2 |
opts.datatypes.sygusFairWasSetByUser = true; |
3019 |
2 |
Trace("options") << "user assigned option sygusFair = " << value << std::endl; |
3020 |
2 |
} |
3021 |
|
|
3022 |
8 |
void assign_datatypes_sygusSymBreak(Options& opts, const std::string& option, bool value) { |
3023 |
|
|
3024 |
8 |
opts.datatypes.sygusSymBreak = value; |
3025 |
8 |
opts.datatypes.sygusSymBreakWasSetByUser = true; |
3026 |
8 |
Trace("options") << "user assigned option sygusSymBreak = " << value << std::endl; |
3027 |
8 |
} |
3028 |
|
|
3029 |
|
void assign_datatypes_sygusSymBreakAgg(Options& opts, const std::string& option, bool value) { |
3030 |
|
|
3031 |
|
opts.datatypes.sygusSymBreakAgg = value; |
3032 |
|
opts.datatypes.sygusSymBreakAggWasSetByUser = true; |
3033 |
|
Trace("options") << "user assigned option sygusSymBreakAgg = " << value << std::endl; |
3034 |
|
} |
3035 |
|
|
3036 |
|
void assign_datatypes_sygusSymBreakDynamic(Options& opts, const std::string& option, bool value) { |
3037 |
|
|
3038 |
|
opts.datatypes.sygusSymBreakDynamic = value; |
3039 |
|
opts.datatypes.sygusSymBreakDynamicWasSetByUser = true; |
3040 |
|
Trace("options") << "user assigned option sygusSymBreakDynamic = " << value << std::endl; |
3041 |
|
} |
3042 |
|
|
3043 |
2 |
void assign_datatypes_sygusSymBreakLazy(Options& opts, const std::string& option, bool value) { |
3044 |
|
|
3045 |
2 |
opts.datatypes.sygusSymBreakLazy = value; |
3046 |
2 |
opts.datatypes.sygusSymBreakLazyWasSetByUser = true; |
3047 |
2 |
Trace("options") << "user assigned option sygusSymBreakLazy = " << value << std::endl; |
3048 |
2 |
} |
3049 |
|
|
3050 |
|
void assign_datatypes_sygusSymBreakPbe(Options& opts, const std::string& option, bool value) { |
3051 |
|
|
3052 |
|
opts.datatypes.sygusSymBreakPbe = value; |
3053 |
|
opts.datatypes.sygusSymBreakPbeWasSetByUser = true; |
3054 |
|
Trace("options") << "user assigned option sygusSymBreakPbe = " << value << std::endl; |
3055 |
|
} |
3056 |
|
|
3057 |
2 |
void assign_datatypes_sygusSymBreakRlv(Options& opts, const std::string& option, bool value) { |
3058 |
|
|
3059 |
2 |
opts.datatypes.sygusSymBreakRlv = value; |
3060 |
2 |
opts.datatypes.sygusSymBreakRlvWasSetByUser = true; |
3061 |
2 |
Trace("options") << "user assigned option sygusSymBreakRlv = " << value << std::endl; |
3062 |
2 |
} |
3063 |
|
|
3064 |
|
void assign_decision_decisionRandomWeight(Options& opts, const std::string& option, const std::string& optionarg) { |
3065 |
|
auto value = handleOption<int64_t>("decision-random-weight", option, optionarg); |
3066 |
|
|
3067 |
|
opts.decision.decisionRandomWeight = value; |
3068 |
|
opts.decision.decisionRandomWeightWasSetByUser = true; |
3069 |
|
Trace("options") << "user assigned option decisionRandomWeight = " << value << std::endl; |
3070 |
|
} |
3071 |
|
|
3072 |
|
void assign_decision_decisionThreshold(Options& opts, const std::string& option, const std::string& optionarg) { |
3073 |
|
auto value = handleOption<cvc5::decision::DecisionWeight>("decision-threshold", option, optionarg); |
3074 |
|
|
3075 |
|
opts.decision.decisionThreshold = value; |
3076 |
|
opts.decision.decisionThresholdWasSetByUser = true; |
3077 |
|
Trace("options") << "user assigned option decisionThreshold = " << value << std::endl; |
3078 |
|
} |
3079 |
|
|
3080 |
|
void assign_decision_decisionUseWeight(Options& opts, const std::string& option, bool value) { |
3081 |
|
|
3082 |
|
opts.decision.decisionUseWeight = value; |
3083 |
|
opts.decision.decisionUseWeightWasSetByUser = true; |
3084 |
|
Trace("options") << "user assigned option decisionUseWeight = " << value << std::endl; |
3085 |
|
} |
3086 |
|
|
3087 |
|
void assign_decision_decisionWeightInternal(Options& opts, const std::string& option, const std::string& optionarg) { |
3088 |
|
auto value = stringToDecisionWeightInternal(optionarg); |
3089 |
|
|
3090 |
|
opts.decision.decisionWeightInternal = value; |
3091 |
|
opts.decision.decisionWeightInternalWasSetByUser = true; |
3092 |
|
Trace("options") << "user assigned option decisionWeightInternal = " << value << std::endl; |
3093 |
|
} |
3094 |
|
|
3095 |
94 |
void assign_decision_decisionMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3096 |
94 |
auto value = stringToDecisionMode(optionarg); |
3097 |
|
|
3098 |
94 |
opts.decision.decisionMode = value; |
3099 |
94 |
opts.decision.decisionModeWasSetByUser = true; |
3100 |
94 |
Trace("options") << "user assigned option decisionMode = " << value << std::endl; |
3101 |
94 |
} |
3102 |
|
|
3103 |
10 |
void assign_decision_jhRlvOrder(Options& opts, const std::string& option, bool value) { |
3104 |
|
|
3105 |
10 |
opts.decision.jhRlvOrder = value; |
3106 |
10 |
opts.decision.jhRlvOrderWasSetByUser = true; |
3107 |
10 |
Trace("options") << "user assigned option jhRlvOrder = " << value << std::endl; |
3108 |
10 |
} |
3109 |
|
|
3110 |
|
void assign_decision_jhSkolemRlvMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3111 |
|
auto value = stringToJutificationSkolemRlvMode(optionarg); |
3112 |
|
|
3113 |
|
opts.decision.jhSkolemRlvMode = value; |
3114 |
|
opts.decision.jhSkolemRlvModeWasSetByUser = true; |
3115 |
|
Trace("options") << "user assigned option jhSkolemRlvMode = " << value << std::endl; |
3116 |
|
} |
3117 |
|
|
3118 |
|
void assign_decision_jhSkolemMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3119 |
|
auto value = stringToJutificationSkolemMode(optionarg); |
3120 |
|
|
3121 |
|
opts.decision.jhSkolemMode = value; |
3122 |
|
opts.decision.jhSkolemModeWasSetByUser = true; |
3123 |
|
Trace("options") << "user assigned option jhSkolemMode = " << value << std::endl; |
3124 |
|
} |
3125 |
|
|
3126 |
2 |
void assign_expr_defaultDagThresh(Options& opts, const std::string& option, const std::string& optionarg) { |
3127 |
2 |
auto value = handleOption<int64_t>("dag-thresh", option, optionarg); |
3128 |
2 |
opts.handler().checkMinimum("dag-thresh", option, value, static_cast<int64_t>(0)); |
3129 |
2 |
opts.handler().setDefaultDagThresh("dag-thresh", option, value); |
3130 |
2 |
opts.expr.defaultDagThresh = value; |
3131 |
2 |
opts.expr.defaultDagThreshWasSetByUser = true; |
3132 |
2 |
Trace("options") << "user assigned option defaultDagThresh = " << value << std::endl; |
3133 |
2 |
} |
3134 |
|
|
3135 |
|
void assign_expr_defaultExprDepth(Options& opts, const std::string& option, const std::string& optionarg) { |
3136 |
|
auto value = handleOption<int64_t>("expr-depth", option, optionarg); |
3137 |
|
opts.handler().checkMinimum("expr-depth", option, value, static_cast<int64_t>(-1)); |
3138 |
|
opts.handler().setDefaultExprDepth("expr-depth", option, value); |
3139 |
|
opts.expr.defaultExprDepth = value; |
3140 |
|
opts.expr.defaultExprDepthWasSetByUser = true; |
3141 |
|
Trace("options") << "user assigned option defaultExprDepth = " << value << std::endl; |
3142 |
|
} |
3143 |
|
|
3144 |
|
void assign_expr_typeChecking(Options& opts, const std::string& option, bool value) { |
3145 |
|
|
3146 |
|
opts.expr.typeChecking = value; |
3147 |
|
opts.expr.typeCheckingWasSetByUser = true; |
3148 |
|
Trace("options") << "user assigned option typeChecking = " << value << std::endl; |
3149 |
|
} |
3150 |
|
|
3151 |
22 |
void assign_fp_fpExp(Options& opts, const std::string& option, bool value) { |
3152 |
|
|
3153 |
22 |
opts.fp.fpExp = value; |
3154 |
22 |
opts.fp.fpExpWasSetByUser = true; |
3155 |
22 |
Trace("options") << "user assigned option fpExp = " << value << std::endl; |
3156 |
22 |
} |
3157 |
|
|
3158 |
3 |
void assign_fp_fpLazyWb(Options& opts, const std::string& option, bool value) { |
3159 |
|
|
3160 |
3 |
opts.fp.fpLazyWb = value; |
3161 |
3 |
opts.fp.fpLazyWbWasSetByUser = true; |
3162 |
3 |
Trace("options") << "user assigned option fpLazyWb = " << value << std::endl; |
3163 |
3 |
} |
3164 |
|
|
3165 |
12 |
void assign_driver_dumpInstantiations(Options& opts, const std::string& option, bool value) { |
3166 |
|
|
3167 |
12 |
opts.driver.dumpInstantiations = value; |
3168 |
12 |
opts.driver.dumpInstantiationsWasSetByUser = true; |
3169 |
12 |
Trace("options") << "user assigned option dumpInstantiations = " << value << std::endl; |
3170 |
12 |
} |
3171 |
|
|
3172 |
|
void assign_driver_dumpInstantiationsDebug(Options& opts, const std::string& option, bool value) { |
3173 |
|
|
3174 |
|
opts.driver.dumpInstantiationsDebug = value; |
3175 |
|
opts.driver.dumpInstantiationsDebugWasSetByUser = true; |
3176 |
|
Trace("options") << "user assigned option dumpInstantiationsDebug = " << value << std::endl; |
3177 |
|
} |
3178 |
|
|
3179 |
6 |
void assign_driver_dumpModels(Options& opts, const std::string& option, bool value) { |
3180 |
|
|
3181 |
6 |
opts.driver.dumpModels = value; |
3182 |
6 |
opts.driver.dumpModelsWasSetByUser = true; |
3183 |
6 |
Trace("options") << "user assigned option dumpModels = " << value << std::endl; |
3184 |
6 |
} |
3185 |
|
|
3186 |
|
void assign_driver_dumpProofs(Options& opts, const std::string& option, bool value) { |
3187 |
|
|
3188 |
|
opts.driver.dumpProofs = value; |
3189 |
|
opts.driver.dumpProofsWasSetByUser = true; |
3190 |
|
Trace("options") << "user assigned option dumpProofs = " << value << std::endl; |
3191 |
|
} |
3192 |
|
|
3193 |
|
void assign_driver_dumpUnsatCores(Options& opts, const std::string& option, bool value) { |
3194 |
|
|
3195 |
|
opts.driver.dumpUnsatCores = value; |
3196 |
|
opts.driver.dumpUnsatCoresWasSetByUser = true; |
3197 |
|
Trace("options") << "user assigned option dumpUnsatCores = " << value << std::endl; |
3198 |
|
} |
3199 |
|
|
3200 |
3 |
void assign_driver_dumpUnsatCoresFull(Options& opts, const std::string& option, bool value) { |
3201 |
|
|
3202 |
3 |
opts.driver.dumpUnsatCoresFull = value; |
3203 |
3 |
opts.driver.dumpUnsatCoresFullWasSetByUser = true; |
3204 |
3 |
Trace("options") << "user assigned option dumpUnsatCoresFull = " << value << std::endl; |
3205 |
3 |
} |
3206 |
|
|
3207 |
|
void assign_driver_earlyExit(Options& opts, const std::string& option, bool value) { |
3208 |
|
|
3209 |
|
opts.driver.earlyExit = value; |
3210 |
|
opts.driver.earlyExitWasSetByUser = true; |
3211 |
|
Trace("options") << "user assigned option earlyExit = " << value << std::endl; |
3212 |
|
} |
3213 |
|
|
3214 |
|
void assign_driver_forceNoLimitCpuWhileDump(Options& opts, const std::string& option, bool value) { |
3215 |
|
|
3216 |
|
opts.driver.forceNoLimitCpuWhileDump = value; |
3217 |
|
opts.driver.forceNoLimitCpuWhileDumpWasSetByUser = true; |
3218 |
|
Trace("options") << "user assigned option forceNoLimitCpuWhileDump = " << value << std::endl; |
3219 |
|
} |
3220 |
|
|
3221 |
|
void assign_driver_help(Options& opts, const std::string& option, bool value) { |
3222 |
|
|
3223 |
|
opts.driver.help = value; |
3224 |
|
opts.driver.helpWasSetByUser = true; |
3225 |
|
Trace("options") << "user assigned option help = " << value << std::endl; |
3226 |
|
} |
3227 |
|
|
3228 |
|
void assign_driver_interactive(Options& opts, const std::string& option, bool value) { |
3229 |
|
|
3230 |
|
opts.driver.interactive = value; |
3231 |
|
opts.driver.interactiveWasSetByUser = true; |
3232 |
|
Trace("options") << "user assigned option interactive = " << value << std::endl; |
3233 |
|
} |
3234 |
|
|
3235 |
|
void assign_driver_interactivePrompt(Options& opts, const std::string& option, bool value) { |
3236 |
|
|
3237 |
|
opts.driver.interactivePrompt = value; |
3238 |
|
opts.driver.interactivePromptWasSetByUser = true; |
3239 |
|
Trace("options") << "user assigned option interactivePrompt = " << value << std::endl; |
3240 |
|
} |
3241 |
|
|
3242 |
|
void assign_driver_seed(Options& opts, const std::string& option, const std::string& optionarg) { |
3243 |
|
auto value = handleOption<uint64_t>("seed", option, optionarg); |
3244 |
|
|
3245 |
|
opts.driver.seed = value; |
3246 |
|
opts.driver.seedWasSetByUser = true; |
3247 |
|
Trace("options") << "user assigned option seed = " << value << std::endl; |
3248 |
|
} |
3249 |
|
|
3250 |
|
void assign_driver_segvSpin(Options& opts, const std::string& option, bool value) { |
3251 |
|
|
3252 |
|
opts.driver.segvSpin = value; |
3253 |
|
opts.driver.segvSpinWasSetByUser = true; |
3254 |
|
Trace("options") << "user assigned option segvSpin = " << value << std::endl; |
3255 |
|
} |
3256 |
|
|
3257 |
|
void assign_driver_version(Options& opts, const std::string& option, bool value) { |
3258 |
|
|
3259 |
|
opts.driver.version = value; |
3260 |
|
opts.driver.versionWasSetByUser = true; |
3261 |
|
Trace("options") << "user assigned option version = " << value << std::endl; |
3262 |
|
} |
3263 |
|
|
3264 |
|
void assign_parser_filesystemAccess(Options& opts, const std::string& option, bool value) { |
3265 |
|
|
3266 |
|
opts.parser.filesystemAccess = value; |
3267 |
|
opts.parser.filesystemAccessWasSetByUser = true; |
3268 |
|
Trace("options") << "user assigned option filesystemAccess = " << value << std::endl; |
3269 |
|
} |
3270 |
|
|
3271 |
9 |
void assign_parser_forceLogicString(Options& opts, const std::string& option, const std::string& optionarg) { |
3272 |
18 |
auto value = handleOption<std::string>("force-logic", option, optionarg); |
3273 |
|
|
3274 |
9 |
opts.parser.forceLogicString = value; |
3275 |
9 |
opts.parser.forceLogicStringWasSetByUser = true; |
3276 |
9 |
Trace("options") << "user assigned option forceLogicString = " << value << std::endl; |
3277 |
9 |
} |
3278 |
|
|
3279 |
19 |
void assign_parser_globalDeclarations(Options& opts, const std::string& option, bool value) { |
3280 |
|
|
3281 |
19 |
opts.parser.globalDeclarations = value; |
3282 |
19 |
opts.parser.globalDeclarationsWasSetByUser = true; |
3283 |
19 |
Trace("options") << "user assigned option globalDeclarations = " << value << std::endl; |
3284 |
19 |
} |
3285 |
|
|
3286 |
|
void assign_parser_memoryMap(Options& opts, const std::string& option, bool value) { |
3287 |
|
|
3288 |
|
opts.parser.memoryMap = value; |
3289 |
|
opts.parser.memoryMapWasSetByUser = true; |
3290 |
|
Trace("options") << "user assigned option memoryMap = " << value << std::endl; |
3291 |
|
} |
3292 |
|
|
3293 |
|
void assign_parser_semanticChecks(Options& opts, const std::string& option, bool value) { |
3294 |
|
|
3295 |
|
opts.parser.semanticChecks = value; |
3296 |
|
opts.parser.semanticChecksWasSetByUser = true; |
3297 |
|
Trace("options") << "user assigned option semanticChecks = " << value << std::endl; |
3298 |
|
} |
3299 |
|
|
3300 |
9 |
void assign_parser_strictParsing(Options& opts, const std::string& option, bool value) { |
3301 |
|
|
3302 |
9 |
opts.parser.strictParsing = value; |
3303 |
9 |
opts.parser.strictParsingWasSetByUser = true; |
3304 |
9 |
Trace("options") << "user assigned option strictParsing = " << value << std::endl; |
3305 |
9 |
} |
3306 |
|
|
3307 |
|
void assign_printer_flattenHOChains(Options& opts, const std::string& option, bool value) { |
3308 |
|
|
3309 |
|
opts.printer.flattenHOChains = value; |
3310 |
|
opts.printer.flattenHOChainsWasSetByUser = true; |
3311 |
|
Trace("options") << "user assigned option flattenHOChains = " << value << std::endl; |
3312 |
|
} |
3313 |
|
|
3314 |
|
void assign_printer_instFormatMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3315 |
|
auto value = opts.handler().stringToInstFormatMode("inst-format", option, optionarg); |
3316 |
|
|
3317 |
|
opts.printer.instFormatMode = value; |
3318 |
|
opts.printer.instFormatModeWasSetByUser = true; |
3319 |
|
Trace("options") << "user assigned option instFormatMode = " << value << std::endl; |
3320 |
|
} |
3321 |
|
|
3322 |
|
void assign_printer_modelFormatMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3323 |
|
auto value = stringToModelFormatMode(optionarg); |
3324 |
|
|
3325 |
|
opts.printer.modelFormatMode = value; |
3326 |
|
opts.printer.modelFormatModeWasSetByUser = true; |
3327 |
|
Trace("options") << "user assigned option modelFormatMode = " << value << std::endl; |
3328 |
|
} |
3329 |
|
|
3330 |
12 |
void assign_printer_printInstFull(Options& opts, const std::string& option, bool value) { |
3331 |
|
|
3332 |
12 |
opts.printer.printInstFull = value; |
3333 |
12 |
opts.printer.printInstFullWasSetByUser = true; |
3334 |
12 |
Trace("options") << "user assigned option printInstFull = " << value << std::endl; |
3335 |
12 |
} |
3336 |
|
|
3337 |
3 |
void assign_printer_printInstMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3338 |
3 |
auto value = stringToPrintInstMode(optionarg); |
3339 |
|
|
3340 |
3 |
opts.printer.printInstMode = value; |
3341 |
3 |
opts.printer.printInstModeWasSetByUser = true; |
3342 |
3 |
Trace("options") << "user assigned option printInstMode = " << value << std::endl; |
3343 |
3 |
} |
3344 |
|
|
3345 |
2 |
void assign_proof_proofEagerChecking(Options& opts, const std::string& option, bool value) { |
3346 |
|
|
3347 |
2 |
opts.proof.proofEagerChecking = value; |
3348 |
2 |
opts.proof.proofEagerCheckingWasSetByUser = true; |
3349 |
2 |
Trace("options") << "user assigned option proofEagerChecking = " << value << std::endl; |
3350 |
2 |
} |
3351 |
|
|
3352 |
|
void assign_proof_proofFormatMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3353 |
|
auto value = stringToProofFormatMode(optionarg); |
3354 |
|
|
3355 |
|
opts.proof.proofFormatMode = value; |
3356 |
|
opts.proof.proofFormatModeWasSetByUser = true; |
3357 |
|
Trace("options") << "user assigned option proofFormatMode = " << value << std::endl; |
3358 |
|
} |
3359 |
|
|
3360 |
|
void assign_proof_proofGranularityMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3361 |
|
auto value = stringToProofGranularityMode(optionarg); |
3362 |
|
|
3363 |
|
opts.proof.proofGranularityMode = value; |
3364 |
|
opts.proof.proofGranularityModeWasSetByUser = true; |
3365 |
|
Trace("options") << "user assigned option proofGranularityMode = " << value << std::endl; |
3366 |
|
} |
3367 |
|
|
3368 |
|
void assign_proof_proofPedantic(Options& opts, const std::string& option, const std::string& optionarg) { |
3369 |
|
auto value = handleOption<uint64_t>("proof-pedantic", option, optionarg); |
3370 |
|
|
3371 |
|
opts.proof.proofPedantic = value; |
3372 |
|
opts.proof.proofPedanticWasSetByUser = true; |
3373 |
|
Trace("options") << "user assigned option proofPedantic = " << value << std::endl; |
3374 |
|
} |
3375 |
|
|
3376 |
|
void assign_proof_proofPrintConclusion(Options& opts, const std::string& option, bool value) { |
3377 |
|
|
3378 |
|
opts.proof.proofPrintConclusion = value; |
3379 |
|
opts.proof.proofPrintConclusionWasSetByUser = true; |
3380 |
|
Trace("options") << "user assigned option proofPrintConclusion = " << value << std::endl; |
3381 |
|
} |
3382 |
|
|
3383 |
|
void assign_prop_minisatDumpDimacs(Options& opts, const std::string& option, bool value) { |
3384 |
|
|
3385 |
|
opts.prop.minisatDumpDimacs = value; |
3386 |
|
opts.prop.minisatDumpDimacsWasSetByUser = true; |
3387 |
|
Trace("options") << "user assigned option minisatDumpDimacs = " << value << std::endl; |
3388 |
|
} |
3389 |
|
|
3390 |
|
void assign_prop_minisatUseElim(Options& opts, const std::string& option, bool value) { |
3391 |
|
|
3392 |
|
opts.prop.minisatUseElim = value; |
3393 |
|
opts.prop.minisatUseElimWasSetByUser = true; |
3394 |
|
Trace("options") << "user assigned option minisatUseElim = " << value << std::endl; |
3395 |
|
} |
3396 |
|
|
3397 |
|
void assign_prop_satRandomFreq(Options& opts, const std::string& option, const std::string& optionarg) { |
3398 |
|
auto value = handleOption<double>("random-freq", option, optionarg); |
3399 |
|
opts.handler().checkMinimum("random-freq", option, value, static_cast<double>(0.0)); |
3400 |
|
opts.handler().checkMaximum("random-freq", option, value, static_cast<double>(1.0)); |
3401 |
|
opts.prop.satRandomFreq = value; |
3402 |
|
opts.prop.satRandomFreqWasSetByUser = true; |
3403 |
|
Trace("options") << "user assigned option satRandomFreq = " << value << std::endl; |
3404 |
|
} |
3405 |
|
|
3406 |
2 |
void assign_prop_satRandomSeed(Options& opts, const std::string& option, const std::string& optionarg) { |
3407 |
2 |
auto value = handleOption<uint64_t>("random-seed", option, optionarg); |
3408 |
|
|
3409 |
2 |
opts.prop.satRandomSeed = value; |
3410 |
2 |
opts.prop.satRandomSeedWasSetByUser = true; |
3411 |
2 |
Trace("options") << "user assigned option satRandomSeed = " << value << std::endl; |
3412 |
2 |
} |
3413 |
|
|
3414 |
|
void assign_prop_sat_refine_conflicts(Options& opts, const std::string& option, bool value) { |
3415 |
|
|
3416 |
|
opts.prop.sat_refine_conflicts = value; |
3417 |
|
opts.prop.sat_refine_conflictsWasSetByUser = true; |
3418 |
|
Trace("options") << "user assigned option sat_refine_conflicts = " << value << std::endl; |
3419 |
|
} |
3420 |
|
|
3421 |
|
void assign_prop_satRestartFirst(Options& opts, const std::string& option, const std::string& optionarg) { |
3422 |
|
auto value = handleOption<uint64_t>("restart-int-base", option, optionarg); |
3423 |
|
|
3424 |
|
opts.prop.satRestartFirst = value; |
3425 |
|
opts.prop.satRestartFirstWasSetByUser = true; |
3426 |
|
Trace("options") << "user assigned option satRestartFirst = " << value << std::endl; |
3427 |
|
} |
3428 |
|
|
3429 |
|
void assign_prop_satRestartInc(Options& opts, const std::string& option, const std::string& optionarg) { |
3430 |
|
auto value = handleOption<double>("restart-int-inc", option, optionarg); |
3431 |
|
opts.handler().checkMinimum("restart-int-inc", option, value, static_cast<double>(0.0)); |
3432 |
|
opts.prop.satRestartInc = value; |
3433 |
|
opts.prop.satRestartIncWasSetByUser = true; |
3434 |
|
Trace("options") << "user assigned option satRestartInc = " << value << std::endl; |
3435 |
|
} |
3436 |
|
|
3437 |
4 |
void assign_quantifiers_aggressiveMiniscopeQuant(Options& opts, const std::string& option, bool value) { |
3438 |
|
|
3439 |
4 |
opts.quantifiers.aggressiveMiniscopeQuant = value; |
3440 |
4 |
opts.quantifiers.aggressiveMiniscopeQuantWasSetByUser = true; |
3441 |
4 |
Trace("options") << "user assigned option aggressiveMiniscopeQuant = " << value << std::endl; |
3442 |
4 |
} |
3443 |
|
|
3444 |
3 |
void assign_quantifiers_cegisSample(Options& opts, const std::string& option, const std::string& optionarg) { |
3445 |
3 |
auto value = stringToCegisSampleMode(optionarg); |
3446 |
|
|
3447 |
3 |
opts.quantifiers.cegisSample = value; |
3448 |
3 |
opts.quantifiers.cegisSampleWasSetByUser = true; |
3449 |
3 |
Trace("options") << "user assigned option cegisSample = " << value << std::endl; |
3450 |
3 |
} |
3451 |
|
|
3452 |
19 |
void assign_quantifiers_cegqi(Options& opts, const std::string& option, bool value) { |
3453 |
|
|
3454 |
19 |
opts.quantifiers.cegqi = value; |
3455 |
19 |
opts.quantifiers.cegqiWasSetByUser = true; |
3456 |
19 |
Trace("options") << "user assigned option cegqi = " << value << std::endl; |
3457 |
19 |
} |
3458 |
|
|
3459 |
18 |
void assign_quantifiers_cegqiAll(Options& opts, const std::string& option, bool value) { |
3460 |
|
|
3461 |
18 |
opts.quantifiers.cegqiAll = value; |
3462 |
18 |
opts.quantifiers.cegqiAllWasSetByUser = true; |
3463 |
18 |
Trace("options") << "user assigned option cegqiAll = " << value << std::endl; |
3464 |
18 |
} |
3465 |
|
|
3466 |
106 |
void assign_quantifiers_cegqiBv(Options& opts, const std::string& option, bool value) { |
3467 |
|
|
3468 |
106 |
opts.quantifiers.cegqiBv = value; |
3469 |
106 |
opts.quantifiers.cegqiBvWasSetByUser = true; |
3470 |
106 |
Trace("options") << "user assigned option cegqiBv = " << value << std::endl; |
3471 |
106 |
} |
3472 |
|
|
3473 |
|
void assign_quantifiers_cegqiBvConcInv(Options& opts, const std::string& option, bool value) { |
3474 |
|
|
3475 |
|
opts.quantifiers.cegqiBvConcInv = value; |
3476 |
|
opts.quantifiers.cegqiBvConcInvWasSetByUser = true; |
3477 |
|
Trace("options") << "user assigned option cegqiBvConcInv = " << value << std::endl; |
3478 |
|
} |
3479 |
|
|
3480 |
82 |
void assign_quantifiers_cegqiBvIneqMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3481 |
82 |
auto value = stringToCegqiBvIneqMode(optionarg); |
3482 |
|
|
3483 |
82 |
opts.quantifiers.cegqiBvIneqMode = value; |
3484 |
82 |
opts.quantifiers.cegqiBvIneqModeWasSetByUser = true; |
3485 |
82 |
Trace("options") << "user assigned option cegqiBvIneqMode = " << value << std::endl; |
3486 |
82 |
} |
3487 |
|
|
3488 |
|
void assign_quantifiers_cegqiBvInterleaveValue(Options& opts, const std::string& option, bool value) { |
3489 |
|
|
3490 |
|
opts.quantifiers.cegqiBvInterleaveValue = value; |
3491 |
|
opts.quantifiers.cegqiBvInterleaveValueWasSetByUser = true; |
3492 |
|
Trace("options") << "user assigned option cegqiBvInterleaveValue = " << value << std::endl; |
3493 |
|
} |
3494 |
|
|
3495 |
|
void assign_quantifiers_cegqiBvLinearize(Options& opts, const std::string& option, bool value) { |
3496 |
|
|
3497 |
|
opts.quantifiers.cegqiBvLinearize = value; |
3498 |
|
opts.quantifiers.cegqiBvLinearizeWasSetByUser = true; |
3499 |
|
Trace("options") << "user assigned option cegqiBvLinearize = " << value << std::endl; |
3500 |
|
} |
3501 |
|
|
3502 |
2 |
void assign_quantifiers_cegqiBvRmExtract(Options& opts, const std::string& option, bool value) { |
3503 |
|
|
3504 |
2 |
opts.quantifiers.cegqiBvRmExtract = value; |
3505 |
2 |
opts.quantifiers.cegqiBvRmExtractWasSetByUser = true; |
3506 |
2 |
Trace("options") << "user assigned option cegqiBvRmExtract = " << value << std::endl; |
3507 |
2 |
} |
3508 |
|
|
3509 |
|
void assign_quantifiers_cegqiBvSolveNl(Options& opts, const std::string& option, bool value) { |
3510 |
|
|
3511 |
|
opts.quantifiers.cegqiBvSolveNl = value; |
3512 |
|
opts.quantifiers.cegqiBvSolveNlWasSetByUser = true; |
3513 |
|
Trace("options") << "user assigned option cegqiBvSolveNl = " << value << std::endl; |
3514 |
|
} |
3515 |
|
|
3516 |
599 |
void assign_quantifiers_cegqiFullEffort(Options& opts, const std::string& option, bool value) { |
3517 |
|
|
3518 |
599 |
opts.quantifiers.cegqiFullEffort = value; |
3519 |
599 |
opts.quantifiers.cegqiFullEffortWasSetByUser = true; |
3520 |
599 |
Trace("options") << "user assigned option cegqiFullEffort = " << value << std::endl; |
3521 |
599 |
} |
3522 |
|
|
3523 |
|
void assign_quantifiers_cegqiInnermost(Options& opts, const std::string& option, bool value) { |
3524 |
|
|
3525 |
|
opts.quantifiers.cegqiInnermost = value; |
3526 |
|
opts.quantifiers.cegqiInnermostWasSetByUser = true; |
3527 |
|
Trace("options") << "user assigned option cegqiInnermost = " << value << std::endl; |
3528 |
|
} |
3529 |
|
|
3530 |
|
void assign_quantifiers_cegqiMidpoint(Options& opts, const std::string& option, bool value) { |
3531 |
|
|
3532 |
|
opts.quantifiers.cegqiMidpoint = value; |
3533 |
|
opts.quantifiers.cegqiMidpointWasSetByUser = true; |
3534 |
|
Trace("options") << "user assigned option cegqiMidpoint = " << value << std::endl; |
3535 |
|
} |
3536 |
|
|
3537 |
|
void assign_quantifiers_cegqiMinBounds(Options& opts, const std::string& option, bool value) { |
3538 |
|
|
3539 |
|
opts.quantifiers.cegqiMinBounds = value; |
3540 |
|
opts.quantifiers.cegqiMinBoundsWasSetByUser = true; |
3541 |
|
Trace("options") << "user assigned option cegqiMinBounds = " << value << std::endl; |
3542 |
|
} |
3543 |
|
|
3544 |
|
void assign_quantifiers_cegqiModel(Options& opts, const std::string& option, bool value) { |
3545 |
|
|
3546 |
|
opts.quantifiers.cegqiModel = value; |
3547 |
|
opts.quantifiers.cegqiModelWasSetByUser = true; |
3548 |
|
Trace("options") << "user assigned option cegqiModel = " << value << std::endl; |
3549 |
|
} |
3550 |
|
|
3551 |
3 |
void assign_quantifiers_cegqiMultiInst(Options& opts, const std::string& option, bool value) { |
3552 |
|
|
3553 |
3 |
opts.quantifiers.cegqiMultiInst = value; |
3554 |
3 |
opts.quantifiers.cegqiMultiInstWasSetByUser = true; |
3555 |
3 |
Trace("options") << "user assigned option cegqiMultiInst = " << value << std::endl; |
3556 |
3 |
} |
3557 |
|
|
3558 |
19 |
void assign_quantifiers_cegqiNestedQE(Options& opts, const std::string& option, bool value) { |
3559 |
|
|
3560 |
19 |
opts.quantifiers.cegqiNestedQE = value; |
3561 |
19 |
opts.quantifiers.cegqiNestedQEWasSetByUser = true; |
3562 |
19 |
Trace("options") << "user assigned option cegqiNestedQE = " << value << std::endl; |
3563 |
19 |
} |
3564 |
|
|
3565 |
|
void assign_quantifiers_cegqiNopt(Options& opts, const std::string& option, bool value) { |
3566 |
|
|
3567 |
|
opts.quantifiers.cegqiNopt = value; |
3568 |
|
opts.quantifiers.cegqiNoptWasSetByUser = true; |
3569 |
|
Trace("options") << "user assigned option cegqiNopt = " << value << std::endl; |
3570 |
|
} |
3571 |
|
|
3572 |
|
void assign_quantifiers_cegqiRepeatLit(Options& opts, const std::string& option, bool value) { |
3573 |
|
|
3574 |
|
opts.quantifiers.cegqiRepeatLit = value; |
3575 |
|
opts.quantifiers.cegqiRepeatLitWasSetByUser = true; |
3576 |
|
Trace("options") << "user assigned option cegqiRepeatLit = " << value << std::endl; |
3577 |
|
} |
3578 |
|
|
3579 |
|
void assign_quantifiers_cegqiRoundUpLowerLia(Options& opts, const std::string& option, bool value) { |
3580 |
|
|
3581 |
|
opts.quantifiers.cegqiRoundUpLowerLia = value; |
3582 |
|
opts.quantifiers.cegqiRoundUpLowerLiaWasSetByUser = true; |
3583 |
|
Trace("options") << "user assigned option cegqiRoundUpLowerLia = " << value << std::endl; |
3584 |
|
} |
3585 |
|
|
3586 |
|
void assign_quantifiers_cegqiSat(Options& opts, const std::string& option, bool value) { |
3587 |
|
|
3588 |
|
opts.quantifiers.cegqiSat = value; |
3589 |
|
opts.quantifiers.cegqiSatWasSetByUser = true; |
3590 |
|
Trace("options") << "user assigned option cegqiSat = " << value << std::endl; |
3591 |
|
} |
3592 |
|
|
3593 |
6 |
void assign_quantifiers_cegqiUseInfInt(Options& opts, const std::string& option, bool value) { |
3594 |
|
|
3595 |
6 |
opts.quantifiers.cegqiUseInfInt = value; |
3596 |
6 |
opts.quantifiers.cegqiUseInfIntWasSetByUser = true; |
3597 |
6 |
Trace("options") << "user assigned option cegqiUseInfInt = " << value << std::endl; |
3598 |
6 |
} |
3599 |
|
|
3600 |
6 |
void assign_quantifiers_cegqiUseInfReal(Options& opts, const std::string& option, bool value) { |
3601 |
|
|
3602 |
6 |
opts.quantifiers.cegqiUseInfReal = value; |
3603 |
6 |
opts.quantifiers.cegqiUseInfRealWasSetByUser = true; |
3604 |
6 |
Trace("options") << "user assigned option cegqiUseInfReal = " << value << std::endl; |
3605 |
6 |
} |
3606 |
|
|
3607 |
|
void assign_quantifiers_condVarSplitQuantAgg(Options& opts, const std::string& option, bool value) { |
3608 |
|
|
3609 |
|
opts.quantifiers.condVarSplitQuantAgg = value; |
3610 |
|
opts.quantifiers.condVarSplitQuantAggWasSetByUser = true; |
3611 |
|
Trace("options") << "user assigned option condVarSplitQuantAgg = " << value << std::endl; |
3612 |
|
} |
3613 |
|
|
3614 |
|
void assign_quantifiers_condVarSplitQuant(Options& opts, const std::string& option, bool value) { |
3615 |
|
|
3616 |
|
opts.quantifiers.condVarSplitQuant = value; |
3617 |
|
opts.quantifiers.condVarSplitQuantWasSetByUser = true; |
3618 |
|
Trace("options") << "user assigned option condVarSplitQuant = " << value << std::endl; |
3619 |
|
} |
3620 |
|
|
3621 |
|
void assign_quantifiers_conjectureFilterActiveTerms(Options& opts, const std::string& option, bool value) { |
3622 |
|
|
3623 |
|
opts.quantifiers.conjectureFilterActiveTerms = value; |
3624 |
|
opts.quantifiers.conjectureFilterActiveTermsWasSetByUser = true; |
3625 |
|
Trace("options") << "user assigned option conjectureFilterActiveTerms = " << value << std::endl; |
3626 |
|
} |
3627 |
|
|
3628 |
|
void assign_quantifiers_conjectureFilterCanonical(Options& opts, const std::string& option, bool value) { |
3629 |
|
|
3630 |
|
opts.quantifiers.conjectureFilterCanonical = value; |
3631 |
|
opts.quantifiers.conjectureFilterCanonicalWasSetByUser = true; |
3632 |
|
Trace("options") << "user assigned option conjectureFilterCanonical = " << value << std::endl; |
3633 |
|
} |
3634 |
|
|
3635 |
2 |
void assign_quantifiers_conjectureFilterModel(Options& opts, const std::string& option, bool value) { |
3636 |
|
|
3637 |
2 |
opts.quantifiers.conjectureFilterModel = value; |
3638 |
2 |
opts.quantifiers.conjectureFilterModelWasSetByUser = true; |
3639 |
2 |
Trace("options") << "user assigned option conjectureFilterModel = " << value << std::endl; |
3640 |
2 |
} |
3641 |
|
|
3642 |
7 |
void assign_quantifiers_conjectureGen(Options& opts, const std::string& option, bool value) { |
3643 |
|
|
3644 |
7 |
opts.quantifiers.conjectureGen = value; |
3645 |
7 |
opts.quantifiers.conjectureGenWasSetByUser = true; |
3646 |
7 |
Trace("options") << "user assigned option conjectureGen = " << value << std::endl; |
3647 |
7 |
} |
3648 |
|
|
3649 |
|
void assign_quantifiers_conjectureGenGtEnum(Options& opts, const std::string& option, const std::string& optionarg) { |
3650 |
|
auto value = handleOption<int64_t>("conjecture-gen-gt-enum", option, optionarg); |
3651 |
|
|
3652 |
|
opts.quantifiers.conjectureGenGtEnum = value; |
3653 |
|
opts.quantifiers.conjectureGenGtEnumWasSetByUser = true; |
3654 |
|
Trace("options") << "user assigned option conjectureGenGtEnum = " << value << std::endl; |
3655 |
|
} |
3656 |
|
|
3657 |
|
void assign_quantifiers_conjectureGenMaxDepth(Options& opts, const std::string& option, const std::string& optionarg) { |
3658 |
|
auto value = handleOption<int64_t>("conjecture-gen-max-depth", option, optionarg); |
3659 |
|
|
3660 |
|
opts.quantifiers.conjectureGenMaxDepth = value; |
3661 |
|
opts.quantifiers.conjectureGenMaxDepthWasSetByUser = true; |
3662 |
|
Trace("options") << "user assigned option conjectureGenMaxDepth = " << value << std::endl; |
3663 |
|
} |
3664 |
|
|
3665 |
|
void assign_quantifiers_conjectureGenPerRound(Options& opts, const std::string& option, const std::string& optionarg) { |
3666 |
|
auto value = handleOption<int64_t>("conjecture-gen-per-round", option, optionarg); |
3667 |
|
|
3668 |
|
opts.quantifiers.conjectureGenPerRound = value; |
3669 |
|
opts.quantifiers.conjectureGenPerRoundWasSetByUser = true; |
3670 |
|
Trace("options") << "user assigned option conjectureGenPerRound = " << value << std::endl; |
3671 |
|
} |
3672 |
|
|
3673 |
|
void assign_quantifiers_conjectureUeeIntro(Options& opts, const std::string& option, bool value) { |
3674 |
|
|
3675 |
|
opts.quantifiers.conjectureUeeIntro = value; |
3676 |
|
opts.quantifiers.conjectureUeeIntroWasSetByUser = true; |
3677 |
|
Trace("options") << "user assigned option conjectureUeeIntro = " << value << std::endl; |
3678 |
|
} |
3679 |
|
|
3680 |
2 |
void assign_quantifiers_conjectureNoFilter(Options& opts, const std::string& option, bool value) { |
3681 |
|
|
3682 |
2 |
opts.quantifiers.conjectureNoFilter = value; |
3683 |
2 |
opts.quantifiers.conjectureNoFilterWasSetByUser = true; |
3684 |
2 |
Trace("options") << "user assigned option conjectureNoFilter = " << value << std::endl; |
3685 |
2 |
} |
3686 |
|
|
3687 |
|
void assign_quantifiers_dtStcInduction(Options& opts, const std::string& option, bool value) { |
3688 |
|
|
3689 |
|
opts.quantifiers.dtStcInduction = value; |
3690 |
|
opts.quantifiers.dtStcInductionWasSetByUser = true; |
3691 |
|
Trace("options") << "user assigned option dtStcInduction = " << value << std::endl; |
3692 |
|
} |
3693 |
|
|
3694 |
|
void assign_quantifiers_dtVarExpandQuant(Options& opts, const std::string& option, bool value) { |
3695 |
|
|
3696 |
|
opts.quantifiers.dtVarExpandQuant = value; |
3697 |
|
opts.quantifiers.dtVarExpandQuantWasSetByUser = true; |
3698 |
|
Trace("options") << "user assigned option dtVarExpandQuant = " << value << std::endl; |
3699 |
|
} |
3700 |
|
|
3701 |
1 |
void assign_quantifiers_eMatching(Options& opts, const std::string& option, bool value) { |
3702 |
|
|
3703 |
1 |
opts.quantifiers.eMatching = value; |
3704 |
1 |
opts.quantifiers.eMatchingWasSetByUser = true; |
3705 |
1 |
Trace("options") << "user assigned option eMatching = " << value << std::endl; |
3706 |
1 |
} |
3707 |
|
|
3708 |
|
void assign_quantifiers_elimTautQuant(Options& opts, const std::string& option, bool value) { |
3709 |
|
|
3710 |
|
opts.quantifiers.elimTautQuant = value; |
3711 |
|
opts.quantifiers.elimTautQuantWasSetByUser = true; |
3712 |
|
Trace("options") << "user assigned option elimTautQuant = " << value << std::endl; |
3713 |
|
} |
3714 |
|
|
3715 |
11 |
void assign_quantifiers_extRewriteQuant(Options& opts, const std::string& option, bool value) { |
3716 |
|
|
3717 |
11 |
opts.quantifiers.extRewriteQuant = value; |
3718 |
11 |
opts.quantifiers.extRewriteQuantWasSetByUser = true; |
3719 |
11 |
Trace("options") << "user assigned option extRewriteQuant = " << value << std::endl; |
3720 |
11 |
} |
3721 |
|
|
3722 |
176 |
void assign_quantifiers_finiteModelFind(Options& opts, const std::string& option, bool value) { |
3723 |
|
|
3724 |
176 |
opts.quantifiers.finiteModelFind = value; |
3725 |
176 |
opts.quantifiers.finiteModelFindWasSetByUser = true; |
3726 |
176 |
Trace("options") << "user assigned option finiteModelFind = " << value << std::endl; |
3727 |
176 |
} |
3728 |
|
|
3729 |
44 |
void assign_quantifiers_fmfBound(Options& opts, const std::string& option, bool value) { |
3730 |
|
|
3731 |
44 |
opts.quantifiers.fmfBound = value; |
3732 |
44 |
opts.quantifiers.fmfBoundWasSetByUser = true; |
3733 |
44 |
Trace("options") << "user assigned option fmfBound = " << value << std::endl; |
3734 |
44 |
} |
3735 |
|
|
3736 |
12 |
void assign_quantifiers_fmfBoundInt(Options& opts, const std::string& option, bool value) { |
3737 |
|
|
3738 |
12 |
opts.quantifiers.fmfBoundInt = value; |
3739 |
12 |
opts.quantifiers.fmfBoundIntWasSetByUser = true; |
3740 |
12 |
Trace("options") << "user assigned option fmfBoundInt = " << value << std::endl; |
3741 |
12 |
} |
3742 |
|
|
3743 |
3 |
void assign_quantifiers_fmfBoundLazy(Options& opts, const std::string& option, bool value) { |
3744 |
|
|
3745 |
3 |
opts.quantifiers.fmfBoundLazy = value; |
3746 |
3 |
opts.quantifiers.fmfBoundLazyWasSetByUser = true; |
3747 |
3 |
Trace("options") << "user assigned option fmfBoundLazy = " << value << std::endl; |
3748 |
3 |
} |
3749 |
|
|
3750 |
|
void assign_quantifiers_fmfFmcSimple(Options& opts, const std::string& option, bool value) { |
3751 |
|
|
3752 |
|
opts.quantifiers.fmfFmcSimple = value; |
3753 |
|
opts.quantifiers.fmfFmcSimpleWasSetByUser = true; |
3754 |
|
Trace("options") << "user assigned option fmfFmcSimple = " << value << std::endl; |
3755 |
|
} |
3756 |
|
|
3757 |
|
void assign_quantifiers_fmfFreshDistConst(Options& opts, const std::string& option, bool value) { |
3758 |
|
|
3759 |
|
opts.quantifiers.fmfFreshDistConst = value; |
3760 |
|
opts.quantifiers.fmfFreshDistConstWasSetByUser = true; |
3761 |
|
Trace("options") << "user assigned option fmfFreshDistConst = " << value << std::endl; |
3762 |
|
} |
3763 |
|
|
3764 |
51 |
void assign_quantifiers_fmfFunWellDefined(Options& opts, const std::string& option, bool value) { |
3765 |
|
|
3766 |
51 |
opts.quantifiers.fmfFunWellDefined = value; |
3767 |
51 |
opts.quantifiers.fmfFunWellDefinedWasSetByUser = true; |
3768 |
51 |
Trace("options") << "user assigned option fmfFunWellDefined = " << value << std::endl; |
3769 |
51 |
} |
3770 |
|
|
3771 |
10 |
void assign_quantifiers_fmfFunWellDefinedRelevant(Options& opts, const std::string& option, bool value) { |
3772 |
|
|
3773 |
10 |
opts.quantifiers.fmfFunWellDefinedRelevant = value; |
3774 |
10 |
opts.quantifiers.fmfFunWellDefinedRelevantWasSetByUser = true; |
3775 |
10 |
Trace("options") << "user assigned option fmfFunWellDefinedRelevant = " << value << std::endl; |
3776 |
10 |
} |
3777 |
|
|
3778 |
7 |
void assign_quantifiers_fmfInstEngine(Options& opts, const std::string& option, bool value) { |
3779 |
|
|
3780 |
7 |
opts.quantifiers.fmfInstEngine = value; |
3781 |
7 |
opts.quantifiers.fmfInstEngineWasSetByUser = true; |
3782 |
7 |
Trace("options") << "user assigned option fmfInstEngine = " << value << std::endl; |
3783 |
7 |
} |
3784 |
|
|
3785 |
|
void assign_quantifiers_fmfTypeCompletionThresh(Options& opts, const std::string& option, const std::string& optionarg) { |
3786 |
|
auto value = handleOption<int64_t>("fmf-type-completion-thresh", option, optionarg); |
3787 |
|
|
3788 |
|
opts.quantifiers.fmfTypeCompletionThresh = value; |
3789 |
|
opts.quantifiers.fmfTypeCompletionThreshWasSetByUser = true; |
3790 |
|
Trace("options") << "user assigned option fmfTypeCompletionThresh = " << value << std::endl; |
3791 |
|
} |
3792 |
|
|
3793 |
|
void assign_quantifiers_fullSaturateInterleave(Options& opts, const std::string& option, bool value) { |
3794 |
|
|
3795 |
|
opts.quantifiers.fullSaturateInterleave = value; |
3796 |
|
opts.quantifiers.fullSaturateInterleaveWasSetByUser = true; |
3797 |
|
Trace("options") << "user assigned option fullSaturateInterleave = " << value << std::endl; |
3798 |
|
} |
3799 |
|
|
3800 |
3 |
void assign_quantifiers_fullSaturateStratify(Options& opts, const std::string& option, bool value) { |
3801 |
|
|
3802 |
3 |
opts.quantifiers.fullSaturateStratify = value; |
3803 |
3 |
opts.quantifiers.fullSaturateStratifyWasSetByUser = true; |
3804 |
3 |
Trace("options") << "user assigned option fullSaturateStratify = " << value << std::endl; |
3805 |
3 |
} |
3806 |
|
|
3807 |
|
void assign_quantifiers_fullSaturateSum(Options& opts, const std::string& option, bool value) { |
3808 |
|
|
3809 |
|
opts.quantifiers.fullSaturateSum = value; |
3810 |
|
opts.quantifiers.fullSaturateSumWasSetByUser = true; |
3811 |
|
Trace("options") << "user assigned option fullSaturateSum = " << value << std::endl; |
3812 |
|
} |
3813 |
|
|
3814 |
76 |
void assign_quantifiers_fullSaturateQuant(Options& opts, const std::string& option, bool value) { |
3815 |
|
|
3816 |
76 |
opts.quantifiers.fullSaturateQuant = value; |
3817 |
76 |
opts.quantifiers.fullSaturateQuantWasSetByUser = true; |
3818 |
76 |
Trace("options") << "user assigned option fullSaturateQuant = " << value << std::endl; |
3819 |
76 |
} |
3820 |
|
|
3821 |
3 |
void assign_quantifiers_fullSaturateLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
3822 |
3 |
auto value = handleOption<int64_t>("full-saturate-quant-limit", option, optionarg); |
3823 |
|
|
3824 |
3 |
opts.quantifiers.fullSaturateLimit = value; |
3825 |
3 |
opts.quantifiers.fullSaturateLimitWasSetByUser = true; |
3826 |
3 |
Trace("options") << "user assigned option fullSaturateLimit = " << value << std::endl; |
3827 |
3 |
} |
3828 |
|
|
3829 |
|
void assign_quantifiers_fullSaturateQuantRd(Options& opts, const std::string& option, bool value) { |
3830 |
|
|
3831 |
|
opts.quantifiers.fullSaturateQuantRd = value; |
3832 |
|
opts.quantifiers.fullSaturateQuantRdWasSetByUser = true; |
3833 |
|
Trace("options") << "user assigned option fullSaturateQuantRd = " << value << std::endl; |
3834 |
|
} |
3835 |
|
|
3836 |
8 |
void assign_quantifiers_globalNegate(Options& opts, const std::string& option, bool value) { |
3837 |
|
|
3838 |
8 |
opts.quantifiers.globalNegate = value; |
3839 |
8 |
opts.quantifiers.globalNegateWasSetByUser = true; |
3840 |
8 |
Trace("options") << "user assigned option globalNegate = " << value << std::endl; |
3841 |
8 |
} |
3842 |
|
|
3843 |
8 |
void assign_quantifiers_hoElim(Options& opts, const std::string& option, bool value) { |
3844 |
|
|
3845 |
8 |
opts.quantifiers.hoElim = value; |
3846 |
8 |
opts.quantifiers.hoElimWasSetByUser = true; |
3847 |
8 |
Trace("options") << "user assigned option hoElim = " << value << std::endl; |
3848 |
8 |
} |
3849 |
|
|
3850 |
1 |
void assign_quantifiers_hoElimStoreAx(Options& opts, const std::string& option, bool value) { |
3851 |
|
|
3852 |
1 |
opts.quantifiers.hoElimStoreAx = value; |
3853 |
1 |
opts.quantifiers.hoElimStoreAxWasSetByUser = true; |
3854 |
1 |
Trace("options") << "user assigned option hoElimStoreAx = " << value << std::endl; |
3855 |
1 |
} |
3856 |
|
|
3857 |
|
void assign_quantifiers_hoMatching(Options& opts, const std::string& option, bool value) { |
3858 |
|
|
3859 |
|
opts.quantifiers.hoMatching = value; |
3860 |
|
opts.quantifiers.hoMatchingWasSetByUser = true; |
3861 |
|
Trace("options") << "user assigned option hoMatching = " << value << std::endl; |
3862 |
|
} |
3863 |
|
|
3864 |
|
void assign_quantifiers_hoMatchingVarArgPriority(Options& opts, const std::string& option, bool value) { |
3865 |
|
|
3866 |
|
opts.quantifiers.hoMatchingVarArgPriority = value; |
3867 |
|
opts.quantifiers.hoMatchingVarArgPriorityWasSetByUser = true; |
3868 |
|
Trace("options") << "user assigned option hoMatchingVarArgPriority = " << value << std::endl; |
3869 |
|
} |
3870 |
|
|
3871 |
|
void assign_quantifiers_hoMergeTermDb(Options& opts, const std::string& option, bool value) { |
3872 |
|
|
3873 |
|
opts.quantifiers.hoMergeTermDb = value; |
3874 |
|
opts.quantifiers.hoMergeTermDbWasSetByUser = true; |
3875 |
|
Trace("options") << "user assigned option hoMergeTermDb = " << value << std::endl; |
3876 |
|
} |
3877 |
|
|
3878 |
|
void assign_quantifiers_incrementTriggers(Options& opts, const std::string& option, bool value) { |
3879 |
|
|
3880 |
|
opts.quantifiers.incrementTriggers = value; |
3881 |
|
opts.quantifiers.incrementTriggersWasSetByUser = true; |
3882 |
|
Trace("options") << "user assigned option incrementTriggers = " << value << std::endl; |
3883 |
|
} |
3884 |
|
|
3885 |
|
void assign_quantifiers_instLevelInputOnly(Options& opts, const std::string& option, bool value) { |
3886 |
|
|
3887 |
|
opts.quantifiers.instLevelInputOnly = value; |
3888 |
|
opts.quantifiers.instLevelInputOnlyWasSetByUser = true; |
3889 |
|
Trace("options") << "user assigned option instLevelInputOnly = " << value << std::endl; |
3890 |
|
} |
3891 |
|
|
3892 |
3 |
void assign_quantifiers_instMaxLevel(Options& opts, const std::string& option, const std::string& optionarg) { |
3893 |
3 |
auto value = handleOption<int64_t>("inst-max-level", option, optionarg); |
3894 |
|
|
3895 |
3 |
opts.quantifiers.instMaxLevel = value; |
3896 |
3 |
opts.quantifiers.instMaxLevelWasSetByUser = true; |
3897 |
3 |
Trace("options") << "user assigned option instMaxLevel = " << value << std::endl; |
3898 |
3 |
} |
3899 |
|
|
3900 |
|
void assign_quantifiers_instMaxRounds(Options& opts, const std::string& option, const std::string& optionarg) { |
3901 |
|
auto value = handleOption<int64_t>("inst-max-rounds", option, optionarg); |
3902 |
|
|
3903 |
|
opts.quantifiers.instMaxRounds = value; |
3904 |
|
opts.quantifiers.instMaxRoundsWasSetByUser = true; |
3905 |
|
Trace("options") << "user assigned option instMaxRounds = " << value << std::endl; |
3906 |
|
} |
3907 |
|
|
3908 |
|
void assign_quantifiers_instNoEntail(Options& opts, const std::string& option, bool value) { |
3909 |
|
|
3910 |
|
opts.quantifiers.instNoEntail = value; |
3911 |
|
opts.quantifiers.instNoEntailWasSetByUser = true; |
3912 |
|
Trace("options") << "user assigned option instNoEntail = " << value << std::endl; |
3913 |
|
} |
3914 |
|
|
3915 |
|
void assign_quantifiers_instWhenPhase(Options& opts, const std::string& option, const std::string& optionarg) { |
3916 |
|
auto value = handleOption<int64_t>("inst-when-phase", option, optionarg); |
3917 |
|
|
3918 |
|
opts.quantifiers.instWhenPhase = value; |
3919 |
|
opts.quantifiers.instWhenPhaseWasSetByUser = true; |
3920 |
|
Trace("options") << "user assigned option instWhenPhase = " << value << std::endl; |
3921 |
|
} |
3922 |
|
|
3923 |
|
void assign_quantifiers_instWhenStrictInterleave(Options& opts, const std::string& option, bool value) { |
3924 |
|
|
3925 |
|
opts.quantifiers.instWhenStrictInterleave = value; |
3926 |
|
opts.quantifiers.instWhenStrictInterleaveWasSetByUser = true; |
3927 |
|
Trace("options") << "user assigned option instWhenStrictInterleave = " << value << std::endl; |
3928 |
|
} |
3929 |
|
|
3930 |
|
void assign_quantifiers_instWhenTcFirst(Options& opts, const std::string& option, bool value) { |
3931 |
|
|
3932 |
|
opts.quantifiers.instWhenTcFirst = value; |
3933 |
|
opts.quantifiers.instWhenTcFirstWasSetByUser = true; |
3934 |
|
Trace("options") << "user assigned option instWhenTcFirst = " << value << std::endl; |
3935 |
|
} |
3936 |
|
|
3937 |
3 |
void assign_quantifiers_instWhenMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3938 |
3 |
auto value = stringToInstWhenMode(optionarg); |
3939 |
3 |
opts.handler().checkInstWhenMode("inst-when", option, value); |
3940 |
3 |
opts.quantifiers.instWhenMode = value; |
3941 |
3 |
opts.quantifiers.instWhenModeWasSetByUser = true; |
3942 |
3 |
Trace("options") << "user assigned option instWhenMode = " << value << std::endl; |
3943 |
3 |
} |
3944 |
|
|
3945 |
5 |
void assign_quantifiers_intWfInduction(Options& opts, const std::string& option, bool value) { |
3946 |
|
|
3947 |
5 |
opts.quantifiers.intWfInduction = value; |
3948 |
5 |
opts.quantifiers.intWfInductionWasSetByUser = true; |
3949 |
5 |
Trace("options") << "user assigned option intWfInduction = " << value << std::endl; |
3950 |
5 |
} |
3951 |
|
|
3952 |
|
void assign_quantifiers_iteDtTesterSplitQuant(Options& opts, const std::string& option, bool value) { |
3953 |
|
|
3954 |
|
opts.quantifiers.iteDtTesterSplitQuant = value; |
3955 |
|
opts.quantifiers.iteDtTesterSplitQuantWasSetByUser = true; |
3956 |
|
Trace("options") << "user assigned option iteDtTesterSplitQuant = " << value << std::endl; |
3957 |
|
} |
3958 |
|
|
3959 |
|
void assign_quantifiers_iteLiftQuant(Options& opts, const std::string& option, const std::string& optionarg) { |
3960 |
|
auto value = stringToIteLiftQuantMode(optionarg); |
3961 |
|
|
3962 |
|
opts.quantifiers.iteLiftQuant = value; |
3963 |
|
opts.quantifiers.iteLiftQuantWasSetByUser = true; |
3964 |
|
Trace("options") << "user assigned option iteLiftQuant = " << value << std::endl; |
3965 |
|
} |
3966 |
|
|
3967 |
|
void assign_quantifiers_literalMatchMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3968 |
|
auto value = stringToLiteralMatchMode(optionarg); |
3969 |
|
|
3970 |
|
opts.quantifiers.literalMatchMode = value; |
3971 |
|
opts.quantifiers.literalMatchModeWasSetByUser = true; |
3972 |
|
Trace("options") << "user assigned option literalMatchMode = " << value << std::endl; |
3973 |
|
} |
3974 |
|
|
3975 |
17 |
void assign_quantifiers_macrosQuant(Options& opts, const std::string& option, bool value) { |
3976 |
|
|
3977 |
17 |
opts.quantifiers.macrosQuant = value; |
3978 |
17 |
opts.quantifiers.macrosQuantWasSetByUser = true; |
3979 |
17 |
Trace("options") << "user assigned option macrosQuant = " << value << std::endl; |
3980 |
17 |
} |
3981 |
|
|
3982 |
2 |
void assign_quantifiers_macrosQuantMode(Options& opts, const std::string& option, const std::string& optionarg) { |
3983 |
2 |
auto value = stringToMacrosQuantMode(optionarg); |
3984 |
|
|
3985 |
2 |
opts.quantifiers.macrosQuantMode = value; |
3986 |
2 |
opts.quantifiers.macrosQuantModeWasSetByUser = true; |
3987 |
2 |
Trace("options") << "user assigned option macrosQuantMode = " << value << std::endl; |
3988 |
2 |
} |
3989 |
|
|
3990 |
|
void assign_quantifiers_mbqiInterleave(Options& opts, const std::string& option, bool value) { |
3991 |
|
|
3992 |
|
opts.quantifiers.mbqiInterleave = value; |
3993 |
|
opts.quantifiers.mbqiInterleaveWasSetByUser = true; |
3994 |
|
Trace("options") << "user assigned option mbqiInterleave = " << value << std::endl; |
3995 |
|
} |
3996 |
|
|
3997 |
|
void assign_quantifiers_fmfOneInstPerRound(Options& opts, const std::string& option, bool value) { |
3998 |
|
|
3999 |
|
opts.quantifiers.fmfOneInstPerRound = value; |
4000 |
|
opts.quantifiers.fmfOneInstPerRoundWasSetByUser = true; |
4001 |
|
Trace("options") << "user assigned option fmfOneInstPerRound = " << value << std::endl; |
4002 |
|
} |
4003 |
|
|
4004 |
|
void assign_quantifiers_mbqiMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4005 |
|
auto value = stringToMbqiMode(optionarg); |
4006 |
|
|
4007 |
|
opts.quantifiers.mbqiMode = value; |
4008 |
|
opts.quantifiers.mbqiModeWasSetByUser = true; |
4009 |
|
Trace("options") << "user assigned option mbqiMode = " << value << std::endl; |
4010 |
|
} |
4011 |
|
|
4012 |
116 |
void assign_quantifiers_miniscopeQuant(Options& opts, const std::string& option, bool value) { |
4013 |
|
|
4014 |
116 |
opts.quantifiers.miniscopeQuant = value; |
4015 |
116 |
opts.quantifiers.miniscopeQuantWasSetByUser = true; |
4016 |
116 |
Trace("options") << "user assigned option miniscopeQuant = " << value << std::endl; |
4017 |
116 |
} |
4018 |
|
|
4019 |
114 |
void assign_quantifiers_miniscopeQuantFreeVar(Options& opts, const std::string& option, bool value) { |
4020 |
|
|
4021 |
114 |
opts.quantifiers.miniscopeQuantFreeVar = value; |
4022 |
114 |
opts.quantifiers.miniscopeQuantFreeVarWasSetByUser = true; |
4023 |
114 |
Trace("options") << "user assigned option miniscopeQuantFreeVar = " << value << std::endl; |
4024 |
114 |
} |
4025 |
|
|
4026 |
3 |
void assign_quantifiers_multiTriggerCache(Options& opts, const std::string& option, bool value) { |
4027 |
|
|
4028 |
3 |
opts.quantifiers.multiTriggerCache = value; |
4029 |
3 |
opts.quantifiers.multiTriggerCacheWasSetByUser = true; |
4030 |
3 |
Trace("options") << "user assigned option multiTriggerCache = " << value << std::endl; |
4031 |
3 |
} |
4032 |
|
|
4033 |
|
void assign_quantifiers_multiTriggerLinear(Options& opts, const std::string& option, bool value) { |
4034 |
|
|
4035 |
|
opts.quantifiers.multiTriggerLinear = value; |
4036 |
|
opts.quantifiers.multiTriggerLinearWasSetByUser = true; |
4037 |
|
Trace("options") << "user assigned option multiTriggerLinear = " << value << std::endl; |
4038 |
|
} |
4039 |
|
|
4040 |
|
void assign_quantifiers_multiTriggerPriority(Options& opts, const std::string& option, bool value) { |
4041 |
|
|
4042 |
|
opts.quantifiers.multiTriggerPriority = value; |
4043 |
|
opts.quantifiers.multiTriggerPriorityWasSetByUser = true; |
4044 |
|
Trace("options") << "user assigned option multiTriggerPriority = " << value << std::endl; |
4045 |
|
} |
4046 |
|
|
4047 |
|
void assign_quantifiers_multiTriggerWhenSingle(Options& opts, const std::string& option, bool value) { |
4048 |
|
|
4049 |
|
opts.quantifiers.multiTriggerWhenSingle = value; |
4050 |
|
opts.quantifiers.multiTriggerWhenSingleWasSetByUser = true; |
4051 |
|
Trace("options") << "user assigned option multiTriggerWhenSingle = " << value << std::endl; |
4052 |
|
} |
4053 |
|
|
4054 |
3 |
void assign_quantifiers_partialTriggers(Options& opts, const std::string& option, bool value) { |
4055 |
|
|
4056 |
3 |
opts.quantifiers.partialTriggers = value; |
4057 |
3 |
opts.quantifiers.partialTriggersWasSetByUser = true; |
4058 |
3 |
Trace("options") << "user assigned option partialTriggers = " << value << std::endl; |
4059 |
3 |
} |
4060 |
|
|
4061 |
3 |
void assign_quantifiers_poolInst(Options& opts, const std::string& option, bool value) { |
4062 |
|
|
4063 |
3 |
opts.quantifiers.poolInst = value; |
4064 |
3 |
opts.quantifiers.poolInstWasSetByUser = true; |
4065 |
3 |
Trace("options") << "user assigned option poolInst = " << value << std::endl; |
4066 |
3 |
} |
4067 |
|
|
4068 |
2 |
void assign_quantifiers_preSkolemQuant(Options& opts, const std::string& option, bool value) { |
4069 |
|
|
4070 |
2 |
opts.quantifiers.preSkolemQuant = value; |
4071 |
2 |
opts.quantifiers.preSkolemQuantWasSetByUser = true; |
4072 |
2 |
Trace("options") << "user assigned option preSkolemQuant = " << value << std::endl; |
4073 |
2 |
} |
4074 |
|
|
4075 |
|
void assign_quantifiers_preSkolemQuantAgg(Options& opts, const std::string& option, bool value) { |
4076 |
|
|
4077 |
|
opts.quantifiers.preSkolemQuantAgg = value; |
4078 |
|
opts.quantifiers.preSkolemQuantAggWasSetByUser = true; |
4079 |
|
Trace("options") << "user assigned option preSkolemQuantAgg = " << value << std::endl; |
4080 |
|
} |
4081 |
|
|
4082 |
2 |
void assign_quantifiers_preSkolemQuantNested(Options& opts, const std::string& option, bool value) { |
4083 |
|
|
4084 |
2 |
opts.quantifiers.preSkolemQuantNested = value; |
4085 |
2 |
opts.quantifiers.preSkolemQuantNestedWasSetByUser = true; |
4086 |
2 |
Trace("options") << "user assigned option preSkolemQuantNested = " << value << std::endl; |
4087 |
2 |
} |
4088 |
|
|
4089 |
|
void assign_quantifiers_prenexQuantUser(Options& opts, const std::string& option, bool value) { |
4090 |
|
|
4091 |
|
opts.quantifiers.prenexQuantUser = value; |
4092 |
|
opts.quantifiers.prenexQuantUserWasSetByUser = true; |
4093 |
|
Trace("options") << "user assigned option prenexQuantUser = " << value << std::endl; |
4094 |
|
} |
4095 |
|
|
4096 |
|
void assign_quantifiers_prenexQuant(Options& opts, const std::string& option, const std::string& optionarg) { |
4097 |
|
auto value = stringToPrenexQuantMode(optionarg); |
4098 |
|
|
4099 |
|
opts.quantifiers.prenexQuant = value; |
4100 |
|
opts.quantifiers.prenexQuantWasSetByUser = true; |
4101 |
|
Trace("options") << "user assigned option prenexQuant = " << value << std::endl; |
4102 |
|
} |
4103 |
|
|
4104 |
3 |
void assign_quantifiers_purifyTriggers(Options& opts, const std::string& option, bool value) { |
4105 |
|
|
4106 |
3 |
opts.quantifiers.purifyTriggers = value; |
4107 |
3 |
opts.quantifiers.purifyTriggersWasSetByUser = true; |
4108 |
3 |
Trace("options") << "user assigned option purifyTriggers = " << value << std::endl; |
4109 |
3 |
} |
4110 |
|
|
4111 |
|
void assign_quantifiers_qcfAllConflict(Options& opts, const std::string& option, bool value) { |
4112 |
|
|
4113 |
|
opts.quantifiers.qcfAllConflict = value; |
4114 |
|
opts.quantifiers.qcfAllConflictWasSetByUser = true; |
4115 |
|
Trace("options") << "user assigned option qcfAllConflict = " << value << std::endl; |
4116 |
|
} |
4117 |
|
|
4118 |
|
void assign_quantifiers_qcfEagerCheckRd(Options& opts, const std::string& option, bool value) { |
4119 |
|
|
4120 |
|
opts.quantifiers.qcfEagerCheckRd = value; |
4121 |
|
opts.quantifiers.qcfEagerCheckRdWasSetByUser = true; |
4122 |
|
Trace("options") << "user assigned option qcfEagerCheckRd = " << value << std::endl; |
4123 |
|
} |
4124 |
|
|
4125 |
|
void assign_quantifiers_qcfEagerTest(Options& opts, const std::string& option, bool value) { |
4126 |
|
|
4127 |
|
opts.quantifiers.qcfEagerTest = value; |
4128 |
|
opts.quantifiers.qcfEagerTestWasSetByUser = true; |
4129 |
|
Trace("options") << "user assigned option qcfEagerTest = " << value << std::endl; |
4130 |
|
} |
4131 |
|
|
4132 |
|
void assign_quantifiers_qcfNestedConflict(Options& opts, const std::string& option, bool value) { |
4133 |
|
|
4134 |
|
opts.quantifiers.qcfNestedConflict = value; |
4135 |
|
opts.quantifiers.qcfNestedConflictWasSetByUser = true; |
4136 |
|
Trace("options") << "user assigned option qcfNestedConflict = " << value << std::endl; |
4137 |
|
} |
4138 |
|
|
4139 |
|
void assign_quantifiers_qcfSkipRd(Options& opts, const std::string& option, bool value) { |
4140 |
|
|
4141 |
|
opts.quantifiers.qcfSkipRd = value; |
4142 |
|
opts.quantifiers.qcfSkipRdWasSetByUser = true; |
4143 |
|
Trace("options") << "user assigned option qcfSkipRd = " << value << std::endl; |
4144 |
|
} |
4145 |
|
|
4146 |
6 |
void assign_quantifiers_qcfTConstraint(Options& opts, const std::string& option, bool value) { |
4147 |
|
|
4148 |
6 |
opts.quantifiers.qcfTConstraint = value; |
4149 |
6 |
opts.quantifiers.qcfTConstraintWasSetByUser = true; |
4150 |
6 |
Trace("options") << "user assigned option qcfTConstraint = " << value << std::endl; |
4151 |
6 |
} |
4152 |
|
|
4153 |
|
void assign_quantifiers_qcfVoExp(Options& opts, const std::string& option, bool value) { |
4154 |
|
|
4155 |
|
opts.quantifiers.qcfVoExp = value; |
4156 |
|
opts.quantifiers.qcfVoExpWasSetByUser = true; |
4157 |
|
Trace("options") << "user assigned option qcfVoExp = " << value << std::endl; |
4158 |
|
} |
4159 |
|
|
4160 |
|
void assign_quantifiers_quantAlphaEquiv(Options& opts, const std::string& option, bool value) { |
4161 |
|
|
4162 |
|
opts.quantifiers.quantAlphaEquiv = value; |
4163 |
|
opts.quantifiers.quantAlphaEquivWasSetByUser = true; |
4164 |
|
Trace("options") << "user assigned option quantAlphaEquiv = " << value << std::endl; |
4165 |
|
} |
4166 |
|
|
4167 |
|
void assign_quantifiers_quantConflictFind(Options& opts, const std::string& option, bool value) { |
4168 |
|
|
4169 |
|
opts.quantifiers.quantConflictFind = value; |
4170 |
|
opts.quantifiers.quantConflictFindWasSetByUser = true; |
4171 |
|
Trace("options") << "user assigned option quantConflictFind = " << value << std::endl; |
4172 |
|
} |
4173 |
|
|
4174 |
|
void assign_quantifiers_qcfMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4175 |
|
auto value = stringToQcfMode(optionarg); |
4176 |
|
|
4177 |
|
opts.quantifiers.qcfMode = value; |
4178 |
|
opts.quantifiers.qcfModeWasSetByUser = true; |
4179 |
|
Trace("options") << "user assigned option qcfMode = " << value << std::endl; |
4180 |
|
} |
4181 |
|
|
4182 |
|
void assign_quantifiers_qcfWhenMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4183 |
|
auto value = stringToQcfWhenMode(optionarg); |
4184 |
|
|
4185 |
|
opts.quantifiers.qcfWhenMode = value; |
4186 |
|
opts.quantifiers.qcfWhenModeWasSetByUser = true; |
4187 |
|
Trace("options") << "user assigned option qcfWhenMode = " << value << std::endl; |
4188 |
|
} |
4189 |
|
|
4190 |
|
void assign_quantifiers_quantDynamicSplit(Options& opts, const std::string& option, const std::string& optionarg) { |
4191 |
|
auto value = stringToQuantDSplitMode(optionarg); |
4192 |
|
|
4193 |
|
opts.quantifiers.quantDynamicSplit = value; |
4194 |
|
opts.quantifiers.quantDynamicSplitWasSetByUser = true; |
4195 |
|
Trace("options") << "user assigned option quantDynamicSplit = " << value << std::endl; |
4196 |
|
} |
4197 |
|
|
4198 |
|
void assign_quantifiers_quantFunWellDefined(Options& opts, const std::string& option, bool value) { |
4199 |
|
|
4200 |
|
opts.quantifiers.quantFunWellDefined = value; |
4201 |
|
opts.quantifiers.quantFunWellDefinedWasSetByUser = true; |
4202 |
|
Trace("options") << "user assigned option quantFunWellDefined = " << value << std::endl; |
4203 |
|
} |
4204 |
|
|
4205 |
8 |
void assign_quantifiers_quantInduction(Options& opts, const std::string& option, bool value) { |
4206 |
|
|
4207 |
8 |
opts.quantifiers.quantInduction = value; |
4208 |
8 |
opts.quantifiers.quantInductionWasSetByUser = true; |
4209 |
8 |
Trace("options") << "user assigned option quantInduction = " << value << std::endl; |
4210 |
8 |
} |
4211 |
|
|
4212 |
|
void assign_quantifiers_quantRepMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4213 |
|
auto value = stringToQuantRepMode(optionarg); |
4214 |
|
|
4215 |
|
opts.quantifiers.quantRepMode = value; |
4216 |
|
opts.quantifiers.quantRepModeWasSetByUser = true; |
4217 |
|
Trace("options") << "user assigned option quantRepMode = " << value << std::endl; |
4218 |
|
} |
4219 |
|
|
4220 |
114 |
void assign_quantifiers_quantSplit(Options& opts, const std::string& option, bool value) { |
4221 |
|
|
4222 |
114 |
opts.quantifiers.quantSplit = value; |
4223 |
114 |
opts.quantifiers.quantSplitWasSetByUser = true; |
4224 |
114 |
Trace("options") << "user assigned option quantSplit = " << value << std::endl; |
4225 |
114 |
} |
4226 |
|
|
4227 |
|
void assign_quantifiers_registerQuantBodyTerms(Options& opts, const std::string& option, bool value) { |
4228 |
|
|
4229 |
|
opts.quantifiers.registerQuantBodyTerms = value; |
4230 |
|
opts.quantifiers.registerQuantBodyTermsWasSetByUser = true; |
4231 |
|
Trace("options") << "user assigned option registerQuantBodyTerms = " << value << std::endl; |
4232 |
|
} |
4233 |
|
|
4234 |
15 |
void assign_quantifiers_relationalTriggers(Options& opts, const std::string& option, bool value) { |
4235 |
|
|
4236 |
15 |
opts.quantifiers.relationalTriggers = value; |
4237 |
15 |
opts.quantifiers.relationalTriggersWasSetByUser = true; |
4238 |
15 |
Trace("options") << "user assigned option relationalTriggers = " << value << std::endl; |
4239 |
15 |
} |
4240 |
|
|
4241 |
3 |
void assign_quantifiers_relevantTriggers(Options& opts, const std::string& option, bool value) { |
4242 |
|
|
4243 |
3 |
opts.quantifiers.relevantTriggers = value; |
4244 |
3 |
opts.quantifiers.relevantTriggersWasSetByUser = true; |
4245 |
3 |
Trace("options") << "user assigned option relevantTriggers = " << value << std::endl; |
4246 |
3 |
} |
4247 |
|
|
4248 |
|
void assign_quantifiers_strictTriggers(Options& opts, const std::string& option, bool value) { |
4249 |
|
|
4250 |
|
opts.quantifiers.strictTriggers = value; |
4251 |
|
opts.quantifiers.strictTriggersWasSetByUser = true; |
4252 |
|
Trace("options") << "user assigned option strictTriggers = " << value << std::endl; |
4253 |
|
} |
4254 |
|
|
4255 |
|
void assign_quantifiers_sygus(Options& opts, const std::string& option, bool value) { |
4256 |
|
|
4257 |
|
opts.quantifiers.sygus = value; |
4258 |
|
opts.quantifiers.sygusWasSetByUser = true; |
4259 |
|
Trace("options") << "user assigned option sygus = " << value << std::endl; |
4260 |
|
} |
4261 |
|
|
4262 |
|
void assign_quantifiers_sygusActiveGenEnumConsts(Options& opts, const std::string& option, const std::string& optionarg) { |
4263 |
|
auto value = handleOption<uint64_t>("sygus-active-gen-cfactor", option, optionarg); |
4264 |
|
|
4265 |
|
opts.quantifiers.sygusActiveGenEnumConsts = value; |
4266 |
|
opts.quantifiers.sygusActiveGenEnumConstsWasSetByUser = true; |
4267 |
|
Trace("options") << "user assigned option sygusActiveGenEnumConsts = " << value << std::endl; |
4268 |
|
} |
4269 |
|
|
4270 |
14 |
void assign_quantifiers_sygusActiveGenMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4271 |
14 |
auto value = stringToSygusActiveGenMode(optionarg); |
4272 |
|
|
4273 |
14 |
opts.quantifiers.sygusActiveGenMode = value; |
4274 |
14 |
opts.quantifiers.sygusActiveGenModeWasSetByUser = true; |
4275 |
14 |
Trace("options") << "user assigned option sygusActiveGenMode = " << value << std::endl; |
4276 |
14 |
} |
4277 |
|
|
4278 |
2 |
void assign_quantifiers_sygusAddConstGrammar(Options& opts, const std::string& option, bool value) { |
4279 |
|
|
4280 |
2 |
opts.quantifiers.sygusAddConstGrammar = value; |
4281 |
2 |
opts.quantifiers.sygusAddConstGrammarWasSetByUser = true; |
4282 |
2 |
Trace("options") << "user assigned option sygusAddConstGrammar = " << value << std::endl; |
4283 |
2 |
} |
4284 |
|
|
4285 |
3 |
void assign_quantifiers_sygusArgRelevant(Options& opts, const std::string& option, bool value) { |
4286 |
|
|
4287 |
3 |
opts.quantifiers.sygusArgRelevant = value; |
4288 |
3 |
opts.quantifiers.sygusArgRelevantWasSetByUser = true; |
4289 |
3 |
Trace("options") << "user assigned option sygusArgRelevant = " << value << std::endl; |
4290 |
3 |
} |
4291 |
|
|
4292 |
|
void assign_quantifiers_sygusInvAutoUnfold(Options& opts, const std::string& option, bool value) { |
4293 |
|
|
4294 |
|
opts.quantifiers.sygusInvAutoUnfold = value; |
4295 |
|
opts.quantifiers.sygusInvAutoUnfoldWasSetByUser = true; |
4296 |
|
Trace("options") << "user assigned option sygusInvAutoUnfold = " << value << std::endl; |
4297 |
|
} |
4298 |
|
|
4299 |
1 |
void assign_quantifiers_sygusBoolIteReturnConst(Options& opts, const std::string& option, bool value) { |
4300 |
|
|
4301 |
1 |
opts.quantifiers.sygusBoolIteReturnConst = value; |
4302 |
1 |
opts.quantifiers.sygusBoolIteReturnConstWasSetByUser = true; |
4303 |
1 |
Trace("options") << "user assigned option sygusBoolIteReturnConst = " << value << std::endl; |
4304 |
1 |
} |
4305 |
|
|
4306 |
5 |
void assign_quantifiers_sygusCoreConnective(Options& opts, const std::string& option, bool value) { |
4307 |
|
|
4308 |
5 |
opts.quantifiers.sygusCoreConnective = value; |
4309 |
5 |
opts.quantifiers.sygusCoreConnectiveWasSetByUser = true; |
4310 |
5 |
Trace("options") << "user assigned option sygusCoreConnective = " << value << std::endl; |
4311 |
5 |
} |
4312 |
|
|
4313 |
|
void assign_quantifiers_sygusConstRepairAbort(Options& opts, const std::string& option, bool value) { |
4314 |
|
|
4315 |
|
opts.quantifiers.sygusConstRepairAbort = value; |
4316 |
|
opts.quantifiers.sygusConstRepairAbortWasSetByUser = true; |
4317 |
|
Trace("options") << "user assigned option sygusConstRepairAbort = " << value << std::endl; |
4318 |
|
} |
4319 |
|
|
4320 |
|
void assign_quantifiers_sygusEvalOpt(Options& opts, const std::string& option, bool value) { |
4321 |
|
|
4322 |
|
opts.quantifiers.sygusEvalOpt = value; |
4323 |
|
opts.quantifiers.sygusEvalOptWasSetByUser = true; |
4324 |
|
Trace("options") << "user assigned option sygusEvalOpt = " << value << std::endl; |
4325 |
|
} |
4326 |
|
|
4327 |
|
void assign_quantifiers_sygusEvalUnfold(Options& opts, const std::string& option, bool value) { |
4328 |
|
|
4329 |
|
opts.quantifiers.sygusEvalUnfold = value; |
4330 |
|
opts.quantifiers.sygusEvalUnfoldWasSetByUser = true; |
4331 |
|
Trace("options") << "user assigned option sygusEvalUnfold = " << value << std::endl; |
4332 |
|
} |
4333 |
|
|
4334 |
|
void assign_quantifiers_sygusEvalUnfoldBool(Options& opts, const std::string& option, bool value) { |
4335 |
|
|
4336 |
|
opts.quantifiers.sygusEvalUnfoldBool = value; |
4337 |
|
opts.quantifiers.sygusEvalUnfoldBoolWasSetByUser = true; |
4338 |
|
Trace("options") << "user assigned option sygusEvalUnfoldBool = " << value << std::endl; |
4339 |
|
} |
4340 |
|
|
4341 |
|
void assign_quantifiers_sygusExprMinerCheckTimeout(Options& opts, const std::string& option, const std::string& optionarg) { |
4342 |
|
auto value = handleOption<uint64_t>("sygus-expr-miner-check-timeout", option, optionarg); |
4343 |
|
|
4344 |
|
opts.quantifiers.sygusExprMinerCheckTimeout = value; |
4345 |
|
opts.quantifiers.sygusExprMinerCheckTimeoutWasSetByUser = true; |
4346 |
|
Trace("options") << "user assigned option sygusExprMinerCheckTimeout = " << value << std::endl; |
4347 |
|
} |
4348 |
|
|
4349 |
2 |
void assign_quantifiers_sygusExtRew(Options& opts, const std::string& option, bool value) { |
4350 |
|
|
4351 |
2 |
opts.quantifiers.sygusExtRew = value; |
4352 |
2 |
opts.quantifiers.sygusExtRewWasSetByUser = true; |
4353 |
2 |
Trace("options") << "user assigned option sygusExtRew = " << value << std::endl; |
4354 |
2 |
} |
4355 |
|
|
4356 |
|
void assign_quantifiers_sygusFilterSolRevSubsume(Options& opts, const std::string& option, bool value) { |
4357 |
|
|
4358 |
|
opts.quantifiers.sygusFilterSolRevSubsume = value; |
4359 |
|
opts.quantifiers.sygusFilterSolRevSubsumeWasSetByUser = true; |
4360 |
|
Trace("options") << "user assigned option sygusFilterSolRevSubsume = " << value << std::endl; |
4361 |
|
} |
4362 |
|
|
4363 |
|
void assign_quantifiers_sygusFilterSolMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4364 |
|
auto value = stringToSygusFilterSolMode(optionarg); |
4365 |
|
|
4366 |
|
opts.quantifiers.sygusFilterSolMode = value; |
4367 |
|
opts.quantifiers.sygusFilterSolModeWasSetByUser = true; |
4368 |
|
Trace("options") << "user assigned option sygusFilterSolMode = " << value << std::endl; |
4369 |
|
} |
4370 |
|
|
4371 |
6 |
void assign_quantifiers_sygusGrammarConsMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4372 |
6 |
auto value = stringToSygusGrammarConsMode(optionarg); |
4373 |
|
|
4374 |
6 |
opts.quantifiers.sygusGrammarConsMode = value; |
4375 |
6 |
opts.quantifiers.sygusGrammarConsModeWasSetByUser = true; |
4376 |
6 |
Trace("options") << "user assigned option sygusGrammarConsMode = " << value << std::endl; |
4377 |
6 |
} |
4378 |
|
|
4379 |
|
void assign_quantifiers_sygusGrammarNorm(Options& opts, const std::string& option, bool value) { |
4380 |
|
|
4381 |
|
opts.quantifiers.sygusGrammarNorm = value; |
4382 |
|
opts.quantifiers.sygusGrammarNormWasSetByUser = true; |
4383 |
|
Trace("options") << "user assigned option sygusGrammarNorm = " << value << std::endl; |
4384 |
|
} |
4385 |
|
|
4386 |
60 |
void assign_quantifiers_sygusInference(Options& opts, const std::string& option, bool value) { |
4387 |
|
|
4388 |
60 |
opts.quantifiers.sygusInference = value; |
4389 |
60 |
opts.quantifiers.sygusInferenceWasSetByUser = true; |
4390 |
60 |
Trace("options") << "user assigned option sygusInference = " << value << std::endl; |
4391 |
60 |
} |
4392 |
|
|
4393 |
18 |
void assign_quantifiers_sygusInst(Options& opts, const std::string& option, bool value) { |
4394 |
|
|
4395 |
18 |
opts.quantifiers.sygusInst = value; |
4396 |
18 |
opts.quantifiers.sygusInstWasSetByUser = true; |
4397 |
18 |
Trace("options") << "user assigned option sygusInst = " << value << std::endl; |
4398 |
18 |
} |
4399 |
|
|
4400 |
|
void assign_quantifiers_sygusInstMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4401 |
|
auto value = stringToSygusInstMode(optionarg); |
4402 |
|
|
4403 |
|
opts.quantifiers.sygusInstMode = value; |
4404 |
|
opts.quantifiers.sygusInstModeWasSetByUser = true; |
4405 |
|
Trace("options") << "user assigned option sygusInstMode = " << value << std::endl; |
4406 |
|
} |
4407 |
|
|
4408 |
|
void assign_quantifiers_sygusInstScope(Options& opts, const std::string& option, const std::string& optionarg) { |
4409 |
|
auto value = stringToSygusInstScope(optionarg); |
4410 |
|
|
4411 |
|
opts.quantifiers.sygusInstScope = value; |
4412 |
|
opts.quantifiers.sygusInstScopeWasSetByUser = true; |
4413 |
|
Trace("options") << "user assigned option sygusInstScope = " << value << std::endl; |
4414 |
|
} |
4415 |
|
|
4416 |
|
void assign_quantifiers_sygusInstTermSel(Options& opts, const std::string& option, const std::string& optionarg) { |
4417 |
|
auto value = stringToSygusInstTermSelMode(optionarg); |
4418 |
|
|
4419 |
|
opts.quantifiers.sygusInstTermSel = value; |
4420 |
|
opts.quantifiers.sygusInstTermSelWasSetByUser = true; |
4421 |
|
Trace("options") << "user assigned option sygusInstTermSel = " << value << std::endl; |
4422 |
|
} |
4423 |
|
|
4424 |
|
void assign_quantifiers_sygusInvTemplWhenSyntax(Options& opts, const std::string& option, bool value) { |
4425 |
|
|
4426 |
|
opts.quantifiers.sygusInvTemplWhenSyntax = value; |
4427 |
|
opts.quantifiers.sygusInvTemplWhenSyntaxWasSetByUser = true; |
4428 |
|
Trace("options") << "user assigned option sygusInvTemplWhenSyntax = " << value << std::endl; |
4429 |
|
} |
4430 |
|
|
4431 |
3 |
void assign_quantifiers_sygusInvTemplMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4432 |
3 |
auto value = stringToSygusInvTemplMode(optionarg); |
4433 |
|
|
4434 |
3 |
opts.quantifiers.sygusInvTemplMode = value; |
4435 |
3 |
opts.quantifiers.sygusInvTemplModeWasSetByUser = true; |
4436 |
3 |
Trace("options") << "user assigned option sygusInvTemplMode = " << value << std::endl; |
4437 |
3 |
} |
4438 |
|
|
4439 |
|
void assign_quantifiers_sygusMinGrammar(Options& opts, const std::string& option, bool value) { |
4440 |
|
|
4441 |
|
opts.quantifiers.sygusMinGrammar = value; |
4442 |
|
opts.quantifiers.sygusMinGrammarWasSetByUser = true; |
4443 |
|
Trace("options") << "user assigned option sygusMinGrammar = " << value << std::endl; |
4444 |
|
} |
4445 |
|
|
4446 |
6 |
void assign_quantifiers_sygusUnifPbe(Options& opts, const std::string& option, bool value) { |
4447 |
|
|
4448 |
6 |
opts.quantifiers.sygusUnifPbe = value; |
4449 |
6 |
opts.quantifiers.sygusUnifPbeWasSetByUser = true; |
4450 |
6 |
Trace("options") << "user assigned option sygusUnifPbe = " << value << std::endl; |
4451 |
6 |
} |
4452 |
|
|
4453 |
|
void assign_quantifiers_sygusPbeMultiFair(Options& opts, const std::string& option, bool value) { |
4454 |
|
|
4455 |
|
opts.quantifiers.sygusPbeMultiFair = value; |
4456 |
|
opts.quantifiers.sygusPbeMultiFairWasSetByUser = true; |
4457 |
|
Trace("options") << "user assigned option sygusPbeMultiFair = " << value << std::endl; |
4458 |
|
} |
4459 |
|
|
4460 |
|
void assign_quantifiers_sygusPbeMultiFairDiff(Options& opts, const std::string& option, const std::string& optionarg) { |
4461 |
|
auto value = handleOption<int64_t>("sygus-pbe-multi-fair-diff", option, optionarg); |
4462 |
|
|
4463 |
|
opts.quantifiers.sygusPbeMultiFairDiff = value; |
4464 |
|
opts.quantifiers.sygusPbeMultiFairDiffWasSetByUser = true; |
4465 |
|
Trace("options") << "user assigned option sygusPbeMultiFairDiff = " << value << std::endl; |
4466 |
|
} |
4467 |
|
|
4468 |
4 |
void assign_quantifiers_sygusQePreproc(Options& opts, const std::string& option, bool value) { |
4469 |
|
|
4470 |
4 |
opts.quantifiers.sygusQePreproc = value; |
4471 |
4 |
opts.quantifiers.sygusQePreprocWasSetByUser = true; |
4472 |
4 |
Trace("options") << "user assigned option sygusQePreproc = " << value << std::endl; |
4473 |
4 |
} |
4474 |
|
|
4475 |
|
void assign_quantifiers_sygusQueryGen(Options& opts, const std::string& option, bool value) { |
4476 |
|
|
4477 |
|
opts.quantifiers.sygusQueryGen = value; |
4478 |
|
opts.quantifiers.sygusQueryGenWasSetByUser = true; |
4479 |
|
Trace("options") << "user assigned option sygusQueryGen = " << value << std::endl; |
4480 |
|
} |
4481 |
|
|
4482 |
|
void assign_quantifiers_sygusQueryGenCheck(Options& opts, const std::string& option, bool value) { |
4483 |
|
|
4484 |
|
opts.quantifiers.sygusQueryGenCheck = value; |
4485 |
|
opts.quantifiers.sygusQueryGenCheckWasSetByUser = true; |
4486 |
|
Trace("options") << "user assigned option sygusQueryGenCheck = " << value << std::endl; |
4487 |
|
} |
4488 |
|
|
4489 |
|
void assign_quantifiers_sygusQueryGenDumpFiles(Options& opts, const std::string& option, const std::string& optionarg) { |
4490 |
|
auto value = stringToSygusQueryDumpFilesMode(optionarg); |
4491 |
|
|
4492 |
|
opts.quantifiers.sygusQueryGenDumpFiles = value; |
4493 |
|
opts.quantifiers.sygusQueryGenDumpFilesWasSetByUser = true; |
4494 |
|
Trace("options") << "user assigned option sygusQueryGenDumpFiles = " << value << std::endl; |
4495 |
|
} |
4496 |
|
|
4497 |
|
void assign_quantifiers_sygusQueryGenThresh(Options& opts, const std::string& option, const std::string& optionarg) { |
4498 |
|
auto value = handleOption<uint64_t>("sygus-query-gen-thresh", option, optionarg); |
4499 |
|
|
4500 |
|
opts.quantifiers.sygusQueryGenThresh = value; |
4501 |
|
opts.quantifiers.sygusQueryGenThreshWasSetByUser = true; |
4502 |
|
Trace("options") << "user assigned option sygusQueryGenThresh = " << value << std::endl; |
4503 |
|
} |
4504 |
|
|
4505 |
3 |
void assign_quantifiers_sygusRecFun(Options& opts, const std::string& option, bool value) { |
4506 |
|
|
4507 |
3 |
opts.quantifiers.sygusRecFun = value; |
4508 |
3 |
opts.quantifiers.sygusRecFunWasSetByUser = true; |
4509 |
3 |
Trace("options") << "user assigned option sygusRecFun = " << value << std::endl; |
4510 |
3 |
} |
4511 |
|
|
4512 |
|
void assign_quantifiers_sygusRecFunEvalLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
4513 |
|
auto value = handleOption<uint64_t>("sygus-rec-fun-eval-limit", option, optionarg); |
4514 |
|
|
4515 |
|
opts.quantifiers.sygusRecFunEvalLimit = value; |
4516 |
|
opts.quantifiers.sygusRecFunEvalLimitWasSetByUser = true; |
4517 |
|
Trace("options") << "user assigned option sygusRecFunEvalLimit = " << value << std::endl; |
4518 |
|
} |
4519 |
|
|
4520 |
8 |
void assign_quantifiers_sygusRepairConst(Options& opts, const std::string& option, bool value) { |
4521 |
|
|
4522 |
8 |
opts.quantifiers.sygusRepairConst = value; |
4523 |
8 |
opts.quantifiers.sygusRepairConstWasSetByUser = true; |
4524 |
8 |
Trace("options") << "user assigned option sygusRepairConst = " << value << std::endl; |
4525 |
8 |
} |
4526 |
|
|
4527 |
|
void assign_quantifiers_sygusRepairConstTimeout(Options& opts, const std::string& option, const std::string& optionarg) { |
4528 |
|
auto value = handleOption<uint64_t>("sygus-repair-const-timeout", option, optionarg); |
4529 |
|
|
4530 |
|
opts.quantifiers.sygusRepairConstTimeout = value; |
4531 |
|
opts.quantifiers.sygusRepairConstTimeoutWasSetByUser = true; |
4532 |
|
Trace("options") << "user assigned option sygusRepairConstTimeout = " << value << std::endl; |
4533 |
|
} |
4534 |
|
|
4535 |
6 |
void assign_quantifiers_sygusRew(Options& opts, const std::string& option, bool value) { |
4536 |
|
|
4537 |
6 |
opts.quantifiers.sygusRew = value; |
4538 |
6 |
opts.quantifiers.sygusRewWasSetByUser = true; |
4539 |
6 |
Trace("options") << "user assigned option sygusRew = " << value << std::endl; |
4540 |
6 |
} |
4541 |
|
|
4542 |
1 |
void assign_quantifiers_sygusRewSynth(Options& opts, const std::string& option, bool value) { |
4543 |
|
|
4544 |
1 |
opts.quantifiers.sygusRewSynth = value; |
4545 |
1 |
opts.quantifiers.sygusRewSynthWasSetByUser = true; |
4546 |
1 |
Trace("options") << "user assigned option sygusRewSynth = " << value << std::endl; |
4547 |
1 |
} |
4548 |
|
|
4549 |
|
void assign_quantifiers_sygusRewSynthAccel(Options& opts, const std::string& option, bool value) { |
4550 |
|
|
4551 |
|
opts.quantifiers.sygusRewSynthAccel = value; |
4552 |
|
opts.quantifiers.sygusRewSynthAccelWasSetByUser = true; |
4553 |
|
Trace("options") << "user assigned option sygusRewSynthAccel = " << value << std::endl; |
4554 |
|
} |
4555 |
|
|
4556 |
5 |
void assign_quantifiers_sygusRewSynthCheck(Options& opts, const std::string& option, bool value) { |
4557 |
|
|
4558 |
5 |
opts.quantifiers.sygusRewSynthCheck = value; |
4559 |
5 |
opts.quantifiers.sygusRewSynthCheckWasSetByUser = true; |
4560 |
5 |
Trace("options") << "user assigned option sygusRewSynthCheck = " << value << std::endl; |
4561 |
5 |
} |
4562 |
|
|
4563 |
|
void assign_quantifiers_sygusRewSynthFilterCong(Options& opts, const std::string& option, bool value) { |
4564 |
|
|
4565 |
|
opts.quantifiers.sygusRewSynthFilterCong = value; |
4566 |
|
opts.quantifiers.sygusRewSynthFilterCongWasSetByUser = true; |
4567 |
|
Trace("options") << "user assigned option sygusRewSynthFilterCong = " << value << std::endl; |
4568 |
|
} |
4569 |
|
|
4570 |
|
void assign_quantifiers_sygusRewSynthFilterMatch(Options& opts, const std::string& option, bool value) { |
4571 |
|
|
4572 |
|
opts.quantifiers.sygusRewSynthFilterMatch = value; |
4573 |
|
opts.quantifiers.sygusRewSynthFilterMatchWasSetByUser = true; |
4574 |
|
Trace("options") << "user assigned option sygusRewSynthFilterMatch = " << value << std::endl; |
4575 |
|
} |
4576 |
|
|
4577 |
|
void assign_quantifiers_sygusRewSynthFilterNonLinear(Options& opts, const std::string& option, bool value) { |
4578 |
|
|
4579 |
|
opts.quantifiers.sygusRewSynthFilterNonLinear = value; |
4580 |
|
opts.quantifiers.sygusRewSynthFilterNonLinearWasSetByUser = true; |
4581 |
|
Trace("options") << "user assigned option sygusRewSynthFilterNonLinear = " << value << std::endl; |
4582 |
|
} |
4583 |
|
|
4584 |
|
void assign_quantifiers_sygusRewSynthFilterOrder(Options& opts, const std::string& option, bool value) { |
4585 |
|
|
4586 |
|
opts.quantifiers.sygusRewSynthFilterOrder = value; |
4587 |
|
opts.quantifiers.sygusRewSynthFilterOrderWasSetByUser = true; |
4588 |
|
Trace("options") << "user assigned option sygusRewSynthFilterOrder = " << value << std::endl; |
4589 |
|
} |
4590 |
|
|
4591 |
256 |
void assign_quantifiers_sygusRewSynthInput(Options& opts, const std::string& option, bool value) { |
4592 |
|
|
4593 |
256 |
opts.quantifiers.sygusRewSynthInput = value; |
4594 |
256 |
opts.quantifiers.sygusRewSynthInputWasSetByUser = true; |
4595 |
256 |
Trace("options") << "user assigned option sygusRewSynthInput = " << value << std::endl; |
4596 |
256 |
} |
4597 |
|
|
4598 |
|
void assign_quantifiers_sygusRewSynthInputNVars(Options& opts, const std::string& option, const std::string& optionarg) { |
4599 |
|
auto value = handleOption<int64_t>("sygus-rr-synth-input-nvars", option, optionarg); |
4600 |
|
|
4601 |
|
opts.quantifiers.sygusRewSynthInputNVars = value; |
4602 |
|
opts.quantifiers.sygusRewSynthInputNVarsWasSetByUser = true; |
4603 |
|
Trace("options") << "user assigned option sygusRewSynthInputNVars = " << value << std::endl; |
4604 |
|
} |
4605 |
|
|
4606 |
|
void assign_quantifiers_sygusRewSynthInputUseBool(Options& opts, const std::string& option, bool value) { |
4607 |
|
|
4608 |
|
opts.quantifiers.sygusRewSynthInputUseBool = value; |
4609 |
|
opts.quantifiers.sygusRewSynthInputUseBoolWasSetByUser = true; |
4610 |
|
Trace("options") << "user assigned option sygusRewSynthInputUseBool = " << value << std::endl; |
4611 |
|
} |
4612 |
|
|
4613 |
|
void assign_quantifiers_sygusRewSynthRec(Options& opts, const std::string& option, bool value) { |
4614 |
|
|
4615 |
|
opts.quantifiers.sygusRewSynthRec = value; |
4616 |
|
opts.quantifiers.sygusRewSynthRecWasSetByUser = true; |
4617 |
|
Trace("options") << "user assigned option sygusRewSynthRec = " << value << std::endl; |
4618 |
|
} |
4619 |
|
|
4620 |
|
void assign_quantifiers_sygusRewVerify(Options& opts, const std::string& option, bool value) { |
4621 |
|
|
4622 |
|
opts.quantifiers.sygusRewVerify = value; |
4623 |
|
opts.quantifiers.sygusRewVerifyWasSetByUser = true; |
4624 |
|
Trace("options") << "user assigned option sygusRewVerify = " << value << std::endl; |
4625 |
|
} |
4626 |
|
|
4627 |
7 |
void assign_quantifiers_sygusRewVerifyAbort(Options& opts, const std::string& option, bool value) { |
4628 |
|
|
4629 |
7 |
opts.quantifiers.sygusRewVerifyAbort = value; |
4630 |
7 |
opts.quantifiers.sygusRewVerifyAbortWasSetByUser = true; |
4631 |
7 |
Trace("options") << "user assigned option sygusRewVerifyAbort = " << value << std::endl; |
4632 |
7 |
} |
4633 |
|
|
4634 |
|
void assign_quantifiers_sygusSampleFpUniform(Options& opts, const std::string& option, bool value) { |
4635 |
|
|
4636 |
|
opts.quantifiers.sygusSampleFpUniform = value; |
4637 |
|
opts.quantifiers.sygusSampleFpUniformWasSetByUser = true; |
4638 |
|
Trace("options") << "user assigned option sygusSampleFpUniform = " << value << std::endl; |
4639 |
|
} |
4640 |
|
|
4641 |
|
void assign_quantifiers_sygusSampleGrammar(Options& opts, const std::string& option, bool value) { |
4642 |
|
|
4643 |
|
opts.quantifiers.sygusSampleGrammar = value; |
4644 |
|
opts.quantifiers.sygusSampleGrammarWasSetByUser = true; |
4645 |
|
Trace("options") << "user assigned option sygusSampleGrammar = " << value << std::endl; |
4646 |
|
} |
4647 |
|
|
4648 |
7 |
void assign_quantifiers_sygusSamples(Options& opts, const std::string& option, const std::string& optionarg) { |
4649 |
7 |
auto value = handleOption<int64_t>("sygus-samples", option, optionarg); |
4650 |
|
|
4651 |
7 |
opts.quantifiers.sygusSamples = value; |
4652 |
7 |
opts.quantifiers.sygusSamplesWasSetByUser = true; |
4653 |
7 |
Trace("options") << "user assigned option sygusSamples = " << value << std::endl; |
4654 |
7 |
} |
4655 |
|
|
4656 |
|
void assign_quantifiers_cegqiSingleInvAbort(Options& opts, const std::string& option, bool value) { |
4657 |
|
|
4658 |
|
opts.quantifiers.cegqiSingleInvAbort = value; |
4659 |
|
opts.quantifiers.cegqiSingleInvAbortWasSetByUser = true; |
4660 |
|
Trace("options") << "user assigned option cegqiSingleInvAbort = " << value << std::endl; |
4661 |
|
} |
4662 |
|
|
4663 |
|
void assign_quantifiers_cegqiSingleInvPartial(Options& opts, const std::string& option, bool value) { |
4664 |
|
|
4665 |
|
opts.quantifiers.cegqiSingleInvPartial = value; |
4666 |
|
opts.quantifiers.cegqiSingleInvPartialWasSetByUser = true; |
4667 |
|
Trace("options") << "user assigned option cegqiSingleInvPartial = " << value << std::endl; |
4668 |
|
} |
4669 |
|
|
4670 |
1 |
void assign_quantifiers_cegqiSingleInvReconstructLimit(Options& opts, const std::string& option, const std::string& optionarg) { |
4671 |
1 |
auto value = handleOption<int64_t>("sygus-si-rcons-limit", option, optionarg); |
4672 |
|
|
4673 |
1 |
opts.quantifiers.cegqiSingleInvReconstructLimit = value; |
4674 |
1 |
opts.quantifiers.cegqiSingleInvReconstructLimitWasSetByUser = true; |
4675 |
1 |
Trace("options") << "user assigned option cegqiSingleInvReconstructLimit = " << value << std::endl; |
4676 |
1 |
} |
4677 |
|
|
4678 |
|
void assign_quantifiers_cegqiSingleInvReconstruct(Options& opts, const std::string& option, const std::string& optionarg) { |
4679 |
|
auto value = stringToCegqiSingleInvRconsMode(optionarg); |
4680 |
|
|
4681 |
|
opts.quantifiers.cegqiSingleInvReconstruct = value; |
4682 |
|
opts.quantifiers.cegqiSingleInvReconstructWasSetByUser = true; |
4683 |
|
Trace("options") << "user assigned option cegqiSingleInvReconstruct = " << value << std::endl; |
4684 |
|
} |
4685 |
|
|
4686 |
|
void assign_quantifiers_cegqiSingleInvReconstructConst(Options& opts, const std::string& option, bool value) { |
4687 |
|
|
4688 |
|
opts.quantifiers.cegqiSingleInvReconstructConst = value; |
4689 |
|
opts.quantifiers.cegqiSingleInvReconstructConstWasSetByUser = true; |
4690 |
|
Trace("options") << "user assigned option cegqiSingleInvReconstructConst = " << value << std::endl; |
4691 |
|
} |
4692 |
|
|
4693 |
47 |
void assign_quantifiers_cegqiSingleInvMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4694 |
47 |
auto value = stringToCegqiSingleInvMode(optionarg); |
4695 |
|
|
4696 |
47 |
opts.quantifiers.cegqiSingleInvMode = value; |
4697 |
47 |
opts.quantifiers.cegqiSingleInvModeWasSetByUser = true; |
4698 |
47 |
Trace("options") << "user assigned option cegqiSingleInvMode = " << value << std::endl; |
4699 |
47 |
} |
4700 |
|
|
4701 |
4 |
void assign_quantifiers_sygusStream(Options& opts, const std::string& option, bool value) { |
4702 |
|
|
4703 |
4 |
opts.quantifiers.sygusStream = value; |
4704 |
4 |
opts.quantifiers.sygusStreamWasSetByUser = true; |
4705 |
4 |
Trace("options") << "user assigned option sygusStream = " << value << std::endl; |
4706 |
4 |
} |
4707 |
|
|
4708 |
|
void assign_quantifiers_sygusTemplEmbedGrammar(Options& opts, const std::string& option, bool value) { |
4709 |
|
|
4710 |
|
opts.quantifiers.sygusTemplEmbedGrammar = value; |
4711 |
|
opts.quantifiers.sygusTemplEmbedGrammarWasSetByUser = true; |
4712 |
|
Trace("options") << "user assigned option sygusTemplEmbedGrammar = " << value << std::endl; |
4713 |
|
} |
4714 |
|
|
4715 |
|
void assign_quantifiers_sygusUnifCondIndNoRepeatSol(Options& opts, const std::string& option, bool value) { |
4716 |
|
|
4717 |
|
opts.quantifiers.sygusUnifCondIndNoRepeatSol = value; |
4718 |
|
opts.quantifiers.sygusUnifCondIndNoRepeatSolWasSetByUser = true; |
4719 |
|
Trace("options") << "user assigned option sygusUnifCondIndNoRepeatSol = " << value << std::endl; |
4720 |
|
} |
4721 |
|
|
4722 |
9 |
void assign_quantifiers_sygusUnifPi(Options& opts, const std::string& option, const std::string& optionarg) { |
4723 |
9 |
auto value = stringToSygusUnifPiMode(optionarg); |
4724 |
|
|
4725 |
9 |
opts.quantifiers.sygusUnifPi = value; |
4726 |
9 |
opts.quantifiers.sygusUnifPiWasSetByUser = true; |
4727 |
9 |
Trace("options") << "user assigned option sygusUnifPi = " << value << std::endl; |
4728 |
9 |
} |
4729 |
|
|
4730 |
|
void assign_quantifiers_sygusUnifShuffleCond(Options& opts, const std::string& option, bool value) { |
4731 |
|
|
4732 |
|
opts.quantifiers.sygusUnifShuffleCond = value; |
4733 |
|
opts.quantifiers.sygusUnifShuffleCondWasSetByUser = true; |
4734 |
|
Trace("options") << "user assigned option sygusUnifShuffleCond = " << value << std::endl; |
4735 |
|
} |
4736 |
|
|
4737 |
|
void assign_quantifiers_sygusVerifyInstMaxRounds(Options& opts, const std::string& option, const std::string& optionarg) { |
4738 |
|
auto value = handleOption<int64_t>("sygus-verify-inst-max-rounds", option, optionarg); |
4739 |
|
|
4740 |
|
opts.quantifiers.sygusVerifyInstMaxRounds = value; |
4741 |
|
opts.quantifiers.sygusVerifyInstMaxRoundsWasSetByUser = true; |
4742 |
|
Trace("options") << "user assigned option sygusVerifyInstMaxRounds = " << value << std::endl; |
4743 |
|
} |
4744 |
|
|
4745 |
|
void assign_quantifiers_termDbCd(Options& opts, const std::string& option, bool value) { |
4746 |
|
|
4747 |
|
opts.quantifiers.termDbCd = value; |
4748 |
|
opts.quantifiers.termDbCdWasSetByUser = true; |
4749 |
|
Trace("options") << "user assigned option termDbCd = " << value << std::endl; |
4750 |
|
} |
4751 |
|
|
4752 |
|
void assign_quantifiers_termDbMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4753 |
|
auto value = stringToTermDbMode(optionarg); |
4754 |
|
|
4755 |
|
opts.quantifiers.termDbMode = value; |
4756 |
|
opts.quantifiers.termDbModeWasSetByUser = true; |
4757 |
|
Trace("options") << "user assigned option termDbMode = " << value << std::endl; |
4758 |
|
} |
4759 |
|
|
4760 |
|
void assign_quantifiers_triggerActiveSelMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4761 |
|
auto value = stringToTriggerActiveSelMode(optionarg); |
4762 |
|
|
4763 |
|
opts.quantifiers.triggerActiveSelMode = value; |
4764 |
|
opts.quantifiers.triggerActiveSelModeWasSetByUser = true; |
4765 |
|
Trace("options") << "user assigned option triggerActiveSelMode = " << value << std::endl; |
4766 |
|
} |
4767 |
|
|
4768 |
|
void assign_quantifiers_triggerSelMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4769 |
|
auto value = stringToTriggerSelMode(optionarg); |
4770 |
|
|
4771 |
|
opts.quantifiers.triggerSelMode = value; |
4772 |
|
opts.quantifiers.triggerSelModeWasSetByUser = true; |
4773 |
|
Trace("options") << "user assigned option triggerSelMode = " << value << std::endl; |
4774 |
|
} |
4775 |
|
|
4776 |
|
void assign_quantifiers_userPatternsQuant(Options& opts, const std::string& option, const std::string& optionarg) { |
4777 |
|
auto value = stringToUserPatMode(optionarg); |
4778 |
|
|
4779 |
|
opts.quantifiers.userPatternsQuant = value; |
4780 |
|
opts.quantifiers.userPatternsQuantWasSetByUser = true; |
4781 |
|
Trace("options") << "user assigned option userPatternsQuant = " << value << std::endl; |
4782 |
|
} |
4783 |
|
|
4784 |
|
void assign_quantifiers_varElimQuant(Options& opts, const std::string& option, bool value) { |
4785 |
|
|
4786 |
|
opts.quantifiers.varElimQuant = value; |
4787 |
|
opts.quantifiers.varElimQuantWasSetByUser = true; |
4788 |
|
Trace("options") << "user assigned option varElimQuant = " << value << std::endl; |
4789 |
|
} |
4790 |
|
|
4791 |
7 |
void assign_quantifiers_varIneqElimQuant(Options& opts, const std::string& option, bool value) { |
4792 |
|
|
4793 |
7 |
opts.quantifiers.varIneqElimQuant = value; |
4794 |
7 |
opts.quantifiers.varIneqElimQuantWasSetByUser = true; |
4795 |
7 |
Trace("options") << "user assigned option varIneqElimQuant = " << value << std::endl; |
4796 |
7 |
} |
4797 |
|
|
4798 |
|
void assign_sep_sepCheckNeg(Options& opts, const std::string& option, bool value) { |
4799 |
|
|
4800 |
|
opts.sep.sepCheckNeg = value; |
4801 |
|
opts.sep.sepCheckNegWasSetByUser = true; |
4802 |
|
Trace("options") << "user assigned option sepCheckNeg = " << value << std::endl; |
4803 |
|
} |
4804 |
|
|
4805 |
|
void assign_sep_sepChildRefine(Options& opts, const std::string& option, bool value) { |
4806 |
|
|
4807 |
|
opts.sep.sepChildRefine = value; |
4808 |
|
opts.sep.sepChildRefineWasSetByUser = true; |
4809 |
|
Trace("options") << "user assigned option sepChildRefine = " << value << std::endl; |
4810 |
|
} |
4811 |
|
|
4812 |
|
void assign_sep_sepDisequalC(Options& opts, const std::string& option, bool value) { |
4813 |
|
|
4814 |
|
opts.sep.sepDisequalC = value; |
4815 |
|
opts.sep.sepDisequalCWasSetByUser = true; |
4816 |
|
Trace("options") << "user assigned option sepDisequalC = " << value << std::endl; |
4817 |
|
} |
4818 |
|
|
4819 |
|
void assign_sep_sepExp(Options& opts, const std::string& option, bool value) { |
4820 |
|
|
4821 |
|
opts.sep.sepExp = value; |
4822 |
|
opts.sep.sepExpWasSetByUser = true; |
4823 |
|
Trace("options") << "user assigned option sepExp = " << value << std::endl; |
4824 |
|
} |
4825 |
|
|
4826 |
|
void assign_sep_sepMinimalRefine(Options& opts, const std::string& option, bool value) { |
4827 |
|
|
4828 |
|
opts.sep.sepMinimalRefine = value; |
4829 |
|
opts.sep.sepMinimalRefineWasSetByUser = true; |
4830 |
|
Trace("options") << "user assigned option sepMinimalRefine = " << value << std::endl; |
4831 |
|
} |
4832 |
|
|
4833 |
1 |
void assign_sep_sepPreSkolemEmp(Options& opts, const std::string& option, bool value) { |
4834 |
|
|
4835 |
1 |
opts.sep.sepPreSkolemEmp = value; |
4836 |
1 |
opts.sep.sepPreSkolemEmpWasSetByUser = true; |
4837 |
1 |
Trace("options") << "user assigned option sepPreSkolemEmp = " << value << std::endl; |
4838 |
1 |
} |
4839 |
|
|
4840 |
116 |
void assign_sets_setsExt(Options& opts, const std::string& option, bool value) { |
4841 |
|
|
4842 |
116 |
opts.sets.setsExt = value; |
4843 |
116 |
opts.sets.setsExtWasSetByUser = true; |
4844 |
116 |
Trace("options") << "user assigned option setsExt = " << value << std::endl; |
4845 |
116 |
} |
4846 |
|
|
4847 |
2 |
void assign_sets_setsInferAsLemmas(Options& opts, const std::string& option, bool value) { |
4848 |
|
|
4849 |
2 |
opts.sets.setsInferAsLemmas = value; |
4850 |
2 |
opts.sets.setsInferAsLemmasWasSetByUser = true; |
4851 |
2 |
Trace("options") << "user assigned option setsInferAsLemmas = " << value << std::endl; |
4852 |
2 |
} |
4853 |
|
|
4854 |
|
void assign_sets_setsProxyLemmas(Options& opts, const std::string& option, bool value) { |
4855 |
|
|
4856 |
|
opts.sets.setsProxyLemmas = value; |
4857 |
|
opts.sets.setsProxyLemmasWasSetByUser = true; |
4858 |
|
Trace("options") << "user assigned option setsProxyLemmas = " << value << std::endl; |
4859 |
|
} |
4860 |
|
|
4861 |
4 |
void assign_smt_abstractValues(Options& opts, const std::string& option, bool value) { |
4862 |
|
|
4863 |
4 |
opts.smt.abstractValues = value; |
4864 |
4 |
opts.smt.abstractValuesWasSetByUser = true; |
4865 |
4 |
Trace("options") << "user assigned option abstractValues = " << value << std::endl; |
4866 |
4 |
} |
4867 |
|
|
4868 |
31 |
void assign_smt_ackermann(Options& opts, const std::string& option, bool value) { |
4869 |
|
|
4870 |
31 |
opts.smt.ackermann = value; |
4871 |
31 |
opts.smt.ackermannWasSetByUser = true; |
4872 |
31 |
Trace("options") << "user assigned option ackermann = " << value << std::endl; |
4873 |
31 |
} |
4874 |
|
|
4875 |
21 |
void assign_smt_blockModelsMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4876 |
21 |
auto value = stringToBlockModelsMode(optionarg); |
4877 |
|
|
4878 |
21 |
opts.smt.blockModelsMode = value; |
4879 |
21 |
opts.smt.blockModelsModeWasSetByUser = true; |
4880 |
21 |
Trace("options") << "user assigned option blockModelsMode = " << value << std::endl; |
4881 |
21 |
} |
4882 |
|
|
4883 |
78 |
void assign_smt_BVAndIntegerGranularity(Options& opts, const std::string& option, const std::string& optionarg) { |
4884 |
78 |
auto value = handleOption<uint64_t>("bvand-integer-granularity", option, optionarg); |
4885 |
|
|
4886 |
78 |
opts.smt.BVAndIntegerGranularity = value; |
4887 |
78 |
opts.smt.BVAndIntegerGranularityWasSetByUser = true; |
4888 |
78 |
Trace("options") << "user assigned option BVAndIntegerGranularity = " << value << std::endl; |
4889 |
78 |
} |
4890 |
|
|
4891 |
13 |
void assign_smt_checkAbducts(Options& opts, const std::string& option, bool value) { |
4892 |
|
|
4893 |
13 |
opts.smt.checkAbducts = value; |
4894 |
13 |
opts.smt.checkAbductsWasSetByUser = true; |
4895 |
13 |
Trace("options") << "user assigned option checkAbducts = " << value << std::endl; |
4896 |
13 |
} |
4897 |
|
|
4898 |
8 |
void assign_smt_checkInterpols(Options& opts, const std::string& option, bool value) { |
4899 |
|
|
4900 |
8 |
opts.smt.checkInterpols = value; |
4901 |
8 |
opts.smt.checkInterpolsWasSetByUser = true; |
4902 |
8 |
Trace("options") << "user assigned option checkInterpols = " << value << std::endl; |
4903 |
8 |
} |
4904 |
|
|
4905 |
116 |
void assign_smt_checkModels(Options& opts, const std::string& option, bool value) { |
4906 |
|
|
4907 |
116 |
opts.smt.checkModels = value; |
4908 |
116 |
opts.smt.checkModelsWasSetByUser = true; |
4909 |
116 |
Trace("options") << "user assigned option checkModels = " << value << std::endl; |
4910 |
116 |
} |
4911 |
|
|
4912 |
1160 |
void assign_smt_checkProofs(Options& opts, const std::string& option, bool value) { |
4913 |
|
|
4914 |
1160 |
opts.smt.checkProofs = value; |
4915 |
1160 |
opts.smt.checkProofsWasSetByUser = true; |
4916 |
1160 |
Trace("options") << "user assigned option checkProofs = " << value << std::endl; |
4917 |
1160 |
} |
4918 |
|
|
4919 |
188 |
void assign_smt_checkSynthSol(Options& opts, const std::string& option, bool value) { |
4920 |
|
|
4921 |
188 |
opts.smt.checkSynthSol = value; |
4922 |
188 |
opts.smt.checkSynthSolWasSetByUser = true; |
4923 |
188 |
Trace("options") << "user assigned option checkSynthSol = " << value << std::endl; |
4924 |
188 |
} |
4925 |
|
|
4926 |
1185 |
void assign_smt_checkUnsatCores(Options& opts, const std::string& option, bool value) { |
4927 |
|
|
4928 |
1185 |
opts.smt.checkUnsatCores = value; |
4929 |
1185 |
opts.smt.checkUnsatCoresWasSetByUser = true; |
4930 |
1185 |
Trace("options") << "user assigned option checkUnsatCores = " << value << std::endl; |
4931 |
1185 |
} |
4932 |
|
|
4933 |
1224 |
void assign_smt_debugCheckModels(Options& opts, const std::string& option, bool value) { |
4934 |
|
|
4935 |
1224 |
opts.smt.debugCheckModels = value; |
4936 |
1224 |
opts.smt.debugCheckModelsWasSetByUser = true; |
4937 |
1224 |
Trace("options") << "user assigned option debugCheckModels = " << value << std::endl; |
4938 |
1224 |
} |
4939 |
|
|
4940 |
|
void assign_smt_dumpToFileName(Options& opts, const std::string& option, const std::string& optionarg) { |
4941 |
|
auto value = handleOption<ManagedOut>("dump-to", option, optionarg); |
4942 |
|
opts.handler().setDumpStream("dump-to", option, value); |
4943 |
|
opts.smt.dumpToFileName = value; |
4944 |
|
opts.smt.dumpToFileNameWasSetByUser = true; |
4945 |
|
Trace("options") << "user assigned option dumpToFileName = " << value << std::endl; |
4946 |
|
} |
4947 |
|
|
4948 |
3 |
void assign_smt_dumpModeString(Options& opts, const std::string& option, const std::string& optionarg) { |
4949 |
6 |
auto value = handleOption<std::string>("dump", option, optionarg); |
4950 |
4 |
opts.handler().setDumpMode("dump", option, value); |
4951 |
2 |
opts.smt.dumpModeString = value; |
4952 |
2 |
opts.smt.dumpModeStringWasSetByUser = true; |
4953 |
2 |
Trace("options") << "user assigned option dumpModeString = " << value << std::endl; |
4954 |
2 |
} |
4955 |
|
|
4956 |
|
void assign_smt_earlyIteRemoval(Options& opts, const std::string& option, bool value) { |
4957 |
|
|
4958 |
|
opts.smt.earlyIteRemoval = value; |
4959 |
|
opts.smt.earlyIteRemovalWasSetByUser = true; |
4960 |
|
Trace("options") << "user assigned option earlyIteRemoval = " << value << std::endl; |
4961 |
|
} |
4962 |
|
|
4963 |
|
void assign_smt_expandDefinitions(Options& opts, const std::string& option, bool value) { |
4964 |
|
|
4965 |
|
opts.smt.expandDefinitions = value; |
4966 |
|
opts.smt.expandDefinitionsWasSetByUser = true; |
4967 |
|
Trace("options") << "user assigned option expandDefinitions = " << value << std::endl; |
4968 |
|
} |
4969 |
|
|
4970 |
19 |
void assign_smt_extRewPrep(Options& opts, const std::string& option, bool value) { |
4971 |
|
|
4972 |
19 |
opts.smt.extRewPrep = value; |
4973 |
19 |
opts.smt.extRewPrepWasSetByUser = true; |
4974 |
19 |
Trace("options") << "user assigned option extRewPrep = " << value << std::endl; |
4975 |
19 |
} |
4976 |
|
|
4977 |
7 |
void assign_smt_extRewPrepAgg(Options& opts, const std::string& option, bool value) { |
4978 |
|
|
4979 |
7 |
opts.smt.extRewPrepAgg = value; |
4980 |
7 |
opts.smt.extRewPrepAggWasSetByUser = true; |
4981 |
7 |
Trace("options") << "user assigned option extRewPrepAgg = " << value << std::endl; |
4982 |
7 |
} |
4983 |
|
|
4984 |
2 |
void assign_smt_foreignTheoryRewrite(Options& opts, const std::string& option, bool value) { |
4985 |
|
|
4986 |
2 |
opts.smt.foreignTheoryRewrite = value; |
4987 |
2 |
opts.smt.foreignTheoryRewriteWasSetByUser = true; |
4988 |
2 |
Trace("options") << "user assigned option foreignTheoryRewrite = " << value << std::endl; |
4989 |
2 |
} |
4990 |
|
|
4991 |
68 |
void assign_smt_iandMode(Options& opts, const std::string& option, const std::string& optionarg) { |
4992 |
68 |
auto value = stringToIandMode(optionarg); |
4993 |
|
|
4994 |
68 |
opts.smt.iandMode = value; |
4995 |
68 |
opts.smt.iandModeWasSetByUser = true; |
4996 |
68 |
Trace("options") << "user assigned option iandMode = " << value << std::endl; |
4997 |
68 |
} |
4998 |
|
|
4999 |
2 |
void assign_smt_interactiveMode(Options& opts, const std::string& option, bool value) { |
5000 |
2 |
opts.handler().setProduceAssertions("interactive-mode", option, value); |
5001 |
2 |
opts.smt.interactiveMode = value; |
5002 |
2 |
opts.smt.interactiveModeWasSetByUser = true; |
5003 |
2 |
Trace("options") << "user assigned option interactiveMode = " << value << std::endl; |
5004 |
2 |
} |
5005 |
|
|
5006 |
3 |
void assign_smt_doITESimp(Options& opts, const std::string& option, bool value) { |
5007 |
|
|
5008 |
3 |
opts.smt.doITESimp = value; |
5009 |
3 |
opts.smt.doITESimpWasSetByUser = true; |
5010 |
3 |
Trace("options") << "user assigned option doITESimp = " << value << std::endl; |
5011 |
3 |
} |
5012 |
|
|
5013 |
2 |
void assign_smt_learnedRewrite(Options& opts, const std::string& option, bool value) { |
5014 |
|
|
5015 |
2 |
opts.smt.learnedRewrite = value; |
5016 |
2 |
opts.smt.learnedRewriteWasSetByUser = true; |
5017 |
2 |
Trace("options") << "user assigned option learnedRewrite = " << value << std::endl; |
5018 |
2 |
} |
5019 |
|
|
5020 |
3 |
void assign_smt_minimalUnsatCores(Options& opts, const std::string& option, bool value) { |
5021 |
|
|
5022 |
3 |
opts.smt.minimalUnsatCores = value; |
5023 |
3 |
opts.smt.minimalUnsatCoresWasSetByUser = true; |
5024 |
3 |
Trace("options") << "user assigned option minimalUnsatCores = " << value << std::endl; |
5025 |
3 |
} |
5026 |
|
|
5027 |
6 |
void assign_smt_modelCoresMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5028 |
6 |
auto value = stringToModelCoresMode(optionarg); |
5029 |
|
|
5030 |
6 |
opts.smt.modelCoresMode = value; |
5031 |
6 |
opts.smt.modelCoresModeWasSetByUser = true; |
5032 |
6 |
Trace("options") << "user assigned option modelCoresMode = " << value << std::endl; |
5033 |
6 |
} |
5034 |
|
|
5035 |
1 |
void assign_smt_modelUninterpPrint(Options& opts, const std::string& option, const std::string& optionarg) { |
5036 |
1 |
auto value = stringToModelUninterpPrintMode(optionarg); |
5037 |
|
|
5038 |
1 |
opts.smt.modelUninterpPrint = value; |
5039 |
1 |
opts.smt.modelUninterpPrintWasSetByUser = true; |
5040 |
1 |
Trace("options") << "user assigned option modelUninterpPrint = " << value << std::endl; |
5041 |
1 |
} |
5042 |
|
|
5043 |
1 |
void assign_smt_modelWitnessValue(Options& opts, const std::string& option, bool value) { |
5044 |
|
|
5045 |
1 |
opts.smt.modelWitnessValue = value; |
5046 |
1 |
opts.smt.modelWitnessValueWasSetByUser = true; |
5047 |
1 |
Trace("options") << "user assigned option modelWitnessValue = " << value << std::endl; |
5048 |
1 |
} |
5049 |
|
|
5050 |
|
void assign_smt_doITESimpOnRepeat(Options& opts, const std::string& option, bool value) { |
5051 |
|
|
5052 |
|
opts.smt.doITESimpOnRepeat = value; |
5053 |
|
opts.smt.doITESimpOnRepeatWasSetByUser = true; |
5054 |
|
Trace("options") << "user assigned option doITESimpOnRepeat = " << value << std::endl; |
5055 |
|
} |
5056 |
|
|
5057 |
21 |
void assign_smt_produceAbducts(Options& opts, const std::string& option, bool value) { |
5058 |
|
|
5059 |
21 |
opts.smt.produceAbducts = value; |
5060 |
21 |
opts.smt.produceAbductsWasSetByUser = true; |
5061 |
21 |
Trace("options") << "user assigned option produceAbducts = " << value << std::endl; |
5062 |
21 |
} |
5063 |
|
|
5064 |
26 |
void assign_smt_produceAssertions(Options& opts, const std::string& option, bool value) { |
5065 |
26 |
opts.handler().setProduceAssertions("produce-assertions", option, value); |
5066 |
26 |
opts.smt.produceAssertions = value; |
5067 |
26 |
opts.smt.produceAssertionsWasSetByUser = true; |
5068 |
26 |
Trace("options") << "user assigned option produceAssertions = " << value << std::endl; |
5069 |
26 |
} |
5070 |
|
|
5071 |
4 |
void assign_smt_produceAssignments(Options& opts, const std::string& option, bool value) { |
5072 |
|
|
5073 |
4 |
opts.smt.produceAssignments = value; |
5074 |
4 |
opts.smt.produceAssignmentsWasSetByUser = true; |
5075 |
4 |
Trace("options") << "user assigned option produceAssignments = " << value << std::endl; |
5076 |
4 |
} |
5077 |
|
|
5078 |
11 |
void assign_smt_produceInterpols(Options& opts, const std::string& option, const std::string& optionarg) { |
5079 |
11 |
auto value = stringToProduceInterpols(optionarg); |
5080 |
|
|
5081 |
11 |
opts.smt.produceInterpols = value; |
5082 |
11 |
opts.smt.produceInterpolsWasSetByUser = true; |
5083 |
11 |
Trace("options") << "user assigned option produceInterpols = " << value << std::endl; |
5084 |
11 |
} |
5085 |
|
|
5086 |
796 |
void assign_smt_produceModels(Options& opts, const std::string& option, bool value) { |
5087 |
|
|
5088 |
796 |
opts.smt.produceModels = value; |
5089 |
796 |
opts.smt.produceModelsWasSetByUser = true; |
5090 |
796 |
Trace("options") << "user assigned option produceModels = " << value << std::endl; |
5091 |
796 |
} |
5092 |
|
|
5093 |
31 |
void assign_smt_produceProofs(Options& opts, const std::string& option, bool value) { |
5094 |
|
|
5095 |
31 |
opts.smt.produceProofs = value; |
5096 |
31 |
opts.smt.produceProofsWasSetByUser = true; |
5097 |
31 |
Trace("options") << "user assigned option produceProofs = " << value << std::endl; |
5098 |
31 |
} |
5099 |
|
|
5100 |
15 |
void assign_smt_unsatAssumptions(Options& opts, const std::string& option, bool value) { |
5101 |
|
|
5102 |
15 |
opts.smt.unsatAssumptions = value; |
5103 |
15 |
opts.smt.unsatAssumptionsWasSetByUser = true; |
5104 |
15 |
Trace("options") << "user assigned option unsatAssumptions = " << value << std::endl; |
5105 |
15 |
} |
5106 |
|
|
5107 |
21 |
void assign_smt_unsatCores(Options& opts, const std::string& option, bool value) { |
5108 |
|
|
5109 |
21 |
opts.smt.unsatCores = value; |
5110 |
21 |
opts.smt.unsatCoresWasSetByUser = true; |
5111 |
21 |
Trace("options") << "user assigned option unsatCores = " << value << std::endl; |
5112 |
21 |
} |
5113 |
|
|
5114 |
4 |
void assign_smt_repeatSimp(Options& opts, const std::string& option, bool value) { |
5115 |
|
|
5116 |
4 |
opts.smt.repeatSimp = value; |
5117 |
4 |
opts.smt.repeatSimpWasSetByUser = true; |
5118 |
4 |
Trace("options") << "user assigned option repeatSimp = " << value << std::endl; |
5119 |
4 |
} |
5120 |
|
|
5121 |
3 |
void assign_smt_compressItes(Options& opts, const std::string& option, bool value) { |
5122 |
|
|
5123 |
3 |
opts.smt.compressItes = value; |
5124 |
3 |
opts.smt.compressItesWasSetByUser = true; |
5125 |
3 |
Trace("options") << "user assigned option compressItes = " << value << std::endl; |
5126 |
3 |
} |
5127 |
|
|
5128 |
|
void assign_smt_zombieHuntThreshold(Options& opts, const std::string& option, const std::string& optionarg) { |
5129 |
|
auto value = handleOption<uint64_t>("simp-ite-hunt-zombies", option, optionarg); |
5130 |
|
|
5131 |
|
opts.smt.zombieHuntThreshold = value; |
5132 |
|
opts.smt.zombieHuntThresholdWasSetByUser = true; |
5133 |
|
Trace("options") << "user assigned option zombieHuntThreshold = " << value << std::endl; |
5134 |
|
} |
5135 |
|
|
5136 |
|
void assign_smt_simplifyWithCareEnabled(Options& opts, const std::string& option, bool value) { |
5137 |
|
|
5138 |
|
opts.smt.simplifyWithCareEnabled = value; |
5139 |
|
opts.smt.simplifyWithCareEnabledWasSetByUser = true; |
5140 |
|
Trace("options") << "user assigned option simplifyWithCareEnabled = " << value << std::endl; |
5141 |
|
} |
5142 |
|
|
5143 |
32 |
void assign_smt_simplificationMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5144 |
32 |
auto value = stringToSimplificationMode(optionarg); |
5145 |
|
|
5146 |
32 |
opts.smt.simplificationMode = value; |
5147 |
32 |
opts.smt.simplificationModeWasSetByUser = true; |
5148 |
32 |
Trace("options") << "user assigned option simplificationMode = " << value << std::endl; |
5149 |
32 |
} |
5150 |
|
|
5151 |
149 |
void assign_smt_solveBVAsInt(Options& opts, const std::string& option, const std::string& optionarg) { |
5152 |
149 |
auto value = stringToSolveBVAsIntMode(optionarg); |
5153 |
|
|
5154 |
149 |
opts.smt.solveBVAsInt = value; |
5155 |
149 |
opts.smt.solveBVAsIntWasSetByUser = true; |
5156 |
149 |
Trace("options") << "user assigned option solveBVAsInt = " << value << std::endl; |
5157 |
149 |
} |
5158 |
|
|
5159 |
15 |
void assign_smt_solveIntAsBV(Options& opts, const std::string& option, const std::string& optionarg) { |
5160 |
15 |
auto value = handleOption<uint64_t>("solve-int-as-bv", option, optionarg); |
5161 |
|
|
5162 |
15 |
opts.smt.solveIntAsBV = value; |
5163 |
15 |
opts.smt.solveIntAsBVWasSetByUser = true; |
5164 |
15 |
Trace("options") << "user assigned option solveIntAsBV = " << value << std::endl; |
5165 |
15 |
} |
5166 |
|
|
5167 |
9 |
void assign_smt_solveRealAsInt(Options& opts, const std::string& option, bool value) { |
5168 |
|
|
5169 |
9 |
opts.smt.solveRealAsInt = value; |
5170 |
9 |
opts.smt.solveRealAsIntWasSetByUser = true; |
5171 |
9 |
Trace("options") << "user assigned option solveRealAsInt = " << value << std::endl; |
5172 |
9 |
} |
5173 |
|
|
5174 |
26 |
void assign_smt_sortInference(Options& opts, const std::string& option, bool value) { |
5175 |
|
|
5176 |
26 |
opts.smt.sortInference = value; |
5177 |
26 |
opts.smt.sortInferenceWasSetByUser = true; |
5178 |
26 |
Trace("options") << "user assigned option sortInference = " << value << std::endl; |
5179 |
26 |
} |
5180 |
|
|
5181 |
|
void assign_smt_doStaticLearning(Options& opts, const std::string& option, bool value) { |
5182 |
|
|
5183 |
|
opts.smt.doStaticLearning = value; |
5184 |
|
opts.smt.doStaticLearningWasSetByUser = true; |
5185 |
|
Trace("options") << "user assigned option doStaticLearning = " << value << std::endl; |
5186 |
|
} |
5187 |
|
|
5188 |
182 |
void assign_smt_sygusOut(Options& opts, const std::string& option, const std::string& optionarg) { |
5189 |
182 |
auto value = stringToSygusSolutionOutMode(optionarg); |
5190 |
|
|
5191 |
182 |
opts.smt.sygusOut = value; |
5192 |
182 |
opts.smt.sygusOutWasSetByUser = true; |
5193 |
182 |
Trace("options") << "user assigned option sygusOut = " << value << std::endl; |
5194 |
182 |
} |
5195 |
|
|
5196 |
|
void assign_smt_sygusPrintCallbacks(Options& opts, const std::string& option, bool value) { |
5197 |
|
|
5198 |
|
opts.smt.sygusPrintCallbacks = value; |
5199 |
|
opts.smt.sygusPrintCallbacksWasSetByUser = true; |
5200 |
|
Trace("options") << "user assigned option sygusPrintCallbacks = " << value << std::endl; |
5201 |
|
} |
5202 |
|
|
5203 |
107 |
void assign_smt_unconstrainedSimp(Options& opts, const std::string& option, bool value) { |
5204 |
|
|
5205 |
107 |
opts.smt.unconstrainedSimp = value; |
5206 |
107 |
opts.smt.unconstrainedSimpWasSetByUser = true; |
5207 |
107 |
Trace("options") << "user assigned option unconstrainedSimp = " << value << std::endl; |
5208 |
107 |
} |
5209 |
|
|
5210 |
2 |
void assign_smt_unsatCoresMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5211 |
2 |
auto value = stringToUnsatCoresMode(optionarg); |
5212 |
|
|
5213 |
2 |
opts.smt.unsatCoresMode = value; |
5214 |
2 |
opts.smt.unsatCoresModeWasSetByUser = true; |
5215 |
2 |
Trace("options") << "user assigned option unsatCoresMode = " << value << std::endl; |
5216 |
2 |
} |
5217 |
|
|
5218 |
51 |
void assign_strings_regExpElim(Options& opts, const std::string& option, bool value) { |
5219 |
|
|
5220 |
51 |
opts.strings.regExpElim = value; |
5221 |
51 |
opts.strings.regExpElimWasSetByUser = true; |
5222 |
51 |
Trace("options") << "user assigned option regExpElim = " << value << std::endl; |
5223 |
51 |
} |
5224 |
|
|
5225 |
20 |
void assign_strings_regExpElimAgg(Options& opts, const std::string& option, bool value) { |
5226 |
|
|
5227 |
20 |
opts.strings.regExpElimAgg = value; |
5228 |
20 |
opts.strings.regExpElimAggWasSetByUser = true; |
5229 |
20 |
Trace("options") << "user assigned option regExpElimAgg = " << value << std::endl; |
5230 |
20 |
} |
5231 |
|
|
5232 |
|
void assign_strings_stringRegExpInterMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5233 |
|
auto value = stringToRegExpInterMode(optionarg); |
5234 |
|
|
5235 |
|
opts.strings.stringRegExpInterMode = value; |
5236 |
|
opts.strings.stringRegExpInterModeWasSetByUser = true; |
5237 |
|
Trace("options") << "user assigned option stringRegExpInterMode = " << value << std::endl; |
5238 |
|
} |
5239 |
|
|
5240 |
|
void assign_strings_stringCheckEntailLen(Options& opts, const std::string& option, bool value) { |
5241 |
|
|
5242 |
|
opts.strings.stringCheckEntailLen = value; |
5243 |
|
opts.strings.stringCheckEntailLenWasSetByUser = true; |
5244 |
|
Trace("options") << "user assigned option stringCheckEntailLen = " << value << std::endl; |
5245 |
|
} |
5246 |
|
|
5247 |
2 |
void assign_strings_stringEager(Options& opts, const std::string& option, bool value) { |
5248 |
|
|
5249 |
2 |
opts.strings.stringEager = value; |
5250 |
2 |
opts.strings.stringEagerWasSetByUser = true; |
5251 |
2 |
Trace("options") << "user assigned option stringEager = " << value << std::endl; |
5252 |
2 |
} |
5253 |
|
|
5254 |
|
void assign_strings_stringEagerEval(Options& opts, const std::string& option, bool value) { |
5255 |
|
|
5256 |
|
opts.strings.stringEagerEval = value; |
5257 |
|
opts.strings.stringEagerEvalWasSetByUser = true; |
5258 |
|
Trace("options") << "user assigned option stringEagerEval = " << value << std::endl; |
5259 |
|
} |
5260 |
|
|
5261 |
|
void assign_strings_stringEagerLen(Options& opts, const std::string& option, bool value) { |
5262 |
|
|
5263 |
|
opts.strings.stringEagerLen = value; |
5264 |
|
opts.strings.stringEagerLenWasSetByUser = true; |
5265 |
|
Trace("options") << "user assigned option stringEagerLen = " << value << std::endl; |
5266 |
|
} |
5267 |
|
|
5268 |
552 |
void assign_strings_stringExp(Options& opts, const std::string& option, bool value) { |
5269 |
|
|
5270 |
552 |
opts.strings.stringExp = value; |
5271 |
552 |
opts.strings.stringExpWasSetByUser = true; |
5272 |
552 |
Trace("options") << "user assigned option stringExp = " << value << std::endl; |
5273 |
552 |
} |
5274 |
|
|
5275 |
|
void assign_strings_stringFlatForms(Options& opts, const std::string& option, bool value) { |
5276 |
|
|
5277 |
|
opts.strings.stringFlatForms = value; |
5278 |
|
opts.strings.stringFlatFormsWasSetByUser = true; |
5279 |
|
Trace("options") << "user assigned option stringFlatForms = " << value << std::endl; |
5280 |
|
} |
5281 |
|
|
5282 |
51 |
void assign_strings_stringFMF(Options& opts, const std::string& option, bool value) { |
5283 |
|
|
5284 |
51 |
opts.strings.stringFMF = value; |
5285 |
51 |
opts.strings.stringFMFWasSetByUser = true; |
5286 |
51 |
Trace("options") << "user assigned option stringFMF = " << value << std::endl; |
5287 |
51 |
} |
5288 |
|
|
5289 |
|
void assign_strings_stringGuessModel(Options& opts, const std::string& option, bool value) { |
5290 |
|
|
5291 |
|
opts.strings.stringGuessModel = value; |
5292 |
|
opts.strings.stringGuessModelWasSetByUser = true; |
5293 |
|
Trace("options") << "user assigned option stringGuessModel = " << value << std::endl; |
5294 |
|
} |
5295 |
|
|
5296 |
|
void assign_strings_stringInferAsLemmas(Options& opts, const std::string& option, bool value) { |
5297 |
|
|
5298 |
|
opts.strings.stringInferAsLemmas = value; |
5299 |
|
opts.strings.stringInferAsLemmasWasSetByUser = true; |
5300 |
|
Trace("options") << "user assigned option stringInferAsLemmas = " << value << std::endl; |
5301 |
|
} |
5302 |
|
|
5303 |
|
void assign_strings_stringInferSym(Options& opts, const std::string& option, bool value) { |
5304 |
|
|
5305 |
|
opts.strings.stringInferSym = value; |
5306 |
|
opts.strings.stringInferSymWasSetByUser = true; |
5307 |
|
Trace("options") << "user assigned option stringInferSym = " << value << std::endl; |
5308 |
|
} |
5309 |
|
|
5310 |
32 |
void assign_strings_stringLazyPreproc(Options& opts, const std::string& option, bool value) { |
5311 |
|
|
5312 |
32 |
opts.strings.stringLazyPreproc = value; |
5313 |
32 |
opts.strings.stringLazyPreprocWasSetByUser = true; |
5314 |
32 |
Trace("options") << "user assigned option stringLazyPreproc = " << value << std::endl; |
5315 |
32 |
} |
5316 |
|
|
5317 |
|
void assign_strings_stringLenNorm(Options& opts, const std::string& option, bool value) { |
5318 |
|
|
5319 |
|
opts.strings.stringLenNorm = value; |
5320 |
|
opts.strings.stringLenNormWasSetByUser = true; |
5321 |
|
Trace("options") << "user assigned option stringLenNorm = " << value << std::endl; |
5322 |
|
} |
5323 |
|
|
5324 |
|
void assign_strings_stringLenPropCsp(Options& opts, const std::string& option, bool value) { |
5325 |
|
|
5326 |
|
opts.strings.stringLenPropCsp = value; |
5327 |
|
opts.strings.stringLenPropCspWasSetByUser = true; |
5328 |
|
Trace("options") << "user assigned option stringLenPropCsp = " << value << std::endl; |
5329 |
|
} |
5330 |
|
|
5331 |
|
void assign_strings_stringMinPrefixExplain(Options& opts, const std::string& option, bool value) { |
5332 |
|
|
5333 |
|
opts.strings.stringMinPrefixExplain = value; |
5334 |
|
opts.strings.stringMinPrefixExplainWasSetByUser = true; |
5335 |
|
Trace("options") << "user assigned option stringMinPrefixExplain = " << value << std::endl; |
5336 |
|
} |
5337 |
|
|
5338 |
|
void assign_strings_stringProcessLoopMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5339 |
|
auto value = stringToProcessLoopMode(optionarg); |
5340 |
|
|
5341 |
|
opts.strings.stringProcessLoopMode = value; |
5342 |
|
opts.strings.stringProcessLoopModeWasSetByUser = true; |
5343 |
|
Trace("options") << "user assigned option stringProcessLoopMode = " << value << std::endl; |
5344 |
|
} |
5345 |
|
|
5346 |
|
void assign_strings_stringRExplainLemmas(Options& opts, const std::string& option, bool value) { |
5347 |
|
|
5348 |
|
opts.strings.stringRExplainLemmas = value; |
5349 |
|
opts.strings.stringRExplainLemmasWasSetByUser = true; |
5350 |
|
Trace("options") << "user assigned option stringRExplainLemmas = " << value << std::endl; |
5351 |
|
} |
5352 |
|
|
5353 |
|
void assign_strings_stringUnifiedVSpt(Options& opts, const std::string& option, bool value) { |
5354 |
|
|
5355 |
|
opts.strings.stringUnifiedVSpt = value; |
5356 |
|
opts.strings.stringUnifiedVSptWasSetByUser = true; |
5357 |
|
Trace("options") << "user assigned option stringUnifiedVSpt = " << value << std::endl; |
5358 |
|
} |
5359 |
|
|
5360 |
2 |
void assign_theory_assignFunctionValues(Options& opts, const std::string& option, bool value) { |
5361 |
|
|
5362 |
2 |
opts.theory.assignFunctionValues = value; |
5363 |
2 |
opts.theory.assignFunctionValuesWasSetByUser = true; |
5364 |
2 |
Trace("options") << "user assigned option assignFunctionValues = " << value << std::endl; |
5365 |
2 |
} |
5366 |
|
|
5367 |
|
void assign_theory_condenseFunctionValues(Options& opts, const std::string& option, bool value) { |
5368 |
|
|
5369 |
|
opts.theory.condenseFunctionValues = value; |
5370 |
|
opts.theory.condenseFunctionValuesWasSetByUser = true; |
5371 |
|
Trace("options") << "user assigned option condenseFunctionValues = " << value << std::endl; |
5372 |
|
} |
5373 |
|
|
5374 |
56 |
void assign_theory_eeMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5375 |
56 |
auto value = stringToEqEngineMode(optionarg); |
5376 |
|
|
5377 |
56 |
opts.theory.eeMode = value; |
5378 |
56 |
opts.theory.eeModeWasSetByUser = true; |
5379 |
56 |
Trace("options") << "user assigned option eeMode = " << value << std::endl; |
5380 |
56 |
} |
5381 |
|
|
5382 |
|
void assign_theory_relevanceFilter(Options& opts, const std::string& option, bool value) { |
5383 |
|
|
5384 |
|
opts.theory.relevanceFilter = value; |
5385 |
|
opts.theory.relevanceFilterWasSetByUser = true; |
5386 |
|
Trace("options") << "user assigned option relevanceFilter = " << value << std::endl; |
5387 |
|
} |
5388 |
|
|
5389 |
|
void assign_theory_tcMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5390 |
|
auto value = stringToTcMode(optionarg); |
5391 |
|
|
5392 |
|
opts.theory.tcMode = value; |
5393 |
|
opts.theory.tcModeWasSetByUser = true; |
5394 |
|
Trace("options") << "user assigned option tcMode = " << value << std::endl; |
5395 |
|
} |
5396 |
|
|
5397 |
5 |
void assign_theory_theoryOfMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5398 |
5 |
auto value = stringToTheoryOfMode(optionarg); |
5399 |
|
|
5400 |
5 |
opts.theory.theoryOfMode = value; |
5401 |
5 |
opts.theory.theoryOfModeWasSetByUser = true; |
5402 |
5 |
Trace("options") << "user assigned option theoryOfMode = " << value << std::endl; |
5403 |
5 |
} |
5404 |
|
|
5405 |
|
void assign_uf_ufSymmetryBreaker(Options& opts, const std::string& option, bool value) { |
5406 |
|
|
5407 |
|
opts.uf.ufSymmetryBreaker = value; |
5408 |
|
opts.uf.ufSymmetryBreakerWasSetByUser = true; |
5409 |
|
Trace("options") << "user assigned option ufSymmetryBreaker = " << value << std::endl; |
5410 |
|
} |
5411 |
|
|
5412 |
|
void assign_uf_ufHo(Options& opts, const std::string& option, bool value) { |
5413 |
|
|
5414 |
|
opts.uf.ufHo = value; |
5415 |
|
opts.uf.ufHoWasSetByUser = true; |
5416 |
|
Trace("options") << "user assigned option ufHo = " << value << std::endl; |
5417 |
|
} |
5418 |
|
|
5419 |
|
void assign_uf_ufHoExt(Options& opts, const std::string& option, bool value) { |
5420 |
|
|
5421 |
|
opts.uf.ufHoExt = value; |
5422 |
|
opts.uf.ufHoExtWasSetByUser = true; |
5423 |
|
Trace("options") << "user assigned option ufHoExt = " << value << std::endl; |
5424 |
|
} |
5425 |
|
|
5426 |
|
void assign_uf_ufssAbortCardinality(Options& opts, const std::string& option, const std::string& optionarg) { |
5427 |
|
auto value = handleOption<int64_t>("uf-ss-abort-card", option, optionarg); |
5428 |
|
|
5429 |
|
opts.uf.ufssAbortCardinality = value; |
5430 |
|
opts.uf.ufssAbortCardinalityWasSetByUser = true; |
5431 |
|
Trace("options") << "user assigned option ufssAbortCardinality = " << value << std::endl; |
5432 |
|
} |
5433 |
|
|
5434 |
|
void assign_uf_ufssFairness(Options& opts, const std::string& option, bool value) { |
5435 |
|
|
5436 |
|
opts.uf.ufssFairness = value; |
5437 |
|
opts.uf.ufssFairnessWasSetByUser = true; |
5438 |
|
Trace("options") << "user assigned option ufssFairness = " << value << std::endl; |
5439 |
|
} |
5440 |
|
|
5441 |
4 |
void assign_uf_ufssFairnessMonotone(Options& opts, const std::string& option, bool value) { |
5442 |
|
|
5443 |
4 |
opts.uf.ufssFairnessMonotone = value; |
5444 |
4 |
opts.uf.ufssFairnessMonotoneWasSetByUser = true; |
5445 |
4 |
Trace("options") << "user assigned option ufssFairnessMonotone = " << value << std::endl; |
5446 |
4 |
} |
5447 |
|
|
5448 |
|
void assign_uf_ufssTotalityLimited(Options& opts, const std::string& option, const std::string& optionarg) { |
5449 |
|
auto value = handleOption<int64_t>("uf-ss-totality-limited", option, optionarg); |
5450 |
|
|
5451 |
|
opts.uf.ufssTotalityLimited = value; |
5452 |
|
opts.uf.ufssTotalityLimitedWasSetByUser = true; |
5453 |
|
Trace("options") << "user assigned option ufssTotalityLimited = " << value << std::endl; |
5454 |
|
} |
5455 |
|
|
5456 |
|
void assign_uf_ufssTotalitySymBreak(Options& opts, const std::string& option, bool value) { |
5457 |
|
|
5458 |
|
opts.uf.ufssTotalitySymBreak = value; |
5459 |
|
opts.uf.ufssTotalitySymBreakWasSetByUser = true; |
5460 |
|
Trace("options") << "user assigned option ufssTotalitySymBreak = " << value << std::endl; |
5461 |
|
} |
5462 |
|
|
5463 |
7 |
void assign_uf_ufssMode(Options& opts, const std::string& option, const std::string& optionarg) { |
5464 |
7 |
auto value = stringToUfssMode(optionarg); |
5465 |
|
|
5466 |
7 |
opts.uf.ufssMode = value; |
5467 |
7 |
opts.uf.ufssModeWasSetByUser = true; |
5468 |
7 |
Trace("options") << "user assigned option ufssMode = " << value << std::endl; |
5469 |
7 |
} |
5470 |
|
// clang-format off |
5471 |
|
|
5472 |
8796 |
void parseInternal(Options& opts, int argc, |
5473 |
|
char* argv[], |
5474 |
|
std::vector<std::string>& nonoptions) |
5475 |
|
{ |
5476 |
8796 |
Assert(argv != nullptr); |
5477 |
8796 |
if(Debug.isOn("options")) { |
5478 |
|
Debug("options") << "starting a new parseInternal with " |
5479 |
|
<< argc << " arguments" << std::endl; |
5480 |
|
for( int i = 0; i < argc ; i++ ){ |
5481 |
|
Assert(argv[i] != NULL); |
5482 |
|
Debug("options") << " argv[" << i << "] = " << argv[i] << std::endl; |
5483 |
|
} |
5484 |
|
} |
5485 |
|
|
5486 |
|
// Reset getopt(), in the case of multiple calls to parse(). |
5487 |
|
// This can be = 1 in newer GNU getopt, but older (< 2007) require = 0. |
5488 |
8796 |
optind = 0; |
5489 |
|
#if HAVE_DECL_OPTRESET |
5490 |
|
optreset = 1; // on BSD getopt() (e.g. Mac OS), might need this |
5491 |
|
#endif /* HAVE_DECL_OPTRESET */ |
5492 |
|
|
5493 |
|
// We must parse the binary name, which is manually ignored below. Setting |
5494 |
|
// this to 1 leads to incorrect behavior on some platforms. |
5495 |
8796 |
int main_optind = 0; |
5496 |
|
int old_optind; |
5497 |
|
|
5498 |
|
|
5499 |
|
while(true) { // Repeat Forever |
5500 |
|
|
5501 |
24260 |
optopt = 0; |
5502 |
32225 |
std::string option, optionarg; |
5503 |
|
|
5504 |
24260 |
optind = main_optind; |
5505 |
24260 |
old_optind = main_optind; |
5506 |
|
|
5507 |
|
// If we encounter an element that is not at zero and does not start |
5508 |
|
// with a "-", this is a non-option. We consume this element as a |
5509 |
|
// non-option. |
5510 |
39660 |
if (main_optind > 0 && main_optind < argc && |
5511 |
9271 |
argv[main_optind][0] != '-') { |
5512 |
12258 |
Debug("options") << "enqueueing " << argv[main_optind] |
5513 |
6129 |
<< " as a non-option." << std::endl; |
5514 |
6129 |
nonoptions.push_back(argv[main_optind]); |
5515 |
6129 |
++main_optind; |
5516 |
6129 |
continue; |
5517 |
|
} |
5518 |
|
|
5519 |
|
|
5520 |
36262 |
Debug("options") << "[ before, main_optind == " << main_optind << " ]" |
5521 |
18131 |
<< std::endl; |
5522 |
18131 |
Debug("options") << "[ before, optind == " << optind << " ]" << std::endl; |
5523 |
36262 |
Debug("options") << "[ argc == " << argc << ", argv == " << argv << " ]" |
5524 |
18131 |
<< std::endl; |
5525 |
|
// clang-format off |
5526 |
18131 |
int c = getopt_long(argc, argv, |
5527 |
|
"+:d:iL:o:qt:vhs:Vm", |
5528 |
18131 |
cmdlineOptions, NULL); |
5529 |
|
// clang-format on |
5530 |
|
|
5531 |
18131 |
main_optind = optind; |
5532 |
|
|
5533 |
36262 |
Debug("options") << "[ got " << int(c) << " (" << char(c) << ") ]" |
5534 |
18131 |
<< "[ next option will be at pos: " << optind << " ]" |
5535 |
18131 |
<< std::endl; |
5536 |
|
|
5537 |
|
// The initial getopt_long call should always determine that argv[0] |
5538 |
|
// is not an option and returns -1. We always manually advance beyond |
5539 |
|
// this element. |
5540 |
19502 |
if ( old_optind == 0 && c == -1 ) { |
5541 |
1371 |
Assert(main_optind > 0); |
5542 |
1371 |
continue; |
5543 |
|
} |
5544 |
|
|
5545 |
16760 |
if ( c == -1 ) { |
5546 |
6193 |
if(Debug.isOn("options")) { |
5547 |
|
Debug("options") << "done with option parsing" << std::endl; |
5548 |
|
for(int index = optind; index < argc; ++index) { |
5549 |
|
Debug("options") << "remaining " << argv[index] << std::endl; |
5550 |
|
} |
5551 |
|
} |
5552 |
6193 |
break; |
5553 |
|
} |
5554 |
|
|
5555 |
10567 |
option = argv[old_optind == 0 ? 1 : old_optind]; |
5556 |
10567 |
optionarg = (optarg == NULL) ? "" : optarg; |
5557 |
|
|
5558 |
21134 |
Debug("preemptGetopt") << "processing option " << c |
5559 |
10567 |
<< " (`" << char(c) << "'), " << option << std::endl; |
5560 |
|
|
5561 |
|
// clang-format off |
5562 |
10567 |
switch(c) |
5563 |
|
{ |
5564 |
|
case 256: // --approx-branch-depth=N |
5565 |
|
assign_arith_maxApproxDepth(opts, option, optionarg); |
5566 |
|
break; |
5567 |
2 |
case 257: // --arith-brab |
5568 |
2 |
assign_arith_brabTest(opts, option, true); |
5569 |
2 |
break; |
5570 |
2 |
case 258:// --no-arith-brab |
5571 |
2 |
assign_arith_brabTest(opts, option, false); |
5572 |
2 |
break; |
5573 |
|
case 259: // --arith-cong-man |
5574 |
|
assign_arith_arithCongMan(opts, option, true); |
5575 |
|
break; |
5576 |
|
case 260:// --no-arith-cong-man |
5577 |
|
assign_arith_arithCongMan(opts, option, false); |
5578 |
|
break; |
5579 |
6 |
case 261: // --arith-eq-solver |
5580 |
6 |
assign_arith_arithEqSolver(opts, option, true); |
5581 |
6 |
break; |
5582 |
|
case 262:// --no-arith-eq-solver |
5583 |
|
assign_arith_arithEqSolver(opts, option, false); |
5584 |
|
break; |
5585 |
|
case 263: // --arith-no-partial-fun |
5586 |
|
assign_arith_arithNoPartialFun(opts, option, true); |
5587 |
|
break; |
5588 |
|
case 264:// --no-arith-no-partial-fun |
5589 |
|
assign_arith_arithNoPartialFun(opts, option, false); |
5590 |
|
break; |
5591 |
|
case 265: // --arith-prop-clauses=N |
5592 |
|
assign_arith_arithPropAsLemmaLength(opts, option, optionarg); |
5593 |
|
break; |
5594 |
|
case 266: // --arith-prop=MODE |
5595 |
|
assign_arith_arithPropagationMode(opts, option, optionarg); |
5596 |
|
break; |
5597 |
4 |
case 267: // --arith-rewrite-equalities |
5598 |
4 |
assign_arith_arithRewriteEq(opts, option, true); |
5599 |
4 |
break; |
5600 |
|
case 268:// --no-arith-rewrite-equalities |
5601 |
|
assign_arith_arithRewriteEq(opts, option, false); |
5602 |
|
break; |
5603 |
|
case 269: // --collect-pivot-stats |
5604 |
|
assign_arith_collectPivots(opts, option, true); |
5605 |
|
break; |
5606 |
|
case 270:// --no-collect-pivot-stats |
5607 |
|
assign_arith_collectPivots(opts, option, false); |
5608 |
|
break; |
5609 |
|
case 271: // --cut-all-bounded |
5610 |
|
assign_arith_doCutAllBounded(opts, option, true); |
5611 |
|
break; |
5612 |
|
case 272:// --no-cut-all-bounded |
5613 |
|
assign_arith_doCutAllBounded(opts, option, false); |
5614 |
|
break; |
5615 |
|
case 273: // --dio-decomps |
5616 |
|
assign_arith_exportDioDecompositions(opts, option, true); |
5617 |
|
break; |
5618 |
|
case 274:// --no-dio-decomps |
5619 |
|
assign_arith_exportDioDecompositions(opts, option, false); |
5620 |
|
break; |
5621 |
|
case 275: // --dio-repeat |
5622 |
|
assign_arith_dioRepeat(opts, option, true); |
5623 |
|
break; |
5624 |
|
case 276:// --no-dio-repeat |
5625 |
|
assign_arith_dioRepeat(opts, option, false); |
5626 |
|
break; |
5627 |
|
case 277: // --dio-solver |
5628 |
|
assign_arith_arithDioSolver(opts, option, true); |
5629 |
|
break; |
5630 |
|
case 278:// --no-dio-solver |
5631 |
|
assign_arith_arithDioSolver(opts, option, false); |
5632 |
|
break; |
5633 |
|
case 279: // --dio-turns=N |
5634 |
|
assign_arith_dioSolverTurns(opts, option, optionarg); |
5635 |
|
break; |
5636 |
|
case 280: // --error-selection-rule=RULE |
5637 |
|
assign_arith_arithErrorSelectionRule(opts, option, optionarg); |
5638 |
|
break; |
5639 |
|
case 281: // --fc-penalties |
5640 |
|
assign_arith_havePenalties(opts, option, true); |
5641 |
|
break; |
5642 |
|
case 282:// --no-fc-penalties |
5643 |
|
assign_arith_havePenalties(opts, option, false); |
5644 |
|
break; |
5645 |
|
case 283: // --heuristic-pivots=N |
5646 |
|
assign_arith_arithHeuristicPivots(opts, option, optionarg); |
5647 |
|
break; |
5648 |
|
case 284: // --lemmas-on-replay-failure |
5649 |
|
assign_arith_replayFailureLemma(opts, option, true); |
5650 |
|
break; |
5651 |
|
case 285:// --no-lemmas-on-replay-failure |
5652 |
|
assign_arith_replayFailureLemma(opts, option, false); |
5653 |
|
break; |
5654 |
|
case 286: // --maxCutsInContext=N |
5655 |
|
assign_arith_maxCutsInContext(opts, option, optionarg); |
5656 |
|
break; |
5657 |
8 |
case 287: // --miplib-trick |
5658 |
8 |
assign_arith_arithMLTrick(opts, option, true); |
5659 |
8 |
break; |
5660 |
|
case 288:// --no-miplib-trick |
5661 |
|
assign_arith_arithMLTrick(opts, option, false); |
5662 |
|
break; |
5663 |
|
case 289: // --miplib-trick-subs=N |
5664 |
|
assign_arith_arithMLTrickSubstitutions(opts, option, optionarg); |
5665 |
|
break; |
5666 |
|
case 290: // --new-prop |
5667 |
|
assign_arith_newProp(opts, option, true); |
5668 |
|
break; |
5669 |
8 |
case 291:// --no-new-prop |
5670 |
8 |
assign_arith_newProp(opts, option, false); |
5671 |
8 |
break; |
5672 |
5 |
case 292: // --nl-cad |
5673 |
5 |
assign_arith_nlCad(opts, option, true); |
5674 |
5 |
break; |
5675 |
|
case 293:// --no-nl-cad |
5676 |
|
assign_arith_nlCad(opts, option, false); |
5677 |
|
break; |
5678 |
|
case 294: // --nl-cad-initial |
5679 |
|
assign_arith_nlCadUseInitial(opts, option, true); |
5680 |
|
break; |
5681 |
|
case 295:// --no-nl-cad-initial |
5682 |
|
assign_arith_nlCadUseInitial(opts, option, false); |
5683 |
|
break; |
5684 |
|
case 296: // --nl-cad-lift=MODE |
5685 |
|
assign_arith_nlCadLifting(opts, option, optionarg); |
5686 |
|
break; |
5687 |
|
case 297: // --nl-cad-proj=MODE |
5688 |
|
assign_arith_nlCadProjection(opts, option, optionarg); |
5689 |
|
break; |
5690 |
|
case 298: // --nl-ext-ent-conf |
5691 |
|
assign_arith_nlExtEntailConflicts(opts, option, true); |
5692 |
|
break; |
5693 |
|
case 299:// --no-nl-ext-ent-conf |
5694 |
|
assign_arith_nlExtEntailConflicts(opts, option, false); |
5695 |
|
break; |
5696 |
|
case 300: // --nl-ext-factor |
5697 |
|
assign_arith_nlExtFactor(opts, option, true); |
5698 |
|
break; |
5699 |
|
case 301:// --no-nl-ext-factor |
5700 |
|
assign_arith_nlExtFactor(opts, option, false); |
5701 |
|
break; |
5702 |
|
case 302: // --nl-ext-inc-prec |
5703 |
|
assign_arith_nlExtIncPrecision(opts, option, true); |
5704 |
|
break; |
5705 |
2 |
case 303:// --no-nl-ext-inc-prec |
5706 |
2 |
assign_arith_nlExtIncPrecision(opts, option, false); |
5707 |
2 |
break; |
5708 |
2 |
case 304: // --nl-ext-purify |
5709 |
2 |
assign_arith_nlExtPurify(opts, option, true); |
5710 |
2 |
break; |
5711 |
|
case 305:// --no-nl-ext-purify |
5712 |
|
assign_arith_nlExtPurify(opts, option, false); |
5713 |
|
break; |
5714 |
|
case 306: // --nl-ext-rbound |
5715 |
|
assign_arith_nlExtResBound(opts, option, true); |
5716 |
|
break; |
5717 |
|
case 307:// --no-nl-ext-rbound |
5718 |
|
assign_arith_nlExtResBound(opts, option, false); |
5719 |
|
break; |
5720 |
|
case 308: // --nl-ext-rewrite |
5721 |
|
assign_arith_nlExtRewrites(opts, option, true); |
5722 |
|
break; |
5723 |
|
case 309:// --no-nl-ext-rewrite |
5724 |
|
assign_arith_nlExtRewrites(opts, option, false); |
5725 |
|
break; |
5726 |
|
case 310: // --nl-ext-split-zero |
5727 |
|
assign_arith_nlExtSplitZero(opts, option, true); |
5728 |
|
break; |
5729 |
|
case 311:// --no-nl-ext-split-zero |
5730 |
|
assign_arith_nlExtSplitZero(opts, option, false); |
5731 |
|
break; |
5732 |
|
case 312: // --nl-ext-tf-taylor-deg=N |
5733 |
|
assign_arith_nlExtTfTaylorDegree(opts, option, optionarg); |
5734 |
|
break; |
5735 |
39 |
case 313: // --nl-ext-tf-tplanes |
5736 |
39 |
assign_arith_nlExtTfTangentPlanes(opts, option, true); |
5737 |
39 |
break; |
5738 |
2 |
case 314:// --no-nl-ext-tf-tplanes |
5739 |
2 |
assign_arith_nlExtTfTangentPlanes(opts, option, false); |
5740 |
2 |
break; |
5741 |
42 |
case 315: // --nl-ext-tplanes |
5742 |
42 |
assign_arith_nlExtTangentPlanes(opts, option, true); |
5743 |
42 |
break; |
5744 |
|
case 316:// --no-nl-ext-tplanes |
5745 |
|
assign_arith_nlExtTangentPlanes(opts, option, false); |
5746 |
|
break; |
5747 |
|
case 317: // --nl-ext-tplanes-interleave |
5748 |
|
assign_arith_nlExtTangentPlanesInterleave(opts, option, true); |
5749 |
|
break; |
5750 |
|
case 318:// --no-nl-ext-tplanes-interleave |
5751 |
|
assign_arith_nlExtTangentPlanesInterleave(opts, option, false); |
5752 |
|
break; |
5753 |
125 |
case 319: // --nl-ext=MODE |
5754 |
125 |
assign_arith_nlExt(opts, option, optionarg); |
5755 |
125 |
break; |
5756 |
2 |
case 320: // --nl-icp |
5757 |
2 |
assign_arith_nlICP(opts, option, true); |
5758 |
2 |
break; |
5759 |
|
case 321:// --no-nl-icp |
5760 |
|
assign_arith_nlICP(opts, option, false); |
5761 |
|
break; |
5762 |
10 |
case 322: // --nl-rlv=MODE |
5763 |
10 |
assign_arith_nlRlvMode(opts, option, optionarg); |
5764 |
10 |
break; |
5765 |
2 |
case 323: // --pb-rewrites |
5766 |
2 |
assign_arith_pbRewrites(opts, option, true); |
5767 |
2 |
break; |
5768 |
|
case 324:// --no-pb-rewrites |
5769 |
|
assign_arith_pbRewrites(opts, option, false); |
5770 |
|
break; |
5771 |
|
case 325: // --pivot-threshold=N |
5772 |
|
assign_arith_arithPivotThreshold(opts, option, optionarg); |
5773 |
|
break; |
5774 |
|
case 326: // --pp-assert-max-sub-size=N |
5775 |
|
assign_arith_ppAssertMaxSubSize(opts, option, optionarg); |
5776 |
|
break; |
5777 |
|
case 327: // --prop-row-length=N |
5778 |
|
assign_arith_arithPropagateMaxLength(opts, option, optionarg); |
5779 |
|
break; |
5780 |
|
case 328: // --replay-early-close-depth=N |
5781 |
|
assign_arith_replayEarlyCloseDepths(opts, option, optionarg); |
5782 |
|
break; |
5783 |
|
case 329: // --replay-failure-penalty=N |
5784 |
|
assign_arith_replayFailurePenalty(opts, option, optionarg); |
5785 |
|
break; |
5786 |
|
case 330: // --replay-lemma-reject-cut=N |
5787 |
|
assign_arith_lemmaRejectCutSize(opts, option, optionarg); |
5788 |
|
break; |
5789 |
|
case 331: // --replay-num-err-penalty=N |
5790 |
|
assign_arith_replayNumericFailurePenalty(opts, option, optionarg); |
5791 |
|
break; |
5792 |
|
case 332: // --replay-reject-cut=N |
5793 |
|
assign_arith_replayRejectCutSize(opts, option, optionarg); |
5794 |
|
break; |
5795 |
|
case 333: // --replay-soi-major-threshold-pen=N |
5796 |
|
assign_arith_soiApproxMajorFailurePen(opts, option, optionarg); |
5797 |
|
break; |
5798 |
|
case 334: // --replay-soi-major-threshold=T |
5799 |
|
assign_arith_soiApproxMajorFailure(opts, option, optionarg); |
5800 |
|
break; |
5801 |
|
case 335: // --replay-soi-minor-threshold-pen=N |
5802 |
|
assign_arith_soiApproxMinorFailurePen(opts, option, optionarg); |
5803 |
|
break; |
5804 |
|
case 336: // --replay-soi-minor-threshold=T |
5805 |
|
assign_arith_soiApproxMinorFailure(opts, option, optionarg); |
5806 |
|
break; |
5807 |
|
case 337: // --restrict-pivots |
5808 |
|
assign_arith_restrictedPivots(opts, option, true); |
5809 |
|
break; |
5810 |
|
case 338:// --no-restrict-pivots |
5811 |
|
assign_arith_restrictedPivots(opts, option, false); |
5812 |
|
break; |
5813 |
|
case 339: // --revert-arith-models-on-unsat |
5814 |
|
assign_arith_revertArithModels(opts, option, true); |
5815 |
|
break; |
5816 |
|
case 340:// --no-revert-arith-models-on-unsat |
5817 |
|
assign_arith_revertArithModels(opts, option, false); |
5818 |
|
break; |
5819 |
|
case 341: // --rr-turns=N |
5820 |
|
assign_arith_rrTurns(opts, option, optionarg); |
5821 |
|
break; |
5822 |
|
case 342: // --se-solve-int |
5823 |
|
assign_arith_trySolveIntStandardEffort(opts, option, true); |
5824 |
|
break; |
5825 |
|
case 343:// --no-se-solve-int |
5826 |
|
assign_arith_trySolveIntStandardEffort(opts, option, false); |
5827 |
|
break; |
5828 |
|
case 344: // --simplex-check-period=N |
5829 |
|
assign_arith_arithSimplexCheckPeriod(opts, option, optionarg); |
5830 |
|
break; |
5831 |
|
case 345: // --soi-qe |
5832 |
|
assign_arith_soiQuickExplain(opts, option, true); |
5833 |
|
break; |
5834 |
|
case 346:// --no-soi-qe |
5835 |
|
assign_arith_soiQuickExplain(opts, option, false); |
5836 |
|
break; |
5837 |
|
case 347: // --standard-effort-variable-order-pivots=N |
5838 |
|
assign_arith_arithStandardCheckVarOrderPivots(opts, option, optionarg); |
5839 |
|
break; |
5840 |
|
case 348: // --unate-lemmas=MODE |
5841 |
|
assign_arith_arithUnateLemmaMode(opts, option, optionarg); |
5842 |
|
break; |
5843 |
|
case 349: // --use-approx |
5844 |
|
assign_arith_useApprox(opts, option, true); |
5845 |
|
break; |
5846 |
|
case 350:// --no-use-approx |
5847 |
|
assign_arith_useApprox(opts, option, false); |
5848 |
|
break; |
5849 |
|
case 351: // --use-fcsimplex |
5850 |
|
assign_arith_useFC(opts, option, true); |
5851 |
|
break; |
5852 |
|
case 352:// --no-use-fcsimplex |
5853 |
|
assign_arith_useFC(opts, option, false); |
5854 |
|
break; |
5855 |
|
case 353: // --use-soi |
5856 |
|
assign_arith_useSOI(opts, option, true); |
5857 |
|
break; |
5858 |
|
case 354:// --no-use-soi |
5859 |
|
assign_arith_useSOI(opts, option, false); |
5860 |
|
break; |
5861 |
|
case 355: // --arrays-config=N |
5862 |
|
assign_arrays_arraysConfig(opts, option, optionarg); |
5863 |
|
break; |
5864 |
|
case 356: // --arrays-eager-index |
5865 |
|
assign_arrays_arraysEagerIndexSplitting(opts, option, true); |
5866 |
|
break; |
5867 |
|
case 357:// --no-arrays-eager-index |
5868 |
|
assign_arrays_arraysEagerIndexSplitting(opts, option, false); |
5869 |
|
break; |
5870 |
|
case 358: // --arrays-eager-lemmas |
5871 |
|
assign_arrays_arraysEagerLemmas(opts, option, true); |
5872 |
|
break; |
5873 |
|
case 359:// --no-arrays-eager-lemmas |
5874 |
|
assign_arrays_arraysEagerLemmas(opts, option, false); |
5875 |
|
break; |
5876 |
3 |
case 360: // --arrays-exp |
5877 |
3 |
assign_arrays_arraysExp(opts, option, true); |
5878 |
3 |
break; |
5879 |
|
case 361:// --no-arrays-exp |
5880 |
|
assign_arrays_arraysExp(opts, option, false); |
5881 |
|
break; |
5882 |
|
case 362: // --arrays-model-based |
5883 |
|
assign_arrays_arraysModelBased(opts, option, true); |
5884 |
|
break; |
5885 |
|
case 363:// --no-arrays-model-based |
5886 |
|
assign_arrays_arraysModelBased(opts, option, false); |
5887 |
|
break; |
5888 |
|
case 364: // --arrays-optimize-linear |
5889 |
|
assign_arrays_arraysOptimizeLinear(opts, option, true); |
5890 |
|
break; |
5891 |
|
case 365:// --no-arrays-optimize-linear |
5892 |
|
assign_arrays_arraysOptimizeLinear(opts, option, false); |
5893 |
|
break; |
5894 |
|
case 366: // --arrays-prop=N |
5895 |
|
assign_arrays_arraysPropagate(opts, option, optionarg); |
5896 |
|
break; |
5897 |
|
case 367: // --arrays-reduce-sharing |
5898 |
|
assign_arrays_arraysReduceSharing(opts, option, true); |
5899 |
|
break; |
5900 |
|
case 368:// --no-arrays-reduce-sharing |
5901 |
|
assign_arrays_arraysReduceSharing(opts, option, false); |
5902 |
|
break; |
5903 |
|
case 369: // --arrays-weak-equiv |
5904 |
|
assign_arrays_arraysWeakEquivalence(opts, option, true); |
5905 |
|
break; |
5906 |
|
case 370:// --no-arrays-weak-equiv |
5907 |
|
assign_arrays_arraysWeakEquivalence(opts, option, false); |
5908 |
|
break; |
5909 |
|
case 'd': |
5910 |
|
case 371: // --debug=TAG |
5911 |
|
opts.handler().enableDebugTag("debug", option, optionarg); |
5912 |
|
break; |
5913 |
|
case 372: // --err=erroutput |
5914 |
|
case 373: // --diagnostic-output-channel |
5915 |
|
assign_base_err(opts, option, optionarg); |
5916 |
|
break; |
5917 |
|
case 374: // --in=input |
5918 |
|
assign_base_in(opts, option, optionarg); |
5919 |
|
break; |
5920 |
664 |
case 'i': |
5921 |
|
case 375: // --incremental |
5922 |
664 |
assign_base_incrementalSolving(opts, option, true); |
5923 |
664 |
break; |
5924 |
|
case 376:// --no-incremental |
5925 |
|
assign_base_incrementalSolving(opts, option, false); |
5926 |
|
break; |
5927 |
227 |
case 'L': |
5928 |
|
case 377: // --lang=LANG |
5929 |
|
case 378: // --input-language |
5930 |
227 |
assign_base_inputLanguage(opts, option, optionarg); |
5931 |
227 |
break; |
5932 |
|
case 379: // --out=output |
5933 |
|
case 380: // --regular-output-channel |
5934 |
|
assign_base_out(opts, option, optionarg); |
5935 |
|
break; |
5936 |
64 |
case 381: // --output-lang=LANG |
5937 |
|
case 382: // --output-language |
5938 |
64 |
assign_base_outputLanguage(opts, option, optionarg); |
5939 |
64 |
break; |
5940 |
3 |
case 'o': |
5941 |
|
case 383: // --output=TAG |
5942 |
3 |
opts.handler().enableOutputTag("output", option, optionarg); |
5943 |
3 |
break; |
5944 |
|
case 384: // --parse-only |
5945 |
|
assign_base_parseOnly(opts, option, true); |
5946 |
|
break; |
5947 |
|
case 385:// --no-parse-only |
5948 |
|
assign_base_parseOnly(opts, option, false); |
5949 |
|
break; |
5950 |
3 |
case 386: // --preprocess-only |
5951 |
3 |
assign_base_preprocessOnly(opts, option, true); |
5952 |
3 |
break; |
5953 |
|
case 387:// --no-preprocess-only |
5954 |
|
assign_base_preprocessOnly(opts, option, false); |
5955 |
|
break; |
5956 |
2 |
case 388: // --print-success |
5957 |
2 |
assign_base_printSuccess(opts, option, true); |
5958 |
2 |
break; |
5959 |
|
case 389:// --no-print-success |
5960 |
|
assign_base_printSuccess(opts, option, false); |
5961 |
|
break; |
5962 |
190 |
case 'q': |
5963 |
|
case 390: // --quiet |
5964 |
190 |
opts.handler().decreaseVerbosity("quiet", option); |
5965 |
190 |
break; |
5966 |
|
case 391: // --rlimit-per=N |
5967 |
|
case 392: // --reproducible-resource-limit |
5968 |
|
assign_base_perCallResourceLimit(opts, option, optionarg); |
5969 |
|
break; |
5970 |
|
case 393: // --rlimit=N |
5971 |
|
assign_base_cumulativeResourceLimit(opts, option, optionarg); |
5972 |
|
break; |
5973 |
|
case 394: // --rweight=VAL=N |
5974 |
|
opts.handler().setResourceWeight("rweight", option, optionarg); |
5975 |
|
break; |
5976 |
|
case 395: // --stats |
5977 |
|
assign_base_statistics(opts, option, true); |
5978 |
|
break; |
5979 |
|
case 396:// --no-stats |
5980 |
|
assign_base_statistics(opts, option, false); |
5981 |
|
break; |
5982 |
|
case 397: // --stats-all |
5983 |
|
assign_base_statisticsAll(opts, option, true); |
5984 |
|
break; |
5985 |
|
case 398:// --no-stats-all |
5986 |
|
assign_base_statisticsAll(opts, option, false); |
5987 |
|
break; |
5988 |
|
case 399: // --stats-every-query |
5989 |
|
assign_base_statisticsEveryQuery(opts, option, true); |
5990 |
|
break; |
5991 |
|
case 400:// --no-stats-every-query |
5992 |
|
assign_base_statisticsEveryQuery(opts, option, false); |
5993 |
|
break; |
5994 |
|
case 401: // --stats-expert |
5995 |
|
assign_base_statisticsExpert(opts, option, true); |
5996 |
|
break; |
5997 |
|
case 402:// --no-stats-expert |
5998 |
|
assign_base_statisticsExpert(opts, option, false); |
5999 |
|
break; |
6000 |
6 |
case 403: // --tlimit-per=MS |
6001 |
6 |
assign_base_perCallMillisecondLimit(opts, option, optionarg); |
6002 |
6 |
break; |
6003 |
|
case 404: // --tlimit=MS |
6004 |
|
assign_base_cumulativeMillisecondLimit(opts, option, optionarg); |
6005 |
|
break; |
6006 |
|
case 't': |
6007 |
|
case 405: // --trace=TAG |
6008 |
|
opts.handler().enableTraceTag("trace", option, optionarg); |
6009 |
|
break; |
6010 |
3 |
case 'v': |
6011 |
|
case 406: // --verbose |
6012 |
3 |
opts.handler().increaseVerbosity("verbose", option); |
6013 |
3 |
break; |
6014 |
|
case 407: // --verbosity=N |
6015 |
|
assign_base_verbosity(opts, option, optionarg); |
6016 |
|
break; |
6017 |
|
case 408: // --bitblast-aig |
6018 |
|
assign_bv_bitvectorAig(opts, option, true); |
6019 |
|
break; |
6020 |
|
case 409:// --no-bitblast-aig |
6021 |
|
assign_bv_bitvectorAig(opts, option, false); |
6022 |
|
break; |
6023 |
38 |
case 410: // --bitblast=MODE |
6024 |
38 |
assign_bv_bitblastMode(opts, option, optionarg); |
6025 |
38 |
break; |
6026 |
|
case 411: // --bitwise-eq |
6027 |
|
assign_bv_bitwiseEq(opts, option, true); |
6028 |
|
break; |
6029 |
|
case 412:// --no-bitwise-eq |
6030 |
|
assign_bv_bitwiseEq(opts, option, false); |
6031 |
|
break; |
6032 |
12 |
case 413: // --bool-to-bv=MODE |
6033 |
12 |
assign_bv_boolToBitvector(opts, option, optionarg); |
6034 |
12 |
break; |
6035 |
4 |
case 414: // --bv-abstraction |
6036 |
4 |
assign_bv_bvAbstraction(opts, option, true); |
6037 |
4 |
break; |
6038 |
|
case 415:// --no-bv-abstraction |
6039 |
|
assign_bv_bvAbstraction(opts, option, false); |
6040 |
|
break; |
6041 |
|
case 416: // --bv-aig-simp=COMMAND |
6042 |
|
assign_bv_bitvectorAigSimplifications(opts, option, optionarg); |
6043 |
|
break; |
6044 |
|
case 417: // --bv-alg-extf |
6045 |
|
assign_bv_bvAlgExtf(opts, option, true); |
6046 |
|
break; |
6047 |
|
case 418:// --no-bv-alg-extf |
6048 |
|
assign_bv_bvAlgExtf(opts, option, false); |
6049 |
|
break; |
6050 |
|
case 419: // --bv-algebraic-budget=N |
6051 |
|
assign_bv_bitvectorAlgebraicBudget(opts, option, optionarg); |
6052 |
|
break; |
6053 |
|
case 420: // --bv-algebraic-solver |
6054 |
|
assign_bv_bitvectorAlgebraicSolver(opts, option, true); |
6055 |
|
break; |
6056 |
|
case 421:// --no-bv-algebraic-solver |
6057 |
|
assign_bv_bitvectorAlgebraicSolver(opts, option, false); |
6058 |
|
break; |
6059 |
6 |
case 422: // --bv-assert-input |
6060 |
6 |
assign_bv_bvAssertInput(opts, option, true); |
6061 |
6 |
break; |
6062 |
|
case 423:// --no-bv-assert-input |
6063 |
|
assign_bv_bvAssertInput(opts, option, false); |
6064 |
|
break; |
6065 |
|
case 424: // --bv-eager-explanations |
6066 |
|
assign_bv_bvEagerExplanations(opts, option, true); |
6067 |
|
break; |
6068 |
|
case 425:// --no-bv-eager-explanations |
6069 |
|
assign_bv_bvEagerExplanations(opts, option, false); |
6070 |
|
break; |
6071 |
|
case 426: // --bv-eq-solver |
6072 |
|
assign_bv_bitvectorEqualitySolver(opts, option, true); |
6073 |
|
break; |
6074 |
2 |
case 427:// --no-bv-eq-solver |
6075 |
2 |
assign_bv_bitvectorEqualitySolver(opts, option, false); |
6076 |
2 |
break; |
6077 |
|
case 428: // --bv-extract-arith |
6078 |
|
assign_bv_bvExtractArithRewrite(opts, option, true); |
6079 |
|
break; |
6080 |
|
case 429:// --no-bv-extract-arith |
6081 |
|
assign_bv_bvExtractArithRewrite(opts, option, false); |
6082 |
|
break; |
6083 |
|
case 430: // --bv-gauss-elim |
6084 |
|
assign_bv_bvGaussElim(opts, option, true); |
6085 |
|
break; |
6086 |
|
case 431:// --no-bv-gauss-elim |
6087 |
|
assign_bv_bvGaussElim(opts, option, false); |
6088 |
|
break; |
6089 |
|
case 432: // --bv-inequality-solver |
6090 |
|
assign_bv_bitvectorInequalitySolver(opts, option, true); |
6091 |
|
break; |
6092 |
|
case 433:// --no-bv-inequality-solver |
6093 |
|
assign_bv_bitvectorInequalitySolver(opts, option, false); |
6094 |
|
break; |
6095 |
2 |
case 434: // --bv-intro-pow2 |
6096 |
2 |
assign_bv_bvIntroducePow2(opts, option, true); |
6097 |
2 |
break; |
6098 |
|
case 435:// --no-bv-intro-pow2 |
6099 |
|
assign_bv_bvIntroducePow2(opts, option, false); |
6100 |
|
break; |
6101 |
|
case 436: // --bv-num-func=N |
6102 |
|
assign_bv_bvNumFunc(opts, option, optionarg); |
6103 |
|
break; |
6104 |
2 |
case 437: // --bv-print-consts-as-indexed-symbols |
6105 |
2 |
assign_bv_bvPrintConstsAsIndexedSymbols(opts, option, true); |
6106 |
2 |
break; |
6107 |
|
case 438:// --no-bv-print-consts-as-indexed-symbols |
6108 |
|
assign_bv_bvPrintConstsAsIndexedSymbols(opts, option, false); |
6109 |
|
break; |
6110 |
|
case 439: // --bv-propagate |
6111 |
|
assign_bv_bitvectorPropagate(opts, option, true); |
6112 |
|
break; |
6113 |
|
case 440:// --no-bv-propagate |
6114 |
|
assign_bv_bitvectorPropagate(opts, option, false); |
6115 |
|
break; |
6116 |
|
case 441: // --bv-quick-xplain |
6117 |
|
assign_bv_bitvectorQuickXplain(opts, option, true); |
6118 |
|
break; |
6119 |
|
case 442:// --no-bv-quick-xplain |
6120 |
|
assign_bv_bitvectorQuickXplain(opts, option, false); |
6121 |
|
break; |
6122 |
14 |
case 443: // --bv-sat-solver=MODE |
6123 |
14 |
assign_bv_bvSatSolver(opts, option, optionarg); |
6124 |
14 |
break; |
6125 |
|
case 444: // --bv-skolemize |
6126 |
|
assign_bv_skolemizeArguments(opts, option, true); |
6127 |
|
break; |
6128 |
|
case 445:// --no-bv-skolemize |
6129 |
|
assign_bv_skolemizeArguments(opts, option, false); |
6130 |
|
break; |
6131 |
44 |
case 446: // --bv-solver=MODE |
6132 |
44 |
assign_bv_bvSolver(opts, option, optionarg); |
6133 |
44 |
break; |
6134 |
10 |
case 447: // --bv-to-bool |
6135 |
10 |
assign_bv_bitvectorToBool(opts, option, true); |
6136 |
10 |
break; |
6137 |
|
case 448:// --no-bv-to-bool |
6138 |
|
assign_bv_bitvectorToBool(opts, option, false); |
6139 |
|
break; |
6140 |
|
case 449: // --cdt-bisimilar |
6141 |
|
assign_datatypes_cdtBisimilar(opts, option, true); |
6142 |
|
break; |
6143 |
|
case 450:// --no-cdt-bisimilar |
6144 |
|
assign_datatypes_cdtBisimilar(opts, option, false); |
6145 |
|
break; |
6146 |
|
case 451: // --dt-binary-split |
6147 |
|
assign_datatypes_dtBinarySplit(opts, option, true); |
6148 |
|
break; |
6149 |
|
case 452:// --no-dt-binary-split |
6150 |
|
assign_datatypes_dtBinarySplit(opts, option, false); |
6151 |
|
break; |
6152 |
|
case 453: // --dt-blast-splits |
6153 |
|
assign_datatypes_dtBlastSplits(opts, option, true); |
6154 |
|
break; |
6155 |
|
case 454:// --no-dt-blast-splits |
6156 |
|
assign_datatypes_dtBlastSplits(opts, option, false); |
6157 |
|
break; |
6158 |
|
case 455: // --dt-cyclic |
6159 |
|
assign_datatypes_dtCyclic(opts, option, true); |
6160 |
|
break; |
6161 |
|
case 456:// --no-dt-cyclic |
6162 |
|
assign_datatypes_dtCyclic(opts, option, false); |
6163 |
|
break; |
6164 |
|
case 457: // --dt-force-assignment |
6165 |
|
assign_datatypes_dtForceAssignment(opts, option, true); |
6166 |
|
break; |
6167 |
|
case 458:// --no-dt-force-assignment |
6168 |
|
assign_datatypes_dtForceAssignment(opts, option, false); |
6169 |
|
break; |
6170 |
|
case 459: // --dt-infer-as-lemmas |
6171 |
|
assign_datatypes_dtInferAsLemmas(opts, option, true); |
6172 |
|
break; |
6173 |
|
case 460:// --no-dt-infer-as-lemmas |
6174 |
|
assign_datatypes_dtInferAsLemmas(opts, option, false); |
6175 |
|
break; |
6176 |
10 |
case 461: // --dt-nested-rec |
6177 |
10 |
assign_datatypes_dtNestedRec(opts, option, true); |
6178 |
10 |
break; |
6179 |
|
case 462:// --no-dt-nested-rec |
6180 |
|
assign_datatypes_dtNestedRec(opts, option, false); |
6181 |
|
break; |
6182 |
|
case 463: // --dt-polite-optimize |
6183 |
|
assign_datatypes_dtPoliteOptimize(opts, option, true); |
6184 |
|
break; |
6185 |
|
case 464:// --no-dt-polite-optimize |
6186 |
|
assign_datatypes_dtPoliteOptimize(opts, option, false); |
6187 |
|
break; |
6188 |
5 |
case 465: // --dt-rewrite-error-sel |
6189 |
5 |
assign_datatypes_dtRewriteErrorSel(opts, option, true); |
6190 |
5 |
break; |
6191 |
|
case 466:// --no-dt-rewrite-error-sel |
6192 |
|
assign_datatypes_dtRewriteErrorSel(opts, option, false); |
6193 |
|
break; |
6194 |
|
case 467: // --dt-share-sel |
6195 |
|
assign_datatypes_dtSharedSelectors(opts, option, true); |
6196 |
|
break; |
6197 |
|
case 468:// --no-dt-share-sel |
6198 |
|
assign_datatypes_dtSharedSelectors(opts, option, false); |
6199 |
|
break; |
6200 |
11 |
case 469: // --sygus-abort-size=N |
6201 |
11 |
assign_datatypes_sygusAbortSize(opts, option, optionarg); |
6202 |
11 |
break; |
6203 |
|
case 470: // --sygus-fair-max |
6204 |
|
assign_datatypes_sygusFairMax(opts, option, true); |
6205 |
|
break; |
6206 |
|
case 471:// --no-sygus-fair-max |
6207 |
|
assign_datatypes_sygusFairMax(opts, option, false); |
6208 |
|
break; |
6209 |
2 |
case 472: // --sygus-fair=MODE |
6210 |
2 |
assign_datatypes_sygusFair(opts, option, optionarg); |
6211 |
2 |
break; |
6212 |
|
case 473: // --sygus-sym-break |
6213 |
|
assign_datatypes_sygusSymBreak(opts, option, true); |
6214 |
|
break; |
6215 |
6 |
case 474:// --no-sygus-sym-break |
6216 |
6 |
assign_datatypes_sygusSymBreak(opts, option, false); |
6217 |
6 |
break; |
6218 |
|
case 475: // --sygus-sym-break-agg |
6219 |
|
assign_datatypes_sygusSymBreakAgg(opts, option, true); |
6220 |
|
break; |
6221 |
|
case 476:// --no-sygus-sym-break-agg |
6222 |
|
assign_datatypes_sygusSymBreakAgg(opts, option, false); |
6223 |
|
break; |
6224 |
|
case 477: // --sygus-sym-break-dynamic |
6225 |
|
assign_datatypes_sygusSymBreakDynamic(opts, option, true); |
6226 |
|
break; |
6227 |
|
case 478:// --no-sygus-sym-break-dynamic |
6228 |
|
assign_datatypes_sygusSymBreakDynamic(opts, option, false); |
6229 |
|
break; |
6230 |
|
case 479: // --sygus-sym-break-lazy |
6231 |
|
assign_datatypes_sygusSymBreakLazy(opts, option, true); |
6232 |
|
break; |
6233 |
|
case 480:// --no-sygus-sym-break-lazy |
6234 |
|
assign_datatypes_sygusSymBreakLazy(opts, option, false); |
6235 |
|
break; |
6236 |
|
case 481: // --sygus-sym-break-pbe |
6237 |
|
assign_datatypes_sygusSymBreakPbe(opts, option, true); |
6238 |
|
break; |
6239 |
|
case 482:// --no-sygus-sym-break-pbe |
6240 |
|
assign_datatypes_sygusSymBreakPbe(opts, option, false); |
6241 |
|
break; |
6242 |
|
case 483: // --sygus-sym-break-rlv |
6243 |
|
assign_datatypes_sygusSymBreakRlv(opts, option, true); |
6244 |
|
break; |
6245 |
|
case 484:// --no-sygus-sym-break-rlv |
6246 |
|
assign_datatypes_sygusSymBreakRlv(opts, option, false); |
6247 |
|
break; |
6248 |
|
case 485: // --decision-random-weight=N |
6249 |
|
assign_decision_decisionRandomWeight(opts, option, optionarg); |
6250 |
|
break; |
6251 |
|
case 486: // --decision-threshold=N |
6252 |
|
assign_decision_decisionThreshold(opts, option, optionarg); |
6253 |
|
break; |
6254 |
|
case 487: // --decision-use-weight |
6255 |
|
assign_decision_decisionUseWeight(opts, option, true); |
6256 |
|
break; |
6257 |
|
case 488:// --no-decision-use-weight |
6258 |
|
assign_decision_decisionUseWeight(opts, option, false); |
6259 |
|
break; |
6260 |
|
case 489: // --decision-weight-internal=HOW |
6261 |
|
assign_decision_decisionWeightInternal(opts, option, optionarg); |
6262 |
|
break; |
6263 |
94 |
case 490: // --decision=MODE |
6264 |
|
case 491: // --decision-mode |
6265 |
94 |
assign_decision_decisionMode(opts, option, optionarg); |
6266 |
94 |
break; |
6267 |
3 |
case 492: // --jh-rlv-order |
6268 |
3 |
assign_decision_jhRlvOrder(opts, option, true); |
6269 |
3 |
break; |
6270 |
7 |
case 493:// --no-jh-rlv-order |
6271 |
7 |
assign_decision_jhRlvOrder(opts, option, false); |
6272 |
7 |
break; |
6273 |
|
case 494: // --jh-skolem-rlv=MODE |
6274 |
|
assign_decision_jhSkolemRlvMode(opts, option, optionarg); |
6275 |
|
break; |
6276 |
|
case 495: // --jh-skolem=MODE |
6277 |
|
assign_decision_jhSkolemMode(opts, option, optionarg); |
6278 |
|
break; |
6279 |
1 |
case 496: // --dag-thresh=N |
6280 |
1 |
assign_expr_defaultDagThresh(opts, option, optionarg); |
6281 |
1 |
break; |
6282 |
|
case 497: // --expr-depth=N |
6283 |
|
assign_expr_defaultExprDepth(opts, option, optionarg); |
6284 |
|
break; |
6285 |
|
case 498: // --type-checking |
6286 |
|
assign_expr_typeChecking(opts, option, true); |
6287 |
|
break; |
6288 |
|
case 499:// --no-type-checking |
6289 |
|
assign_expr_typeChecking(opts, option, false); |
6290 |
|
break; |
6291 |
22 |
case 500: // --fp-exp |
6292 |
22 |
assign_fp_fpExp(opts, option, true); |
6293 |
22 |
break; |
6294 |
|
case 501:// --no-fp-exp |
6295 |
|
assign_fp_fpExp(opts, option, false); |
6296 |
|
break; |
6297 |
3 |
case 502: // --fp-lazy-wb |
6298 |
3 |
assign_fp_fpLazyWb(opts, option, true); |
6299 |
3 |
break; |
6300 |
|
case 503:// --no-fp-lazy-wb |
6301 |
|
assign_fp_fpLazyWb(opts, option, false); |
6302 |
|
break; |
6303 |
|
case 504: // --copyright |
6304 |
|
opts.handler().copyright("copyright", option); |
6305 |
|
break; |
6306 |
12 |
case 505: // --dump-instantiations |
6307 |
12 |
assign_driver_dumpInstantiations(opts, option, true); |
6308 |
12 |
break; |
6309 |
|
case 506:// --no-dump-instantiations |
6310 |
|
assign_driver_dumpInstantiations(opts, option, false); |
6311 |
|
break; |
6312 |
|
case 507: // --dump-instantiations-debug |
6313 |
|
assign_driver_dumpInstantiationsDebug(opts, option, true); |
6314 |
|
break; |
6315 |
|
case 508:// --no-dump-instantiations-debug |
6316 |
|
assign_driver_dumpInstantiationsDebug(opts, option, false); |
6317 |
|
break; |
6318 |
6 |
case 509: // --dump-models |
6319 |
6 |
assign_driver_dumpModels(opts, option, true); |
6320 |
6 |
break; |
6321 |
|
case 510:// --no-dump-models |
6322 |
|
assign_driver_dumpModels(opts, option, false); |
6323 |
|
break; |
6324 |
|
case 511: // --dump-proofs |
6325 |
|
assign_driver_dumpProofs(opts, option, true); |
6326 |
|
break; |
6327 |
|
case 512:// --no-dump-proofs |
6328 |
|
assign_driver_dumpProofs(opts, option, false); |
6329 |
|
break; |
6330 |
|
case 513: // --dump-unsat-cores |
6331 |
|
assign_driver_dumpUnsatCores(opts, option, true); |
6332 |
|
break; |
6333 |
|
case 514:// --no-dump-unsat-cores |
6334 |
|
assign_driver_dumpUnsatCores(opts, option, false); |
6335 |
|
break; |
6336 |
3 |
case 515: // --dump-unsat-cores-full |
6337 |
3 |
assign_driver_dumpUnsatCoresFull(opts, option, true); |
6338 |
3 |
break; |
6339 |
|
case 516:// --no-dump-unsat-cores-full |
6340 |
|
assign_driver_dumpUnsatCoresFull(opts, option, false); |
6341 |
|
break; |
6342 |
|
case 517: // --early-exit |
6343 |
|
assign_driver_earlyExit(opts, option, true); |
6344 |
|
break; |
6345 |
|
case 518:// --no-early-exit |
6346 |
|
assign_driver_earlyExit(opts, option, false); |
6347 |
|
break; |
6348 |
|
case 519: // --force-no-limit-cpu-while-dump |
6349 |
|
assign_driver_forceNoLimitCpuWhileDump(opts, option, true); |
6350 |
|
break; |
6351 |
|
case 520:// --no-force-no-limit-cpu-while-dump |
6352 |
|
assign_driver_forceNoLimitCpuWhileDump(opts, option, false); |
6353 |
|
break; |
6354 |
|
case 'h': |
6355 |
|
case 521: // --help |
6356 |
|
assign_driver_help(opts, option, true); |
6357 |
|
break; |
6358 |
|
case 522: // --interactive |
6359 |
|
assign_driver_interactive(opts, option, true); |
6360 |
|
break; |
6361 |
|
case 523:// --no-interactive |
6362 |
|
assign_driver_interactive(opts, option, false); |
6363 |
|
break; |
6364 |
|
case 524: // --interactive-prompt |
6365 |
|
assign_driver_interactivePrompt(opts, option, true); |
6366 |
|
break; |
6367 |
|
case 525:// --no-interactive-prompt |
6368 |
|
assign_driver_interactivePrompt(opts, option, false); |
6369 |
|
break; |
6370 |
|
case 's': |
6371 |
|
case 526: // --seed=N |
6372 |
|
assign_driver_seed(opts, option, optionarg); |
6373 |
|
break; |
6374 |
|
case 527: // --segv-spin |
6375 |
|
assign_driver_segvSpin(opts, option, true); |
6376 |
|
break; |
6377 |
|
case 528:// --no-segv-spin |
6378 |
|
assign_driver_segvSpin(opts, option, false); |
6379 |
|
break; |
6380 |
2602 |
case 529: // --show-config |
6381 |
2602 |
opts.handler().showConfiguration("show-config", option); |
6382 |
|
break; |
6383 |
|
case 530: // --show-debug-tags |
6384 |
|
opts.handler().showDebugTags("show-debug-tags", option); |
6385 |
|
break; |
6386 |
|
case 531: // --show-trace-tags |
6387 |
|
opts.handler().showTraceTags("show-trace-tags", option); |
6388 |
|
break; |
6389 |
|
case 'V': |
6390 |
|
case 532: // --version |
6391 |
|
assign_driver_version(opts, option, true); |
6392 |
|
break; |
6393 |
|
case 533: // --filesystem-access |
6394 |
|
assign_parser_filesystemAccess(opts, option, true); |
6395 |
|
break; |
6396 |
|
case 534:// --no-filesystem-access |
6397 |
|
assign_parser_filesystemAccess(opts, option, false); |
6398 |
|
break; |
6399 |
9 |
case 535: // --force-logic=LOGIC |
6400 |
9 |
assign_parser_forceLogicString(opts, option, optionarg); |
6401 |
9 |
break; |
6402 |
|
case 536: // --global-declarations |
6403 |
|
assign_parser_globalDeclarations(opts, option, true); |
6404 |
|
break; |
6405 |
|
case 537:// --no-global-declarations |
6406 |
|
assign_parser_globalDeclarations(opts, option, false); |
6407 |
|
break; |
6408 |
|
case 538: // --mmap |
6409 |
|
assign_parser_memoryMap(opts, option, true); |
6410 |
|
break; |
6411 |
|
case 539:// --no-mmap |
6412 |
|
assign_parser_memoryMap(opts, option, false); |
6413 |
|
break; |
6414 |
|
case 540: // --semantic-checks |
6415 |
|
assign_parser_semanticChecks(opts, option, true); |
6416 |
|
break; |
6417 |
|
case 541:// --no-semantic-checks |
6418 |
|
assign_parser_semanticChecks(opts, option, false); |
6419 |
|
break; |
6420 |
9 |
case 542: // --strict-parsing |
6421 |
9 |
assign_parser_strictParsing(opts, option, true); |
6422 |
9 |
break; |
6423 |
|
case 543:// --no-strict-parsing |
6424 |
|
assign_parser_strictParsing(opts, option, false); |
6425 |
|
break; |
6426 |
|
case 544: // --flatten-ho-chains |
6427 |
|
assign_printer_flattenHOChains(opts, option, true); |
6428 |
|
break; |
6429 |
|
case 545:// --no-flatten-ho-chains |
6430 |
|
assign_printer_flattenHOChains(opts, option, false); |
6431 |
|
break; |
6432 |
|
case 546: // --inst-format=MODE |
6433 |
|
assign_printer_instFormatMode(opts, option, optionarg); |
6434 |
|
break; |
6435 |
|
case 547: // --model-format=MODE |
6436 |
|
assign_printer_modelFormatMode(opts, option, optionarg); |
6437 |
|
break; |
6438 |
9 |
case 548: // --print-inst-full |
6439 |
9 |
assign_printer_printInstFull(opts, option, true); |
6440 |
9 |
break; |
6441 |
3 |
case 549:// --no-print-inst-full |
6442 |
3 |
assign_printer_printInstFull(opts, option, false); |
6443 |
3 |
break; |
6444 |
3 |
case 550: // --print-inst=MODE |
6445 |
3 |
assign_printer_printInstMode(opts, option, optionarg); |
6446 |
3 |
break; |
6447 |
2 |
case 551: // --proof-eager-checking |
6448 |
2 |
assign_proof_proofEagerChecking(opts, option, true); |
6449 |
2 |
break; |
6450 |
|
case 552:// --no-proof-eager-checking |
6451 |
|
assign_proof_proofEagerChecking(opts, option, false); |
6452 |
|
break; |
6453 |
|
case 553: // --proof-format-mode=MODE |
6454 |
|
assign_proof_proofFormatMode(opts, option, optionarg); |
6455 |
|
break; |
6456 |
|
case 554: // --proof-granularity=MODE |
6457 |
|
assign_proof_proofGranularityMode(opts, option, optionarg); |
6458 |
|
break; |
6459 |
|
case 555: // --proof-pedantic=N |
6460 |
|
assign_proof_proofPedantic(opts, option, optionarg); |
6461 |
|
break; |
6462 |
|
case 556: // --proof-print-conclusion |
6463 |
|
assign_proof_proofPrintConclusion(opts, option, true); |
6464 |
|
break; |
6465 |
|
case 557:// --no-proof-print-conclusion |
6466 |
|
assign_proof_proofPrintConclusion(opts, option, false); |
6467 |
|
break; |
6468 |
|
case 558: // --minisat-dump-dimacs |
6469 |
|
assign_prop_minisatDumpDimacs(opts, option, true); |
6470 |
|
break; |
6471 |
|
case 559:// --no-minisat-dump-dimacs |
6472 |
|
assign_prop_minisatDumpDimacs(opts, option, false); |
6473 |
|
break; |
6474 |
|
case 560: // --minisat-elimination |
6475 |
|
assign_prop_minisatUseElim(opts, option, true); |
6476 |
|
break; |
6477 |
|
case 561:// --no-minisat-elimination |
6478 |
|
assign_prop_minisatUseElim(opts, option, false); |
6479 |
|
break; |
6480 |
|
case 562: // --random-freq=P |
6481 |
|
case 563: // --random-frequency |
6482 |
|
assign_prop_satRandomFreq(opts, option, optionarg); |
6483 |
|
break; |
6484 |
|
case 564: // --random-seed=S |
6485 |
|
assign_prop_satRandomSeed(opts, option, optionarg); |
6486 |
|
break; |
6487 |
|
case 565: // --refine-conflicts |
6488 |
|
assign_prop_sat_refine_conflicts(opts, option, true); |
6489 |
|
break; |
6490 |
|
case 566:// --no-refine-conflicts |
6491 |
|
assign_prop_sat_refine_conflicts(opts, option, false); |
6492 |
|
break; |
6493 |
|
case 567: // --restart-int-base=N |
6494 |
|
assign_prop_satRestartFirst(opts, option, optionarg); |
6495 |
|
break; |
6496 |
|
case 568: // --restart-int-inc=F |
6497 |
|
assign_prop_satRestartInc(opts, option, optionarg); |
6498 |
|
break; |
6499 |
|
case 569: // --ag-miniscope-quant |
6500 |
|
assign_quantifiers_aggressiveMiniscopeQuant(opts, option, true); |
6501 |
|
break; |
6502 |
|
case 570:// --no-ag-miniscope-quant |
6503 |
|
assign_quantifiers_aggressiveMiniscopeQuant(opts, option, false); |
6504 |
|
break; |
6505 |
3 |
case 571: // --cegis-sample=MODE |
6506 |
3 |
assign_quantifiers_cegisSample(opts, option, optionarg); |
6507 |
3 |
break; |
6508 |
17 |
case 572: // --cegqi |
6509 |
17 |
assign_quantifiers_cegqi(opts, option, true); |
6510 |
17 |
break; |
6511 |
2 |
case 573:// --no-cegqi |
6512 |
2 |
assign_quantifiers_cegqi(opts, option, false); |
6513 |
2 |
break; |
6514 |
15 |
case 574: // --cegqi-all |
6515 |
15 |
assign_quantifiers_cegqiAll(opts, option, true); |
6516 |
15 |
break; |
6517 |
|
case 575:// --no-cegqi-all |
6518 |
|
assign_quantifiers_cegqiAll(opts, option, false); |
6519 |
|
break; |
6520 |
106 |
case 576: // --cegqi-bv |
6521 |
106 |
assign_quantifiers_cegqiBv(opts, option, true); |
6522 |
106 |
break; |
6523 |
|
case 577:// --no-cegqi-bv |
6524 |
|
assign_quantifiers_cegqiBv(opts, option, false); |
6525 |
|
break; |
6526 |
|
case 578: // --cegqi-bv-concat-inv |
6527 |
|
assign_quantifiers_cegqiBvConcInv(opts, option, true); |
6528 |
|
break; |
6529 |
|
case 579:// --no-cegqi-bv-concat-inv |
6530 |
|
assign_quantifiers_cegqiBvConcInv(opts, option, false); |
6531 |
|
break; |
6532 |
82 |
case 580: // --cegqi-bv-ineq=MODE |
6533 |
82 |
assign_quantifiers_cegqiBvIneqMode(opts, option, optionarg); |
6534 |
82 |
break; |
6535 |
|
case 581: // --cegqi-bv-interleave-value |
6536 |
|
assign_quantifiers_cegqiBvInterleaveValue(opts, option, true); |
6537 |
|
break; |
6538 |
|
case 582:// --no-cegqi-bv-interleave-value |
6539 |
|
assign_quantifiers_cegqiBvInterleaveValue(opts, option, false); |
6540 |
|
break; |
6541 |
|
case 583: // --cegqi-bv-linear |
6542 |
|
assign_quantifiers_cegqiBvLinearize(opts, option, true); |
6543 |
|
break; |
6544 |
|
case 584:// --no-cegqi-bv-linear |
6545 |
|
assign_quantifiers_cegqiBvLinearize(opts, option, false); |
6546 |
|
break; |
6547 |
2 |
case 585: // --cegqi-bv-rm-extract |
6548 |
2 |
assign_quantifiers_cegqiBvRmExtract(opts, option, true); |
6549 |
2 |
break; |
6550 |
|
case 586:// --no-cegqi-bv-rm-extract |
6551 |
|
assign_quantifiers_cegqiBvRmExtract(opts, option, false); |
6552 |
|
break; |
6553 |
|
case 587: // --cegqi-bv-solve-nl |
6554 |
|
assign_quantifiers_cegqiBvSolveNl(opts, option, true); |
6555 |
|
break; |
6556 |
|
case 588:// --no-cegqi-bv-solve-nl |
6557 |
|
assign_quantifiers_cegqiBvSolveNl(opts, option, false); |
6558 |
|
break; |
6559 |
5 |
case 589: // --cegqi-full |
6560 |
5 |
assign_quantifiers_cegqiFullEffort(opts, option, true); |
6561 |
5 |
break; |
6562 |
82 |
case 590:// --no-cegqi-full |
6563 |
82 |
assign_quantifiers_cegqiFullEffort(opts, option, false); |
6564 |
82 |
break; |
6565 |
|
case 591: // --cegqi-innermost |
6566 |
|
assign_quantifiers_cegqiInnermost(opts, option, true); |
6567 |
|
break; |
6568 |
|
case 592:// --no-cegqi-innermost |
6569 |
|
assign_quantifiers_cegqiInnermost(opts, option, false); |
6570 |
|
break; |
6571 |
|
case 593: // --cegqi-midpoint |
6572 |
|
assign_quantifiers_cegqiMidpoint(opts, option, true); |
6573 |
|
break; |
6574 |
|
case 594:// --no-cegqi-midpoint |
6575 |
|
assign_quantifiers_cegqiMidpoint(opts, option, false); |
6576 |
|
break; |
6577 |
|
case 595: // --cegqi-min-bounds |
6578 |
|
assign_quantifiers_cegqiMinBounds(opts, option, true); |
6579 |
|
break; |
6580 |
|
case 596:// --no-cegqi-min-bounds |
6581 |
|
assign_quantifiers_cegqiMinBounds(opts, option, false); |
6582 |
|
break; |
6583 |
|
case 597: // --cegqi-model |
6584 |
|
assign_quantifiers_cegqiModel(opts, option, true); |
6585 |
|
break; |
6586 |
|
case 598:// --no-cegqi-model |
6587 |
|
assign_quantifiers_cegqiModel(opts, option, false); |
6588 |
|
break; |
6589 |
3 |
case 599: // --cegqi-multi-inst |
6590 |
3 |
assign_quantifiers_cegqiMultiInst(opts, option, true); |
6591 |
3 |
break; |
6592 |
|
case 600:// --no-cegqi-multi-inst |
6593 |
|
assign_quantifiers_cegqiMultiInst(opts, option, false); |
6594 |
|
break; |
6595 |
7 |
case 601: // --cegqi-nested-qe |
6596 |
7 |
assign_quantifiers_cegqiNestedQE(opts, option, true); |
6597 |
7 |
break; |
6598 |
|
case 602:// --no-cegqi-nested-qe |
6599 |
|
assign_quantifiers_cegqiNestedQE(opts, option, false); |
6600 |
|
break; |
6601 |
|
case 603: // --cegqi-nopt |
6602 |
|
assign_quantifiers_cegqiNopt(opts, option, true); |
6603 |
|
break; |
6604 |
|
case 604:// --no-cegqi-nopt |
6605 |
|
assign_quantifiers_cegqiNopt(opts, option, false); |
6606 |
|
break; |
6607 |
|
case 605: // --cegqi-repeat-lit |
6608 |
|
assign_quantifiers_cegqiRepeatLit(opts, option, true); |
6609 |
|
break; |
6610 |
|
case 606:// --no-cegqi-repeat-lit |
6611 |
|
assign_quantifiers_cegqiRepeatLit(opts, option, false); |
6612 |
|
break; |
6613 |
|
case 607: // --cegqi-round-up-lia |
6614 |
|
assign_quantifiers_cegqiRoundUpLowerLia(opts, option, true); |
6615 |
|
break; |
6616 |
|
case 608:// --no-cegqi-round-up-lia |
6617 |
|
assign_quantifiers_cegqiRoundUpLowerLia(opts, option, false); |
6618 |
|
break; |
6619 |
|
case 609: // --cegqi-sat |
6620 |
|
assign_quantifiers_cegqiSat(opts, option, true); |
6621 |
|
break; |
6622 |
|
case 610:// --no-cegqi-sat |
6623 |
|
assign_quantifiers_cegqiSat(opts, option, false); |
6624 |
|
break; |
6625 |
3 |
case 611: // --cegqi-use-inf-int |
6626 |
3 |
assign_quantifiers_cegqiUseInfInt(opts, option, true); |
6627 |
3 |
break; |
6628 |
|
case 612:// --no-cegqi-use-inf-int |
6629 |
|
assign_quantifiers_cegqiUseInfInt(opts, option, false); |
6630 |
|
break; |
6631 |
3 |
case 613: // --cegqi-use-inf-real |
6632 |
3 |
assign_quantifiers_cegqiUseInfReal(opts, option, true); |
6633 |
3 |
break; |
6634 |
|
case 614:// --no-cegqi-use-inf-real |
6635 |
|
assign_quantifiers_cegqiUseInfReal(opts, option, false); |
6636 |
|
break; |
6637 |
|
case 615: // --cond-var-split-agg-quant |
6638 |
|
assign_quantifiers_condVarSplitQuantAgg(opts, option, true); |
6639 |
|
break; |
6640 |
|
case 616:// --no-cond-var-split-agg-quant |
6641 |
|
assign_quantifiers_condVarSplitQuantAgg(opts, option, false); |
6642 |
|
break; |
6643 |
|
case 617: // --cond-var-split-quant |
6644 |
|
assign_quantifiers_condVarSplitQuant(opts, option, true); |
6645 |
|
break; |
6646 |
|
case 618:// --no-cond-var-split-quant |
6647 |
|
assign_quantifiers_condVarSplitQuant(opts, option, false); |
6648 |
|
break; |
6649 |
|
case 619: // --conjecture-filter-active-terms |
6650 |
|
assign_quantifiers_conjectureFilterActiveTerms(opts, option, true); |
6651 |
|
break; |
6652 |
|
case 620:// --no-conjecture-filter-active-terms |
6653 |
|
assign_quantifiers_conjectureFilterActiveTerms(opts, option, false); |
6654 |
|
break; |
6655 |
|
case 621: // --conjecture-filter-canonical |
6656 |
|
assign_quantifiers_conjectureFilterCanonical(opts, option, true); |
6657 |
|
break; |
6658 |
|
case 622:// --no-conjecture-filter-canonical |
6659 |
|
assign_quantifiers_conjectureFilterCanonical(opts, option, false); |
6660 |
|
break; |
6661 |
|
case 623: // --conjecture-filter-model |
6662 |
|
assign_quantifiers_conjectureFilterModel(opts, option, true); |
6663 |
|
break; |
6664 |
|
case 624:// --no-conjecture-filter-model |
6665 |
|
assign_quantifiers_conjectureFilterModel(opts, option, false); |
6666 |
|
break; |
6667 |
3 |
case 625: // --conjecture-gen |
6668 |
3 |
assign_quantifiers_conjectureGen(opts, option, true); |
6669 |
3 |
break; |
6670 |
|
case 626:// --no-conjecture-gen |
6671 |
|
assign_quantifiers_conjectureGen(opts, option, false); |
6672 |
|
break; |
6673 |
|
case 627: // --conjecture-gen-gt-enum=N |
6674 |
|
assign_quantifiers_conjectureGenGtEnum(opts, option, optionarg); |
6675 |
|
break; |
6676 |
|
case 628: // --conjecture-gen-max-depth=N |
6677 |
|
assign_quantifiers_conjectureGenMaxDepth(opts, option, optionarg); |
6678 |
|
break; |
6679 |
|
case 629: // --conjecture-gen-per-round=N |
6680 |
|
assign_quantifiers_conjectureGenPerRound(opts, option, optionarg); |
6681 |
|
break; |
6682 |
|
case 630: // --conjecture-gen-uee-intro |
6683 |
|
assign_quantifiers_conjectureUeeIntro(opts, option, true); |
6684 |
|
break; |
6685 |
|
case 631:// --no-conjecture-gen-uee-intro |
6686 |
|
assign_quantifiers_conjectureUeeIntro(opts, option, false); |
6687 |
|
break; |
6688 |
|
case 632: // --conjecture-no-filter |
6689 |
|
assign_quantifiers_conjectureNoFilter(opts, option, true); |
6690 |
|
break; |
6691 |
|
case 633:// --no-conjecture-no-filter |
6692 |
|
assign_quantifiers_conjectureNoFilter(opts, option, false); |
6693 |
|
break; |
6694 |
|
case 634: // --dt-stc-ind |
6695 |
|
assign_quantifiers_dtStcInduction(opts, option, true); |
6696 |
|
break; |
6697 |
|
case 635:// --no-dt-stc-ind |
6698 |
|
assign_quantifiers_dtStcInduction(opts, option, false); |
6699 |
|
break; |
6700 |
|
case 636: // --dt-var-exp-quant |
6701 |
|
assign_quantifiers_dtVarExpandQuant(opts, option, true); |
6702 |
|
break; |
6703 |
|
case 637:// --no-dt-var-exp-quant |
6704 |
|
assign_quantifiers_dtVarExpandQuant(opts, option, false); |
6705 |
|
break; |
6706 |
|
case 638: // --e-matching |
6707 |
|
assign_quantifiers_eMatching(opts, option, true); |
6708 |
|
break; |
6709 |
|
case 639:// --no-e-matching |
6710 |
|
assign_quantifiers_eMatching(opts, option, false); |
6711 |
|
break; |
6712 |
|
case 640: // --elim-taut-quant |
6713 |
|
assign_quantifiers_elimTautQuant(opts, option, true); |
6714 |
|
break; |
6715 |
|
case 641:// --no-elim-taut-quant |
6716 |
|
assign_quantifiers_elimTautQuant(opts, option, false); |
6717 |
|
break; |
6718 |
9 |
case 642: // --ext-rewrite-quant |
6719 |
9 |
assign_quantifiers_extRewriteQuant(opts, option, true); |
6720 |
9 |
break; |
6721 |
|
case 643:// --no-ext-rewrite-quant |
6722 |
|
assign_quantifiers_extRewriteQuant(opts, option, false); |
6723 |
|
break; |
6724 |
159 |
case 644: // --finite-model-find |
6725 |
159 |
assign_quantifiers_finiteModelFind(opts, option, true); |
6726 |
159 |
break; |
6727 |
1 |
case 645:// --no-finite-model-find |
6728 |
1 |
assign_quantifiers_finiteModelFind(opts, option, false); |
6729 |
1 |
break; |
6730 |
30 |
case 646: // --fmf-bound |
6731 |
30 |
assign_quantifiers_fmfBound(opts, option, true); |
6732 |
30 |
break; |
6733 |
|
case 647:// --no-fmf-bound |
6734 |
|
assign_quantifiers_fmfBound(opts, option, false); |
6735 |
|
break; |
6736 |
6 |
case 648: // --fmf-bound-int |
6737 |
6 |
assign_quantifiers_fmfBoundInt(opts, option, true); |
6738 |
6 |
break; |
6739 |
|
case 649:// --no-fmf-bound-int |
6740 |
|
assign_quantifiers_fmfBoundInt(opts, option, false); |
6741 |
|
break; |
6742 |
3 |
case 650: // --fmf-bound-lazy |
6743 |
3 |
assign_quantifiers_fmfBoundLazy(opts, option, true); |
6744 |
3 |
break; |
6745 |
|
case 651:// --no-fmf-bound-lazy |
6746 |
|
assign_quantifiers_fmfBoundLazy(opts, option, false); |
6747 |
|
break; |
6748 |
|
case 652: // --fmf-fmc-simple |
6749 |
|
assign_quantifiers_fmfFmcSimple(opts, option, true); |
6750 |
|
break; |
6751 |
|
case 653:// --no-fmf-fmc-simple |
6752 |
|
assign_quantifiers_fmfFmcSimple(opts, option, false); |
6753 |
|
break; |
6754 |
|
case 654: // --fmf-fresh-dc |
6755 |
|
assign_quantifiers_fmfFreshDistConst(opts, option, true); |
6756 |
|
break; |
6757 |
|
case 655:// --no-fmf-fresh-dc |
6758 |
|
assign_quantifiers_fmfFreshDistConst(opts, option, false); |
6759 |
|
break; |
6760 |
37 |
case 656: // --fmf-fun |
6761 |
37 |
assign_quantifiers_fmfFunWellDefined(opts, option, true); |
6762 |
37 |
break; |
6763 |
|
case 657:// --no-fmf-fun |
6764 |
|
assign_quantifiers_fmfFunWellDefined(opts, option, false); |
6765 |
|
break; |
6766 |
10 |
case 658: // --fmf-fun-rlv |
6767 |
10 |
assign_quantifiers_fmfFunWellDefinedRelevant(opts, option, true); |
6768 |
10 |
break; |
6769 |
|
case 659:// --no-fmf-fun-rlv |
6770 |
|
assign_quantifiers_fmfFunWellDefinedRelevant(opts, option, false); |
6771 |
|
break; |
6772 |
7 |
case 660: // --fmf-inst-engine |
6773 |
7 |
assign_quantifiers_fmfInstEngine(opts, option, true); |
6774 |
7 |
break; |
6775 |
|
case 661:// --no-fmf-inst-engine |
6776 |
|
assign_quantifiers_fmfInstEngine(opts, option, false); |
6777 |
|
break; |
6778 |
|
case 662: // --fmf-type-completion-thresh=N |
6779 |
|
assign_quantifiers_fmfTypeCompletionThresh(opts, option, optionarg); |
6780 |
|
break; |
6781 |
|
case 663: // --fs-interleave |
6782 |
|
assign_quantifiers_fullSaturateInterleave(opts, option, true); |
6783 |
|
break; |
6784 |
|
case 664:// --no-fs-interleave |
6785 |
|
assign_quantifiers_fullSaturateInterleave(opts, option, false); |
6786 |
|
break; |
6787 |
3 |
case 665: // --fs-stratify |
6788 |
3 |
assign_quantifiers_fullSaturateStratify(opts, option, true); |
6789 |
3 |
break; |
6790 |
|
case 666:// --no-fs-stratify |
6791 |
|
assign_quantifiers_fullSaturateStratify(opts, option, false); |
6792 |
|
break; |
6793 |
|
case 667: // --fs-sum |
6794 |
|
assign_quantifiers_fullSaturateSum(opts, option, true); |
6795 |
|
break; |
6796 |
|
case 668:// --no-fs-sum |
6797 |
|
assign_quantifiers_fullSaturateSum(opts, option, false); |
6798 |
|
break; |
6799 |
76 |
case 669: // --full-saturate-quant |
6800 |
76 |
assign_quantifiers_fullSaturateQuant(opts, option, true); |
6801 |
76 |
break; |
6802 |
|
case 670:// --no-full-saturate-quant |
6803 |
|
assign_quantifiers_fullSaturateQuant(opts, option, false); |
6804 |
|
break; |
6805 |
3 |
case 671: // --full-saturate-quant-limit=N |
6806 |
3 |
assign_quantifiers_fullSaturateLimit(opts, option, optionarg); |
6807 |
3 |
break; |
6808 |
|
case 672: // --full-saturate-quant-rd |
6809 |
|
assign_quantifiers_fullSaturateQuantRd(opts, option, true); |
6810 |
|
break; |
6811 |
|
case 673:// --no-full-saturate-quant-rd |
6812 |
|
assign_quantifiers_fullSaturateQuantRd(opts, option, false); |
6813 |
|
break; |
6814 |
6 |
case 674: // --global-negate |
6815 |
6 |
assign_quantifiers_globalNegate(opts, option, true); |
6816 |
6 |
break; |
6817 |
|
case 675:// --no-global-negate |
6818 |
|
assign_quantifiers_globalNegate(opts, option, false); |
6819 |
|
break; |
6820 |
8 |
case 676: // --ho-elim |
6821 |
8 |
assign_quantifiers_hoElim(opts, option, true); |
6822 |
8 |
break; |
6823 |
|
case 677:// --no-ho-elim |
6824 |
|
assign_quantifiers_hoElim(opts, option, false); |
6825 |
|
break; |
6826 |
1 |
case 678: // --ho-elim-store-ax |
6827 |
1 |
assign_quantifiers_hoElimStoreAx(opts, option, true); |
6828 |
1 |
break; |
6829 |
|
case 679:// --no-ho-elim-store-ax |
6830 |
|
assign_quantifiers_hoElimStoreAx(opts, option, false); |
6831 |
|
break; |
6832 |
|
case 680: // --ho-matching |
6833 |
|
assign_quantifiers_hoMatching(opts, option, true); |
6834 |
|
break; |
6835 |
|
case 681:// --no-ho-matching |
6836 |
|
assign_quantifiers_hoMatching(opts, option, false); |
6837 |
|
break; |
6838 |
|
case 682: // --ho-matching-var-priority |
6839 |
|
assign_quantifiers_hoMatchingVarArgPriority(opts, option, true); |
6840 |
|
break; |
6841 |
|
case 683:// --no-ho-matching-var-priority |
6842 |
|
assign_quantifiers_hoMatchingVarArgPriority(opts, option, false); |
6843 |
|
break; |
6844 |
|
case 684: // --ho-merge-term-db |
6845 |
|
assign_quantifiers_hoMergeTermDb(opts, option, true); |
6846 |
|
break; |
6847 |
|
case 685:// --no-ho-merge-term-db |
6848 |
|
assign_quantifiers_hoMergeTermDb(opts, option, false); |
6849 |
|
break; |
6850 |
|
case 686: // --increment-triggers |
6851 |
|
assign_quantifiers_incrementTriggers(opts, option, true); |
6852 |
|
break; |
6853 |
|
case 687:// --no-increment-triggers |
6854 |
|
assign_quantifiers_incrementTriggers(opts, option, false); |
6855 |
|
break; |
6856 |
|
case 688: // --inst-level-input-only |
6857 |
|
assign_quantifiers_instLevelInputOnly(opts, option, true); |
6858 |
|
break; |
6859 |
|
case 689:// --no-inst-level-input-only |
6860 |
|
assign_quantifiers_instLevelInputOnly(opts, option, false); |
6861 |
|
break; |
6862 |
3 |
case 690: // --inst-max-level=N |
6863 |
3 |
assign_quantifiers_instMaxLevel(opts, option, optionarg); |
6864 |
3 |
break; |
6865 |
|
case 691: // --inst-max-rounds=N |
6866 |
|
assign_quantifiers_instMaxRounds(opts, option, optionarg); |
6867 |
|
break; |
6868 |
|
case 692: // --inst-no-entail |
6869 |
|
assign_quantifiers_instNoEntail(opts, option, true); |
6870 |
|
break; |
6871 |
|
case 693:// --no-inst-no-entail |
6872 |
|
assign_quantifiers_instNoEntail(opts, option, false); |
6873 |
|
break; |
6874 |
|
case 694: // --inst-when-phase=N |
6875 |
|
assign_quantifiers_instWhenPhase(opts, option, optionarg); |
6876 |
|
break; |
6877 |
|
case 695: // --inst-when-strict-interleave |
6878 |
|
assign_quantifiers_instWhenStrictInterleave(opts, option, true); |
6879 |
|
break; |
6880 |
|
case 696:// --no-inst-when-strict-interleave |
6881 |
|
assign_quantifiers_instWhenStrictInterleave(opts, option, false); |
6882 |
|
break; |
6883 |
|
case 697: // --inst-when-tc-first |
6884 |
|
assign_quantifiers_instWhenTcFirst(opts, option, true); |
6885 |
|
break; |
6886 |
|
case 698:// --no-inst-when-tc-first |
6887 |
|
assign_quantifiers_instWhenTcFirst(opts, option, false); |
6888 |
|
break; |
6889 |
3 |
case 699: // --inst-when=MODE |
6890 |
3 |
assign_quantifiers_instWhenMode(opts, option, optionarg); |
6891 |
3 |
break; |
6892 |
3 |
case 700: // --int-wf-ind |
6893 |
3 |
assign_quantifiers_intWfInduction(opts, option, true); |
6894 |
3 |
break; |
6895 |
|
case 701:// --no-int-wf-ind |
6896 |
|
assign_quantifiers_intWfInduction(opts, option, false); |
6897 |
|
break; |
6898 |
|
case 702: // --ite-dtt-split-quant |
6899 |
|
assign_quantifiers_iteDtTesterSplitQuant(opts, option, true); |
6900 |
|
break; |
6901 |
|
case 703:// --no-ite-dtt-split-quant |
6902 |
|
assign_quantifiers_iteDtTesterSplitQuant(opts, option, false); |
6903 |
|
break; |
6904 |
|
case 704: // --ite-lift-quant=MODE |
6905 |
|
assign_quantifiers_iteLiftQuant(opts, option, optionarg); |
6906 |
|
break; |
6907 |
|
case 705: // --literal-matching=MODE |
6908 |
|
assign_quantifiers_literalMatchMode(opts, option, optionarg); |
6909 |
|
break; |
6910 |
17 |
case 706: // --macros-quant |
6911 |
17 |
assign_quantifiers_macrosQuant(opts, option, true); |
6912 |
17 |
break; |
6913 |
|
case 707:// --no-macros-quant |
6914 |
|
assign_quantifiers_macrosQuant(opts, option, false); |
6915 |
|
break; |
6916 |
2 |
case 708: // --macros-quant-mode=MODE |
6917 |
2 |
assign_quantifiers_macrosQuantMode(opts, option, optionarg); |
6918 |
2 |
break; |
6919 |
|
case 709: // --mbqi-interleave |
6920 |
|
assign_quantifiers_mbqiInterleave(opts, option, true); |
6921 |
|
break; |
6922 |
|
case 710:// --no-mbqi-interleave |
6923 |
|
assign_quantifiers_mbqiInterleave(opts, option, false); |
6924 |
|
break; |
6925 |
|
case 711: // --mbqi-one-inst-per-round |
6926 |
|
assign_quantifiers_fmfOneInstPerRound(opts, option, true); |
6927 |
|
break; |
6928 |
|
case 712:// --no-mbqi-one-inst-per-round |
6929 |
|
assign_quantifiers_fmfOneInstPerRound(opts, option, false); |
6930 |
|
break; |
6931 |
|
case 713: // --mbqi=MODE |
6932 |
|
assign_quantifiers_mbqiMode(opts, option, optionarg); |
6933 |
|
break; |
6934 |
|
case 714: // --miniscope-quant |
6935 |
|
assign_quantifiers_miniscopeQuant(opts, option, true); |
6936 |
|
break; |
6937 |
|
case 715:// --no-miniscope-quant |
6938 |
|
assign_quantifiers_miniscopeQuant(opts, option, false); |
6939 |
|
break; |
6940 |
|
case 716: // --miniscope-quant-fv |
6941 |
|
assign_quantifiers_miniscopeQuantFreeVar(opts, option, true); |
6942 |
|
break; |
6943 |
|
case 717:// --no-miniscope-quant-fv |
6944 |
|
assign_quantifiers_miniscopeQuantFreeVar(opts, option, false); |
6945 |
|
break; |
6946 |
3 |
case 718: // --multi-trigger-cache |
6947 |
3 |
assign_quantifiers_multiTriggerCache(opts, option, true); |
6948 |
3 |
break; |
6949 |
|
case 719:// --no-multi-trigger-cache |
6950 |
|
assign_quantifiers_multiTriggerCache(opts, option, false); |
6951 |
|
break; |
6952 |
|
case 720: // --multi-trigger-linear |
6953 |
|
assign_quantifiers_multiTriggerLinear(opts, option, true); |
6954 |
|
break; |
6955 |
|
case 721:// --no-multi-trigger-linear |
6956 |
|
assign_quantifiers_multiTriggerLinear(opts, option, false); |
6957 |
|
break; |
6958 |
|
case 722: // --multi-trigger-priority |
6959 |
|
assign_quantifiers_multiTriggerPriority(opts, option, true); |
6960 |
|
break; |
6961 |
|
case 723:// --no-multi-trigger-priority |
6962 |
|
assign_quantifiers_multiTriggerPriority(opts, option, false); |
6963 |
|
break; |
6964 |
|
case 724: // --multi-trigger-when-single |
6965 |
|
assign_quantifiers_multiTriggerWhenSingle(opts, option, true); |
6966 |
|
break; |
6967 |
|
case 725:// --no-multi-trigger-when-single |
6968 |
|
assign_quantifiers_multiTriggerWhenSingle(opts, option, false); |
6969 |
|
break; |
6970 |
3 |
case 726: // --partial-triggers |
6971 |
3 |
assign_quantifiers_partialTriggers(opts, option, true); |
6972 |
3 |
break; |
6973 |
|
case 727:// --no-partial-triggers |
6974 |
|
assign_quantifiers_partialTriggers(opts, option, false); |
6975 |
|
break; |
6976 |
3 |
case 728: // --pool-inst |
6977 |
3 |
assign_quantifiers_poolInst(opts, option, true); |
6978 |
3 |
break; |
6979 |
|
case 729:// --no-pool-inst |
6980 |
|
assign_quantifiers_poolInst(opts, option, false); |
6981 |
|
break; |
6982 |
|
case 730: // --pre-skolem-quant |
6983 |
|
assign_quantifiers_preSkolemQuant(opts, option, true); |
6984 |
|
break; |
6985 |
|
case 731:// --no-pre-skolem-quant |
6986 |
|
assign_quantifiers_preSkolemQuant(opts, option, false); |
6987 |
|
break; |
6988 |
|
case 732: // --pre-skolem-quant-agg |
6989 |
|
assign_quantifiers_preSkolemQuantAgg(opts, option, true); |
6990 |
|
break; |
6991 |
|
case 733:// --no-pre-skolem-quant-agg |
6992 |
|
assign_quantifiers_preSkolemQuantAgg(opts, option, false); |
6993 |
|
break; |
6994 |
|
case 734: // --pre-skolem-quant-nested |
6995 |
|
assign_quantifiers_preSkolemQuantNested(opts, option, true); |
6996 |
|
break; |
6997 |
|
case 735:// --no-pre-skolem-quant-nested |
6998 |
|
assign_quantifiers_preSkolemQuantNested(opts, option, false); |
6999 |
|
break; |
7000 |
|
case 736: // --prenex-quant-user |
7001 |
|
assign_quantifiers_prenexQuantUser(opts, option, true); |
7002 |
|
break; |
7003 |
|
case 737:// --no-prenex-quant-user |
7004 |
|
assign_quantifiers_prenexQuantUser(opts, option, false); |
7005 |
|
break; |
7006 |
|
case 738: // --prenex-quant=MODE |
7007 |
|
assign_quantifiers_prenexQuant(opts, option, optionarg); |
7008 |
|
break; |
7009 |
3 |
case 739: // --purify-triggers |
7010 |
3 |
assign_quantifiers_purifyTriggers(opts, option, true); |
7011 |
3 |
break; |
7012 |
|
case 740:// --no-purify-triggers |
7013 |
|
assign_quantifiers_purifyTriggers(opts, option, false); |
7014 |
|
break; |
7015 |
|
case 741: // --qcf-all-conflict |
7016 |
|
assign_quantifiers_qcfAllConflict(opts, option, true); |
7017 |
|
break; |
7018 |
|
case 742:// --no-qcf-all-conflict |
7019 |
|
assign_quantifiers_qcfAllConflict(opts, option, false); |
7020 |
|
break; |
7021 |
|
case 743: // --qcf-eager-check-rd |
7022 |
|
assign_quantifiers_qcfEagerCheckRd(opts, option, true); |
7023 |
|
break; |
7024 |
|
case 744:// --no-qcf-eager-check-rd |
7025 |
|
assign_quantifiers_qcfEagerCheckRd(opts, option, false); |
7026 |
|
break; |
7027 |
|
case 745: // --qcf-eager-test |
7028 |
|
assign_quantifiers_qcfEagerTest(opts, option, true); |
7029 |
|
break; |
7030 |
|
case 746:// --no-qcf-eager-test |
7031 |
|
assign_quantifiers_qcfEagerTest(opts, option, false); |
7032 |
|
break; |
7033 |
|
case 747: // --qcf-nested-conflict |
7034 |
|
assign_quantifiers_qcfNestedConflict(opts, option, true); |
7035 |
|
break; |
7036 |
|
case 748:// --no-qcf-nested-conflict |
7037 |
|
assign_quantifiers_qcfNestedConflict(opts, option, false); |
7038 |
|
break; |
7039 |
|
case 749: // --qcf-skip-rd |
7040 |
|
assign_quantifiers_qcfSkipRd(opts, option, true); |
7041 |
|
break; |
7042 |
|
case 750:// --no-qcf-skip-rd |
7043 |
|
assign_quantifiers_qcfSkipRd(opts, option, false); |
7044 |
|
break; |
7045 |
6 |
case 751: // --qcf-tconstraint |
7046 |
6 |
assign_quantifiers_qcfTConstraint(opts, option, true); |
7047 |
6 |
break; |
7048 |
|
case 752:// --no-qcf-tconstraint |
7049 |
|
assign_quantifiers_qcfTConstraint(opts, option, false); |
7050 |
|
break; |
7051 |
|
case 753: // --qcf-vo-exp |
7052 |
|
assign_quantifiers_qcfVoExp(opts, option, true); |
7053 |
|
break; |
7054 |
|
case 754:// --no-qcf-vo-exp |
7055 |
|
assign_quantifiers_qcfVoExp(opts, option, false); |
7056 |
|
break; |
7057 |
|
case 755: // --quant-alpha-equiv |
7058 |
|
assign_quantifiers_quantAlphaEquiv(opts, option, true); |
7059 |
|
break; |
7060 |
|
case 756:// --no-quant-alpha-equiv |
7061 |
|
assign_quantifiers_quantAlphaEquiv(opts, option, false); |
7062 |
|
break; |
7063 |
|
case 757: // --quant-cf |
7064 |
|
assign_quantifiers_quantConflictFind(opts, option, true); |
7065 |
|
break; |
7066 |
|
case 758:// --no-quant-cf |
7067 |
|
assign_quantifiers_quantConflictFind(opts, option, false); |
7068 |
|
break; |
7069 |
|
case 759: // --quant-cf-mode=MODE |
7070 |
|
assign_quantifiers_qcfMode(opts, option, optionarg); |
7071 |
|
break; |
7072 |
|
case 760: // --quant-cf-when=MODE |
7073 |
|
assign_quantifiers_qcfWhenMode(opts, option, optionarg); |
7074 |
|
break; |
7075 |
|
case 761: // --quant-dsplit-mode=MODE |
7076 |
|
assign_quantifiers_quantDynamicSplit(opts, option, optionarg); |
7077 |
|
break; |
7078 |
|
case 762: // --quant-fun-wd |
7079 |
|
assign_quantifiers_quantFunWellDefined(opts, option, true); |
7080 |
|
break; |
7081 |
|
case 763:// --no-quant-fun-wd |
7082 |
|
assign_quantifiers_quantFunWellDefined(opts, option, false); |
7083 |
|
break; |
7084 |
6 |
case 764: // --quant-ind |
7085 |
6 |
assign_quantifiers_quantInduction(opts, option, true); |
7086 |
6 |
break; |
7087 |
|
case 765:// --no-quant-ind |
7088 |
|
assign_quantifiers_quantInduction(opts, option, false); |
7089 |
|
break; |
7090 |
|
case 766: // --quant-rep-mode=MODE |
7091 |
|
assign_quantifiers_quantRepMode(opts, option, optionarg); |
7092 |
|
break; |
7093 |
|
case 767: // --quant-split |
7094 |
|
assign_quantifiers_quantSplit(opts, option, true); |
7095 |
|
break; |
7096 |
|
case 768:// --no-quant-split |
7097 |
|
assign_quantifiers_quantSplit(opts, option, false); |
7098 |
|
break; |
7099 |
|
case 769: // --register-quant-body-terms |
7100 |
|
assign_quantifiers_registerQuantBodyTerms(opts, option, true); |
7101 |
|
break; |
7102 |
|
case 770:// --no-register-quant-body-terms |
7103 |
|
assign_quantifiers_registerQuantBodyTerms(opts, option, false); |
7104 |
|
break; |
7105 |
12 |
case 771: // --relational-triggers |
7106 |
12 |
assign_quantifiers_relationalTriggers(opts, option, true); |
7107 |
12 |
break; |
7108 |
3 |
case 772:// --no-relational-triggers |
7109 |
3 |
assign_quantifiers_relationalTriggers(opts, option, false); |
7110 |
3 |
break; |
7111 |
3 |
case 773: // --relevant-triggers |
7112 |
3 |
assign_quantifiers_relevantTriggers(opts, option, true); |
7113 |
3 |
break; |
7114 |
|
case 774:// --no-relevant-triggers |
7115 |
|
assign_quantifiers_relevantTriggers(opts, option, false); |
7116 |
|
break; |
7117 |
|
case 775: // --strict-triggers |
7118 |
|
assign_quantifiers_strictTriggers(opts, option, true); |
7119 |
|
break; |
7120 |
|
case 776:// --no-strict-triggers |
7121 |
|
assign_quantifiers_strictTriggers(opts, option, false); |
7122 |
|
break; |
7123 |
|
case 777: // --sygus |
7124 |
|
assign_quantifiers_sygus(opts, option, true); |
7125 |
|
break; |
7126 |
|
case 778:// --no-sygus |
7127 |
|
assign_quantifiers_sygus(opts, option, false); |
7128 |
|
break; |
7129 |
|
case 779: // --sygus-active-gen-cfactor=N |
7130 |
|
assign_quantifiers_sygusActiveGenEnumConsts(opts, option, optionarg); |
7131 |
|
break; |
7132 |
13 |
case 780: // --sygus-active-gen=MODE |
7133 |
13 |
assign_quantifiers_sygusActiveGenMode(opts, option, optionarg); |
7134 |
13 |
break; |
7135 |
1 |
case 781: // --sygus-add-const-grammar |
7136 |
1 |
assign_quantifiers_sygusAddConstGrammar(opts, option, true); |
7137 |
1 |
break; |
7138 |
1 |
case 782:// --no-sygus-add-const-grammar |
7139 |
1 |
assign_quantifiers_sygusAddConstGrammar(opts, option, false); |
7140 |
1 |
break; |
7141 |
3 |
case 783: // --sygus-arg-relevant |
7142 |
3 |
assign_quantifiers_sygusArgRelevant(opts, option, true); |
7143 |
3 |
break; |
7144 |
|
case 784:// --no-sygus-arg-relevant |
7145 |
|
assign_quantifiers_sygusArgRelevant(opts, option, false); |
7146 |
|
break; |
7147 |
|
case 785: // --sygus-auto-unfold |
7148 |
|
assign_quantifiers_sygusInvAutoUnfold(opts, option, true); |
7149 |
|
break; |
7150 |
|
case 786:// --no-sygus-auto-unfold |
7151 |
|
assign_quantifiers_sygusInvAutoUnfold(opts, option, false); |
7152 |
|
break; |
7153 |
1 |
case 787: // --sygus-bool-ite-return-const |
7154 |
1 |
assign_quantifiers_sygusBoolIteReturnConst(opts, option, true); |
7155 |
1 |
break; |
7156 |
|
case 788:// --no-sygus-bool-ite-return-const |
7157 |
|
assign_quantifiers_sygusBoolIteReturnConst(opts, option, false); |
7158 |
|
break; |
7159 |
5 |
case 789: // --sygus-core-connective |
7160 |
5 |
assign_quantifiers_sygusCoreConnective(opts, option, true); |
7161 |
5 |
break; |
7162 |
|
case 790:// --no-sygus-core-connective |
7163 |
|
assign_quantifiers_sygusCoreConnective(opts, option, false); |
7164 |
|
break; |
7165 |
|
case 791: // --sygus-crepair-abort |
7166 |
|
assign_quantifiers_sygusConstRepairAbort(opts, option, true); |
7167 |
|
break; |
7168 |
|
case 792:// --no-sygus-crepair-abort |
7169 |
|
assign_quantifiers_sygusConstRepairAbort(opts, option, false); |
7170 |
|
break; |
7171 |
|
case 793: // --sygus-eval-opt |
7172 |
|
assign_quantifiers_sygusEvalOpt(opts, option, true); |
7173 |
|
break; |
7174 |
|
case 794:// --no-sygus-eval-opt |
7175 |
|
assign_quantifiers_sygusEvalOpt(opts, option, false); |
7176 |
|
break; |
7177 |
|
case 795: // --sygus-eval-unfold |
7178 |
|
assign_quantifiers_sygusEvalUnfold(opts, option, true); |
7179 |
|
break; |
7180 |
|
case 796:// --no-sygus-eval-unfold |
7181 |
|
assign_quantifiers_sygusEvalUnfold(opts, option, false); |
7182 |
|
break; |
7183 |
|
case 797: // --sygus-eval-unfold-bool |
7184 |
|
assign_quantifiers_sygusEvalUnfoldBool(opts, option, true); |
7185 |
|
break; |
7186 |
|
case 798:// --no-sygus-eval-unfold-bool |
7187 |
|
assign_quantifiers_sygusEvalUnfoldBool(opts, option, false); |
7188 |
|
break; |
7189 |
|
case 799: // --sygus-expr-miner-check-timeout=N |
7190 |
|
assign_quantifiers_sygusExprMinerCheckTimeout(opts, option, optionarg); |
7191 |
|
break; |
7192 |
|
case 800: // --sygus-ext-rew |
7193 |
|
assign_quantifiers_sygusExtRew(opts, option, true); |
7194 |
|
break; |
7195 |
|
case 801:// --no-sygus-ext-rew |
7196 |
|
assign_quantifiers_sygusExtRew(opts, option, false); |
7197 |
|
break; |
7198 |
|
case 802: // --sygus-filter-sol-rev |
7199 |
|
assign_quantifiers_sygusFilterSolRevSubsume(opts, option, true); |
7200 |
|
break; |
7201 |
|
case 803:// --no-sygus-filter-sol-rev |
7202 |
|
assign_quantifiers_sygusFilterSolRevSubsume(opts, option, false); |
7203 |
|
break; |
7204 |
|
case 804: // --sygus-filter-sol=MODE |
7205 |
|
assign_quantifiers_sygusFilterSolMode(opts, option, optionarg); |
7206 |
|
break; |
7207 |
6 |
case 805: // --sygus-grammar-cons=MODE |
7208 |
6 |
assign_quantifiers_sygusGrammarConsMode(opts, option, optionarg); |
7209 |
6 |
break; |
7210 |
|
case 806: // --sygus-grammar-norm |
7211 |
|
assign_quantifiers_sygusGrammarNorm(opts, option, true); |
7212 |
|
break; |
7213 |
|
case 807:// --no-sygus-grammar-norm |
7214 |
|
assign_quantifiers_sygusGrammarNorm(opts, option, false); |
7215 |
|
break; |
7216 |
46 |
case 808: // --sygus-inference |
7217 |
46 |
assign_quantifiers_sygusInference(opts, option, true); |
7218 |
46 |
break; |
7219 |
|
case 809:// --no-sygus-inference |
7220 |
|
assign_quantifiers_sygusInference(opts, option, false); |
7221 |
|
break; |
7222 |
14 |
case 810: // --sygus-inst |
7223 |
14 |
assign_quantifiers_sygusInst(opts, option, true); |
7224 |
14 |
break; |
7225 |
|
case 811:// --no-sygus-inst |
7226 |
|
assign_quantifiers_sygusInst(opts, option, false); |
7227 |
|
break; |
7228 |
|
case 812: // --sygus-inst-mode=MODE |
7229 |
|
assign_quantifiers_sygusInstMode(opts, option, optionarg); |
7230 |
|
break; |
7231 |
|
case 813: // --sygus-inst-scope=MODE |
7232 |
|
assign_quantifiers_sygusInstScope(opts, option, optionarg); |
7233 |
|
break; |
7234 |
|
case 814: // --sygus-inst-term-sel=MODE |
7235 |
|
assign_quantifiers_sygusInstTermSel(opts, option, optionarg); |
7236 |
|
break; |
7237 |
|
case 815: // --sygus-inv-templ-when-sg |
7238 |
|
assign_quantifiers_sygusInvTemplWhenSyntax(opts, option, true); |
7239 |
|
break; |
7240 |
|
case 816:// --no-sygus-inv-templ-when-sg |
7241 |
|
assign_quantifiers_sygusInvTemplWhenSyntax(opts, option, false); |
7242 |
|
break; |
7243 |
3 |
case 817: // --sygus-inv-templ=MODE |
7244 |
3 |
assign_quantifiers_sygusInvTemplMode(opts, option, optionarg); |
7245 |
3 |
break; |
7246 |
|
case 818: // --sygus-min-grammar |
7247 |
|
assign_quantifiers_sygusMinGrammar(opts, option, true); |
7248 |
|
break; |
7249 |
|
case 819:// --no-sygus-min-grammar |
7250 |
|
assign_quantifiers_sygusMinGrammar(opts, option, false); |
7251 |
|
break; |
7252 |
|
case 820: // --sygus-pbe |
7253 |
|
assign_quantifiers_sygusUnifPbe(opts, option, true); |
7254 |
|
break; |
7255 |
6 |
case 821:// --no-sygus-pbe |
7256 |
6 |
assign_quantifiers_sygusUnifPbe(opts, option, false); |
7257 |
6 |
break; |
7258 |
|
case 822: // --sygus-pbe-multi-fair |
7259 |
|
assign_quantifiers_sygusPbeMultiFair(opts, option, true); |
7260 |
|
break; |
7261 |
|
case 823:// --no-sygus-pbe-multi-fair |
7262 |
|
assign_quantifiers_sygusPbeMultiFair(opts, option, false); |
7263 |
|
break; |
7264 |
|
case 824: // --sygus-pbe-multi-fair-diff=N |
7265 |
|
assign_quantifiers_sygusPbeMultiFairDiff(opts, option, optionarg); |
7266 |
|
break; |
7267 |
4 |
case 825: // --sygus-qe-preproc |
7268 |
4 |
assign_quantifiers_sygusQePreproc(opts, option, true); |
7269 |
4 |
break; |
7270 |
|
case 826:// --no-sygus-qe-preproc |
7271 |
|
assign_quantifiers_sygusQePreproc(opts, option, false); |
7272 |
|
break; |
7273 |
|
case 827: // --sygus-query-gen |
7274 |
|
assign_quantifiers_sygusQueryGen(opts, option, true); |
7275 |
|
break; |
7276 |
|
case 828:// --no-sygus-query-gen |
7277 |
|
assign_quantifiers_sygusQueryGen(opts, option, false); |
7278 |
|
break; |
7279 |
|
case 829: // --sygus-query-gen-check |
7280 |
|
assign_quantifiers_sygusQueryGenCheck(opts, option, true); |
7281 |
|
break; |
7282 |
|
case 830:// --no-sygus-query-gen-check |
7283 |
|
assign_quantifiers_sygusQueryGenCheck(opts, option, false); |
7284 |
|
break; |
7285 |
|
case 831: // --sygus-query-gen-dump-files=MODE |
7286 |
|
assign_quantifiers_sygusQueryGenDumpFiles(opts, option, optionarg); |
7287 |
|
break; |
7288 |
|
case 832: // --sygus-query-gen-thresh=N |
7289 |
|
assign_quantifiers_sygusQueryGenThresh(opts, option, optionarg); |
7290 |
|
break; |
7291 |
1 |
case 833: // --sygus-rec-fun |
7292 |
1 |
assign_quantifiers_sygusRecFun(opts, option, true); |
7293 |
1 |
break; |
7294 |
|
case 834:// --no-sygus-rec-fun |
7295 |
|
assign_quantifiers_sygusRecFun(opts, option, false); |
7296 |
|
break; |
7297 |
|
case 835: // --sygus-rec-fun-eval-limit=N |
7298 |
|
assign_quantifiers_sygusRecFunEvalLimit(opts, option, optionarg); |
7299 |
|
break; |
7300 |
5 |
case 836: // --sygus-repair-const |
7301 |
5 |
assign_quantifiers_sygusRepairConst(opts, option, true); |
7302 |
5 |
break; |
7303 |
3 |
case 837:// --no-sygus-repair-const |
7304 |
3 |
assign_quantifiers_sygusRepairConst(opts, option, false); |
7305 |
3 |
break; |
7306 |
|
case 838: // --sygus-repair-const-timeout=N |
7307 |
|
assign_quantifiers_sygusRepairConstTimeout(opts, option, optionarg); |
7308 |
|
break; |
7309 |
6 |
case 839: // --sygus-rr |
7310 |
6 |
assign_quantifiers_sygusRew(opts, option, true); |
7311 |
6 |
break; |
7312 |
|
case 840:// --no-sygus-rr |
7313 |
|
assign_quantifiers_sygusRew(opts, option, false); |
7314 |
|
break; |
7315 |
1 |
case 841: // --sygus-rr-synth |
7316 |
1 |
assign_quantifiers_sygusRewSynth(opts, option, true); |
7317 |
1 |
break; |
7318 |
|
case 842:// --no-sygus-rr-synth |
7319 |
|
assign_quantifiers_sygusRewSynth(opts, option, false); |
7320 |
|
break; |
7321 |
|
case 843: // --sygus-rr-synth-accel |
7322 |
|
assign_quantifiers_sygusRewSynthAccel(opts, option, true); |
7323 |
|
break; |
7324 |
|
case 844:// --no-sygus-rr-synth-accel |
7325 |
|
assign_quantifiers_sygusRewSynthAccel(opts, option, false); |
7326 |
|
break; |
7327 |
3 |
case 845: // --sygus-rr-synth-check |
7328 |
3 |
assign_quantifiers_sygusRewSynthCheck(opts, option, true); |
7329 |
3 |
break; |
7330 |
|
case 846:// --no-sygus-rr-synth-check |
7331 |
|
assign_quantifiers_sygusRewSynthCheck(opts, option, false); |
7332 |
|
break; |
7333 |
|
case 847: // --sygus-rr-synth-filter-cong |
7334 |
|
assign_quantifiers_sygusRewSynthFilterCong(opts, option, true); |
7335 |
|
break; |
7336 |
|
case 848:// --no-sygus-rr-synth-filter-cong |
7337 |
|
assign_quantifiers_sygusRewSynthFilterCong(opts, option, false); |
7338 |
|
break; |
7339 |
|
case 849: // --sygus-rr-synth-filter-match |
7340 |
|
assign_quantifiers_sygusRewSynthFilterMatch(opts, option, true); |
7341 |
|
break; |
7342 |
|
case 850:// --no-sygus-rr-synth-filter-match |
7343 |
|
assign_quantifiers_sygusRewSynthFilterMatch(opts, option, false); |
7344 |
|
break; |
7345 |
|
case 851: // --sygus-rr-synth-filter-nl |
7346 |
|
assign_quantifiers_sygusRewSynthFilterNonLinear(opts, option, true); |
7347 |
|
break; |
7348 |
|
case 852:// --no-sygus-rr-synth-filter-nl |
7349 |
|
assign_quantifiers_sygusRewSynthFilterNonLinear(opts, option, false); |
7350 |
|
break; |
7351 |
|
case 853: // --sygus-rr-synth-filter-order |
7352 |
|
assign_quantifiers_sygusRewSynthFilterOrder(opts, option, true); |
7353 |
|
break; |
7354 |
|
case 854:// --no-sygus-rr-synth-filter-order |
7355 |
|
assign_quantifiers_sygusRewSynthFilterOrder(opts, option, false); |
7356 |
|
break; |
7357 |
|
case 855: // --sygus-rr-synth-input |
7358 |
|
assign_quantifiers_sygusRewSynthInput(opts, option, true); |
7359 |
|
break; |
7360 |
|
case 856:// --no-sygus-rr-synth-input |
7361 |
|
assign_quantifiers_sygusRewSynthInput(opts, option, false); |
7362 |
|
break; |
7363 |
|
case 857: // --sygus-rr-synth-input-nvars=N |
7364 |
|
assign_quantifiers_sygusRewSynthInputNVars(opts, option, optionarg); |
7365 |
|
break; |
7366 |
|
case 858: // --sygus-rr-synth-input-use-bool |
7367 |
|
assign_quantifiers_sygusRewSynthInputUseBool(opts, option, true); |
7368 |
|
break; |
7369 |
|
case 859:// --no-sygus-rr-synth-input-use-bool |
7370 |
|
assign_quantifiers_sygusRewSynthInputUseBool(opts, option, false); |
7371 |
|
break; |
7372 |
|
case 860: // --sygus-rr-synth-rec |
7373 |
|
assign_quantifiers_sygusRewSynthRec(opts, option, true); |
7374 |
|
break; |
7375 |
|
case 861:// --no-sygus-rr-synth-rec |
7376 |
|
assign_quantifiers_sygusRewSynthRec(opts, option, false); |
7377 |
|
break; |
7378 |
|
case 862: // --sygus-rr-verify |
7379 |
|
assign_quantifiers_sygusRewVerify(opts, option, true); |
7380 |
|
break; |
7381 |
|
case 863:// --no-sygus-rr-verify |
7382 |
|
assign_quantifiers_sygusRewVerify(opts, option, false); |
7383 |
|
break; |
7384 |
7 |
case 864: // --sygus-rr-verify-abort |
7385 |
7 |
assign_quantifiers_sygusRewVerifyAbort(opts, option, true); |
7386 |
7 |
break; |
7387 |
|
case 865:// --no-sygus-rr-verify-abort |
7388 |
|
assign_quantifiers_sygusRewVerifyAbort(opts, option, false); |
7389 |
|
break; |
7390 |
|
case 866: // --sygus-sample-fp-uniform |
7391 |
|
assign_quantifiers_sygusSampleFpUniform(opts, option, true); |
7392 |
|
break; |
7393 |
|
case 867:// --no-sygus-sample-fp-uniform |
7394 |
|
assign_quantifiers_sygusSampleFpUniform(opts, option, false); |
7395 |
|
break; |
7396 |
|
case 868: // --sygus-sample-grammar |
7397 |
|
assign_quantifiers_sygusSampleGrammar(opts, option, true); |
7398 |
|
break; |
7399 |
|
case 869:// --no-sygus-sample-grammar |
7400 |
|
assign_quantifiers_sygusSampleGrammar(opts, option, false); |
7401 |
|
break; |
7402 |
7 |
case 870: // --sygus-samples=N |
7403 |
7 |
assign_quantifiers_sygusSamples(opts, option, optionarg); |
7404 |
7 |
break; |
7405 |
|
case 871: // --sygus-si-abort |
7406 |
|
assign_quantifiers_cegqiSingleInvAbort(opts, option, true); |
7407 |
|
break; |
7408 |
|
case 872:// --no-sygus-si-abort |
7409 |
|
assign_quantifiers_cegqiSingleInvAbort(opts, option, false); |
7410 |
|
break; |
7411 |
|
case 873: // --sygus-si-partial |
7412 |
|
assign_quantifiers_cegqiSingleInvPartial(opts, option, true); |
7413 |
|
break; |
7414 |
|
case 874:// --no-sygus-si-partial |
7415 |
|
assign_quantifiers_cegqiSingleInvPartial(opts, option, false); |
7416 |
|
break; |
7417 |
1 |
case 875: // --sygus-si-rcons-limit=N |
7418 |
1 |
assign_quantifiers_cegqiSingleInvReconstructLimit(opts, option, optionarg); |
7419 |
1 |
break; |
7420 |
|
case 876: // --sygus-si-rcons=MODE |
7421 |
|
assign_quantifiers_cegqiSingleInvReconstruct(opts, option, optionarg); |
7422 |
|
break; |
7423 |
|
case 877: // --sygus-si-reconstruct-const |
7424 |
|
assign_quantifiers_cegqiSingleInvReconstructConst(opts, option, true); |
7425 |
|
break; |
7426 |
|
case 878:// --no-sygus-si-reconstruct-const |
7427 |
|
assign_quantifiers_cegqiSingleInvReconstructConst(opts, option, false); |
7428 |
|
break; |
7429 |
47 |
case 879: // --sygus-si=MODE |
7430 |
47 |
assign_quantifiers_cegqiSingleInvMode(opts, option, optionarg); |
7431 |
47 |
break; |
7432 |
4 |
case 880: // --sygus-stream |
7433 |
4 |
assign_quantifiers_sygusStream(opts, option, true); |
7434 |
4 |
break; |
7435 |
|
case 881:// --no-sygus-stream |
7436 |
|
assign_quantifiers_sygusStream(opts, option, false); |
7437 |
|
break; |
7438 |
|
case 882: // --sygus-templ-embed-grammar |
7439 |
|
assign_quantifiers_sygusTemplEmbedGrammar(opts, option, true); |
7440 |
|
break; |
7441 |
|
case 883:// --no-sygus-templ-embed-grammar |
7442 |
|
assign_quantifiers_sygusTemplEmbedGrammar(opts, option, false); |
7443 |
|
break; |
7444 |
|
case 884: // --sygus-unif-cond-independent-no-repeat-sol |
7445 |
|
assign_quantifiers_sygusUnifCondIndNoRepeatSol(opts, option, true); |
7446 |
|
break; |
7447 |
|
case 885:// --no-sygus-unif-cond-independent-no-repeat-sol |
7448 |
|
assign_quantifiers_sygusUnifCondIndNoRepeatSol(opts, option, false); |
7449 |
|
break; |
7450 |
9 |
case 886: // --sygus-unif-pi=MODE |
7451 |
9 |
assign_quantifiers_sygusUnifPi(opts, option, optionarg); |
7452 |
9 |
break; |
7453 |
|
case 887: // --sygus-unif-shuffle-cond |
7454 |
|
assign_quantifiers_sygusUnifShuffleCond(opts, option, true); |
7455 |
|
break; |
7456 |
|
case 888:// --no-sygus-unif-shuffle-cond |
7457 |
|
assign_quantifiers_sygusUnifShuffleCond(opts, option, false); |
7458 |
|
break; |
7459 |
|
case 889: // --sygus-verify-inst-max-rounds=N |
7460 |
|
assign_quantifiers_sygusVerifyInstMaxRounds(opts, option, optionarg); |
7461 |
|
break; |
7462 |
|
case 890: // --term-db-cd |
7463 |
|
assign_quantifiers_termDbCd(opts, option, true); |
7464 |
|
break; |
7465 |
|
case 891:// --no-term-db-cd |
7466 |
|
assign_quantifiers_termDbCd(opts, option, false); |
7467 |
|
break; |
7468 |
|
case 892: // --term-db-mode=MODE |
7469 |
|
assign_quantifiers_termDbMode(opts, option, optionarg); |
7470 |
|
break; |
7471 |
|
case 893: // --trigger-active-sel=MODE |
7472 |
|
assign_quantifiers_triggerActiveSelMode(opts, option, optionarg); |
7473 |
|
break; |
7474 |
|
case 894: // --trigger-sel=MODE |
7475 |
|
assign_quantifiers_triggerSelMode(opts, option, optionarg); |
7476 |
|
break; |
7477 |
|
case 895: // --user-pat=MODE |
7478 |
|
assign_quantifiers_userPatternsQuant(opts, option, optionarg); |
7479 |
|
break; |
7480 |
|
case 896: // --var-elim-quant |
7481 |
|
assign_quantifiers_varElimQuant(opts, option, true); |
7482 |
|
break; |
7483 |
|
case 897:// --no-var-elim-quant |
7484 |
|
assign_quantifiers_varElimQuant(opts, option, false); |
7485 |
|
break; |
7486 |
2 |
case 898: // --var-ineq-elim-quant |
7487 |
2 |
assign_quantifiers_varIneqElimQuant(opts, option, true); |
7488 |
2 |
break; |
7489 |
|
case 899:// --no-var-ineq-elim-quant |
7490 |
|
assign_quantifiers_varIneqElimQuant(opts, option, false); |
7491 |
|
break; |
7492 |
|
case 900: // --sep-check-neg |
7493 |
|
assign_sep_sepCheckNeg(opts, option, true); |
7494 |
|
break; |
7495 |
|
case 901:// --no-sep-check-neg |
7496 |
|
assign_sep_sepCheckNeg(opts, option, false); |
7497 |
|
break; |
7498 |
|
case 902: // --sep-child-refine |
7499 |
|
assign_sep_sepChildRefine(opts, option, true); |
7500 |
|
break; |
7501 |
|
case 903:// --no-sep-child-refine |
7502 |
|
assign_sep_sepChildRefine(opts, option, false); |
7503 |
|
break; |
7504 |
|
case 904: // --sep-deq-c |
7505 |
|
assign_sep_sepDisequalC(opts, option, true); |
7506 |
|
break; |
7507 |
|
case 905:// --no-sep-deq-c |
7508 |
|
assign_sep_sepDisequalC(opts, option, false); |
7509 |
|
break; |
7510 |
|
case 906: // --sep-exp |
7511 |
|
assign_sep_sepExp(opts, option, true); |
7512 |
|
break; |
7513 |
|
case 907:// --no-sep-exp |
7514 |
|
assign_sep_sepExp(opts, option, false); |
7515 |
|
break; |
7516 |
|
case 908: // --sep-min-refine |
7517 |
|
assign_sep_sepMinimalRefine(opts, option, true); |
7518 |
|
break; |
7519 |
|
case 909:// --no-sep-min-refine |
7520 |
|
assign_sep_sepMinimalRefine(opts, option, false); |
7521 |
|
break; |
7522 |
1 |
case 910: // --sep-pre-skolem-emp |
7523 |
1 |
assign_sep_sepPreSkolemEmp(opts, option, true); |
7524 |
1 |
break; |
7525 |
|
case 911:// --no-sep-pre-skolem-emp |
7526 |
|
assign_sep_sepPreSkolemEmp(opts, option, false); |
7527 |
|
break; |
7528 |
32 |
case 912: // --sets-ext |
7529 |
32 |
assign_sets_setsExt(opts, option, true); |
7530 |
32 |
break; |
7531 |
|
case 913:// --no-sets-ext |
7532 |
|
assign_sets_setsExt(opts, option, false); |
7533 |
|
break; |
7534 |
2 |
case 914: // --sets-infer-as-lemmas |
7535 |
2 |
assign_sets_setsInferAsLemmas(opts, option, true); |
7536 |
2 |
break; |
7537 |
|
case 915:// --no-sets-infer-as-lemmas |
7538 |
|
assign_sets_setsInferAsLemmas(opts, option, false); |
7539 |
|
break; |
7540 |
|
case 916: // --sets-proxy-lemmas |
7541 |
|
assign_sets_setsProxyLemmas(opts, option, true); |
7542 |
|
break; |
7543 |
|
case 917:// --no-sets-proxy-lemmas |
7544 |
|
assign_sets_setsProxyLemmas(opts, option, false); |
7545 |
|
break; |
7546 |
4 |
case 918: // --abstract-values |
7547 |
4 |
assign_smt_abstractValues(opts, option, true); |
7548 |
4 |
break; |
7549 |
|
case 919:// --no-abstract-values |
7550 |
|
assign_smt_abstractValues(opts, option, false); |
7551 |
|
break; |
7552 |
31 |
case 920: // --ackermann |
7553 |
31 |
assign_smt_ackermann(opts, option, true); |
7554 |
31 |
break; |
7555 |
|
case 921:// --no-ackermann |
7556 |
|
assign_smt_ackermann(opts, option, false); |
7557 |
|
break; |
7558 |
7 |
case 922: // --block-models=MODE |
7559 |
7 |
assign_smt_blockModelsMode(opts, option, optionarg); |
7560 |
7 |
break; |
7561 |
78 |
case 923: // --bvand-integer-granularity=N |
7562 |
78 |
assign_smt_BVAndIntegerGranularity(opts, option, optionarg); |
7563 |
78 |
break; |
7564 |
13 |
case 924: // --check-abducts |
7565 |
13 |
assign_smt_checkAbducts(opts, option, true); |
7566 |
13 |
break; |
7567 |
|
case 925:// --no-check-abducts |
7568 |
|
assign_smt_checkAbducts(opts, option, false); |
7569 |
|
break; |
7570 |
8 |
case 926: // --check-interpols |
7571 |
8 |
assign_smt_checkInterpols(opts, option, true); |
7572 |
8 |
break; |
7573 |
|
case 927:// --no-check-interpols |
7574 |
|
assign_smt_checkInterpols(opts, option, false); |
7575 |
|
break; |
7576 |
22 |
case 928: // --check-models |
7577 |
22 |
assign_smt_checkModels(opts, option, true); |
7578 |
22 |
break; |
7579 |
85 |
case 929:// --no-check-models |
7580 |
85 |
assign_smt_checkModels(opts, option, false); |
7581 |
85 |
break; |
7582 |
1147 |
case 930: // --check-proofs |
7583 |
1147 |
assign_smt_checkProofs(opts, option, true); |
7584 |
1147 |
break; |
7585 |
13 |
case 931:// --no-check-proofs |
7586 |
13 |
assign_smt_checkProofs(opts, option, false); |
7587 |
13 |
break; |
7588 |
182 |
case 932: // --check-synth-sol |
7589 |
182 |
assign_smt_checkSynthSol(opts, option, true); |
7590 |
182 |
break; |
7591 |
6 |
case 933:// --no-check-synth-sol |
7592 |
6 |
assign_smt_checkSynthSol(opts, option, false); |
7593 |
6 |
break; |
7594 |
1137 |
case 934: // --check-unsat-cores |
7595 |
1137 |
assign_smt_checkUnsatCores(opts, option, true); |
7596 |
1137 |
break; |
7597 |
40 |
case 935:// --no-check-unsat-cores |
7598 |
40 |
assign_smt_checkUnsatCores(opts, option, false); |
7599 |
40 |
break; |
7600 |
1224 |
case 936: // --debug-check-models |
7601 |
1224 |
assign_smt_debugCheckModels(opts, option, true); |
7602 |
1224 |
break; |
7603 |
|
case 937:// --no-debug-check-models |
7604 |
|
assign_smt_debugCheckModels(opts, option, false); |
7605 |
|
break; |
7606 |
|
case 938: // --dump-to=FILE |
7607 |
|
assign_smt_dumpToFileName(opts, option, optionarg); |
7608 |
|
break; |
7609 |
3 |
case 939: // --dump=MODE |
7610 |
3 |
assign_smt_dumpModeString(opts, option, optionarg); |
7611 |
2 |
break; |
7612 |
|
case 940: // --early-ite-removal |
7613 |
|
assign_smt_earlyIteRemoval(opts, option, true); |
7614 |
|
break; |
7615 |
|
case 941:// --no-early-ite-removal |
7616 |
|
assign_smt_earlyIteRemoval(opts, option, false); |
7617 |
|
break; |
7618 |
|
case 942: // --expand-definitions |
7619 |
|
assign_smt_expandDefinitions(opts, option, true); |
7620 |
|
break; |
7621 |
|
case 943:// --no-expand-definitions |
7622 |
|
assign_smt_expandDefinitions(opts, option, false); |
7623 |
|
break; |
7624 |
17 |
case 944: // --ext-rew-prep |
7625 |
17 |
assign_smt_extRewPrep(opts, option, true); |
7626 |
17 |
break; |
7627 |
|
case 945:// --no-ext-rew-prep |
7628 |
|
assign_smt_extRewPrep(opts, option, false); |
7629 |
|
break; |
7630 |
7 |
case 946: // --ext-rew-prep-agg |
7631 |
7 |
assign_smt_extRewPrepAgg(opts, option, true); |
7632 |
7 |
break; |
7633 |
|
case 947:// --no-ext-rew-prep-agg |
7634 |
|
assign_smt_extRewPrepAgg(opts, option, false); |
7635 |
|
break; |
7636 |
2 |
case 948: // --foreign-theory-rewrite |
7637 |
2 |
assign_smt_foreignTheoryRewrite(opts, option, true); |
7638 |
2 |
break; |
7639 |
|
case 949:// --no-foreign-theory-rewrite |
7640 |
|
assign_smt_foreignTheoryRewrite(opts, option, false); |
7641 |
|
break; |
7642 |
68 |
case 950: // --iand-mode=mode |
7643 |
68 |
assign_smt_iandMode(opts, option, optionarg); |
7644 |
68 |
break; |
7645 |
|
case 951: // --interactive-mode |
7646 |
|
assign_smt_interactiveMode(opts, option, true); |
7647 |
|
break; |
7648 |
|
case 952:// --no-interactive-mode |
7649 |
|
assign_smt_interactiveMode(opts, option, false); |
7650 |
|
break; |
7651 |
|
case 953: // --ite-simp |
7652 |
|
assign_smt_doITESimp(opts, option, true); |
7653 |
|
break; |
7654 |
|
case 954:// --no-ite-simp |
7655 |
|
assign_smt_doITESimp(opts, option, false); |
7656 |
|
break; |
7657 |
2 |
case 955: // --learned-rewrite |
7658 |
2 |
assign_smt_learnedRewrite(opts, option, true); |
7659 |
2 |
break; |
7660 |
|
case 956:// --no-learned-rewrite |
7661 |
|
assign_smt_learnedRewrite(opts, option, false); |
7662 |
|
break; |
7663 |
3 |
case 957: // --minimal-unsat-cores |
7664 |
3 |
assign_smt_minimalUnsatCores(opts, option, true); |
7665 |
3 |
break; |
7666 |
|
case 958:// --no-minimal-unsat-cores |
7667 |
|
assign_smt_minimalUnsatCores(opts, option, false); |
7668 |
|
break; |
7669 |
6 |
case 959: // --model-cores=MODE |
7670 |
6 |
assign_smt_modelCoresMode(opts, option, optionarg); |
7671 |
6 |
break; |
7672 |
1 |
case 960: // --model-u-print=MODE |
7673 |
|
case 961: // --model-uninterp-print |
7674 |
1 |
assign_smt_modelUninterpPrint(opts, option, optionarg); |
7675 |
1 |
break; |
7676 |
1 |
case 962: // --model-witness-value |
7677 |
1 |
assign_smt_modelWitnessValue(opts, option, true); |
7678 |
1 |
break; |
7679 |
|
case 963:// --no-model-witness-value |
7680 |
|
assign_smt_modelWitnessValue(opts, option, false); |
7681 |
|
break; |
7682 |
|
case 964: // --on-repeat-ite-simp |
7683 |
|
assign_smt_doITESimpOnRepeat(opts, option, true); |
7684 |
|
break; |
7685 |
|
case 965:// --no-on-repeat-ite-simp |
7686 |
|
assign_smt_doITESimpOnRepeat(opts, option, false); |
7687 |
|
break; |
7688 |
12 |
case 966: // --produce-abducts |
7689 |
12 |
assign_smt_produceAbducts(opts, option, true); |
7690 |
12 |
break; |
7691 |
|
case 967:// --no-produce-abducts |
7692 |
|
assign_smt_produceAbducts(opts, option, false); |
7693 |
|
break; |
7694 |
|
case 968: // --produce-assertions |
7695 |
|
assign_smt_produceAssertions(opts, option, true); |
7696 |
|
break; |
7697 |
|
case 969:// --no-produce-assertions |
7698 |
|
assign_smt_produceAssertions(opts, option, false); |
7699 |
|
break; |
7700 |
|
case 970: // --produce-assignments |
7701 |
|
assign_smt_produceAssignments(opts, option, true); |
7702 |
|
break; |
7703 |
|
case 971:// --no-produce-assignments |
7704 |
|
assign_smt_produceAssignments(opts, option, false); |
7705 |
|
break; |
7706 |
8 |
case 972: // --produce-interpols=MODE |
7707 |
8 |
assign_smt_produceInterpols(opts, option, optionarg); |
7708 |
8 |
break; |
7709 |
37 |
case 'm': |
7710 |
|
case 973: // --produce-models |
7711 |
37 |
assign_smt_produceModels(opts, option, true); |
7712 |
37 |
break; |
7713 |
|
case 974:// --no-produce-models |
7714 |
|
assign_smt_produceModels(opts, option, false); |
7715 |
|
break; |
7716 |
7 |
case 975: // --produce-proofs |
7717 |
7 |
assign_smt_produceProofs(opts, option, true); |
7718 |
7 |
break; |
7719 |
18 |
case 976:// --no-produce-proofs |
7720 |
18 |
assign_smt_produceProofs(opts, option, false); |
7721 |
18 |
break; |
7722 |
|
case 977: // --produce-unsat-assumptions |
7723 |
|
assign_smt_unsatAssumptions(opts, option, true); |
7724 |
|
break; |
7725 |
|
case 978:// --no-produce-unsat-assumptions |
7726 |
|
assign_smt_unsatAssumptions(opts, option, false); |
7727 |
|
break; |
7728 |
4 |
case 979: // --produce-unsat-cores |
7729 |
4 |
assign_smt_unsatCores(opts, option, true); |
7730 |
4 |
break; |
7731 |
2 |
case 980:// --no-produce-unsat-cores |
7732 |
2 |
assign_smt_unsatCores(opts, option, false); |
7733 |
2 |
break; |
7734 |
2 |
case 981: // --repeat-simp |
7735 |
2 |
assign_smt_repeatSimp(opts, option, true); |
7736 |
2 |
break; |
7737 |
|
case 982:// --no-repeat-simp |
7738 |
|
assign_smt_repeatSimp(opts, option, false); |
7739 |
|
break; |
7740 |
|
case 983: // --simp-ite-compress |
7741 |
|
assign_smt_compressItes(opts, option, true); |
7742 |
|
break; |
7743 |
|
case 984:// --no-simp-ite-compress |
7744 |
|
assign_smt_compressItes(opts, option, false); |
7745 |
|
break; |
7746 |
|
case 985: // --simp-ite-hunt-zombies=N |
7747 |
|
assign_smt_zombieHuntThreshold(opts, option, optionarg); |
7748 |
|
break; |
7749 |
|
case 986: // --simp-with-care |
7750 |
|
assign_smt_simplifyWithCareEnabled(opts, option, true); |
7751 |
|
break; |
7752 |
|
case 987:// --no-simp-with-care |
7753 |
|
assign_smt_simplifyWithCareEnabled(opts, option, false); |
7754 |
|
break; |
7755 |
31 |
case 988: // --simplification=MODE |
7756 |
|
case 989: // --simplification-mode |
7757 |
31 |
assign_smt_simplificationMode(opts, option, optionarg); |
7758 |
31 |
break; |
7759 |
135 |
case 990: // --solve-bv-as-int=MODE |
7760 |
135 |
assign_smt_solveBVAsInt(opts, option, optionarg); |
7761 |
135 |
break; |
7762 |
11 |
case 991: // --solve-int-as-bv=N |
7763 |
11 |
assign_smt_solveIntAsBV(opts, option, optionarg); |
7764 |
11 |
break; |
7765 |
9 |
case 992: // --solve-real-as-int |
7766 |
9 |
assign_smt_solveRealAsInt(opts, option, true); |
7767 |
9 |
break; |
7768 |
|
case 993:// --no-solve-real-as-int |
7769 |
|
assign_smt_solveRealAsInt(opts, option, false); |
7770 |
|
break; |
7771 |
20 |
case 994: // --sort-inference |
7772 |
20 |
assign_smt_sortInference(opts, option, true); |
7773 |
20 |
break; |
7774 |
|
case 995:// --no-sort-inference |
7775 |
|
assign_smt_sortInference(opts, option, false); |
7776 |
|
break; |
7777 |
|
case 996: // --static-learning |
7778 |
|
assign_smt_doStaticLearning(opts, option, true); |
7779 |
|
break; |
7780 |
|
case 997:// --no-static-learning |
7781 |
|
assign_smt_doStaticLearning(opts, option, false); |
7782 |
|
break; |
7783 |
182 |
case 998: // --sygus-out=MODE |
7784 |
182 |
assign_smt_sygusOut(opts, option, optionarg); |
7785 |
182 |
break; |
7786 |
|
case 999: // --sygus-print-callbacks |
7787 |
|
assign_smt_sygusPrintCallbacks(opts, option, true); |
7788 |
|
break; |
7789 |
|
case 1000:// --no-sygus-print-callbacks |
7790 |
|
assign_smt_sygusPrintCallbacks(opts, option, false); |
7791 |
|
break; |
7792 |
104 |
case 1001: // --unconstrained-simp |
7793 |
104 |
assign_smt_unconstrainedSimp(opts, option, true); |
7794 |
104 |
break; |
7795 |
3 |
case 1002:// --no-unconstrained-simp |
7796 |
3 |
assign_smt_unconstrainedSimp(opts, option, false); |
7797 |
3 |
break; |
7798 |
2 |
case 1003: // --unsat-cores-mode=MODE |
7799 |
2 |
assign_smt_unsatCoresMode(opts, option, optionarg); |
7800 |
2 |
break; |
7801 |
25 |
case 1004: // --re-elim |
7802 |
25 |
assign_strings_regExpElim(opts, option, true); |
7803 |
25 |
break; |
7804 |
10 |
case 1005:// --no-re-elim |
7805 |
10 |
assign_strings_regExpElim(opts, option, false); |
7806 |
10 |
break; |
7807 |
12 |
case 1006: // --re-elim-agg |
7808 |
12 |
assign_strings_regExpElimAgg(opts, option, true); |
7809 |
12 |
break; |
7810 |
|
case 1007:// --no-re-elim-agg |
7811 |
|
assign_strings_regExpElimAgg(opts, option, false); |
7812 |
|
break; |
7813 |
|
case 1008: // --re-inter-mode=MODE |
7814 |
|
assign_strings_stringRegExpInterMode(opts, option, optionarg); |
7815 |
|
break; |
7816 |
|
case 1009: // --strings-check-entail-len |
7817 |
|
assign_strings_stringCheckEntailLen(opts, option, true); |
7818 |
|
break; |
7819 |
|
case 1010:// --no-strings-check-entail-len |
7820 |
|
assign_strings_stringCheckEntailLen(opts, option, false); |
7821 |
|
break; |
7822 |
2 |
case 1011: // --strings-eager |
7823 |
2 |
assign_strings_stringEager(opts, option, true); |
7824 |
2 |
break; |
7825 |
|
case 1012:// --no-strings-eager |
7826 |
|
assign_strings_stringEager(opts, option, false); |
7827 |
|
break; |
7828 |
|
case 1013: // --strings-eager-eval |
7829 |
|
assign_strings_stringEagerEval(opts, option, true); |
7830 |
|
break; |
7831 |
|
case 1014:// --no-strings-eager-eval |
7832 |
|
assign_strings_stringEagerEval(opts, option, false); |
7833 |
|
break; |
7834 |
|
case 1015: // --strings-eager-len |
7835 |
|
assign_strings_stringEagerLen(opts, option, true); |
7836 |
|
break; |
7837 |
|
case 1016:// --no-strings-eager-len |
7838 |
|
assign_strings_stringEagerLen(opts, option, false); |
7839 |
|
break; |
7840 |
328 |
case 1017: // --strings-exp |
7841 |
328 |
assign_strings_stringExp(opts, option, true); |
7842 |
328 |
break; |
7843 |
|
case 1018:// --no-strings-exp |
7844 |
|
assign_strings_stringExp(opts, option, false); |
7845 |
|
break; |
7846 |
|
case 1019: // --strings-ff |
7847 |
|
assign_strings_stringFlatForms(opts, option, true); |
7848 |
|
break; |
7849 |
|
case 1020:// --no-strings-ff |
7850 |
|
assign_strings_stringFlatForms(opts, option, false); |
7851 |
|
break; |
7852 |
25 |
case 1021: // --strings-fmf |
7853 |
25 |
assign_strings_stringFMF(opts, option, true); |
7854 |
25 |
break; |
7855 |
|
case 1022:// --no-strings-fmf |
7856 |
|
assign_strings_stringFMF(opts, option, false); |
7857 |
|
break; |
7858 |
|
case 1023: // --strings-guess-model |
7859 |
|
assign_strings_stringGuessModel(opts, option, true); |
7860 |
|
break; |
7861 |
|
case 1024:// --no-strings-guess-model |
7862 |
|
assign_strings_stringGuessModel(opts, option, false); |
7863 |
|
break; |
7864 |
|
case 1025: // --strings-infer-as-lemmas |
7865 |
|
assign_strings_stringInferAsLemmas(opts, option, true); |
7866 |
|
break; |
7867 |
|
case 1026:// --no-strings-infer-as-lemmas |
7868 |
|
assign_strings_stringInferAsLemmas(opts, option, false); |
7869 |
|
break; |
7870 |
|
case 1027: // --strings-infer-sym |
7871 |
|
assign_strings_stringInferSym(opts, option, true); |
7872 |
|
break; |
7873 |
|
case 1028:// --no-strings-infer-sym |
7874 |
|
assign_strings_stringInferSym(opts, option, false); |
7875 |
|
break; |
7876 |
|
case 1029: // --strings-lazy-pp |
7877 |
|
assign_strings_stringLazyPreproc(opts, option, true); |
7878 |
|
break; |
7879 |
21 |
case 1030:// --no-strings-lazy-pp |
7880 |
21 |
assign_strings_stringLazyPreproc(opts, option, false); |
7881 |
21 |
break; |
7882 |
|
case 1031: // --strings-len-norm |
7883 |
|
assign_strings_stringLenNorm(opts, option, true); |
7884 |
|
break; |
7885 |
|
case 1032:// --no-strings-len-norm |
7886 |
|
assign_strings_stringLenNorm(opts, option, false); |
7887 |
|
break; |
7888 |
|
case 1033: // --strings-lprop-csp |
7889 |
|
assign_strings_stringLenPropCsp(opts, option, true); |
7890 |
|
break; |
7891 |
|
case 1034:// --no-strings-lprop-csp |
7892 |
|
assign_strings_stringLenPropCsp(opts, option, false); |
7893 |
|
break; |
7894 |
|
case 1035: // --strings-min-prefix-explain |
7895 |
|
assign_strings_stringMinPrefixExplain(opts, option, true); |
7896 |
|
break; |
7897 |
|
case 1036:// --no-strings-min-prefix-explain |
7898 |
|
assign_strings_stringMinPrefixExplain(opts, option, false); |
7899 |
|
break; |
7900 |
|
case 1037: // --strings-process-loop-mode=MODE |
7901 |
|
assign_strings_stringProcessLoopMode(opts, option, optionarg); |
7902 |
|
break; |
7903 |
|
case 1038: // --strings-rexplain-lemmas |
7904 |
|
assign_strings_stringRExplainLemmas(opts, option, true); |
7905 |
|
break; |
7906 |
|
case 1039:// --no-strings-rexplain-lemmas |
7907 |
|
assign_strings_stringRExplainLemmas(opts, option, false); |
7908 |
|
break; |
7909 |
|
case 1040: // --strings-unified-vspt |
7910 |
|
assign_strings_stringUnifiedVSpt(opts, option, true); |
7911 |
|
break; |
7912 |
|
case 1041:// --no-strings-unified-vspt |
7913 |
|
assign_strings_stringUnifiedVSpt(opts, option, false); |
7914 |
|
break; |
7915 |
|
case 1042: // --assign-function-values |
7916 |
|
assign_theory_assignFunctionValues(opts, option, true); |
7917 |
|
break; |
7918 |
|
case 1043:// --no-assign-function-values |
7919 |
|
assign_theory_assignFunctionValues(opts, option, false); |
7920 |
|
break; |
7921 |
|
case 1044: // --condense-function-values |
7922 |
|
assign_theory_condenseFunctionValues(opts, option, true); |
7923 |
|
break; |
7924 |
|
case 1045:// --no-condense-function-values |
7925 |
|
assign_theory_condenseFunctionValues(opts, option, false); |
7926 |
|
break; |
7927 |
56 |
case 1046: // --ee-mode=MODE |
7928 |
56 |
assign_theory_eeMode(opts, option, optionarg); |
7929 |
56 |
break; |
7930 |
|
case 1047: // --relevance-filter |
7931 |
|
assign_theory_relevanceFilter(opts, option, true); |
7932 |
|
break; |
7933 |
|
case 1048:// --no-relevance-filter |
7934 |
|
assign_theory_relevanceFilter(opts, option, false); |
7935 |
|
break; |
7936 |
|
case 1049: // --tc-mode=MODE |
7937 |
|
assign_theory_tcMode(opts, option, optionarg); |
7938 |
|
break; |
7939 |
5 |
case 1050: // --theoryof-mode=MODE |
7940 |
5 |
assign_theory_theoryOfMode(opts, option, optionarg); |
7941 |
5 |
break; |
7942 |
|
case 1051: // --symmetry-breaker |
7943 |
|
case 1052: // --uf-symmetry-breaker |
7944 |
|
assign_uf_ufSymmetryBreaker(opts, option, true); |
7945 |
|
break; |
7946 |
|
case 1053:// --no-symmetry-breaker |
7947 |
|
case 1054:// --no-uf-symmetry-breaker |
7948 |
|
assign_uf_ufSymmetryBreaker(opts, option, false); |
7949 |
|
break; |
7950 |
|
case 1055: // --uf-ho |
7951 |
|
assign_uf_ufHo(opts, option, true); |
7952 |
|
break; |
7953 |
|
case 1056:// --no-uf-ho |
7954 |
|
assign_uf_ufHo(opts, option, false); |
7955 |
|
break; |
7956 |
|
case 1057: // --uf-ho-ext |
7957 |
|
assign_uf_ufHoExt(opts, option, true); |
7958 |
|
break; |
7959 |
|
case 1058:// --no-uf-ho-ext |
7960 |
|
assign_uf_ufHoExt(opts, option, false); |
7961 |
|
break; |
7962 |
|
case 1059: // --uf-ss-abort-card=N |
7963 |
|
assign_uf_ufssAbortCardinality(opts, option, optionarg); |
7964 |
|
break; |
7965 |
|
case 1060: // --uf-ss-fair |
7966 |
|
assign_uf_ufssFairness(opts, option, true); |
7967 |
|
break; |
7968 |
|
case 1061:// --no-uf-ss-fair |
7969 |
|
assign_uf_ufssFairness(opts, option, false); |
7970 |
|
break; |
7971 |
4 |
case 1062: // --uf-ss-fair-monotone |
7972 |
4 |
assign_uf_ufssFairnessMonotone(opts, option, true); |
7973 |
4 |
break; |
7974 |
|
case 1063:// --no-uf-ss-fair-monotone |
7975 |
|
assign_uf_ufssFairnessMonotone(opts, option, false); |
7976 |
|
break; |
7977 |
|
case 1064: // --uf-ss-totality-limited=N |
7978 |
|
assign_uf_ufssTotalityLimited(opts, option, optionarg); |
7979 |
|
break; |
7980 |
|
case 1065: // --uf-ss-totality-sym-break |
7981 |
|
assign_uf_ufssTotalitySymBreak(opts, option, true); |
7982 |
|
break; |
7983 |
|
case 1066:// --no-uf-ss-totality-sym-break |
7984 |
|
assign_uf_ufssTotalitySymBreak(opts, option, false); |
7985 |
|
break; |
7986 |
7 |
case 1067: // --uf-ss=MODE |
7987 |
7 |
assign_uf_ufssMode(opts, option, optionarg); |
7988 |
7 |
break; |
7989 |
|
|
7990 |
|
case ':' : |
7991 |
|
// This can be a long or short option, and the way to get at the |
7992 |
|
// name of it is different. |
7993 |
|
throw OptionException(std::string("option `") + option |
7994 |
|
+ "' missing its required argument"); |
7995 |
|
|
7996 |
|
case '?': |
7997 |
|
default: |
7998 |
|
throw OptionException(std::string("can't understand option `") + option |
7999 |
|
+ "'" + suggestCommandLineOptions(option)); |
8000 |
|
} |
8001 |
15464 |
} |
8002 |
|
// clang-format on |
8003 |
|
|
8004 |
18579 |
Debug("options") << "got " << nonoptions.size() |
8005 |
6193 |
<< " non-option arguments." << std::endl; |
8006 |
6193 |
} |
8007 |
|
|
8008 |
|
/** |
8009 |
|
* Parse argc/argv and put the result into a cvc5::Options. |
8010 |
|
* The return value is what's left of the command line (that is, the |
8011 |
|
* non-option arguments). |
8012 |
|
* |
8013 |
|
* Throws OptionException on failures. |
8014 |
|
*/ |
8015 |
8796 |
std::vector<std::string> parse( |
8016 |
|
Options & opts, int argc, char* argv[], std::string& binaryName) |
8017 |
|
{ |
8018 |
8796 |
Assert(argv != nullptr); |
8019 |
|
|
8020 |
8796 |
Options* cur = &Options::current(); |
8021 |
14990 |
OptionsGuard guard(&cur, &opts); |
8022 |
|
|
8023 |
8796 |
const char *progName = argv[0]; |
8024 |
|
|
8025 |
|
// To debug options parsing, you may prefer to simply uncomment this |
8026 |
|
// and recompile. Debug flags have not been parsed yet so these have |
8027 |
|
// not been set. |
8028 |
|
//DebugChannel.on("options"); |
8029 |
|
|
8030 |
8796 |
Debug("options") << "options::parse == " << &opts << std::endl; |
8031 |
8796 |
Debug("options") << "argv == " << argv << std::endl; |
8032 |
|
|
8033 |
|
// Find the base name of the program. |
8034 |
8796 |
const char *x = strrchr(progName, '/'); |
8035 |
8796 |
if(x != nullptr) { |
8036 |
8732 |
progName = x + 1; |
8037 |
|
} |
8038 |
8796 |
binaryName = std::string(progName); |
8039 |
|
|
8040 |
8796 |
std::vector<std::string> nonoptions; |
8041 |
8796 |
parseInternal(opts, argc, argv, nonoptions); |
8042 |
6193 |
if (Debug.isOn("options")){ |
8043 |
|
for(std::vector<std::string>::const_iterator i = nonoptions.begin(), |
8044 |
|
iend = nonoptions.end(); i != iend; ++i){ |
8045 |
|
Debug("options") << "nonoptions " << *i << std::endl; |
8046 |
|
} |
8047 |
|
} |
8048 |
|
|
8049 |
12386 |
return nonoptions; |
8050 |
|
} |
8051 |
|
|
8052 |
59 |
std::string get(const Options& options, const std::string& name) |
8053 |
|
{ |
8054 |
59 |
Trace("options") << "Options::getOption(" << name << ")" << std::endl; |
8055 |
59 |
if (name == "approx-branch-depth") { |
8056 |
|
return std::to_string(options.arith.maxApproxDepth); |
8057 |
|
} |
8058 |
59 |
if (name == "arith-brab") { |
8059 |
|
return options.arith.brabTest ? "true" : "false"; |
8060 |
|
} |
8061 |
59 |
if (name == "arith-cong-man") { |
8062 |
|
return options.arith.arithCongMan ? "true" : "false"; |
8063 |
|
} |
8064 |
59 |
if (name == "arith-eq-solver") { |
8065 |
|
return options.arith.arithEqSolver ? "true" : "false"; |
8066 |
|
} |
8067 |
59 |
if (name == "arith-no-partial-fun") { |
8068 |
|
return options.arith.arithNoPartialFun ? "true" : "false"; |
8069 |
|
} |
8070 |
59 |
if (name == "arith-prop-clauses") { |
8071 |
|
return std::to_string(options.arith.arithPropAsLemmaLength); |
8072 |
|
} |
8073 |
59 |
if (name == "arith-prop") { |
8074 |
|
std::stringstream ss; |
8075 |
|
ss << options.arith.arithPropagationMode; |
8076 |
|
return ss.str(); |
8077 |
|
} |
8078 |
59 |
if (name == "arith-rewrite-equalities") { |
8079 |
|
return options.arith.arithRewriteEq ? "true" : "false"; |
8080 |
|
} |
8081 |
59 |
if (name == "collect-pivot-stats") { |
8082 |
|
return options.arith.collectPivots ? "true" : "false"; |
8083 |
|
} |
8084 |
59 |
if (name == "cut-all-bounded") { |
8085 |
|
return options.arith.doCutAllBounded ? "true" : "false"; |
8086 |
|
} |
8087 |
59 |
if (name == "dio-decomps") { |
8088 |
|
return options.arith.exportDioDecompositions ? "true" : "false"; |
8089 |
|
} |
8090 |
59 |
if (name == "dio-repeat") { |
8091 |
|
return options.arith.dioRepeat ? "true" : "false"; |
8092 |
|
} |
8093 |
59 |
if (name == "dio-solver") { |
8094 |
|
return options.arith.arithDioSolver ? "true" : "false"; |
8095 |
|
} |
8096 |
59 |
if (name == "dio-turns") { |
8097 |
|
return std::to_string(options.arith.dioSolverTurns); |
8098 |
|
} |
8099 |
59 |
if (name == "error-selection-rule") { |
8100 |
|
std::stringstream ss; |
8101 |
|
ss << options.arith.arithErrorSelectionRule; |
8102 |
|
return ss.str(); |
8103 |
|
} |
8104 |
59 |
if (name == "fc-penalties") { |
8105 |
|
return options.arith.havePenalties ? "true" : "false"; |
8106 |
|
} |
8107 |
59 |
if (name == "heuristic-pivots") { |
8108 |
|
return std::to_string(options.arith.arithHeuristicPivots); |
8109 |
|
} |
8110 |
59 |
if (name == "lemmas-on-replay-failure") { |
8111 |
|
return options.arith.replayFailureLemma ? "true" : "false"; |
8112 |
|
} |
8113 |
59 |
if (name == "maxCutsInContext") { |
8114 |
|
return std::to_string(options.arith.maxCutsInContext); |
8115 |
|
} |
8116 |
59 |
if (name == "miplib-trick") { |
8117 |
|
return options.arith.arithMLTrick ? "true" : "false"; |
8118 |
|
} |
8119 |
59 |
if (name == "miplib-trick-subs") { |
8120 |
|
return std::to_string(options.arith.arithMLTrickSubstitutions); |
8121 |
|
} |
8122 |
59 |
if (name == "new-prop") { |
8123 |
|
return options.arith.newProp ? "true" : "false"; |
8124 |
|
} |
8125 |
59 |
if (name == "nl-cad") { |
8126 |
|
return options.arith.nlCad ? "true" : "false"; |
8127 |
|
} |
8128 |
59 |
if (name == "nl-cad-initial") { |
8129 |
|
return options.arith.nlCadUseInitial ? "true" : "false"; |
8130 |
|
} |
8131 |
59 |
if (name == "nl-cad-lift") { |
8132 |
|
std::stringstream ss; |
8133 |
|
ss << options.arith.nlCadLifting; |
8134 |
|
return ss.str(); |
8135 |
|
} |
8136 |
59 |
if (name == "nl-cad-proj") { |
8137 |
|
std::stringstream ss; |
8138 |
|
ss << options.arith.nlCadProjection; |
8139 |
|
return ss.str(); |
8140 |
|
} |
8141 |
59 |
if (name == "nl-ext-ent-conf") { |
8142 |
|
return options.arith.nlExtEntailConflicts ? "true" : "false"; |
8143 |
|
} |
8144 |
59 |
if (name == "nl-ext-factor") { |
8145 |
|
return options.arith.nlExtFactor ? "true" : "false"; |
8146 |
|
} |
8147 |
59 |
if (name == "nl-ext-inc-prec") { |
8148 |
|
return options.arith.nlExtIncPrecision ? "true" : "false"; |
8149 |
|
} |
8150 |
59 |
if (name == "nl-ext-purify") { |
8151 |
|
return options.arith.nlExtPurify ? "true" : "false"; |
8152 |
|
} |
8153 |
59 |
if (name == "nl-ext-rbound") { |
8154 |
|
return options.arith.nlExtResBound ? "true" : "false"; |
8155 |
|
} |
8156 |
59 |
if (name == "nl-ext-rewrite") { |
8157 |
|
return options.arith.nlExtRewrites ? "true" : "false"; |
8158 |
|
} |
8159 |
59 |
if (name == "nl-ext-split-zero") { |
8160 |
|
return options.arith.nlExtSplitZero ? "true" : "false"; |
8161 |
|
} |
8162 |
59 |
if (name == "nl-ext-tf-taylor-deg") { |
8163 |
|
return std::to_string(options.arith.nlExtTfTaylorDegree); |
8164 |
|
} |
8165 |
59 |
if (name == "nl-ext-tf-tplanes") { |
8166 |
|
return options.arith.nlExtTfTangentPlanes ? "true" : "false"; |
8167 |
|
} |
8168 |
59 |
if (name == "nl-ext-tplanes") { |
8169 |
|
return options.arith.nlExtTangentPlanes ? "true" : "false"; |
8170 |
|
} |
8171 |
59 |
if (name == "nl-ext-tplanes-interleave") { |
8172 |
|
return options.arith.nlExtTangentPlanesInterleave ? "true" : "false"; |
8173 |
|
} |
8174 |
59 |
if (name == "nl-ext") { |
8175 |
|
std::stringstream ss; |
8176 |
|
ss << options.arith.nlExt; |
8177 |
|
return ss.str(); |
8178 |
|
} |
8179 |
59 |
if (name == "nl-icp") { |
8180 |
|
return options.arith.nlICP ? "true" : "false"; |
8181 |
|
} |
8182 |
59 |
if (name == "nl-rlv") { |
8183 |
|
std::stringstream ss; |
8184 |
|
ss << options.arith.nlRlvMode; |
8185 |
|
return ss.str(); |
8186 |
|
} |
8187 |
59 |
if (name == "pb-rewrites") { |
8188 |
|
return options.arith.pbRewrites ? "true" : "false"; |
8189 |
|
} |
8190 |
59 |
if (name == "pivot-threshold") { |
8191 |
|
return std::to_string(options.arith.arithPivotThreshold); |
8192 |
|
} |
8193 |
59 |
if (name == "pp-assert-max-sub-size") { |
8194 |
|
return std::to_string(options.arith.ppAssertMaxSubSize); |
8195 |
|
} |
8196 |
59 |
if (name == "prop-row-length") { |
8197 |
|
return std::to_string(options.arith.arithPropagateMaxLength); |
8198 |
|
} |
8199 |
59 |
if (name == "replay-early-close-depth") { |
8200 |
|
return std::to_string(options.arith.replayEarlyCloseDepths); |
8201 |
|
} |
8202 |
59 |
if (name == "replay-failure-penalty") { |
8203 |
|
return std::to_string(options.arith.replayFailurePenalty); |
8204 |
|
} |
8205 |
59 |
if (name == "replay-lemma-reject-cut") { |
8206 |
|
return std::to_string(options.arith.lemmaRejectCutSize); |
8207 |
|
} |
8208 |
59 |
if (name == "replay-num-err-penalty") { |
8209 |
|
return std::to_string(options.arith.replayNumericFailurePenalty); |
8210 |
|
} |
8211 |
59 |
if (name == "replay-reject-cut") { |
8212 |
|
return std::to_string(options.arith.replayRejectCutSize); |
8213 |
|
} |
8214 |
59 |
if (name == "replay-soi-major-threshold-pen") { |
8215 |
|
return std::to_string(options.arith.soiApproxMajorFailurePen); |
8216 |
|
} |
8217 |
59 |
if (name == "replay-soi-major-threshold") { |
8218 |
|
return std::to_string(options.arith.soiApproxMajorFailure); |
8219 |
|
} |
8220 |
59 |
if (name == "replay-soi-minor-threshold-pen") { |
8221 |
|
return std::to_string(options.arith.soiApproxMinorFailurePen); |
8222 |
|
} |
8223 |
59 |
if (name == "replay-soi-minor-threshold") { |
8224 |
|
return std::to_string(options.arith.soiApproxMinorFailure); |
8225 |
|
} |
8226 |
59 |
if (name == "restrict-pivots") { |
8227 |
|
return options.arith.restrictedPivots ? "true" : "false"; |
8228 |
|
} |
8229 |
59 |
if (name == "revert-arith-models-on-unsat") { |
8230 |
|
return options.arith.revertArithModels ? "true" : "false"; |
8231 |
|
} |
8232 |
59 |
if (name == "rr-turns") { |
8233 |
|
return std::to_string(options.arith.rrTurns); |
8234 |
|
} |
8235 |
59 |
if (name == "se-solve-int") { |
8236 |
|
return options.arith.trySolveIntStandardEffort ? "true" : "false"; |
8237 |
|
} |
8238 |
59 |
if (name == "simplex-check-period") { |
8239 |
|
return std::to_string(options.arith.arithSimplexCheckPeriod); |
8240 |
|
} |
8241 |
59 |
if (name == "soi-qe") { |
8242 |
|
return options.arith.soiQuickExplain ? "true" : "false"; |
8243 |
|
} |
8244 |
59 |
if (name == "standard-effort-variable-order-pivots") { |
8245 |
|
return std::to_string(options.arith.arithStandardCheckVarOrderPivots); |
8246 |
|
} |
8247 |
59 |
if (name == "unate-lemmas") { |
8248 |
|
std::stringstream ss; |
8249 |
|
ss << options.arith.arithUnateLemmaMode; |
8250 |
|
return ss.str(); |
8251 |
|
} |
8252 |
59 |
if (name == "use-approx") { |
8253 |
|
return options.arith.useApprox ? "true" : "false"; |
8254 |
|
} |
8255 |
59 |
if (name == "use-fcsimplex") { |
8256 |
|
return options.arith.useFC ? "true" : "false"; |
8257 |
|
} |
8258 |
59 |
if (name == "use-soi") { |
8259 |
|
return options.arith.useSOI ? "true" : "false"; |
8260 |
|
} |
8261 |
59 |
if (name == "arrays-config") { |
8262 |
|
return std::to_string(options.arrays.arraysConfig); |
8263 |
|
} |
8264 |
59 |
if (name == "arrays-eager-index") { |
8265 |
|
return options.arrays.arraysEagerIndexSplitting ? "true" : "false"; |
8266 |
|
} |
8267 |
59 |
if (name == "arrays-eager-lemmas") { |
8268 |
|
return options.arrays.arraysEagerLemmas ? "true" : "false"; |
8269 |
|
} |
8270 |
59 |
if (name == "arrays-exp") { |
8271 |
17 |
return options.arrays.arraysExp ? "true" : "false"; |
8272 |
|
} |
8273 |
42 |
if (name == "arrays-model-based") { |
8274 |
|
return options.arrays.arraysModelBased ? "true" : "false"; |
8275 |
|
} |
8276 |
42 |
if (name == "arrays-optimize-linear") { |
8277 |
|
return options.arrays.arraysOptimizeLinear ? "true" : "false"; |
8278 |
|
} |
8279 |
42 |
if (name == "arrays-prop") { |
8280 |
|
return std::to_string(options.arrays.arraysPropagate); |
8281 |
|
} |
8282 |
42 |
if (name == "arrays-reduce-sharing") { |
8283 |
|
return options.arrays.arraysReduceSharing ? "true" : "false"; |
8284 |
|
} |
8285 |
42 |
if (name == "arrays-weak-equiv") { |
8286 |
|
return options.arrays.arraysWeakEquivalence ? "true" : "false"; |
8287 |
|
} |
8288 |
42 |
if (name == "diagnostic-output-channel" || name == "err") { |
8289 |
|
std::stringstream ss; |
8290 |
|
ss << options.base.err; |
8291 |
|
return ss.str(); |
8292 |
|
} |
8293 |
42 |
if (name == "in") { |
8294 |
|
std::stringstream ss; |
8295 |
|
ss << options.base.in; |
8296 |
|
return ss.str(); |
8297 |
|
} |
8298 |
42 |
if (name == "incremental") { |
8299 |
2 |
return options.base.incrementalSolving ? "true" : "false"; |
8300 |
|
} |
8301 |
40 |
if (name == "input-language" || name == "lang") { |
8302 |
2 |
std::stringstream ss; |
8303 |
1 |
ss << options.base.inputLanguage; |
8304 |
1 |
return ss.str(); |
8305 |
|
} |
8306 |
39 |
if (name == "out" || name == "regular-output-channel") { |
8307 |
|
std::stringstream ss; |
8308 |
|
ss << options.base.out; |
8309 |
|
return ss.str(); |
8310 |
|
} |
8311 |
39 |
if (name == "output-lang" || name == "output-language") { |
8312 |
|
std::stringstream ss; |
8313 |
|
ss << options.base.outputLanguage; |
8314 |
|
return ss.str(); |
8315 |
|
} |
8316 |
39 |
if (name == "output") { |
8317 |
|
std::stringstream ss; |
8318 |
|
ss << options.base.outputTag; |
8319 |
|
return ss.str(); |
8320 |
|
} |
8321 |
39 |
if (name == "parse-only") { |
8322 |
|
return options.base.parseOnly ? "true" : "false"; |
8323 |
|
} |
8324 |
39 |
if (name == "preprocess-only") { |
8325 |
|
return options.base.preprocessOnly ? "true" : "false"; |
8326 |
|
} |
8327 |
39 |
if (name == "print-success") { |
8328 |
|
return options.base.printSuccess ? "true" : "false"; |
8329 |
|
} |
8330 |
39 |
if (name == "reproducible-resource-limit" || name == "rlimit-per") { |
8331 |
|
return std::to_string(options.base.perCallResourceLimit); |
8332 |
|
} |
8333 |
39 |
if (name == "rlimit") { |
8334 |
|
return std::to_string(options.base.cumulativeResourceLimit); |
8335 |
|
} |
8336 |
39 |
if (name == "stats") { |
8337 |
5 |
return options.base.statistics ? "true" : "false"; |
8338 |
|
} |
8339 |
34 |
if (name == "stats-all") { |
8340 |
5 |
return options.base.statisticsAll ? "true" : "false"; |
8341 |
|
} |
8342 |
29 |
if (name == "stats-every-query") { |
8343 |
5 |
return options.base.statisticsEveryQuery ? "true" : "false"; |
8344 |
|
} |
8345 |
24 |
if (name == "stats-expert") { |
8346 |
5 |
return options.base.statisticsExpert ? "true" : "false"; |
8347 |
|
} |
8348 |
19 |
if (name == "tlimit-per") { |
8349 |
|
return std::to_string(options.base.perCallMillisecondLimit); |
8350 |
|
} |
8351 |
19 |
if (name == "tlimit") { |
8352 |
|
return std::to_string(options.base.cumulativeMillisecondLimit); |
8353 |
|
} |
8354 |
19 |
if (name == "verbosity") { |
8355 |
6 |
return std::to_string(options.base.verbosity); |
8356 |
|
} |
8357 |
13 |
if (name == "bitblast-aig") { |
8358 |
|
return options.bv.bitvectorAig ? "true" : "false"; |
8359 |
|
} |
8360 |
13 |
if (name == "bitblast") { |
8361 |
|
std::stringstream ss; |
8362 |
|
ss << options.bv.bitblastMode; |
8363 |
|
return ss.str(); |
8364 |
|
} |
8365 |
13 |
if (name == "bitwise-eq") { |
8366 |
|
return options.bv.bitwiseEq ? "true" : "false"; |
8367 |
|
} |
8368 |
13 |
if (name == "bool-to-bv") { |
8369 |
|
std::stringstream ss; |
8370 |
|
ss << options.bv.boolToBitvector; |
8371 |
|
return ss.str(); |
8372 |
|
} |
8373 |
13 |
if (name == "bv-abstraction") { |
8374 |
|
return options.bv.bvAbstraction ? "true" : "false"; |
8375 |
|
} |
8376 |
13 |
if (name == "bv-aig-simp") { |
8377 |
|
return options.bv.bitvectorAigSimplifications; |
8378 |
|
} |
8379 |
13 |
if (name == "bv-alg-extf") { |
8380 |
|
return options.bv.bvAlgExtf ? "true" : "false"; |
8381 |
|
} |
8382 |
13 |
if (name == "bv-algebraic-budget") { |
8383 |
|
return std::to_string(options.bv.bitvectorAlgebraicBudget); |
8384 |
|
} |
8385 |
13 |
if (name == "bv-algebraic-solver") { |
8386 |
|
return options.bv.bitvectorAlgebraicSolver ? "true" : "false"; |
8387 |
|
} |
8388 |
13 |
if (name == "bv-assert-input") { |
8389 |
|
return options.bv.bvAssertInput ? "true" : "false"; |
8390 |
|
} |
8391 |
13 |
if (name == "bv-eager-explanations") { |
8392 |
|
return options.bv.bvEagerExplanations ? "true" : "false"; |
8393 |
|
} |
8394 |
13 |
if (name == "bv-eq-solver") { |
8395 |
|
return options.bv.bitvectorEqualitySolver ? "true" : "false"; |
8396 |
|
} |
8397 |
13 |
if (name == "bv-extract-arith") { |
8398 |
|
return options.bv.bvExtractArithRewrite ? "true" : "false"; |
8399 |
|
} |
8400 |
13 |
if (name == "bv-gauss-elim") { |
8401 |
|
return options.bv.bvGaussElim ? "true" : "false"; |
8402 |
|
} |
8403 |
13 |
if (name == "bv-inequality-solver") { |
8404 |
|
return options.bv.bitvectorInequalitySolver ? "true" : "false"; |
8405 |
|
} |
8406 |
13 |
if (name == "bv-intro-pow2") { |
8407 |
|
return options.bv.bvIntroducePow2 ? "true" : "false"; |
8408 |
|
} |
8409 |
13 |
if (name == "bv-num-func") { |
8410 |
|
return std::to_string(options.bv.bvNumFunc); |
8411 |
|
} |
8412 |
13 |
if (name == "bv-print-consts-as-indexed-symbols") { |
8413 |
|
return options.bv.bvPrintConstsAsIndexedSymbols ? "true" : "false"; |
8414 |
|
} |
8415 |
13 |
if (name == "bv-propagate") { |
8416 |
|
return options.bv.bitvectorPropagate ? "true" : "false"; |
8417 |
|
} |
8418 |
13 |
if (name == "bv-quick-xplain") { |
8419 |
|
return options.bv.bitvectorQuickXplain ? "true" : "false"; |
8420 |
|
} |
8421 |
13 |
if (name == "bv-sat-solver") { |
8422 |
|
std::stringstream ss; |
8423 |
|
ss << options.bv.bvSatSolver; |
8424 |
|
return ss.str(); |
8425 |
|
} |
8426 |
13 |
if (name == "bv-skolemize") { |
8427 |
|
return options.bv.skolemizeArguments ? "true" : "false"; |
8428 |
|
} |
8429 |
13 |
if (name == "bv-solver") { |
8430 |
|
std::stringstream ss; |
8431 |
|
ss << options.bv.bvSolver; |
8432 |
|
return ss.str(); |
8433 |
|
} |
8434 |
13 |
if (name == "bv-to-bool") { |
8435 |
|
return options.bv.bitvectorToBool ? "true" : "false"; |
8436 |
|
} |
8437 |
13 |
if (name == "cdt-bisimilar") { |
8438 |
|
return options.datatypes.cdtBisimilar ? "true" : "false"; |
8439 |
|
} |
8440 |
13 |
if (name == "dt-binary-split") { |
8441 |
|
return options.datatypes.dtBinarySplit ? "true" : "false"; |
8442 |
|
} |
8443 |
13 |
if (name == "dt-blast-splits") { |
8444 |
|
return options.datatypes.dtBlastSplits ? "true" : "false"; |
8445 |
|
} |
8446 |
13 |
if (name == "dt-cyclic") { |
8447 |
|
return options.datatypes.dtCyclic ? "true" : "false"; |
8448 |
|
} |
8449 |
13 |
if (name == "dt-force-assignment") { |
8450 |
|
return options.datatypes.dtForceAssignment ? "true" : "false"; |
8451 |
|
} |
8452 |
13 |
if (name == "dt-infer-as-lemmas") { |
8453 |
|
return options.datatypes.dtInferAsLemmas ? "true" : "false"; |
8454 |
|
} |
8455 |
13 |
if (name == "dt-nested-rec") { |
8456 |
|
return options.datatypes.dtNestedRec ? "true" : "false"; |
8457 |
|
} |
8458 |
13 |
if (name == "dt-polite-optimize") { |
8459 |
|
return options.datatypes.dtPoliteOptimize ? "true" : "false"; |
8460 |
|
} |
8461 |
13 |
if (name == "dt-rewrite-error-sel") { |
8462 |
|
return options.datatypes.dtRewriteErrorSel ? "true" : "false"; |
8463 |
|
} |
8464 |
13 |
if (name == "dt-share-sel") { |
8465 |
|
return options.datatypes.dtSharedSelectors ? "true" : "false"; |
8466 |
|
} |
8467 |
13 |
if (name == "sygus-abort-size") { |
8468 |
|
return std::to_string(options.datatypes.sygusAbortSize); |
8469 |
|
} |
8470 |
13 |
if (name == "sygus-fair-max") { |
8471 |
|
return options.datatypes.sygusFairMax ? "true" : "false"; |
8472 |
|
} |
8473 |
13 |
if (name == "sygus-fair") { |
8474 |
|
std::stringstream ss; |
8475 |
|
ss << options.datatypes.sygusFair; |
8476 |
|
return ss.str(); |
8477 |
|
} |
8478 |
13 |
if (name == "sygus-sym-break") { |
8479 |
|
return options.datatypes.sygusSymBreak ? "true" : "false"; |
8480 |
|
} |
8481 |
13 |
if (name == "sygus-sym-break-agg") { |
8482 |
|
return options.datatypes.sygusSymBreakAgg ? "true" : "false"; |
8483 |
|
} |
8484 |
13 |
if (name == "sygus-sym-break-dynamic") { |
8485 |
|
return options.datatypes.sygusSymBreakDynamic ? "true" : "false"; |
8486 |
|
} |
8487 |
13 |
if (name == "sygus-sym-break-lazy") { |
8488 |
|
return options.datatypes.sygusSymBreakLazy ? "true" : "false"; |
8489 |
|
} |
8490 |
13 |
if (name == "sygus-sym-break-pbe") { |
8491 |
|
return options.datatypes.sygusSymBreakPbe ? "true" : "false"; |
8492 |
|
} |
8493 |
13 |
if (name == "sygus-sym-break-rlv") { |
8494 |
|
return options.datatypes.sygusSymBreakRlv ? "true" : "false"; |
8495 |
|
} |
8496 |
13 |
if (name == "decision-random-weight") { |
8497 |
|
return std::to_string(options.decision.decisionRandomWeight); |
8498 |
|
} |
8499 |
13 |
if (name == "decision-threshold") { |
8500 |
|
std::stringstream ss; |
8501 |
|
ss << options.decision.decisionThreshold; |
8502 |
|
return ss.str(); |
8503 |
|
} |
8504 |
13 |
if (name == "decision-use-weight") { |
8505 |
|
return options.decision.decisionUseWeight ? "true" : "false"; |
8506 |
|
} |
8507 |
13 |
if (name == "decision-weight-internal") { |
8508 |
|
std::stringstream ss; |
8509 |
|
ss << options.decision.decisionWeightInternal; |
8510 |
|
return ss.str(); |
8511 |
|
} |
8512 |
13 |
if (name == "decision" || name == "decision-mode") { |
8513 |
|
std::stringstream ss; |
8514 |
|
ss << options.decision.decisionMode; |
8515 |
|
return ss.str(); |
8516 |
|
} |
8517 |
13 |
if (name == "jh-rlv-order") { |
8518 |
|
return options.decision.jhRlvOrder ? "true" : "false"; |
8519 |
|
} |
8520 |
13 |
if (name == "jh-skolem-rlv") { |
8521 |
|
std::stringstream ss; |
8522 |
|
ss << options.decision.jhSkolemRlvMode; |
8523 |
|
return ss.str(); |
8524 |
|
} |
8525 |
13 |
if (name == "jh-skolem") { |
8526 |
|
std::stringstream ss; |
8527 |
|
ss << options.decision.jhSkolemMode; |
8528 |
|
return ss.str(); |
8529 |
|
} |
8530 |
13 |
if (name == "dag-thresh") { |
8531 |
1 |
return std::to_string(options.expr.defaultDagThresh); |
8532 |
|
} |
8533 |
12 |
if (name == "expr-depth") { |
8534 |
|
return std::to_string(options.expr.defaultExprDepth); |
8535 |
|
} |
8536 |
12 |
if (name == "type-checking") { |
8537 |
|
return options.expr.typeChecking ? "true" : "false"; |
8538 |
|
} |
8539 |
12 |
if (name == "fp-exp") { |
8540 |
|
return options.fp.fpExp ? "true" : "false"; |
8541 |
|
} |
8542 |
12 |
if (name == "fp-lazy-wb") { |
8543 |
|
return options.fp.fpLazyWb ? "true" : "false"; |
8544 |
|
} |
8545 |
12 |
if (name == "dump-instantiations") { |
8546 |
|
return options.driver.dumpInstantiations ? "true" : "false"; |
8547 |
|
} |
8548 |
12 |
if (name == "dump-instantiations-debug") { |
8549 |
|
return options.driver.dumpInstantiationsDebug ? "true" : "false"; |
8550 |
|
} |
8551 |
12 |
if (name == "dump-models") { |
8552 |
|
return options.driver.dumpModels ? "true" : "false"; |
8553 |
|
} |
8554 |
12 |
if (name == "dump-proofs") { |
8555 |
|
return options.driver.dumpProofs ? "true" : "false"; |
8556 |
|
} |
8557 |
12 |
if (name == "dump-unsat-cores") { |
8558 |
|
return options.driver.dumpUnsatCores ? "true" : "false"; |
8559 |
|
} |
8560 |
12 |
if (name == "dump-unsat-cores-full") { |
8561 |
|
return options.driver.dumpUnsatCoresFull ? "true" : "false"; |
8562 |
|
} |
8563 |
12 |
if (name == "early-exit") { |
8564 |
|
return options.driver.earlyExit ? "true" : "false"; |
8565 |
|
} |
8566 |
12 |
if (name == "force-no-limit-cpu-while-dump") { |
8567 |
|
return options.driver.forceNoLimitCpuWhileDump ? "true" : "false"; |
8568 |
|
} |
8569 |
12 |
if (name == "help") { |
8570 |
|
return options.driver.help ? "true" : "false"; |
8571 |
|
} |
8572 |
12 |
if (name == "interactive") { |
8573 |
|
return options.driver.interactive ? "true" : "false"; |
8574 |
|
} |
8575 |
12 |
if (name == "interactive-prompt") { |
8576 |
|
return options.driver.interactivePrompt ? "true" : "false"; |
8577 |
|
} |
8578 |
12 |
if (name == "seed") { |
8579 |
|
return std::to_string(options.driver.seed); |
8580 |
|
} |
8581 |
12 |
if (name == "segv-spin") { |
8582 |
|
return options.driver.segvSpin ? "true" : "false"; |
8583 |
|
} |
8584 |
12 |
if (name == "version") { |
8585 |
|
return options.driver.version ? "true" : "false"; |
8586 |
|
} |
8587 |
12 |
if (name == "filesystem-access") { |
8588 |
|
return options.parser.filesystemAccess ? "true" : "false"; |
8589 |
|
} |
8590 |
12 |
if (name == "force-logic") { |
8591 |
|
return options.parser.forceLogicString; |
8592 |
|
} |
8593 |
12 |
if (name == "global-declarations") { |
8594 |
|
return options.parser.globalDeclarations ? "true" : "false"; |
8595 |
|
} |
8596 |
12 |
if (name == "mmap") { |
8597 |
|
return options.parser.memoryMap ? "true" : "false"; |
8598 |
|
} |
8599 |
12 |
if (name == "semantic-checks") { |
8600 |
|
return options.parser.semanticChecks ? "true" : "false"; |
8601 |
|
} |
8602 |
12 |
if (name == "strict-parsing") { |
8603 |
|
return options.parser.strictParsing ? "true" : "false"; |
8604 |
|
} |
8605 |
12 |
if (name == "flatten-ho-chains") { |
8606 |
|
return options.printer.flattenHOChains ? "true" : "false"; |
8607 |
|
} |
8608 |
12 |
if (name == "inst-format") { |
8609 |
|
std::stringstream ss; |
8610 |
|
ss << options.printer.instFormatMode; |
8611 |
|
return ss.str(); |
8612 |
|
} |
8613 |
12 |
if (name == "model-format") { |
8614 |
|
std::stringstream ss; |
8615 |
|
ss << options.printer.modelFormatMode; |
8616 |
|
return ss.str(); |
8617 |
|
} |
8618 |
12 |
if (name == "print-inst-full") { |
8619 |
|
return options.printer.printInstFull ? "true" : "false"; |
8620 |
|
} |
8621 |
12 |
if (name == "print-inst") { |
8622 |
|
std::stringstream ss; |
8623 |
|
ss << options.printer.printInstMode; |
8624 |
|
return ss.str(); |
8625 |
|
} |
8626 |
12 |
if (name == "proof-eager-checking") { |
8627 |
|
return options.proof.proofEagerChecking ? "true" : "false"; |
8628 |
|
} |
8629 |
12 |
if (name == "proof-format-mode") { |
8630 |
|
std::stringstream ss; |
8631 |
|
ss << options.proof.proofFormatMode; |
8632 |
|
return ss.str(); |
8633 |
|
} |
8634 |
12 |
if (name == "proof-granularity") { |
8635 |
|
std::stringstream ss; |
8636 |
|
ss << options.proof.proofGranularityMode; |
8637 |
|
return ss.str(); |
8638 |
|
} |
8639 |
12 |
if (name == "proof-pedantic") { |
8640 |
|
return std::to_string(options.proof.proofPedantic); |
8641 |
|
} |
8642 |
12 |
if (name == "proof-print-conclusion") { |
8643 |
|
return options.proof.proofPrintConclusion ? "true" : "false"; |
8644 |
|
} |
8645 |
12 |
if (name == "minisat-dump-dimacs") { |
8646 |
|
return options.prop.minisatDumpDimacs ? "true" : "false"; |
8647 |
|
} |
8648 |
12 |
if (name == "minisat-elimination") { |
8649 |
|
return options.prop.minisatUseElim ? "true" : "false"; |
8650 |
|
} |
8651 |
12 |
if (name == "random-freq" || name == "random-frequency") { |
8652 |
|
return std::to_string(options.prop.satRandomFreq); |
8653 |
|
} |
8654 |
12 |
if (name == "random-seed") { |
8655 |
4 |
return std::to_string(options.prop.satRandomSeed); |
8656 |
|
} |
8657 |
8 |
if (name == "refine-conflicts") { |
8658 |
|
return options.prop.sat_refine_conflicts ? "true" : "false"; |
8659 |
|
} |
8660 |
8 |
if (name == "restart-int-base") { |
8661 |
|
return std::to_string(options.prop.satRestartFirst); |
8662 |
|
} |
8663 |
8 |
if (name == "restart-int-inc") { |
8664 |
|
return std::to_string(options.prop.satRestartInc); |
8665 |
|
} |
8666 |
8 |
if (name == "ag-miniscope-quant") { |
8667 |
|
return options.quantifiers.aggressiveMiniscopeQuant ? "true" : "false"; |
8668 |
|
} |
8669 |
8 |
if (name == "cegis-sample") { |
8670 |
|
std::stringstream ss; |
8671 |
|
ss << options.quantifiers.cegisSample; |
8672 |
|
return ss.str(); |
8673 |
|
} |
8674 |
8 |
if (name == "cegqi") { |
8675 |
|
return options.quantifiers.cegqi ? "true" : "false"; |
8676 |
|
} |
8677 |
8 |
if (name == "cegqi-all") { |
8678 |
|
return options.quantifiers.cegqiAll ? "true" : "false"; |
8679 |
|
} |
8680 |
8 |
if (name == "cegqi-bv") { |
8681 |
|
return options.quantifiers.cegqiBv ? "true" : "false"; |
8682 |
|
} |
8683 |
8 |
if (name == "cegqi-bv-concat-inv") { |
8684 |
|
return options.quantifiers.cegqiBvConcInv ? "true" : "false"; |
8685 |
|
} |
8686 |
8 |
if (name == "cegqi-bv-ineq") { |
8687 |
|
std::stringstream ss; |
8688 |
|
ss << options.quantifiers.cegqiBvIneqMode; |
8689 |
|
return ss.str(); |
8690 |
|
} |
8691 |
8 |
if (name == "cegqi-bv-interleave-value") { |
8692 |
|
return options.quantifiers.cegqiBvInterleaveValue ? "true" : "false"; |
8693 |
|
} |
8694 |
8 |
if (name == "cegqi-bv-linear") { |
8695 |
|
return options.quantifiers.cegqiBvLinearize ? "true" : "false"; |
8696 |
|
} |
8697 |
8 |
if (name == "cegqi-bv-rm-extract") { |
8698 |
|
return options.quantifiers.cegqiBvRmExtract ? "true" : "false"; |
8699 |
|
} |
8700 |
8 |
if (name == "cegqi-bv-solve-nl") { |
8701 |
|
return options.quantifiers.cegqiBvSolveNl ? "true" : "false"; |
8702 |
|
} |
8703 |
8 |
if (name == "cegqi-full") { |
8704 |
|
return options.quantifiers.cegqiFullEffort ? "true" : "false"; |
8705 |
|
} |
8706 |
8 |
if (name == "cegqi-innermost") { |
8707 |
|
return options.quantifiers.cegqiInnermost ? "true" : "false"; |
8708 |
|
} |
8709 |
8 |
if (name == "cegqi-midpoint") { |
8710 |
|
return options.quantifiers.cegqiMidpoint ? "true" : "false"; |
8711 |
|
} |
8712 |
8 |
if (name == "cegqi-min-bounds") { |
8713 |
|
return options.quantifiers.cegqiMinBounds ? "true" : "false"; |
8714 |
|
} |
8715 |
8 |
if (name == "cegqi-model") { |
8716 |
|
return options.quantifiers.cegqiModel ? "true" : "false"; |
8717 |
|
} |
8718 |
8 |
if (name == "cegqi-multi-inst") { |
8719 |
|
return options.quantifiers.cegqiMultiInst ? "true" : "false"; |
8720 |
|
} |
8721 |
8 |
if (name == "cegqi-nested-qe") { |
8722 |
|
return options.quantifiers.cegqiNestedQE ? "true" : "false"; |
8723 |
|
} |
8724 |
8 |
if (name == "cegqi-nopt") { |
8725 |
|
return options.quantifiers.cegqiNopt ? "true" : "false"; |
8726 |
|
} |
8727 |
8 |
if (name == "cegqi-repeat-lit") { |
8728 |
|
return options.quantifiers.cegqiRepeatLit ? "true" : "false"; |
8729 |
|
} |
8730 |
8 |
if (name == "cegqi-round-up-lia") { |
8731 |
|
return options.quantifiers.cegqiRoundUpLowerLia ? "true" : "false"; |
8732 |
|
} |
8733 |
8 |
if (name == "cegqi-sat") { |
8734 |
|
return options.quantifiers.cegqiSat ? "true" : "false"; |
8735 |
|
} |
8736 |
8 |
if (name == "cegqi-use-inf-int") { |
8737 |
|
return options.quantifiers.cegqiUseInfInt ? "true" : "false"; |
8738 |
|
} |
8739 |
8 |
if (name == "cegqi-use-inf-real") { |
8740 |
|
return options.quantifiers.cegqiUseInfReal ? "true" : "false"; |
8741 |
|
} |
8742 |
8 |
if (name == "cond-var-split-agg-quant") { |
8743 |
|
return options.quantifiers.condVarSplitQuantAgg ? "true" : "false"; |
8744 |
|
} |
8745 |
8 |
if (name == "cond-var-split-quant") { |
8746 |
|
return options.quantifiers.condVarSplitQuant ? "true" : "false"; |
8747 |
|
} |
8748 |
8 |
if (name == "conjecture-filter-active-terms") { |
8749 |
|
return options.quantifiers.conjectureFilterActiveTerms ? "true" : "false"; |
8750 |
|
} |
8751 |
8 |
if (name == "conjecture-filter-canonical") { |
8752 |
|
return options.quantifiers.conjectureFilterCanonical ? "true" : "false"; |
8753 |
|
} |
8754 |
8 |
if (name == "conjecture-filter-model") { |
8755 |
|
return options.quantifiers.conjectureFilterModel ? "true" : "false"; |
8756 |
|
} |
8757 |
8 |
if (name == "conjecture-gen") { |
8758 |
|
return options.quantifiers.conjectureGen ? "true" : "false"; |
8759 |
|
} |
8760 |
8 |
if (name == "conjecture-gen-gt-enum") { |
8761 |
|
return std::to_string(options.quantifiers.conjectureGenGtEnum); |
8762 |
|
} |
8763 |
8 |
if (name == "conjecture-gen-max-depth") { |
8764 |
|
return std::to_string(options.quantifiers.conjectureGenMaxDepth); |
8765 |
|
} |
8766 |
8 |
if (name == "conjecture-gen-per-round") { |
8767 |
|
return std::to_string(options.quantifiers.conjectureGenPerRound); |
8768 |
|
} |
8769 |
8 |
if (name == "conjecture-gen-uee-intro") { |
8770 |
|
return options.quantifiers.conjectureUeeIntro ? "true" : "false"; |
8771 |
|
} |
8772 |
8 |
if (name == "conjecture-no-filter") { |
8773 |
|
return options.quantifiers.conjectureNoFilter ? "true" : "false"; |
8774 |
|
} |
8775 |
8 |
if (name == "dt-stc-ind") { |
8776 |
|
return options.quantifiers.dtStcInduction ? "true" : "false"; |
8777 |
|
} |
8778 |
8 |
if (name == "dt-var-exp-quant") { |
8779 |
|
return options.quantifiers.dtVarExpandQuant ? "true" : "false"; |
8780 |
|
} |
8781 |
8 |
if (name == "e-matching") { |
8782 |
|
return options.quantifiers.eMatching ? "true" : "false"; |
8783 |
|
} |
8784 |
8 |
if (name == "elim-taut-quant") { |
8785 |
|
return options.quantifiers.elimTautQuant ? "true" : "false"; |
8786 |
|
} |
8787 |
8 |
if (name == "ext-rewrite-quant") { |
8788 |
|
return options.quantifiers.extRewriteQuant ? "true" : "false"; |
8789 |
|
} |
8790 |
8 |
if (name == "finite-model-find") { |
8791 |
|
return options.quantifiers.finiteModelFind ? "true" : "false"; |
8792 |
|
} |
8793 |
8 |
if (name == "fmf-bound") { |
8794 |
|
return options.quantifiers.fmfBound ? "true" : "false"; |
8795 |
|
} |
8796 |
8 |
if (name == "fmf-bound-int") { |
8797 |
|
return options.quantifiers.fmfBoundInt ? "true" : "false"; |
8798 |
|
} |
8799 |
8 |
if (name == "fmf-bound-lazy") { |
8800 |
|
return options.quantifiers.fmfBoundLazy ? "true" : "false"; |
8801 |
|
} |
8802 |
8 |
if (name == "fmf-fmc-simple") { |
8803 |
|
return options.quantifiers.fmfFmcSimple ? "true" : "false"; |
8804 |
|
} |
8805 |
8 |
if (name == "fmf-fresh-dc") { |
8806 |
|
return options.quantifiers.fmfFreshDistConst ? "true" : "false"; |
8807 |
|
} |
8808 |
8 |
if (name == "fmf-fun") { |
8809 |
|
return options.quantifiers.fmfFunWellDefined ? "true" : "false"; |
8810 |
|
} |
8811 |
8 |
if (name == "fmf-fun-rlv") { |
8812 |
|
return options.quantifiers.fmfFunWellDefinedRelevant ? "true" : "false"; |
8813 |
|
} |
8814 |
8 |
if (name == "fmf-inst-engine") { |
8815 |
|
return options.quantifiers.fmfInstEngine ? "true" : "false"; |
8816 |
|
} |
8817 |
8 |
if (name == "fmf-type-completion-thresh") { |
8818 |
|
return std::to_string(options.quantifiers.fmfTypeCompletionThresh); |
8819 |
|
} |
8820 |
8 |
if (name == "fs-interleave") { |
8821 |
|
return options.quantifiers.fullSaturateInterleave ? "true" : "false"; |
8822 |
|
} |
8823 |
8 |
if (name == "fs-stratify") { |
8824 |
|
return options.quantifiers.fullSaturateStratify ? "true" : "false"; |
8825 |
|
} |
8826 |
8 |
if (name == "fs-sum") { |
8827 |
|
return options.quantifiers.fullSaturateSum ? "true" : "false"; |
8828 |
|
} |
8829 |
8 |
if (name == "full-saturate-quant") { |
8830 |
|
return options.quantifiers.fullSaturateQuant ? "true" : "false"; |
8831 |
|
} |
8832 |
8 |
if (name == "full-saturate-quant-limit") { |
8833 |
|
return std::to_string(options.quantifiers.fullSaturateLimit); |
8834 |
|
} |
8835 |
8 |
if (name == "full-saturate-quant-rd") { |
8836 |
|
return options.quantifiers.fullSaturateQuantRd ? "true" : "false"; |
8837 |
|
} |
8838 |
8 |
if (name == "global-negate") { |
8839 |
|
return options.quantifiers.globalNegate ? "true" : "false"; |
8840 |
|
} |
8841 |
8 |
if (name == "ho-elim") { |
8842 |
|
return options.quantifiers.hoElim ? "true" : "false"; |
8843 |
|
} |
8844 |
8 |
if (name == "ho-elim-store-ax") { |
8845 |
|
return options.quantifiers.hoElimStoreAx ? "true" : "false"; |
8846 |
|
} |
8847 |
8 |
if (name == "ho-matching") { |
8848 |
|
return options.quantifiers.hoMatching ? "true" : "false"; |
8849 |
|
} |
8850 |
8 |
if (name == "ho-matching-var-priority") { |
8851 |
|
return options.quantifiers.hoMatchingVarArgPriority ? "true" : "false"; |
8852 |
|
} |
8853 |
8 |
if (name == "ho-merge-term-db") { |
8854 |
|
return options.quantifiers.hoMergeTermDb ? "true" : "false"; |
8855 |
|
} |
8856 |
8 |
if (name == "increment-triggers") { |
8857 |
|
return options.quantifiers.incrementTriggers ? "true" : "false"; |
8858 |
|
} |
8859 |
8 |
if (name == "inst-level-input-only") { |
8860 |
|
return options.quantifiers.instLevelInputOnly ? "true" : "false"; |
8861 |
|
} |
8862 |
8 |
if (name == "inst-max-level") { |
8863 |
|
return std::to_string(options.quantifiers.instMaxLevel); |
8864 |
|
} |
8865 |
8 |
if (name == "inst-max-rounds") { |
8866 |
|
return std::to_string(options.quantifiers.instMaxRounds); |
8867 |
|
} |
8868 |
8 |
if (name == "inst-no-entail") { |
8869 |
|
return options.quantifiers.instNoEntail ? "true" : "false"; |
8870 |
|
} |
8871 |
8 |
if (name == "inst-when-phase") { |
8872 |
|
return std::to_string(options.quantifiers.instWhenPhase); |
8873 |
|
} |
8874 |
8 |
if (name == "inst-when-strict-interleave") { |
8875 |
|
return options.quantifiers.instWhenStrictInterleave ? "true" : "false"; |
8876 |
|
} |
8877 |
8 |
if (name == "inst-when-tc-first") { |
8878 |
|
return options.quantifiers.instWhenTcFirst ? "true" : "false"; |
8879 |
|
} |
8880 |
8 |
if (name == "inst-when") { |
8881 |
|
std::stringstream ss; |
8882 |
|
ss << options.quantifiers.instWhenMode; |
8883 |
|
return ss.str(); |
8884 |
|
} |
8885 |
8 |
if (name == "int-wf-ind") { |
8886 |
|
return options.quantifiers.intWfInduction ? "true" : "false"; |
8887 |
|
} |
8888 |
8 |
if (name == "ite-dtt-split-quant") { |
8889 |
|
return options.quantifiers.iteDtTesterSplitQuant ? "true" : "false"; |
8890 |
|
} |
8891 |
8 |
if (name == "ite-lift-quant") { |
8892 |
|
std::stringstream ss; |
8893 |
|
ss << options.quantifiers.iteLiftQuant; |
8894 |
|
return ss.str(); |
8895 |
|
} |
8896 |
8 |
if (name == "literal-matching") { |
8897 |
|
std::stringstream ss; |
8898 |
|
ss << options.quantifiers.literalMatchMode; |
8899 |
|
return ss.str(); |
8900 |
|
} |
8901 |
8 |
if (name == "macros-quant") { |
8902 |
|
return options.quantifiers.macrosQuant ? "true" : "false"; |
8903 |
|
} |
8904 |
8 |
if (name == "macros-quant-mode") { |
8905 |
|
std::stringstream ss; |
8906 |
|
ss << options.quantifiers.macrosQuantMode; |
8907 |
|
return ss.str(); |
8908 |
|
} |
8909 |
8 |
if (name == "mbqi-interleave") { |
8910 |
|
return options.quantifiers.mbqiInterleave ? "true" : "false"; |
8911 |
|
} |
8912 |
8 |
if (name == "mbqi-one-inst-per-round") { |
8913 |
|
return options.quantifiers.fmfOneInstPerRound ? "true" : "false"; |
8914 |
|
} |
8915 |
8 |
if (name == "mbqi") { |
8916 |
|
std::stringstream ss; |
8917 |
|
ss << options.quantifiers.mbqiMode; |
8918 |
|
return ss.str(); |
8919 |
|
} |
8920 |
8 |
if (name == "miniscope-quant") { |
8921 |
|
return options.quantifiers.miniscopeQuant ? "true" : "false"; |
8922 |
|
} |
8923 |
8 |
if (name == "miniscope-quant-fv") { |
8924 |
|
return options.quantifiers.miniscopeQuantFreeVar ? "true" : "false"; |
8925 |
|
} |
8926 |
8 |
if (name == "multi-trigger-cache") { |
8927 |
|
return options.quantifiers.multiTriggerCache ? "true" : "false"; |
8928 |
|
} |
8929 |
8 |
if (name == "multi-trigger-linear") { |
8930 |
|
return options.quantifiers.multiTriggerLinear ? "true" : "false"; |
8931 |
|
} |
8932 |
8 |
if (name == "multi-trigger-priority") { |
8933 |
|
return options.quantifiers.multiTriggerPriority ? "true" : "false"; |
8934 |
|
} |
8935 |
8 |
if (name == "multi-trigger-when-single") { |
8936 |
|
return options.quantifiers.multiTriggerWhenSingle ? "true" : "false"; |
8937 |
|
} |
8938 |
8 |
if (name == "partial-triggers") { |
8939 |
|
return options.quantifiers.partialTriggers ? "true" : "false"; |
8940 |
|
} |
8941 |
8 |
if (name == "pool-inst") { |
8942 |
|
return options.quantifiers.poolInst ? "true" : "false"; |
8943 |
|
} |
8944 |
8 |
if (name == "pre-skolem-quant") { |
8945 |
|
return options.quantifiers.preSkolemQuant ? "true" : "false"; |
8946 |
|
} |
8947 |
8 |
if (name == "pre-skolem-quant-agg") { |
8948 |
|
return options.quantifiers.preSkolemQuantAgg ? "true" : "false"; |
8949 |
|
} |
8950 |
8 |
if (name == "pre-skolem-quant-nested") { |
8951 |
|
return options.quantifiers.preSkolemQuantNested ? "true" : "false"; |
8952 |
|
} |
8953 |
8 |
if (name == "prenex-quant-user") { |
8954 |
|
return options.quantifiers.prenexQuantUser ? "true" : "false"; |
8955 |
|
} |
8956 |
8 |
if (name == "prenex-quant") { |
8957 |
|
std::stringstream ss; |
8958 |
|
ss << options.quantifiers.prenexQuant; |
8959 |
|
return ss.str(); |
8960 |
|
} |
8961 |
8 |
if (name == "purify-triggers") { |
8962 |
|
return options.quantifiers.purifyTriggers ? "true" : "false"; |
8963 |
|
} |
8964 |
8 |
if (name == "qcf-all-conflict") { |
8965 |
|
return options.quantifiers.qcfAllConflict ? "true" : "false"; |
8966 |
|
} |
8967 |
8 |
if (name == "qcf-eager-check-rd") { |
8968 |
|
return options.quantifiers.qcfEagerCheckRd ? "true" : "false"; |
8969 |
|
} |
8970 |
8 |
if (name == "qcf-eager-test") { |
8971 |
|
return options.quantifiers.qcfEagerTest ? "true" : "false"; |
8972 |
|
} |
8973 |
8 |
if (name == "qcf-nested-conflict") { |
8974 |
|
return options.quantifiers.qcfNestedConflict ? "true" : "false"; |
8975 |
|
} |
8976 |
8 |
if (name == "qcf-skip-rd") { |
8977 |
|
return options.quantifiers.qcfSkipRd ? "true" : "false"; |
8978 |
|
} |
8979 |
8 |
if (name == "qcf-tconstraint") { |
8980 |
|
return options.quantifiers.qcfTConstraint ? "true" : "false"; |
8981 |
|
} |
8982 |
8 |
if (name == "qcf-vo-exp") { |
8983 |
|
return options.quantifiers.qcfVoExp ? "true" : "false"; |
8984 |
|
} |
8985 |
8 |
if (name == "quant-alpha-equiv") { |
8986 |
|
return options.quantifiers.quantAlphaEquiv ? "true" : "false"; |
8987 |
|
} |
8988 |
8 |
if (name == "quant-cf") { |
8989 |
|
return options.quantifiers.quantConflictFind ? "true" : "false"; |
8990 |
|
} |
8991 |
8 |
if (name == "quant-cf-mode") { |
8992 |
|
std::stringstream ss; |
8993 |
|
ss << options.quantifiers.qcfMode; |
8994 |
|
return ss.str(); |
8995 |
|
} |
8996 |
8 |
if (name == "quant-cf-when") { |
8997 |
|
std::stringstream ss; |
8998 |
|
ss << options.quantifiers.qcfWhenMode; |
8999 |
|
return ss.str(); |
9000 |
|
} |
9001 |
8 |
if (name == "quant-dsplit-mode") { |
9002 |
|
std::stringstream ss; |
9003 |
|
ss << options.quantifiers.quantDynamicSplit; |
9004 |
|
return ss.str(); |
9005 |
|
} |
9006 |
8 |
if (name == "quant-fun-wd") { |
9007 |
|
return options.quantifiers.quantFunWellDefined ? "true" : "false"; |
9008 |
|
} |
9009 |
8 |
if (name == "quant-ind") { |
9010 |
|
return options.quantifiers.quantInduction ? "true" : "false"; |
9011 |
|
} |
9012 |
8 |
if (name == "quant-rep-mode") { |
9013 |
|
std::stringstream ss; |
9014 |
|
ss << options.quantifiers.quantRepMode; |
9015 |
|
return ss.str(); |
9016 |
|
} |
9017 |
8 |
if (name == "quant-split") { |
9018 |
|
return options.quantifiers.quantSplit ? "true" : "false"; |
9019 |
|
} |
9020 |
8 |
if (name == "register-quant-body-terms") { |
9021 |
|
return options.quantifiers.registerQuantBodyTerms ? "true" : "false"; |
9022 |
|
} |
9023 |
8 |
if (name == "relational-triggers") { |
9024 |
|
return options.quantifiers.relationalTriggers ? "true" : "false"; |
9025 |
|
} |
9026 |
8 |
if (name == "relevant-triggers") { |
9027 |
|
return options.quantifiers.relevantTriggers ? "true" : "false"; |
9028 |
|
} |
9029 |
8 |
if (name == "strict-triggers") { |
9030 |
|
return options.quantifiers.strictTriggers ? "true" : "false"; |
9031 |
|
} |
9032 |
8 |
if (name == "sygus") { |
9033 |
|
return options.quantifiers.sygus ? "true" : "false"; |
9034 |
|
} |
9035 |
8 |
if (name == "sygus-active-gen-cfactor") { |
9036 |
|
return std::to_string(options.quantifiers.sygusActiveGenEnumConsts); |
9037 |
|
} |
9038 |
8 |
if (name == "sygus-active-gen") { |
9039 |
|
std::stringstream ss; |
9040 |
|
ss << options.quantifiers.sygusActiveGenMode; |
9041 |
|
return ss.str(); |
9042 |
|
} |
9043 |
8 |
if (name == "sygus-add-const-grammar") { |
9044 |
|
return options.quantifiers.sygusAddConstGrammar ? "true" : "false"; |
9045 |
|
} |
9046 |
8 |
if (name == "sygus-arg-relevant") { |
9047 |
|
return options.quantifiers.sygusArgRelevant ? "true" : "false"; |
9048 |
|
} |
9049 |
8 |
if (name == "sygus-auto-unfold") { |
9050 |
|
return options.quantifiers.sygusInvAutoUnfold ? "true" : "false"; |
9051 |
|
} |
9052 |
8 |
if (name == "sygus-bool-ite-return-const") { |
9053 |
|
return options.quantifiers.sygusBoolIteReturnConst ? "true" : "false"; |
9054 |
|
} |
9055 |
8 |
if (name == "sygus-core-connective") { |
9056 |
|
return options.quantifiers.sygusCoreConnective ? "true" : "false"; |
9057 |
|
} |
9058 |
8 |
if (name == "sygus-crepair-abort") { |
9059 |
|
return options.quantifiers.sygusConstRepairAbort ? "true" : "false"; |
9060 |
|
} |
9061 |
8 |
if (name == "sygus-eval-opt") { |
9062 |
|
return options.quantifiers.sygusEvalOpt ? "true" : "false"; |
9063 |
|
} |
9064 |
8 |
if (name == "sygus-eval-unfold") { |
9065 |
|
return options.quantifiers.sygusEvalUnfold ? "true" : "false"; |
9066 |
|
} |
9067 |
8 |
if (name == "sygus-eval-unfold-bool") { |
9068 |
|
return options.quantifiers.sygusEvalUnfoldBool ? "true" : "false"; |
9069 |
|
} |
9070 |
8 |
if (name == "sygus-expr-miner-check-timeout") { |
9071 |
|
return std::to_string(options.quantifiers.sygusExprMinerCheckTimeout); |
9072 |
|
} |
9073 |
8 |
if (name == "sygus-ext-rew") { |
9074 |
|
return options.quantifiers.sygusExtRew ? "true" : "false"; |
9075 |
|
} |
9076 |
8 |
if (name == "sygus-filter-sol-rev") { |
9077 |
|
return options.quantifiers.sygusFilterSolRevSubsume ? "true" : "false"; |
9078 |
|
} |
9079 |
8 |
if (name == "sygus-filter-sol") { |
9080 |
|
std::stringstream ss; |
9081 |
|
ss << options.quantifiers.sygusFilterSolMode; |
9082 |
|
return ss.str(); |
9083 |
|
} |
9084 |
8 |
if (name == "sygus-grammar-cons") { |
9085 |
|
std::stringstream ss; |
9086 |
|
ss << options.quantifiers.sygusGrammarConsMode; |
9087 |
|
return ss.str(); |
9088 |
|
} |
9089 |
8 |
if (name == "sygus-grammar-norm") { |
9090 |
|
return options.quantifiers.sygusGrammarNorm ? "true" : "false"; |
9091 |
|
} |
9092 |
8 |
if (name == "sygus-inference") { |
9093 |
|
return options.quantifiers.sygusInference ? "true" : "false"; |
9094 |
|
} |
9095 |
8 |
if (name == "sygus-inst") { |
9096 |
|
return options.quantifiers.sygusInst ? "true" : "false"; |
9097 |
|
} |
9098 |
8 |
if (name == "sygus-inst-mode") { |
9099 |
|
std::stringstream ss; |
9100 |
|
ss << options.quantifiers.sygusInstMode; |
9101 |
|
return ss.str(); |
9102 |
|
} |
9103 |
8 |
if (name == "sygus-inst-scope") { |
9104 |
|
std::stringstream ss; |
9105 |
|
ss << options.quantifiers.sygusInstScope; |
9106 |
|
return ss.str(); |
9107 |
|
} |
9108 |
8 |
if (name == "sygus-inst-term-sel") { |
9109 |
|
std::stringstream ss; |
9110 |
|
ss << options.quantifiers.sygusInstTermSel; |
9111 |
|
return ss.str(); |
9112 |
|
} |
9113 |
8 |
if (name == "sygus-inv-templ-when-sg") { |
9114 |
|
return options.quantifiers.sygusInvTemplWhenSyntax ? "true" : "false"; |
9115 |
|
} |
9116 |
8 |
if (name == "sygus-inv-templ") { |
9117 |
|
std::stringstream ss; |
9118 |
|
ss << options.quantifiers.sygusInvTemplMode; |
9119 |
|
return ss.str(); |
9120 |
|
} |
9121 |
8 |
if (name == "sygus-min-grammar") { |
9122 |
|
return options.quantifiers.sygusMinGrammar ? "true" : "false"; |
9123 |
|
} |
9124 |
8 |
if (name == "sygus-pbe") { |
9125 |
|
return options.quantifiers.sygusUnifPbe ? "true" : "false"; |
9126 |
|
} |
9127 |
8 |
if (name == "sygus-pbe-multi-fair") { |
9128 |
|
return options.quantifiers.sygusPbeMultiFair ? "true" : "false"; |
9129 |
|
} |
9130 |
8 |
if (name == "sygus-pbe-multi-fair-diff") { |
9131 |
|
return std::to_string(options.quantifiers.sygusPbeMultiFairDiff); |
9132 |
|
} |
9133 |
8 |
if (name == "sygus-qe-preproc") { |
9134 |
|
return options.quantifiers.sygusQePreproc ? "true" : "false"; |
9135 |
|
} |
9136 |
8 |
if (name == "sygus-query-gen") { |
9137 |
|
return options.quantifiers.sygusQueryGen ? "true" : "false"; |
9138 |
|
} |
9139 |
8 |
if (name == "sygus-query-gen-check") { |
9140 |
|
return options.quantifiers.sygusQueryGenCheck ? "true" : "false"; |
9141 |
|
} |
9142 |
8 |
if (name == "sygus-query-gen-dump-files") { |
9143 |
|
std::stringstream ss; |
9144 |
|
ss << options.quantifiers.sygusQueryGenDumpFiles; |
9145 |
|
return ss.str(); |
9146 |
|
} |
9147 |
8 |
if (name == "sygus-query-gen-thresh") { |
9148 |
|
return std::to_string(options.quantifiers.sygusQueryGenThresh); |
9149 |
|
} |
9150 |
8 |
if (name == "sygus-rec-fun") { |
9151 |
|
return options.quantifiers.sygusRecFun ? "true" : "false"; |
9152 |
|
} |
9153 |
8 |
if (name == "sygus-rec-fun-eval-limit") { |
9154 |
|
return std::to_string(options.quantifiers.sygusRecFunEvalLimit); |
9155 |
|
} |
9156 |
8 |
if (name == "sygus-repair-const") { |
9157 |
|
return options.quantifiers.sygusRepairConst ? "true" : "false"; |
9158 |
|
} |
9159 |
8 |
if (name == "sygus-repair-const-timeout") { |
9160 |
|
return std::to_string(options.quantifiers.sygusRepairConstTimeout); |
9161 |
|
} |
9162 |
8 |
if (name == "sygus-rr") { |
9163 |
|
return options.quantifiers.sygusRew ? "true" : "false"; |
9164 |
|
} |
9165 |
8 |
if (name == "sygus-rr-synth") { |
9166 |
|
return options.quantifiers.sygusRewSynth ? "true" : "false"; |
9167 |
|
} |
9168 |
8 |
if (name == "sygus-rr-synth-accel") { |
9169 |
|
return options.quantifiers.sygusRewSynthAccel ? "true" : "false"; |
9170 |
|
} |
9171 |
8 |
if (name == "sygus-rr-synth-check") { |
9172 |
|
return options.quantifiers.sygusRewSynthCheck ? "true" : "false"; |
9173 |
|
} |
9174 |
8 |
if (name == "sygus-rr-synth-filter-cong") { |
9175 |
|
return options.quantifiers.sygusRewSynthFilterCong ? "true" : "false"; |
9176 |
|
} |
9177 |
8 |
if (name == "sygus-rr-synth-filter-match") { |
9178 |
|
return options.quantifiers.sygusRewSynthFilterMatch ? "true" : "false"; |
9179 |
|
} |
9180 |
8 |
if (name == "sygus-rr-synth-filter-nl") { |
9181 |
|
return options.quantifiers.sygusRewSynthFilterNonLinear ? "true" : "false"; |
9182 |
|
} |
9183 |
8 |
if (name == "sygus-rr-synth-filter-order") { |
9184 |
|
return options.quantifiers.sygusRewSynthFilterOrder ? "true" : "false"; |
9185 |
|
} |
9186 |
8 |
if (name == "sygus-rr-synth-input") { |
9187 |
|
return options.quantifiers.sygusRewSynthInput ? "true" : "false"; |
9188 |
|
} |
9189 |
8 |
if (name == "sygus-rr-synth-input-nvars") { |
9190 |
|
return std::to_string(options.quantifiers.sygusRewSynthInputNVars); |
9191 |
|
} |
9192 |
8 |
if (name == "sygus-rr-synth-input-use-bool") { |
9193 |
|
return options.quantifiers.sygusRewSynthInputUseBool ? "true" : "false"; |
9194 |
|
} |
9195 |
8 |
if (name == "sygus-rr-synth-rec") { |
9196 |
|
return options.quantifiers.sygusRewSynthRec ? "true" : "false"; |
9197 |
|
} |
9198 |
8 |
if (name == "sygus-rr-verify") { |
9199 |
|
return options.quantifiers.sygusRewVerify ? "true" : "false"; |
9200 |
|
} |
9201 |
8 |
if (name == "sygus-rr-verify-abort") { |
9202 |
|
return options.quantifiers.sygusRewVerifyAbort ? "true" : "false"; |
9203 |
|
} |
9204 |
8 |
if (name == "sygus-sample-fp-uniform") { |
9205 |
|
return options.quantifiers.sygusSampleFpUniform ? "true" : "false"; |
9206 |
|
} |
9207 |
8 |
if (name == "sygus-sample-grammar") { |
9208 |
|
return options.quantifiers.sygusSampleGrammar ? "true" : "false"; |
9209 |
|
} |
9210 |
8 |
if (name == "sygus-samples") { |
9211 |
|
return std::to_string(options.quantifiers.sygusSamples); |
9212 |
|
} |
9213 |
8 |
if (name == "sygus-si-abort") { |
9214 |
|
return options.quantifiers.cegqiSingleInvAbort ? "true" : "false"; |
9215 |
|
} |
9216 |
8 |
if (name == "sygus-si-partial") { |
9217 |
|
return options.quantifiers.cegqiSingleInvPartial ? "true" : "false"; |
9218 |
|
} |
9219 |
8 |
if (name == "sygus-si-rcons-limit") { |
9220 |
|
return std::to_string(options.quantifiers.cegqiSingleInvReconstructLimit); |
9221 |
|
} |
9222 |
8 |
if (name == "sygus-si-rcons") { |
9223 |
|
std::stringstream ss; |
9224 |
|
ss << options.quantifiers.cegqiSingleInvReconstruct; |
9225 |
|
return ss.str(); |
9226 |
|
} |
9227 |
8 |
if (name == "sygus-si-reconstruct-const") { |
9228 |
|
return options.quantifiers.cegqiSingleInvReconstructConst ? "true" : "false"; |
9229 |
|
} |
9230 |
8 |
if (name == "sygus-si") { |
9231 |
|
std::stringstream ss; |
9232 |
|
ss << options.quantifiers.cegqiSingleInvMode; |
9233 |
|
return ss.str(); |
9234 |
|
} |
9235 |
8 |
if (name == "sygus-stream") { |
9236 |
|
return options.quantifiers.sygusStream ? "true" : "false"; |
9237 |
|
} |
9238 |
8 |
if (name == "sygus-templ-embed-grammar") { |
9239 |
|
return options.quantifiers.sygusTemplEmbedGrammar ? "true" : "false"; |
9240 |
|
} |
9241 |
8 |
if (name == "sygus-unif-cond-independent-no-repeat-sol") { |
9242 |
|
return options.quantifiers.sygusUnifCondIndNoRepeatSol ? "true" : "false"; |
9243 |
|
} |
9244 |
8 |
if (name == "sygus-unif-pi") { |
9245 |
|
std::stringstream ss; |
9246 |
|
ss << options.quantifiers.sygusUnifPi; |
9247 |
|
return ss.str(); |
9248 |
|
} |
9249 |
8 |
if (name == "sygus-unif-shuffle-cond") { |
9250 |
|
return options.quantifiers.sygusUnifShuffleCond ? "true" : "false"; |
9251 |
|
} |
9252 |
8 |
if (name == "sygus-verify-inst-max-rounds") { |
9253 |
|
return std::to_string(options.quantifiers.sygusVerifyInstMaxRounds); |
9254 |
|
} |
9255 |
8 |
if (name == "term-db-cd") { |
9256 |
|
return options.quantifiers.termDbCd ? "true" : "false"; |
9257 |
|
} |
9258 |
8 |
if (name == "term-db-mode") { |
9259 |
|
std::stringstream ss; |
9260 |
|
ss << options.quantifiers.termDbMode; |
9261 |
|
return ss.str(); |
9262 |
|
} |
9263 |
8 |
if (name == "trigger-active-sel") { |
9264 |
|
std::stringstream ss; |
9265 |
|
ss << options.quantifiers.triggerActiveSelMode; |
9266 |
|
return ss.str(); |
9267 |
|
} |
9268 |
8 |
if (name == "trigger-sel") { |
9269 |
|
std::stringstream ss; |
9270 |
|
ss << options.quantifiers.triggerSelMode; |
9271 |
|
return ss.str(); |
9272 |
|
} |
9273 |
8 |
if (name == "user-pat") { |
9274 |
|
std::stringstream ss; |
9275 |
|
ss << options.quantifiers.userPatternsQuant; |
9276 |
|
return ss.str(); |
9277 |
|
} |
9278 |
8 |
if (name == "var-elim-quant") { |
9279 |
|
return options.quantifiers.varElimQuant ? "true" : "false"; |
9280 |
|
} |
9281 |
8 |
if (name == "var-ineq-elim-quant") { |
9282 |
|
return options.quantifiers.varIneqElimQuant ? "true" : "false"; |
9283 |
|
} |
9284 |
8 |
if (name == "sep-check-neg") { |
9285 |
|
return options.sep.sepCheckNeg ? "true" : "false"; |
9286 |
|
} |
9287 |
8 |
if (name == "sep-child-refine") { |
9288 |
|
return options.sep.sepChildRefine ? "true" : "false"; |
9289 |
|
} |
9290 |
8 |
if (name == "sep-deq-c") { |
9291 |
|
return options.sep.sepDisequalC ? "true" : "false"; |
9292 |
|
} |
9293 |
8 |
if (name == "sep-exp") { |
9294 |
|
return options.sep.sepExp ? "true" : "false"; |
9295 |
|
} |
9296 |
8 |
if (name == "sep-min-refine") { |
9297 |
|
return options.sep.sepMinimalRefine ? "true" : "false"; |
9298 |
|
} |
9299 |
8 |
if (name == "sep-pre-skolem-emp") { |
9300 |
|
return options.sep.sepPreSkolemEmp ? "true" : "false"; |
9301 |
|
} |
9302 |
8 |
if (name == "sets-ext") { |
9303 |
|
return options.sets.setsExt ? "true" : "false"; |
9304 |
|
} |
9305 |
8 |
if (name == "sets-infer-as-lemmas") { |
9306 |
|
return options.sets.setsInferAsLemmas ? "true" : "false"; |
9307 |
|
} |
9308 |
8 |
if (name == "sets-proxy-lemmas") { |
9309 |
|
return options.sets.setsProxyLemmas ? "true" : "false"; |
9310 |
|
} |
9311 |
8 |
if (name == "abstract-values") { |
9312 |
|
return options.smt.abstractValues ? "true" : "false"; |
9313 |
|
} |
9314 |
8 |
if (name == "ackermann") { |
9315 |
|
return options.smt.ackermann ? "true" : "false"; |
9316 |
|
} |
9317 |
8 |
if (name == "block-models") { |
9318 |
|
std::stringstream ss; |
9319 |
|
ss << options.smt.blockModelsMode; |
9320 |
|
return ss.str(); |
9321 |
|
} |
9322 |
8 |
if (name == "bvand-integer-granularity") { |
9323 |
|
return std::to_string(options.smt.BVAndIntegerGranularity); |
9324 |
|
} |
9325 |
8 |
if (name == "check-abducts") { |
9326 |
|
return options.smt.checkAbducts ? "true" : "false"; |
9327 |
|
} |
9328 |
8 |
if (name == "check-interpols") { |
9329 |
|
return options.smt.checkInterpols ? "true" : "false"; |
9330 |
|
} |
9331 |
8 |
if (name == "check-models") { |
9332 |
2 |
return options.smt.checkModels ? "true" : "false"; |
9333 |
|
} |
9334 |
6 |
if (name == "check-proofs") { |
9335 |
|
return options.smt.checkProofs ? "true" : "false"; |
9336 |
|
} |
9337 |
6 |
if (name == "check-synth-sol") { |
9338 |
|
return options.smt.checkSynthSol ? "true" : "false"; |
9339 |
|
} |
9340 |
6 |
if (name == "check-unsat-cores") { |
9341 |
|
return options.smt.checkUnsatCores ? "true" : "false"; |
9342 |
|
} |
9343 |
6 |
if (name == "debug-check-models") { |
9344 |
|
return options.smt.debugCheckModels ? "true" : "false"; |
9345 |
|
} |
9346 |
6 |
if (name == "dump-to") { |
9347 |
|
std::stringstream ss; |
9348 |
|
ss << options.smt.dumpToFileName; |
9349 |
|
return ss.str(); |
9350 |
|
} |
9351 |
6 |
if (name == "dump") { |
9352 |
|
return options.smt.dumpModeString; |
9353 |
|
} |
9354 |
6 |
if (name == "early-ite-removal") { |
9355 |
|
return options.smt.earlyIteRemoval ? "true" : "false"; |
9356 |
|
} |
9357 |
6 |
if (name == "expand-definitions") { |
9358 |
|
return options.smt.expandDefinitions ? "true" : "false"; |
9359 |
|
} |
9360 |
6 |
if (name == "ext-rew-prep") { |
9361 |
|
return options.smt.extRewPrep ? "true" : "false"; |
9362 |
|
} |
9363 |
6 |
if (name == "ext-rew-prep-agg") { |
9364 |
|
return options.smt.extRewPrepAgg ? "true" : "false"; |
9365 |
|
} |
9366 |
6 |
if (name == "foreign-theory-rewrite") { |
9367 |
|
return options.smt.foreignTheoryRewrite ? "true" : "false"; |
9368 |
|
} |
9369 |
6 |
if (name == "iand-mode") { |
9370 |
|
std::stringstream ss; |
9371 |
|
ss << options.smt.iandMode; |
9372 |
|
return ss.str(); |
9373 |
|
} |
9374 |
6 |
if (name == "interactive-mode") { |
9375 |
|
return options.smt.interactiveMode ? "true" : "false"; |
9376 |
|
} |
9377 |
6 |
if (name == "ite-simp") { |
9378 |
|
return options.smt.doITESimp ? "true" : "false"; |
9379 |
|
} |
9380 |
6 |
if (name == "learned-rewrite") { |
9381 |
|
return options.smt.learnedRewrite ? "true" : "false"; |
9382 |
|
} |
9383 |
6 |
if (name == "minimal-unsat-cores") { |
9384 |
|
return options.smt.minimalUnsatCores ? "true" : "false"; |
9385 |
|
} |
9386 |
6 |
if (name == "model-cores") { |
9387 |
|
std::stringstream ss; |
9388 |
|
ss << options.smt.modelCoresMode; |
9389 |
|
return ss.str(); |
9390 |
|
} |
9391 |
6 |
if (name == "model-u-print" || name == "model-uninterp-print") { |
9392 |
|
std::stringstream ss; |
9393 |
|
ss << options.smt.modelUninterpPrint; |
9394 |
|
return ss.str(); |
9395 |
|
} |
9396 |
6 |
if (name == "model-witness-value") { |
9397 |
|
return options.smt.modelWitnessValue ? "true" : "false"; |
9398 |
|
} |
9399 |
6 |
if (name == "on-repeat-ite-simp") { |
9400 |
|
return options.smt.doITESimpOnRepeat ? "true" : "false"; |
9401 |
|
} |
9402 |
6 |
if (name == "produce-abducts") { |
9403 |
|
return options.smt.produceAbducts ? "true" : "false"; |
9404 |
|
} |
9405 |
6 |
if (name == "produce-assertions") { |
9406 |
|
return options.smt.produceAssertions ? "true" : "false"; |
9407 |
|
} |
9408 |
6 |
if (name == "produce-assignments") { |
9409 |
|
return options.smt.produceAssignments ? "true" : "false"; |
9410 |
|
} |
9411 |
6 |
if (name == "produce-interpols") { |
9412 |
|
std::stringstream ss; |
9413 |
|
ss << options.smt.produceInterpols; |
9414 |
|
return ss.str(); |
9415 |
|
} |
9416 |
6 |
if (name == "produce-models") { |
9417 |
3 |
return options.smt.produceModels ? "true" : "false"; |
9418 |
|
} |
9419 |
3 |
if (name == "produce-proofs") { |
9420 |
|
return options.smt.produceProofs ? "true" : "false"; |
9421 |
|
} |
9422 |
3 |
if (name == "produce-unsat-assumptions") { |
9423 |
|
return options.smt.unsatAssumptions ? "true" : "false"; |
9424 |
|
} |
9425 |
3 |
if (name == "produce-unsat-cores") { |
9426 |
|
return options.smt.unsatCores ? "true" : "false"; |
9427 |
|
} |
9428 |
3 |
if (name == "repeat-simp") { |
9429 |
|
return options.smt.repeatSimp ? "true" : "false"; |
9430 |
|
} |
9431 |
3 |
if (name == "simp-ite-compress") { |
9432 |
|
return options.smt.compressItes ? "true" : "false"; |
9433 |
|
} |
9434 |
3 |
if (name == "simp-ite-hunt-zombies") { |
9435 |
|
return std::to_string(options.smt.zombieHuntThreshold); |
9436 |
|
} |
9437 |
3 |
if (name == "simp-with-care") { |
9438 |
|
return options.smt.simplifyWithCareEnabled ? "true" : "false"; |
9439 |
|
} |
9440 |
3 |
if (name == "simplification" || name == "simplification-mode") { |
9441 |
2 |
std::stringstream ss; |
9442 |
1 |
ss << options.smt.simplificationMode; |
9443 |
1 |
return ss.str(); |
9444 |
|
} |
9445 |
2 |
if (name == "solve-bv-as-int") { |
9446 |
|
std::stringstream ss; |
9447 |
|
ss << options.smt.solveBVAsInt; |
9448 |
|
return ss.str(); |
9449 |
|
} |
9450 |
2 |
if (name == "solve-int-as-bv") { |
9451 |
|
return std::to_string(options.smt.solveIntAsBV); |
9452 |
|
} |
9453 |
2 |
if (name == "solve-real-as-int") { |
9454 |
|
return options.smt.solveRealAsInt ? "true" : "false"; |
9455 |
|
} |
9456 |
2 |
if (name == "sort-inference") { |
9457 |
|
return options.smt.sortInference ? "true" : "false"; |
9458 |
|
} |
9459 |
2 |
if (name == "static-learning") { |
9460 |
|
return options.smt.doStaticLearning ? "true" : "false"; |
9461 |
|
} |
9462 |
2 |
if (name == "sygus-out") { |
9463 |
|
std::stringstream ss; |
9464 |
|
ss << options.smt.sygusOut; |
9465 |
|
return ss.str(); |
9466 |
|
} |
9467 |
2 |
if (name == "sygus-print-callbacks") { |
9468 |
|
return options.smt.sygusPrintCallbacks ? "true" : "false"; |
9469 |
|
} |
9470 |
2 |
if (name == "unconstrained-simp") { |
9471 |
|
return options.smt.unconstrainedSimp ? "true" : "false"; |
9472 |
|
} |
9473 |
2 |
if (name == "unsat-cores-mode") { |
9474 |
|
std::stringstream ss; |
9475 |
|
ss << options.smt.unsatCoresMode; |
9476 |
|
return ss.str(); |
9477 |
|
} |
9478 |
2 |
if (name == "re-elim") { |
9479 |
|
return options.strings.regExpElim ? "true" : "false"; |
9480 |
|
} |
9481 |
2 |
if (name == "re-elim-agg") { |
9482 |
|
return options.strings.regExpElimAgg ? "true" : "false"; |
9483 |
|
} |
9484 |
2 |
if (name == "re-inter-mode") { |
9485 |
|
std::stringstream ss; |
9486 |
|
ss << options.strings.stringRegExpInterMode; |
9487 |
|
return ss.str(); |
9488 |
|
} |
9489 |
2 |
if (name == "strings-check-entail-len") { |
9490 |
|
return options.strings.stringCheckEntailLen ? "true" : "false"; |
9491 |
|
} |
9492 |
2 |
if (name == "strings-eager") { |
9493 |
|
return options.strings.stringEager ? "true" : "false"; |
9494 |
|
} |
9495 |
2 |
if (name == "strings-eager-eval") { |
9496 |
|
return options.strings.stringEagerEval ? "true" : "false"; |
9497 |
|
} |
9498 |
2 |
if (name == "strings-eager-len") { |
9499 |
|
return options.strings.stringEagerLen ? "true" : "false"; |
9500 |
|
} |
9501 |
2 |
if (name == "strings-exp") { |
9502 |
|
return options.strings.stringExp ? "true" : "false"; |
9503 |
|
} |
9504 |
2 |
if (name == "strings-ff") { |
9505 |
|
return options.strings.stringFlatForms ? "true" : "false"; |
9506 |
|
} |
9507 |
2 |
if (name == "strings-fmf") { |
9508 |
|
return options.strings.stringFMF ? "true" : "false"; |
9509 |
|
} |
9510 |
2 |
if (name == "strings-guess-model") { |
9511 |
|
return options.strings.stringGuessModel ? "true" : "false"; |
9512 |
|
} |
9513 |
2 |
if (name == "strings-infer-as-lemmas") { |
9514 |
|
return options.strings.stringInferAsLemmas ? "true" : "false"; |
9515 |
|
} |
9516 |
2 |
if (name == "strings-infer-sym") { |
9517 |
|
return options.strings.stringInferSym ? "true" : "false"; |
9518 |
|
} |
9519 |
2 |
if (name == "strings-lazy-pp") { |
9520 |
|
return options.strings.stringLazyPreproc ? "true" : "false"; |
9521 |
|
} |
9522 |
2 |
if (name == "strings-len-norm") { |
9523 |
|
return options.strings.stringLenNorm ? "true" : "false"; |
9524 |
|
} |
9525 |
2 |
if (name == "strings-lprop-csp") { |
9526 |
|
return options.strings.stringLenPropCsp ? "true" : "false"; |
9527 |
|
} |
9528 |
2 |
if (name == "strings-min-prefix-explain") { |
9529 |
|
return options.strings.stringMinPrefixExplain ? "true" : "false"; |
9530 |
|
} |
9531 |
2 |
if (name == "strings-process-loop-mode") { |
9532 |
|
std::stringstream ss; |
9533 |
|
ss << options.strings.stringProcessLoopMode; |
9534 |
|
return ss.str(); |
9535 |
|
} |
9536 |
2 |
if (name == "strings-rexplain-lemmas") { |
9537 |
|
return options.strings.stringRExplainLemmas ? "true" : "false"; |
9538 |
|
} |
9539 |
2 |
if (name == "strings-unified-vspt") { |
9540 |
|
return options.strings.stringUnifiedVSpt ? "true" : "false"; |
9541 |
|
} |
9542 |
2 |
if (name == "assign-function-values") { |
9543 |
|
return options.theory.assignFunctionValues ? "true" : "false"; |
9544 |
|
} |
9545 |
2 |
if (name == "condense-function-values") { |
9546 |
|
return options.theory.condenseFunctionValues ? "true" : "false"; |
9547 |
|
} |
9548 |
2 |
if (name == "ee-mode") { |
9549 |
|
std::stringstream ss; |
9550 |
|
ss << options.theory.eeMode; |
9551 |
|
return ss.str(); |
9552 |
|
} |
9553 |
2 |
if (name == "relevance-filter") { |
9554 |
|
return options.theory.relevanceFilter ? "true" : "false"; |
9555 |
|
} |
9556 |
2 |
if (name == "tc-mode") { |
9557 |
|
std::stringstream ss; |
9558 |
|
ss << options.theory.tcMode; |
9559 |
|
return ss.str(); |
9560 |
|
} |
9561 |
2 |
if (name == "theoryof-mode") { |
9562 |
|
std::stringstream ss; |
9563 |
|
ss << options.theory.theoryOfMode; |
9564 |
|
return ss.str(); |
9565 |
|
} |
9566 |
2 |
if (name == "symmetry-breaker" || name == "uf-symmetry-breaker") { |
9567 |
|
return options.uf.ufSymmetryBreaker ? "true" : "false"; |
9568 |
|
} |
9569 |
2 |
if (name == "uf-ho") { |
9570 |
|
return options.uf.ufHo ? "true" : "false"; |
9571 |
|
} |
9572 |
2 |
if (name == "uf-ho-ext") { |
9573 |
|
return options.uf.ufHoExt ? "true" : "false"; |
9574 |
|
} |
9575 |
2 |
if (name == "uf-ss-abort-card") { |
9576 |
|
return std::to_string(options.uf.ufssAbortCardinality); |
9577 |
|
} |
9578 |
2 |
if (name == "uf-ss-fair") { |
9579 |
|
return options.uf.ufssFairness ? "true" : "false"; |
9580 |
|
} |
9581 |
2 |
if (name == "uf-ss-fair-monotone") { |
9582 |
|
return options.uf.ufssFairnessMonotone ? "true" : "false"; |
9583 |
|
} |
9584 |
2 |
if (name == "uf-ss-totality-limited") { |
9585 |
|
return std::to_string(options.uf.ufssTotalityLimited); |
9586 |
|
} |
9587 |
2 |
if (name == "uf-ss-totality-sym-break") { |
9588 |
|
return options.uf.ufssTotalitySymBreak ? "true" : "false"; |
9589 |
|
} |
9590 |
2 |
if (name == "uf-ss") { |
9591 |
|
std::stringstream ss; |
9592 |
|
ss << options.uf.ufssMode; |
9593 |
|
return ss.str(); |
9594 |
|
} |
9595 |
|
|
9596 |
2 |
throw UnrecognizedOptionException(name); |
9597 |
|
} |
9598 |
|
|
9599 |
9570 |
void setInternal(Options& opts, const std::string& name, |
9600 |
|
const std::string& optionarg) |
9601 |
|
{ |
9602 |
9570 |
if (name == "approx-branch-depth") { |
9603 |
|
assign_arith_maxApproxDepth(opts, name, optionarg); |
9604 |
|
return; |
9605 |
|
} |
9606 |
9570 |
if (name == "arith-brab") { |
9607 |
|
assign_arith_brabTest(opts, name, optionarg == "true"); |
9608 |
|
return; |
9609 |
|
} |
9610 |
9570 |
if (name == "arith-cong-man") { |
9611 |
|
assign_arith_arithCongMan(opts, name, optionarg == "true"); |
9612 |
|
return; |
9613 |
|
} |
9614 |
9570 |
if (name == "arith-eq-solver") { |
9615 |
|
assign_arith_arithEqSolver(opts, name, optionarg == "true"); |
9616 |
|
return; |
9617 |
|
} |
9618 |
9570 |
if (name == "arith-no-partial-fun") { |
9619 |
3 |
assign_arith_arithNoPartialFun(opts, name, optionarg == "true"); |
9620 |
3 |
return; |
9621 |
|
} |
9622 |
9567 |
if (name == "arith-prop-clauses") { |
9623 |
|
assign_arith_arithPropAsLemmaLength(opts, name, optionarg); |
9624 |
|
return; |
9625 |
|
} |
9626 |
9567 |
if (name == "arith-prop") { |
9627 |
|
assign_arith_arithPropagationMode(opts, name, optionarg); |
9628 |
|
return; |
9629 |
|
} |
9630 |
9567 |
if (name == "arith-rewrite-equalities") { |
9631 |
5 |
assign_arith_arithRewriteEq(opts, name, optionarg == "true"); |
9632 |
5 |
return; |
9633 |
|
} |
9634 |
9562 |
if (name == "collect-pivot-stats") { |
9635 |
|
assign_arith_collectPivots(opts, name, optionarg == "true"); |
9636 |
|
return; |
9637 |
|
} |
9638 |
9562 |
if (name == "cut-all-bounded") { |
9639 |
|
assign_arith_doCutAllBounded(opts, name, optionarg == "true"); |
9640 |
|
return; |
9641 |
|
} |
9642 |
9562 |
if (name == "dio-decomps") { |
9643 |
|
assign_arith_exportDioDecompositions(opts, name, optionarg == "true"); |
9644 |
|
return; |
9645 |
|
} |
9646 |
9562 |
if (name == "dio-repeat") { |
9647 |
|
assign_arith_dioRepeat(opts, name, optionarg == "true"); |
9648 |
|
return; |
9649 |
|
} |
9650 |
9562 |
if (name == "dio-solver") { |
9651 |
|
assign_arith_arithDioSolver(opts, name, optionarg == "true"); |
9652 |
|
return; |
9653 |
|
} |
9654 |
9562 |
if (name == "dio-turns") { |
9655 |
|
assign_arith_dioSolverTurns(opts, name, optionarg); |
9656 |
|
return; |
9657 |
|
} |
9658 |
9562 |
if (name == "error-selection-rule") { |
9659 |
|
assign_arith_arithErrorSelectionRule(opts, name, optionarg); |
9660 |
|
return; |
9661 |
|
} |
9662 |
9562 |
if (name == "fc-penalties") { |
9663 |
|
assign_arith_havePenalties(opts, name, optionarg == "true"); |
9664 |
|
return; |
9665 |
|
} |
9666 |
9562 |
if (name == "heuristic-pivots") { |
9667 |
|
assign_arith_arithHeuristicPivots(opts, name, optionarg); |
9668 |
|
return; |
9669 |
|
} |
9670 |
9562 |
if (name == "lemmas-on-replay-failure") { |
9671 |
|
assign_arith_replayFailureLemma(opts, name, optionarg == "true"); |
9672 |
|
return; |
9673 |
|
} |
9674 |
9562 |
if (name == "maxCutsInContext") { |
9675 |
|
assign_arith_maxCutsInContext(opts, name, optionarg); |
9676 |
|
return; |
9677 |
|
} |
9678 |
9562 |
if (name == "miplib-trick") { |
9679 |
|
assign_arith_arithMLTrick(opts, name, optionarg == "true"); |
9680 |
|
return; |
9681 |
|
} |
9682 |
9562 |
if (name == "miplib-trick-subs") { |
9683 |
|
assign_arith_arithMLTrickSubstitutions(opts, name, optionarg); |
9684 |
|
return; |
9685 |
|
} |
9686 |
9562 |
if (name == "new-prop") { |
9687 |
|
assign_arith_newProp(opts, name, optionarg == "true"); |
9688 |
|
return; |
9689 |
|
} |
9690 |
9562 |
if (name == "nl-cad") { |
9691 |
|
assign_arith_nlCad(opts, name, optionarg == "true"); |
9692 |
|
return; |
9693 |
|
} |
9694 |
9562 |
if (name == "nl-cad-initial") { |
9695 |
|
assign_arith_nlCadUseInitial(opts, name, optionarg == "true"); |
9696 |
|
return; |
9697 |
|
} |
9698 |
9562 |
if (name == "nl-cad-lift") { |
9699 |
|
assign_arith_nlCadLifting(opts, name, optionarg); |
9700 |
|
return; |
9701 |
|
} |
9702 |
9562 |
if (name == "nl-cad-proj") { |
9703 |
|
assign_arith_nlCadProjection(opts, name, optionarg); |
9704 |
|
return; |
9705 |
|
} |
9706 |
9562 |
if (name == "nl-ext-ent-conf") { |
9707 |
|
assign_arith_nlExtEntailConflicts(opts, name, optionarg == "true"); |
9708 |
|
return; |
9709 |
|
} |
9710 |
9562 |
if (name == "nl-ext-factor") { |
9711 |
|
assign_arith_nlExtFactor(opts, name, optionarg == "true"); |
9712 |
|
return; |
9713 |
|
} |
9714 |
9562 |
if (name == "nl-ext-inc-prec") { |
9715 |
|
assign_arith_nlExtIncPrecision(opts, name, optionarg == "true"); |
9716 |
|
return; |
9717 |
|
} |
9718 |
9562 |
if (name == "nl-ext-purify") { |
9719 |
2 |
assign_arith_nlExtPurify(opts, name, optionarg == "true"); |
9720 |
2 |
return; |
9721 |
|
} |
9722 |
9560 |
if (name == "nl-ext-rbound") { |
9723 |
|
assign_arith_nlExtResBound(opts, name, optionarg == "true"); |
9724 |
|
return; |
9725 |
|
} |
9726 |
9560 |
if (name == "nl-ext-rewrite") { |
9727 |
|
assign_arith_nlExtRewrites(opts, name, optionarg == "true"); |
9728 |
|
return; |
9729 |
|
} |
9730 |
9560 |
if (name == "nl-ext-split-zero") { |
9731 |
|
assign_arith_nlExtSplitZero(opts, name, optionarg == "true"); |
9732 |
|
return; |
9733 |
|
} |
9734 |
9560 |
if (name == "nl-ext-tf-taylor-deg") { |
9735 |
|
assign_arith_nlExtTfTaylorDegree(opts, name, optionarg); |
9736 |
|
return; |
9737 |
|
} |
9738 |
9560 |
if (name == "nl-ext-tf-tplanes") { |
9739 |
|
assign_arith_nlExtTfTangentPlanes(opts, name, optionarg == "true"); |
9740 |
|
return; |
9741 |
|
} |
9742 |
9560 |
if (name == "nl-ext-tplanes") { |
9743 |
|
assign_arith_nlExtTangentPlanes(opts, name, optionarg == "true"); |
9744 |
|
return; |
9745 |
|
} |
9746 |
9560 |
if (name == "nl-ext-tplanes-interleave") { |
9747 |
|
assign_arith_nlExtTangentPlanesInterleave(opts, name, optionarg == "true"); |
9748 |
|
return; |
9749 |
|
} |
9750 |
9560 |
if (name == "nl-ext") { |
9751 |
|
assign_arith_nlExt(opts, name, optionarg); |
9752 |
|
return; |
9753 |
|
} |
9754 |
9560 |
if (name == "nl-icp") { |
9755 |
|
assign_arith_nlICP(opts, name, optionarg == "true"); |
9756 |
|
return; |
9757 |
|
} |
9758 |
9560 |
if (name == "nl-rlv") { |
9759 |
|
assign_arith_nlRlvMode(opts, name, optionarg); |
9760 |
|
return; |
9761 |
|
} |
9762 |
9560 |
if (name == "pb-rewrites") { |
9763 |
|
assign_arith_pbRewrites(opts, name, optionarg == "true"); |
9764 |
|
return; |
9765 |
|
} |
9766 |
9560 |
if (name == "pivot-threshold") { |
9767 |
|
assign_arith_arithPivotThreshold(opts, name, optionarg); |
9768 |
|
return; |
9769 |
|
} |
9770 |
9560 |
if (name == "pp-assert-max-sub-size") { |
9771 |
|
assign_arith_ppAssertMaxSubSize(opts, name, optionarg); |
9772 |
|
return; |
9773 |
|
} |
9774 |
9560 |
if (name == "prop-row-length") { |
9775 |
|
assign_arith_arithPropagateMaxLength(opts, name, optionarg); |
9776 |
|
return; |
9777 |
|
} |
9778 |
9560 |
if (name == "replay-early-close-depth") { |
9779 |
|
assign_arith_replayEarlyCloseDepths(opts, name, optionarg); |
9780 |
|
return; |
9781 |
|
} |
9782 |
9560 |
if (name == "replay-failure-penalty") { |
9783 |
|
assign_arith_replayFailurePenalty(opts, name, optionarg); |
9784 |
|
return; |
9785 |
|
} |
9786 |
9560 |
if (name == "replay-lemma-reject-cut") { |
9787 |
|
assign_arith_lemmaRejectCutSize(opts, name, optionarg); |
9788 |
|
return; |
9789 |
|
} |
9790 |
9560 |
if (name == "replay-num-err-penalty") { |
9791 |
|
assign_arith_replayNumericFailurePenalty(opts, name, optionarg); |
9792 |
|
return; |
9793 |
|
} |
9794 |
9560 |
if (name == "replay-reject-cut") { |
9795 |
|
assign_arith_replayRejectCutSize(opts, name, optionarg); |
9796 |
|
return; |
9797 |
|
} |
9798 |
9560 |
if (name == "replay-soi-major-threshold-pen") { |
9799 |
|
assign_arith_soiApproxMajorFailurePen(opts, name, optionarg); |
9800 |
|
return; |
9801 |
|
} |
9802 |
9560 |
if (name == "replay-soi-major-threshold") { |
9803 |
|
assign_arith_soiApproxMajorFailure(opts, name, optionarg); |
9804 |
|
return; |
9805 |
|
} |
9806 |
9560 |
if (name == "replay-soi-minor-threshold-pen") { |
9807 |
|
assign_arith_soiApproxMinorFailurePen(opts, name, optionarg); |
9808 |
|
return; |
9809 |
|
} |
9810 |
9560 |
if (name == "replay-soi-minor-threshold") { |
9811 |
|
assign_arith_soiApproxMinorFailure(opts, name, optionarg); |
9812 |
|
return; |
9813 |
|
} |
9814 |
9560 |
if (name == "restrict-pivots") { |
9815 |
|
assign_arith_restrictedPivots(opts, name, optionarg == "true"); |
9816 |
|
return; |
9817 |
|
} |
9818 |
9560 |
if (name == "revert-arith-models-on-unsat") { |
9819 |
|
assign_arith_revertArithModels(opts, name, optionarg == "true"); |
9820 |
|
return; |
9821 |
|
} |
9822 |
9560 |
if (name == "rr-turns") { |
9823 |
|
assign_arith_rrTurns(opts, name, optionarg); |
9824 |
|
return; |
9825 |
|
} |
9826 |
9560 |
if (name == "se-solve-int") { |
9827 |
|
assign_arith_trySolveIntStandardEffort(opts, name, optionarg == "true"); |
9828 |
|
return; |
9829 |
|
} |
9830 |
9560 |
if (name == "simplex-check-period") { |
9831 |
|
assign_arith_arithSimplexCheckPeriod(opts, name, optionarg); |
9832 |
|
return; |
9833 |
|
} |
9834 |
9560 |
if (name == "soi-qe") { |
9835 |
|
assign_arith_soiQuickExplain(opts, name, optionarg == "true"); |
9836 |
|
return; |
9837 |
|
} |
9838 |
9560 |
if (name == "standard-effort-variable-order-pivots") { |
9839 |
|
assign_arith_arithStandardCheckVarOrderPivots(opts, name, optionarg); |
9840 |
|
return; |
9841 |
|
} |
9842 |
9560 |
if (name == "unate-lemmas") { |
9843 |
|
assign_arith_arithUnateLemmaMode(opts, name, optionarg); |
9844 |
|
return; |
9845 |
|
} |
9846 |
9560 |
if (name == "use-approx") { |
9847 |
|
assign_arith_useApprox(opts, name, optionarg == "true"); |
9848 |
|
return; |
9849 |
|
} |
9850 |
9560 |
if (name == "use-fcsimplex") { |
9851 |
|
assign_arith_useFC(opts, name, optionarg == "true"); |
9852 |
|
return; |
9853 |
|
} |
9854 |
9560 |
if (name == "use-soi") { |
9855 |
|
assign_arith_useSOI(opts, name, optionarg == "true"); |
9856 |
|
return; |
9857 |
|
} |
9858 |
9560 |
if (name == "arrays-config") { |
9859 |
|
assign_arrays_arraysConfig(opts, name, optionarg); |
9860 |
|
return; |
9861 |
|
} |
9862 |
9560 |
if (name == "arrays-eager-index") { |
9863 |
|
assign_arrays_arraysEagerIndexSplitting(opts, name, optionarg == "true"); |
9864 |
|
return; |
9865 |
|
} |
9866 |
9560 |
if (name == "arrays-eager-lemmas") { |
9867 |
|
assign_arrays_arraysEagerLemmas(opts, name, optionarg == "true"); |
9868 |
|
return; |
9869 |
|
} |
9870 |
9560 |
if (name == "arrays-exp") { |
9871 |
7 |
assign_arrays_arraysExp(opts, name, optionarg == "true"); |
9872 |
7 |
return; |
9873 |
|
} |
9874 |
9553 |
if (name == "arrays-model-based") { |
9875 |
|
assign_arrays_arraysModelBased(opts, name, optionarg == "true"); |
9876 |
|
return; |
9877 |
|
} |
9878 |
9553 |
if (name == "arrays-optimize-linear") { |
9879 |
|
assign_arrays_arraysOptimizeLinear(opts, name, optionarg == "true"); |
9880 |
|
return; |
9881 |
|
} |
9882 |
9553 |
if (name == "arrays-prop") { |
9883 |
|
assign_arrays_arraysPropagate(opts, name, optionarg); |
9884 |
|
return; |
9885 |
|
} |
9886 |
9553 |
if (name == "arrays-reduce-sharing") { |
9887 |
|
assign_arrays_arraysReduceSharing(opts, name, optionarg == "true"); |
9888 |
|
return; |
9889 |
|
} |
9890 |
9553 |
if (name == "arrays-weak-equiv") { |
9891 |
|
assign_arrays_arraysWeakEquivalence(opts, name, optionarg == "true"); |
9892 |
|
return; |
9893 |
|
} |
9894 |
9553 |
if (name == "debug") { |
9895 |
|
opts.handler().enableDebugTag("debug", name, optionarg); |
9896 |
|
return; |
9897 |
|
} |
9898 |
9553 |
if (name == "diagnostic-output-channel" || name == "err") { |
9899 |
|
assign_base_err(opts, name, optionarg); |
9900 |
|
return; |
9901 |
|
} |
9902 |
9553 |
if (name == "in") { |
9903 |
|
assign_base_in(opts, name, optionarg); |
9904 |
|
return; |
9905 |
|
} |
9906 |
9553 |
if (name == "incremental") { |
9907 |
6621 |
assign_base_incrementalSolving(opts, name, optionarg == "true"); |
9908 |
6621 |
return; |
9909 |
|
} |
9910 |
2932 |
if (name == "input-language" || name == "lang") { |
9911 |
298 |
assign_base_inputLanguage(opts, name, optionarg); |
9912 |
298 |
return; |
9913 |
|
} |
9914 |
2634 |
if (name == "out" || name == "regular-output-channel") { |
9915 |
|
assign_base_out(opts, name, optionarg); |
9916 |
|
return; |
9917 |
|
} |
9918 |
2634 |
if (name == "output-lang" || name == "output-language") { |
9919 |
26 |
assign_base_outputLanguage(opts, name, optionarg); |
9920 |
26 |
return; |
9921 |
|
} |
9922 |
2608 |
if (name == "output") { |
9923 |
|
opts.handler().enableOutputTag("output", name, optionarg); |
9924 |
|
return; |
9925 |
|
} |
9926 |
2608 |
if (name == "parse-only") { |
9927 |
16 |
assign_base_parseOnly(opts, name, optionarg == "true"); |
9928 |
16 |
return; |
9929 |
|
} |
9930 |
2592 |
if (name == "preprocess-only") { |
9931 |
|
assign_base_preprocessOnly(opts, name, optionarg == "true"); |
9932 |
|
return; |
9933 |
|
} |
9934 |
2592 |
if (name == "print-success") { |
9935 |
28 |
assign_base_printSuccess(opts, name, optionarg == "true"); |
9936 |
28 |
return; |
9937 |
|
} |
9938 |
2564 |
if (name == "quiet") { |
9939 |
4 |
opts.handler().decreaseVerbosity("quiet", name); |
9940 |
4 |
return; |
9941 |
|
} |
9942 |
2560 |
if (name == "reproducible-resource-limit" || name == "rlimit-per") { |
9943 |
|
assign_base_perCallResourceLimit(opts, name, optionarg); |
9944 |
|
return; |
9945 |
|
} |
9946 |
2560 |
if (name == "rlimit") { |
9947 |
|
assign_base_cumulativeResourceLimit(opts, name, optionarg); |
9948 |
|
return; |
9949 |
|
} |
9950 |
2560 |
if (name == "rweight") { |
9951 |
|
opts.handler().setResourceWeight("rweight", name, optionarg); |
9952 |
|
return; |
9953 |
|
} |
9954 |
2560 |
if (name == "stats") { |
9955 |
2 |
assign_base_statistics(opts, name, optionarg == "true"); |
9956 |
2 |
return; |
9957 |
|
} |
9958 |
2558 |
if (name == "stats-all") { |
9959 |
1 |
assign_base_statisticsAll(opts, name, optionarg == "true"); |
9960 |
1 |
return; |
9961 |
|
} |
9962 |
2557 |
if (name == "stats-every-query") { |
9963 |
|
assign_base_statisticsEveryQuery(opts, name, optionarg == "true"); |
9964 |
|
return; |
9965 |
|
} |
9966 |
2557 |
if (name == "stats-expert") { |
9967 |
1 |
assign_base_statisticsExpert(opts, name, optionarg == "true"); |
9968 |
1 |
return; |
9969 |
|
} |
9970 |
2556 |
if (name == "tlimit-per") { |
9971 |
|
assign_base_perCallMillisecondLimit(opts, name, optionarg); |
9972 |
|
return; |
9973 |
|
} |
9974 |
2556 |
if (name == "tlimit") { |
9975 |
|
assign_base_cumulativeMillisecondLimit(opts, name, optionarg); |
9976 |
|
return; |
9977 |
|
} |
9978 |
2556 |
if (name == "trace") { |
9979 |
|
opts.handler().enableTraceTag("trace", name, optionarg); |
9980 |
|
return; |
9981 |
|
} |
9982 |
2556 |
if (name == "verbose") { |
9983 |
|
opts.handler().increaseVerbosity("verbose", name); |
9984 |
|
return; |
9985 |
|
} |
9986 |
2556 |
if (name == "verbosity") { |
9987 |
6 |
assign_base_verbosity(opts, name, optionarg); |
9988 |
6 |
return; |
9989 |
|
} |
9990 |
2550 |
if (name == "bitblast-aig") { |
9991 |
|
assign_bv_bitvectorAig(opts, name, optionarg == "true"); |
9992 |
|
return; |
9993 |
|
} |
9994 |
2550 |
if (name == "bitblast") { |
9995 |
2 |
assign_bv_bitblastMode(opts, name, optionarg); |
9996 |
2 |
return; |
9997 |
|
} |
9998 |
2548 |
if (name == "bitwise-eq") { |
9999 |
|
assign_bv_bitwiseEq(opts, name, optionarg == "true"); |
10000 |
|
return; |
10001 |
|
} |
10002 |
2548 |
if (name == "bool-to-bv") { |
10003 |
|
assign_bv_boolToBitvector(opts, name, optionarg); |
10004 |
|
return; |
10005 |
|
} |
10006 |
2548 |
if (name == "bv-abstraction") { |
10007 |
|
assign_bv_bvAbstraction(opts, name, optionarg == "true"); |
10008 |
|
return; |
10009 |
|
} |
10010 |
2548 |
if (name == "bv-aig-simp") { |
10011 |
|
assign_bv_bitvectorAigSimplifications(opts, name, optionarg); |
10012 |
|
return; |
10013 |
|
} |
10014 |
2548 |
if (name == "bv-alg-extf") { |
10015 |
|
assign_bv_bvAlgExtf(opts, name, optionarg == "true"); |
10016 |
|
return; |
10017 |
|
} |
10018 |
2548 |
if (name == "bv-algebraic-budget") { |
10019 |
|
assign_bv_bitvectorAlgebraicBudget(opts, name, optionarg); |
10020 |
|
return; |
10021 |
|
} |
10022 |
2548 |
if (name == "bv-algebraic-solver") { |
10023 |
|
assign_bv_bitvectorAlgebraicSolver(opts, name, optionarg == "true"); |
10024 |
|
return; |
10025 |
|
} |
10026 |
2548 |
if (name == "bv-assert-input") { |
10027 |
|
assign_bv_bvAssertInput(opts, name, optionarg == "true"); |
10028 |
|
return; |
10029 |
|
} |
10030 |
2548 |
if (name == "bv-eager-explanations") { |
10031 |
|
assign_bv_bvEagerExplanations(opts, name, optionarg == "true"); |
10032 |
|
return; |
10033 |
|
} |
10034 |
2548 |
if (name == "bv-eq-solver") { |
10035 |
|
assign_bv_bitvectorEqualitySolver(opts, name, optionarg == "true"); |
10036 |
|
return; |
10037 |
|
} |
10038 |
2548 |
if (name == "bv-extract-arith") { |
10039 |
|
assign_bv_bvExtractArithRewrite(opts, name, optionarg == "true"); |
10040 |
|
return; |
10041 |
|
} |
10042 |
2548 |
if (name == "bv-gauss-elim") { |
10043 |
|
assign_bv_bvGaussElim(opts, name, optionarg == "true"); |
10044 |
|
return; |
10045 |
|
} |
10046 |
2548 |
if (name == "bv-inequality-solver") { |
10047 |
|
assign_bv_bitvectorInequalitySolver(opts, name, optionarg == "true"); |
10048 |
|
return; |
10049 |
|
} |
10050 |
2548 |
if (name == "bv-intro-pow2") { |
10051 |
|
assign_bv_bvIntroducePow2(opts, name, optionarg == "true"); |
10052 |
|
return; |
10053 |
|
} |
10054 |
2548 |
if (name == "bv-num-func") { |
10055 |
|
assign_bv_bvNumFunc(opts, name, optionarg); |
10056 |
|
return; |
10057 |
|
} |
10058 |
2548 |
if (name == "bv-print-consts-as-indexed-symbols") { |
10059 |
|
assign_bv_bvPrintConstsAsIndexedSymbols(opts, name, optionarg == "true"); |
10060 |
|
return; |
10061 |
|
} |
10062 |
2548 |
if (name == "bv-propagate") { |
10063 |
|
assign_bv_bitvectorPropagate(opts, name, optionarg == "true"); |
10064 |
|
return; |
10065 |
|
} |
10066 |
2548 |
if (name == "bv-quick-xplain") { |
10067 |
|
assign_bv_bitvectorQuickXplain(opts, name, optionarg == "true"); |
10068 |
|
return; |
10069 |
|
} |
10070 |
2548 |
if (name == "bv-sat-solver") { |
10071 |
4 |
assign_bv_bvSatSolver(opts, name, optionarg); |
10072 |
2 |
return; |
10073 |
|
} |
10074 |
2544 |
if (name == "bv-skolemize") { |
10075 |
|
assign_bv_skolemizeArguments(opts, name, optionarg == "true"); |
10076 |
|
return; |
10077 |
|
} |
10078 |
2544 |
if (name == "bv-solver") { |
10079 |
2 |
assign_bv_bvSolver(opts, name, optionarg); |
10080 |
2 |
return; |
10081 |
|
} |
10082 |
2542 |
if (name == "bv-to-bool") { |
10083 |
|
assign_bv_bitvectorToBool(opts, name, optionarg == "true"); |
10084 |
|
return; |
10085 |
|
} |
10086 |
2542 |
if (name == "cdt-bisimilar") { |
10087 |
|
assign_datatypes_cdtBisimilar(opts, name, optionarg == "true"); |
10088 |
|
return; |
10089 |
|
} |
10090 |
2542 |
if (name == "dt-binary-split") { |
10091 |
|
assign_datatypes_dtBinarySplit(opts, name, optionarg == "true"); |
10092 |
|
return; |
10093 |
|
} |
10094 |
2542 |
if (name == "dt-blast-splits") { |
10095 |
|
assign_datatypes_dtBlastSplits(opts, name, optionarg == "true"); |
10096 |
|
return; |
10097 |
|
} |
10098 |
2542 |
if (name == "dt-cyclic") { |
10099 |
|
assign_datatypes_dtCyclic(opts, name, optionarg == "true"); |
10100 |
|
return; |
10101 |
|
} |
10102 |
2542 |
if (name == "dt-force-assignment") { |
10103 |
|
assign_datatypes_dtForceAssignment(opts, name, optionarg == "true"); |
10104 |
|
return; |
10105 |
|
} |
10106 |
2542 |
if (name == "dt-infer-as-lemmas") { |
10107 |
|
assign_datatypes_dtInferAsLemmas(opts, name, optionarg == "true"); |
10108 |
|
return; |
10109 |
|
} |
10110 |
2542 |
if (name == "dt-nested-rec") { |
10111 |
|
assign_datatypes_dtNestedRec(opts, name, optionarg == "true"); |
10112 |
|
return; |
10113 |
|
} |
10114 |
2542 |
if (name == "dt-polite-optimize") { |
10115 |
|
assign_datatypes_dtPoliteOptimize(opts, name, optionarg == "true"); |
10116 |
|
return; |
10117 |
|
} |
10118 |
2542 |
if (name == "dt-rewrite-error-sel") { |
10119 |
|
assign_datatypes_dtRewriteErrorSel(opts, name, optionarg == "true"); |
10120 |
|
return; |
10121 |
|
} |
10122 |
2542 |
if (name == "dt-share-sel") { |
10123 |
|
assign_datatypes_dtSharedSelectors(opts, name, optionarg == "true"); |
10124 |
|
return; |
10125 |
|
} |
10126 |
2542 |
if (name == "sygus-abort-size") { |
10127 |
|
assign_datatypes_sygusAbortSize(opts, name, optionarg); |
10128 |
|
return; |
10129 |
|
} |
10130 |
2542 |
if (name == "sygus-fair-max") { |
10131 |
|
assign_datatypes_sygusFairMax(opts, name, optionarg == "true"); |
10132 |
|
return; |
10133 |
|
} |
10134 |
2542 |
if (name == "sygus-fair") { |
10135 |
|
assign_datatypes_sygusFair(opts, name, optionarg); |
10136 |
|
return; |
10137 |
|
} |
10138 |
2542 |
if (name == "sygus-sym-break") { |
10139 |
2 |
assign_datatypes_sygusSymBreak(opts, name, optionarg == "true"); |
10140 |
2 |
return; |
10141 |
|
} |
10142 |
2540 |
if (name == "sygus-sym-break-agg") { |
10143 |
|
assign_datatypes_sygusSymBreakAgg(opts, name, optionarg == "true"); |
10144 |
|
return; |
10145 |
|
} |
10146 |
2540 |
if (name == "sygus-sym-break-dynamic") { |
10147 |
|
assign_datatypes_sygusSymBreakDynamic(opts, name, optionarg == "true"); |
10148 |
|
return; |
10149 |
|
} |
10150 |
2540 |
if (name == "sygus-sym-break-lazy") { |
10151 |
2 |
assign_datatypes_sygusSymBreakLazy(opts, name, optionarg == "true"); |
10152 |
2 |
return; |
10153 |
|
} |
10154 |
2538 |
if (name == "sygus-sym-break-pbe") { |
10155 |
|
assign_datatypes_sygusSymBreakPbe(opts, name, optionarg == "true"); |
10156 |
|
return; |
10157 |
|
} |
10158 |
2538 |
if (name == "sygus-sym-break-rlv") { |
10159 |
2 |
assign_datatypes_sygusSymBreakRlv(opts, name, optionarg == "true"); |
10160 |
2 |
return; |
10161 |
|
} |
10162 |
2536 |
if (name == "decision-random-weight") { |
10163 |
|
assign_decision_decisionRandomWeight(opts, name, optionarg); |
10164 |
|
return; |
10165 |
|
} |
10166 |
2536 |
if (name == "decision-threshold") { |
10167 |
|
assign_decision_decisionThreshold(opts, name, optionarg); |
10168 |
|
return; |
10169 |
|
} |
10170 |
2536 |
if (name == "decision-use-weight") { |
10171 |
|
assign_decision_decisionUseWeight(opts, name, optionarg == "true"); |
10172 |
|
return; |
10173 |
|
} |
10174 |
2536 |
if (name == "decision-weight-internal") { |
10175 |
|
assign_decision_decisionWeightInternal(opts, name, optionarg); |
10176 |
|
return; |
10177 |
|
} |
10178 |
2536 |
if (name == "decision" || name == "decision-mode") { |
10179 |
|
assign_decision_decisionMode(opts, name, optionarg); |
10180 |
|
return; |
10181 |
|
} |
10182 |
2536 |
if (name == "jh-rlv-order") { |
10183 |
|
assign_decision_jhRlvOrder(opts, name, optionarg == "true"); |
10184 |
|
return; |
10185 |
|
} |
10186 |
2536 |
if (name == "jh-skolem-rlv") { |
10187 |
|
assign_decision_jhSkolemRlvMode(opts, name, optionarg); |
10188 |
|
return; |
10189 |
|
} |
10190 |
2536 |
if (name == "jh-skolem") { |
10191 |
|
assign_decision_jhSkolemMode(opts, name, optionarg); |
10192 |
|
return; |
10193 |
|
} |
10194 |
2536 |
if (name == "dag-thresh") { |
10195 |
1 |
assign_expr_defaultDagThresh(opts, name, optionarg); |
10196 |
1 |
return; |
10197 |
|
} |
10198 |
2535 |
if (name == "expr-depth") { |
10199 |
|
assign_expr_defaultExprDepth(opts, name, optionarg); |
10200 |
|
return; |
10201 |
|
} |
10202 |
2535 |
if (name == "type-checking") { |
10203 |
|
assign_expr_typeChecking(opts, name, optionarg == "true"); |
10204 |
|
return; |
10205 |
|
} |
10206 |
2535 |
if (name == "fp-exp") { |
10207 |
|
assign_fp_fpExp(opts, name, optionarg == "true"); |
10208 |
|
return; |
10209 |
|
} |
10210 |
2535 |
if (name == "fp-lazy-wb") { |
10211 |
|
assign_fp_fpLazyWb(opts, name, optionarg == "true"); |
10212 |
|
return; |
10213 |
|
} |
10214 |
2535 |
if (name == "copyright") { |
10215 |
|
opts.handler().copyright("copyright", name); |
10216 |
|
return; |
10217 |
|
} |
10218 |
2535 |
if (name == "dump-instantiations") { |
10219 |
|
assign_driver_dumpInstantiations(opts, name, optionarg == "true"); |
10220 |
|
return; |
10221 |
|
} |
10222 |
2535 |
if (name == "dump-instantiations-debug") { |
10223 |
|
assign_driver_dumpInstantiationsDebug(opts, name, optionarg == "true"); |
10224 |
|
return; |
10225 |
|
} |
10226 |
2535 |
if (name == "dump-models") { |
10227 |
|
assign_driver_dumpModels(opts, name, optionarg == "true"); |
10228 |
|
return; |
10229 |
|
} |
10230 |
2535 |
if (name == "dump-proofs") { |
10231 |
|
assign_driver_dumpProofs(opts, name, optionarg == "true"); |
10232 |
|
return; |
10233 |
|
} |
10234 |
2535 |
if (name == "dump-unsat-cores") { |
10235 |
|
assign_driver_dumpUnsatCores(opts, name, optionarg == "true"); |
10236 |
|
return; |
10237 |
|
} |
10238 |
2535 |
if (name == "dump-unsat-cores-full") { |
10239 |
|
assign_driver_dumpUnsatCoresFull(opts, name, optionarg == "true"); |
10240 |
|
return; |
10241 |
|
} |
10242 |
2535 |
if (name == "early-exit") { |
10243 |
|
assign_driver_earlyExit(opts, name, optionarg == "true"); |
10244 |
|
return; |
10245 |
|
} |
10246 |
2535 |
if (name == "force-no-limit-cpu-while-dump") { |
10247 |
|
assign_driver_forceNoLimitCpuWhileDump(opts, name, optionarg == "true"); |
10248 |
|
return; |
10249 |
|
} |
10250 |
2535 |
if (name == "help") { |
10251 |
|
assign_driver_help(opts, name, optionarg == "true"); |
10252 |
|
return; |
10253 |
|
} |
10254 |
2535 |
if (name == "interactive") { |
10255 |
|
assign_driver_interactive(opts, name, optionarg == "true"); |
10256 |
|
return; |
10257 |
|
} |
10258 |
2535 |
if (name == "interactive-prompt") { |
10259 |
|
assign_driver_interactivePrompt(opts, name, optionarg == "true"); |
10260 |
|
return; |
10261 |
|
} |
10262 |
2535 |
if (name == "seed") { |
10263 |
|
assign_driver_seed(opts, name, optionarg); |
10264 |
|
return; |
10265 |
|
} |
10266 |
2535 |
if (name == "segv-spin") { |
10267 |
|
assign_driver_segvSpin(opts, name, optionarg == "true"); |
10268 |
|
return; |
10269 |
|
} |
10270 |
2535 |
if (name == "show-config") { |
10271 |
|
opts.handler().showConfiguration("show-config", name); |
10272 |
|
return; |
10273 |
|
} |
10274 |
2535 |
if (name == "show-debug-tags") { |
10275 |
|
opts.handler().showDebugTags("show-debug-tags", name); |
10276 |
|
return; |
10277 |
|
} |
10278 |
2535 |
if (name == "show-trace-tags") { |
10279 |
|
opts.handler().showTraceTags("show-trace-tags", name); |
10280 |
|
return; |
10281 |
|
} |
10282 |
2535 |
if (name == "version") { |
10283 |
|
assign_driver_version(opts, name, optionarg == "true"); |
10284 |
|
return; |
10285 |
|
} |
10286 |
2535 |
if (name == "filesystem-access") { |
10287 |
|
assign_parser_filesystemAccess(opts, name, optionarg == "true"); |
10288 |
|
return; |
10289 |
|
} |
10290 |
2535 |
if (name == "force-logic") { |
10291 |
|
assign_parser_forceLogicString(opts, name, optionarg); |
10292 |
|
return; |
10293 |
|
} |
10294 |
2535 |
if (name == "global-declarations") { |
10295 |
19 |
assign_parser_globalDeclarations(opts, name, optionarg == "true"); |
10296 |
19 |
return; |
10297 |
|
} |
10298 |
2516 |
if (name == "mmap") { |
10299 |
|
assign_parser_memoryMap(opts, name, optionarg == "true"); |
10300 |
|
return; |
10301 |
|
} |
10302 |
2516 |
if (name == "semantic-checks") { |
10303 |
|
assign_parser_semanticChecks(opts, name, optionarg == "true"); |
10304 |
|
return; |
10305 |
|
} |
10306 |
2516 |
if (name == "strict-parsing") { |
10307 |
|
assign_parser_strictParsing(opts, name, optionarg == "true"); |
10308 |
|
return; |
10309 |
|
} |
10310 |
2516 |
if (name == "flatten-ho-chains") { |
10311 |
|
assign_printer_flattenHOChains(opts, name, optionarg == "true"); |
10312 |
|
return; |
10313 |
|
} |
10314 |
2516 |
if (name == "inst-format") { |
10315 |
|
assign_printer_instFormatMode(opts, name, optionarg); |
10316 |
|
return; |
10317 |
|
} |
10318 |
2516 |
if (name == "model-format") { |
10319 |
|
assign_printer_modelFormatMode(opts, name, optionarg); |
10320 |
|
return; |
10321 |
|
} |
10322 |
2516 |
if (name == "print-inst-full") { |
10323 |
|
assign_printer_printInstFull(opts, name, optionarg == "true"); |
10324 |
|
return; |
10325 |
|
} |
10326 |
2516 |
if (name == "print-inst") { |
10327 |
|
assign_printer_printInstMode(opts, name, optionarg); |
10328 |
|
return; |
10329 |
|
} |
10330 |
2516 |
if (name == "proof-eager-checking") { |
10331 |
|
assign_proof_proofEagerChecking(opts, name, optionarg == "true"); |
10332 |
|
return; |
10333 |
|
} |
10334 |
2516 |
if (name == "proof-format-mode") { |
10335 |
|
assign_proof_proofFormatMode(opts, name, optionarg); |
10336 |
|
return; |
10337 |
|
} |
10338 |
2516 |
if (name == "proof-granularity") { |
10339 |
|
assign_proof_proofGranularityMode(opts, name, optionarg); |
10340 |
|
return; |
10341 |
|
} |
10342 |
2516 |
if (name == "proof-pedantic") { |
10343 |
|
assign_proof_proofPedantic(opts, name, optionarg); |
10344 |
|
return; |
10345 |
|
} |
10346 |
2516 |
if (name == "proof-print-conclusion") { |
10347 |
|
assign_proof_proofPrintConclusion(opts, name, optionarg == "true"); |
10348 |
|
return; |
10349 |
|
} |
10350 |
2516 |
if (name == "minisat-dump-dimacs") { |
10351 |
|
assign_prop_minisatDumpDimacs(opts, name, optionarg == "true"); |
10352 |
|
return; |
10353 |
|
} |
10354 |
2516 |
if (name == "minisat-elimination") { |
10355 |
|
assign_prop_minisatUseElim(opts, name, optionarg == "true"); |
10356 |
|
return; |
10357 |
|
} |
10358 |
2516 |
if (name == "random-freq" || name == "random-frequency") { |
10359 |
|
assign_prop_satRandomFreq(opts, name, optionarg); |
10360 |
|
return; |
10361 |
|
} |
10362 |
2516 |
if (name == "random-seed") { |
10363 |
2 |
assign_prop_satRandomSeed(opts, name, optionarg); |
10364 |
2 |
return; |
10365 |
|
} |
10366 |
2514 |
if (name == "refine-conflicts") { |
10367 |
|
assign_prop_sat_refine_conflicts(opts, name, optionarg == "true"); |
10368 |
|
return; |
10369 |
|
} |
10370 |
2514 |
if (name == "restart-int-base") { |
10371 |
|
assign_prop_satRestartFirst(opts, name, optionarg); |
10372 |
|
return; |
10373 |
|
} |
10374 |
2514 |
if (name == "restart-int-inc") { |
10375 |
|
assign_prop_satRestartInc(opts, name, optionarg); |
10376 |
|
return; |
10377 |
|
} |
10378 |
2514 |
if (name == "ag-miniscope-quant") { |
10379 |
4 |
assign_quantifiers_aggressiveMiniscopeQuant(opts, name, optionarg == "true"); |
10380 |
4 |
return; |
10381 |
|
} |
10382 |
2510 |
if (name == "cegis-sample") { |
10383 |
|
assign_quantifiers_cegisSample(opts, name, optionarg); |
10384 |
|
return; |
10385 |
|
} |
10386 |
2510 |
if (name == "cegqi") { |
10387 |
|
assign_quantifiers_cegqi(opts, name, optionarg == "true"); |
10388 |
|
return; |
10389 |
|
} |
10390 |
2510 |
if (name == "cegqi-all") { |
10391 |
3 |
assign_quantifiers_cegqiAll(opts, name, optionarg == "true"); |
10392 |
3 |
return; |
10393 |
|
} |
10394 |
2507 |
if (name == "cegqi-bv") { |
10395 |
|
assign_quantifiers_cegqiBv(opts, name, optionarg == "true"); |
10396 |
|
return; |
10397 |
|
} |
10398 |
2507 |
if (name == "cegqi-bv-concat-inv") { |
10399 |
|
assign_quantifiers_cegqiBvConcInv(opts, name, optionarg == "true"); |
10400 |
|
return; |
10401 |
|
} |
10402 |
2507 |
if (name == "cegqi-bv-ineq") { |
10403 |
|
assign_quantifiers_cegqiBvIneqMode(opts, name, optionarg); |
10404 |
|
return; |
10405 |
|
} |
10406 |
2507 |
if (name == "cegqi-bv-interleave-value") { |
10407 |
|
assign_quantifiers_cegqiBvInterleaveValue(opts, name, optionarg == "true"); |
10408 |
|
return; |
10409 |
|
} |
10410 |
2507 |
if (name == "cegqi-bv-linear") { |
10411 |
|
assign_quantifiers_cegqiBvLinearize(opts, name, optionarg == "true"); |
10412 |
|
return; |
10413 |
|
} |
10414 |
2507 |
if (name == "cegqi-bv-rm-extract") { |
10415 |
|
assign_quantifiers_cegqiBvRmExtract(opts, name, optionarg == "true"); |
10416 |
|
return; |
10417 |
|
} |
10418 |
2507 |
if (name == "cegqi-bv-solve-nl") { |
10419 |
|
assign_quantifiers_cegqiBvSolveNl(opts, name, optionarg == "true"); |
10420 |
|
return; |
10421 |
|
} |
10422 |
2507 |
if (name == "cegqi-full") { |
10423 |
512 |
assign_quantifiers_cegqiFullEffort(opts, name, optionarg == "true"); |
10424 |
512 |
return; |
10425 |
|
} |
10426 |
1995 |
if (name == "cegqi-innermost") { |
10427 |
|
assign_quantifiers_cegqiInnermost(opts, name, optionarg == "true"); |
10428 |
|
return; |
10429 |
|
} |
10430 |
1995 |
if (name == "cegqi-midpoint") { |
10431 |
|
assign_quantifiers_cegqiMidpoint(opts, name, optionarg == "true"); |
10432 |
|
return; |
10433 |
|
} |
10434 |
1995 |
if (name == "cegqi-min-bounds") { |
10435 |
|
assign_quantifiers_cegqiMinBounds(opts, name, optionarg == "true"); |
10436 |
|
return; |
10437 |
|
} |
10438 |
1995 |
if (name == "cegqi-model") { |
10439 |
|
assign_quantifiers_cegqiModel(opts, name, optionarg == "true"); |
10440 |
|
return; |
10441 |
|
} |
10442 |
1995 |
if (name == "cegqi-multi-inst") { |
10443 |
|
assign_quantifiers_cegqiMultiInst(opts, name, optionarg == "true"); |
10444 |
|
return; |
10445 |
|
} |
10446 |
1995 |
if (name == "cegqi-nested-qe") { |
10447 |
12 |
assign_quantifiers_cegqiNestedQE(opts, name, optionarg == "true"); |
10448 |
12 |
return; |
10449 |
|
} |
10450 |
1983 |
if (name == "cegqi-nopt") { |
10451 |
|
assign_quantifiers_cegqiNopt(opts, name, optionarg == "true"); |
10452 |
|
return; |
10453 |
|
} |
10454 |
1983 |
if (name == "cegqi-repeat-lit") { |
10455 |
|
assign_quantifiers_cegqiRepeatLit(opts, name, optionarg == "true"); |
10456 |
|
return; |
10457 |
|
} |
10458 |
1983 |
if (name == "cegqi-round-up-lia") { |
10459 |
|
assign_quantifiers_cegqiRoundUpLowerLia(opts, name, optionarg == "true"); |
10460 |
|
return; |
10461 |
|
} |
10462 |
1983 |
if (name == "cegqi-sat") { |
10463 |
|
assign_quantifiers_cegqiSat(opts, name, optionarg == "true"); |
10464 |
|
return; |
10465 |
|
} |
10466 |
1983 |
if (name == "cegqi-use-inf-int") { |
10467 |
3 |
assign_quantifiers_cegqiUseInfInt(opts, name, optionarg == "true"); |
10468 |
3 |
return; |
10469 |
|
} |
10470 |
1980 |
if (name == "cegqi-use-inf-real") { |
10471 |
3 |
assign_quantifiers_cegqiUseInfReal(opts, name, optionarg == "true"); |
10472 |
3 |
return; |
10473 |
|
} |
10474 |
1977 |
if (name == "cond-var-split-agg-quant") { |
10475 |
|
assign_quantifiers_condVarSplitQuantAgg(opts, name, optionarg == "true"); |
10476 |
|
return; |
10477 |
|
} |
10478 |
1977 |
if (name == "cond-var-split-quant") { |
10479 |
|
assign_quantifiers_condVarSplitQuant(opts, name, optionarg == "true"); |
10480 |
|
return; |
10481 |
|
} |
10482 |
1977 |
if (name == "conjecture-filter-active-terms") { |
10483 |
|
assign_quantifiers_conjectureFilterActiveTerms(opts, name, optionarg == "true"); |
10484 |
|
return; |
10485 |
|
} |
10486 |
1977 |
if (name == "conjecture-filter-canonical") { |
10487 |
|
assign_quantifiers_conjectureFilterCanonical(opts, name, optionarg == "true"); |
10488 |
|
return; |
10489 |
|
} |
10490 |
1977 |
if (name == "conjecture-filter-model") { |
10491 |
2 |
assign_quantifiers_conjectureFilterModel(opts, name, optionarg == "true"); |
10492 |
2 |
return; |
10493 |
|
} |
10494 |
1975 |
if (name == "conjecture-gen") { |
10495 |
4 |
assign_quantifiers_conjectureGen(opts, name, optionarg == "true"); |
10496 |
4 |
return; |
10497 |
|
} |
10498 |
1971 |
if (name == "conjecture-gen-gt-enum") { |
10499 |
|
assign_quantifiers_conjectureGenGtEnum(opts, name, optionarg); |
10500 |
|
return; |
10501 |
|
} |
10502 |
1971 |
if (name == "conjecture-gen-max-depth") { |
10503 |
|
assign_quantifiers_conjectureGenMaxDepth(opts, name, optionarg); |
10504 |
|
return; |
10505 |
|
} |
10506 |
1971 |
if (name == "conjecture-gen-per-round") { |
10507 |
|
assign_quantifiers_conjectureGenPerRound(opts, name, optionarg); |
10508 |
|
return; |
10509 |
|
} |
10510 |
1971 |
if (name == "conjecture-gen-uee-intro") { |
10511 |
|
assign_quantifiers_conjectureUeeIntro(opts, name, optionarg == "true"); |
10512 |
|
return; |
10513 |
|
} |
10514 |
1971 |
if (name == "conjecture-no-filter") { |
10515 |
2 |
assign_quantifiers_conjectureNoFilter(opts, name, optionarg == "true"); |
10516 |
2 |
return; |
10517 |
|
} |
10518 |
1969 |
if (name == "dt-stc-ind") { |
10519 |
|
assign_quantifiers_dtStcInduction(opts, name, optionarg == "true"); |
10520 |
|
return; |
10521 |
|
} |
10522 |
1969 |
if (name == "dt-var-exp-quant") { |
10523 |
|
assign_quantifiers_dtVarExpandQuant(opts, name, optionarg == "true"); |
10524 |
|
return; |
10525 |
|
} |
10526 |
1969 |
if (name == "e-matching") { |
10527 |
1 |
assign_quantifiers_eMatching(opts, name, optionarg == "true"); |
10528 |
1 |
return; |
10529 |
|
} |
10530 |
1968 |
if (name == "elim-taut-quant") { |
10531 |
|
assign_quantifiers_elimTautQuant(opts, name, optionarg == "true"); |
10532 |
|
return; |
10533 |
|
} |
10534 |
1968 |
if (name == "ext-rewrite-quant") { |
10535 |
2 |
assign_quantifiers_extRewriteQuant(opts, name, optionarg == "true"); |
10536 |
2 |
return; |
10537 |
|
} |
10538 |
1966 |
if (name == "finite-model-find") { |
10539 |
16 |
assign_quantifiers_finiteModelFind(opts, name, optionarg == "true"); |
10540 |
16 |
return; |
10541 |
|
} |
10542 |
1950 |
if (name == "fmf-bound") { |
10543 |
14 |
assign_quantifiers_fmfBound(opts, name, optionarg == "true"); |
10544 |
14 |
return; |
10545 |
|
} |
10546 |
1936 |
if (name == "fmf-bound-int") { |
10547 |
6 |
assign_quantifiers_fmfBoundInt(opts, name, optionarg == "true"); |
10548 |
6 |
return; |
10549 |
|
} |
10550 |
1930 |
if (name == "fmf-bound-lazy") { |
10551 |
|
assign_quantifiers_fmfBoundLazy(opts, name, optionarg == "true"); |
10552 |
|
return; |
10553 |
|
} |
10554 |
1930 |
if (name == "fmf-fmc-simple") { |
10555 |
|
assign_quantifiers_fmfFmcSimple(opts, name, optionarg == "true"); |
10556 |
|
return; |
10557 |
|
} |
10558 |
1930 |
if (name == "fmf-fresh-dc") { |
10559 |
|
assign_quantifiers_fmfFreshDistConst(opts, name, optionarg == "true"); |
10560 |
|
return; |
10561 |
|
} |
10562 |
1930 |
if (name == "fmf-fun") { |
10563 |
14 |
assign_quantifiers_fmfFunWellDefined(opts, name, optionarg == "true"); |
10564 |
14 |
return; |
10565 |
|
} |
10566 |
1916 |
if (name == "fmf-fun-rlv") { |
10567 |
|
assign_quantifiers_fmfFunWellDefinedRelevant(opts, name, optionarg == "true"); |
10568 |
|
return; |
10569 |
|
} |
10570 |
1916 |
if (name == "fmf-inst-engine") { |
10571 |
|
assign_quantifiers_fmfInstEngine(opts, name, optionarg == "true"); |
10572 |
|
return; |
10573 |
|
} |
10574 |
1916 |
if (name == "fmf-type-completion-thresh") { |
10575 |
|
assign_quantifiers_fmfTypeCompletionThresh(opts, name, optionarg); |
10576 |
|
return; |
10577 |
|
} |
10578 |
1916 |
if (name == "fs-interleave") { |
10579 |
|
assign_quantifiers_fullSaturateInterleave(opts, name, optionarg == "true"); |
10580 |
|
return; |
10581 |
|
} |
10582 |
1916 |
if (name == "fs-stratify") { |
10583 |
|
assign_quantifiers_fullSaturateStratify(opts, name, optionarg == "true"); |
10584 |
|
return; |
10585 |
|
} |
10586 |
1916 |
if (name == "fs-sum") { |
10587 |
|
assign_quantifiers_fullSaturateSum(opts, name, optionarg == "true"); |
10588 |
|
return; |
10589 |
|
} |
10590 |
1916 |
if (name == "full-saturate-quant") { |
10591 |
|
assign_quantifiers_fullSaturateQuant(opts, name, optionarg == "true"); |
10592 |
|
return; |
10593 |
|
} |
10594 |
1916 |
if (name == "full-saturate-quant-limit") { |
10595 |
|
assign_quantifiers_fullSaturateLimit(opts, name, optionarg); |
10596 |
|
return; |
10597 |
|
} |
10598 |
1916 |
if (name == "full-saturate-quant-rd") { |
10599 |
|
assign_quantifiers_fullSaturateQuantRd(opts, name, optionarg == "true"); |
10600 |
|
return; |
10601 |
|
} |
10602 |
1916 |
if (name == "global-negate") { |
10603 |
2 |
assign_quantifiers_globalNegate(opts, name, optionarg == "true"); |
10604 |
2 |
return; |
10605 |
|
} |
10606 |
1914 |
if (name == "ho-elim") { |
10607 |
|
assign_quantifiers_hoElim(opts, name, optionarg == "true"); |
10608 |
|
return; |
10609 |
|
} |
10610 |
1914 |
if (name == "ho-elim-store-ax") { |
10611 |
|
assign_quantifiers_hoElimStoreAx(opts, name, optionarg == "true"); |
10612 |
|
return; |
10613 |
|
} |
10614 |
1914 |
if (name == "ho-matching") { |
10615 |
|
assign_quantifiers_hoMatching(opts, name, optionarg == "true"); |
10616 |
|
return; |
10617 |
|
} |
10618 |
1914 |
if (name == "ho-matching-var-priority") { |
10619 |
|
assign_quantifiers_hoMatchingVarArgPriority(opts, name, optionarg == "true"); |
10620 |
|
return; |
10621 |
|
} |
10622 |
1914 |
if (name == "ho-merge-term-db") { |
10623 |
|
assign_quantifiers_hoMergeTermDb(opts, name, optionarg == "true"); |
10624 |
|
return; |
10625 |
|
} |
10626 |
1914 |
if (name == "increment-triggers") { |
10627 |
|
assign_quantifiers_incrementTriggers(opts, name, optionarg == "true"); |
10628 |
|
return; |
10629 |
|
} |
10630 |
1914 |
if (name == "inst-level-input-only") { |
10631 |
|
assign_quantifiers_instLevelInputOnly(opts, name, optionarg == "true"); |
10632 |
|
return; |
10633 |
|
} |
10634 |
1914 |
if (name == "inst-max-level") { |
10635 |
|
assign_quantifiers_instMaxLevel(opts, name, optionarg); |
10636 |
|
return; |
10637 |
|
} |
10638 |
1914 |
if (name == "inst-max-rounds") { |
10639 |
|
assign_quantifiers_instMaxRounds(opts, name, optionarg); |
10640 |
|
return; |
10641 |
|
} |
10642 |
1914 |
if (name == "inst-no-entail") { |
10643 |
|
assign_quantifiers_instNoEntail(opts, name, optionarg == "true"); |
10644 |
|
return; |
10645 |
|
} |
10646 |
1914 |
if (name == "inst-when-phase") { |
10647 |
|
assign_quantifiers_instWhenPhase(opts, name, optionarg); |
10648 |
|
return; |
10649 |
|
} |
10650 |
1914 |
if (name == "inst-when-strict-interleave") { |
10651 |
|
assign_quantifiers_instWhenStrictInterleave(opts, name, optionarg == "true"); |
10652 |
|
return; |
10653 |
|
} |
10654 |
1914 |
if (name == "inst-when-tc-first") { |
10655 |
|
assign_quantifiers_instWhenTcFirst(opts, name, optionarg == "true"); |
10656 |
|
return; |
10657 |
|
} |
10658 |
1914 |
if (name == "inst-when") { |
10659 |
|
assign_quantifiers_instWhenMode(opts, name, optionarg); |
10660 |
|
return; |
10661 |
|
} |
10662 |
1914 |
if (name == "int-wf-ind") { |
10663 |
2 |
assign_quantifiers_intWfInduction(opts, name, optionarg == "true"); |
10664 |
2 |
return; |
10665 |
|
} |
10666 |
1912 |
if (name == "ite-dtt-split-quant") { |
10667 |
|
assign_quantifiers_iteDtTesterSplitQuant(opts, name, optionarg == "true"); |
10668 |
|
return; |
10669 |
|
} |
10670 |
1912 |
if (name == "ite-lift-quant") { |
10671 |
|
assign_quantifiers_iteLiftQuant(opts, name, optionarg); |
10672 |
|
return; |
10673 |
|
} |
10674 |
1912 |
if (name == "literal-matching") { |
10675 |
|
assign_quantifiers_literalMatchMode(opts, name, optionarg); |
10676 |
|
return; |
10677 |
|
} |
10678 |
1912 |
if (name == "macros-quant") { |
10679 |
|
assign_quantifiers_macrosQuant(opts, name, optionarg == "true"); |
10680 |
|
return; |
10681 |
|
} |
10682 |
1912 |
if (name == "macros-quant-mode") { |
10683 |
|
assign_quantifiers_macrosQuantMode(opts, name, optionarg); |
10684 |
|
return; |
10685 |
|
} |
10686 |
1912 |
if (name == "mbqi-interleave") { |
10687 |
|
assign_quantifiers_mbqiInterleave(opts, name, optionarg == "true"); |
10688 |
|
return; |
10689 |
|
} |
10690 |
1912 |
if (name == "mbqi-one-inst-per-round") { |
10691 |
|
assign_quantifiers_fmfOneInstPerRound(opts, name, optionarg == "true"); |
10692 |
|
return; |
10693 |
|
} |
10694 |
1912 |
if (name == "mbqi") { |
10695 |
|
assign_quantifiers_mbqiMode(opts, name, optionarg); |
10696 |
|
return; |
10697 |
|
} |
10698 |
1912 |
if (name == "miniscope-quant") { |
10699 |
116 |
assign_quantifiers_miniscopeQuant(opts, name, optionarg == "true"); |
10700 |
116 |
return; |
10701 |
|
} |
10702 |
1796 |
if (name == "miniscope-quant-fv") { |
10703 |
114 |
assign_quantifiers_miniscopeQuantFreeVar(opts, name, optionarg == "true"); |
10704 |
114 |
return; |
10705 |
|
} |
10706 |
1682 |
if (name == "multi-trigger-cache") { |
10707 |
|
assign_quantifiers_multiTriggerCache(opts, name, optionarg == "true"); |
10708 |
|
return; |
10709 |
|
} |
10710 |
1682 |
if (name == "multi-trigger-linear") { |
10711 |
|
assign_quantifiers_multiTriggerLinear(opts, name, optionarg == "true"); |
10712 |
|
return; |
10713 |
|
} |
10714 |
1682 |
if (name == "multi-trigger-priority") { |
10715 |
|
assign_quantifiers_multiTriggerPriority(opts, name, optionarg == "true"); |
10716 |
|
return; |
10717 |
|
} |
10718 |
1682 |
if (name == "multi-trigger-when-single") { |
10719 |
|
assign_quantifiers_multiTriggerWhenSingle(opts, name, optionarg == "true"); |
10720 |
|
return; |
10721 |
|
} |
10722 |
1682 |
if (name == "partial-triggers") { |
10723 |
|
assign_quantifiers_partialTriggers(opts, name, optionarg == "true"); |
10724 |
|
return; |
10725 |
|
} |
10726 |
1682 |
if (name == "pool-inst") { |
10727 |
|
assign_quantifiers_poolInst(opts, name, optionarg == "true"); |
10728 |
|
return; |
10729 |
|
} |
10730 |
1682 |
if (name == "pre-skolem-quant") { |
10731 |
2 |
assign_quantifiers_preSkolemQuant(opts, name, optionarg == "true"); |
10732 |
2 |
return; |
10733 |
|
} |
10734 |
1680 |
if (name == "pre-skolem-quant-agg") { |
10735 |
|
assign_quantifiers_preSkolemQuantAgg(opts, name, optionarg == "true"); |
10736 |
|
return; |
10737 |
|
} |
10738 |
1680 |
if (name == "pre-skolem-quant-nested") { |
10739 |
2 |
assign_quantifiers_preSkolemQuantNested(opts, name, optionarg == "true"); |
10740 |
2 |
return; |
10741 |
|
} |
10742 |
1678 |
if (name == "prenex-quant-user") { |
10743 |
|
assign_quantifiers_prenexQuantUser(opts, name, optionarg == "true"); |
10744 |
|
return; |
10745 |
|
} |
10746 |
1678 |
if (name == "prenex-quant") { |
10747 |
|
assign_quantifiers_prenexQuant(opts, name, optionarg); |
10748 |
|
return; |
10749 |
|
} |
10750 |
1678 |
if (name == "purify-triggers") { |
10751 |
|
assign_quantifiers_purifyTriggers(opts, name, optionarg == "true"); |
10752 |
|
return; |
10753 |
|
} |
10754 |
1678 |
if (name == "qcf-all-conflict") { |
10755 |
|
assign_quantifiers_qcfAllConflict(opts, name, optionarg == "true"); |
10756 |
|
return; |
10757 |
|
} |
10758 |
1678 |
if (name == "qcf-eager-check-rd") { |
10759 |
|
assign_quantifiers_qcfEagerCheckRd(opts, name, optionarg == "true"); |
10760 |
|
return; |
10761 |
|
} |
10762 |
1678 |
if (name == "qcf-eager-test") { |
10763 |
|
assign_quantifiers_qcfEagerTest(opts, name, optionarg == "true"); |
10764 |
|
return; |
10765 |
|
} |
10766 |
1678 |
if (name == "qcf-nested-conflict") { |
10767 |
|
assign_quantifiers_qcfNestedConflict(opts, name, optionarg == "true"); |
10768 |
|
return; |
10769 |
|
} |
10770 |
1678 |
if (name == "qcf-skip-rd") { |
10771 |
|
assign_quantifiers_qcfSkipRd(opts, name, optionarg == "true"); |
10772 |
|
return; |
10773 |
|
} |
10774 |
1678 |
if (name == "qcf-tconstraint") { |
10775 |
|
assign_quantifiers_qcfTConstraint(opts, name, optionarg == "true"); |
10776 |
|
return; |
10777 |
|
} |
10778 |
1678 |
if (name == "qcf-vo-exp") { |
10779 |
|
assign_quantifiers_qcfVoExp(opts, name, optionarg == "true"); |
10780 |
|
return; |
10781 |
|
} |
10782 |
1678 |
if (name == "quant-alpha-equiv") { |
10783 |
|
assign_quantifiers_quantAlphaEquiv(opts, name, optionarg == "true"); |
10784 |
|
return; |
10785 |
|
} |
10786 |
1678 |
if (name == "quant-cf") { |
10787 |
|
assign_quantifiers_quantConflictFind(opts, name, optionarg == "true"); |
10788 |
|
return; |
10789 |
|
} |
10790 |
1678 |
if (name == "quant-cf-mode") { |
10791 |
|
assign_quantifiers_qcfMode(opts, name, optionarg); |
10792 |
|
return; |
10793 |
|
} |
10794 |
1678 |
if (name == "quant-cf-when") { |
10795 |
|
assign_quantifiers_qcfWhenMode(opts, name, optionarg); |
10796 |
|
return; |
10797 |
|
} |
10798 |
1678 |
if (name == "quant-dsplit-mode") { |
10799 |
|
assign_quantifiers_quantDynamicSplit(opts, name, optionarg); |
10800 |
|
return; |
10801 |
|
} |
10802 |
1678 |
if (name == "quant-fun-wd") { |
10803 |
|
assign_quantifiers_quantFunWellDefined(opts, name, optionarg == "true"); |
10804 |
|
return; |
10805 |
|
} |
10806 |
1678 |
if (name == "quant-ind") { |
10807 |
2 |
assign_quantifiers_quantInduction(opts, name, optionarg == "true"); |
10808 |
2 |
return; |
10809 |
|
} |
10810 |
1676 |
if (name == "quant-rep-mode") { |
10811 |
|
assign_quantifiers_quantRepMode(opts, name, optionarg); |
10812 |
|
return; |
10813 |
|
} |
10814 |
1676 |
if (name == "quant-split") { |
10815 |
114 |
assign_quantifiers_quantSplit(opts, name, optionarg == "true"); |
10816 |
114 |
return; |
10817 |
|
} |
10818 |
1562 |
if (name == "register-quant-body-terms") { |
10819 |
|
assign_quantifiers_registerQuantBodyTerms(opts, name, optionarg == "true"); |
10820 |
|
return; |
10821 |
|
} |
10822 |
1562 |
if (name == "relational-triggers") { |
10823 |
|
assign_quantifiers_relationalTriggers(opts, name, optionarg == "true"); |
10824 |
|
return; |
10825 |
|
} |
10826 |
1562 |
if (name == "relevant-triggers") { |
10827 |
|
assign_quantifiers_relevantTriggers(opts, name, optionarg == "true"); |
10828 |
|
return; |
10829 |
|
} |
10830 |
1562 |
if (name == "strict-triggers") { |
10831 |
|
assign_quantifiers_strictTriggers(opts, name, optionarg == "true"); |
10832 |
|
return; |
10833 |
|
} |
10834 |
1562 |
if (name == "sygus") { |
10835 |
|
assign_quantifiers_sygus(opts, name, optionarg == "true"); |
10836 |
|
return; |
10837 |
|
} |
10838 |
1562 |
if (name == "sygus-active-gen-cfactor") { |
10839 |
|
assign_quantifiers_sygusActiveGenEnumConsts(opts, name, optionarg); |
10840 |
|
return; |
10841 |
|
} |
10842 |
1562 |
if (name == "sygus-active-gen") { |
10843 |
1 |
assign_quantifiers_sygusActiveGenMode(opts, name, optionarg); |
10844 |
1 |
return; |
10845 |
|
} |
10846 |
1561 |
if (name == "sygus-add-const-grammar") { |
10847 |
|
assign_quantifiers_sygusAddConstGrammar(opts, name, optionarg == "true"); |
10848 |
|
return; |
10849 |
|
} |
10850 |
1561 |
if (name == "sygus-arg-relevant") { |
10851 |
|
assign_quantifiers_sygusArgRelevant(opts, name, optionarg == "true"); |
10852 |
|
return; |
10853 |
|
} |
10854 |
1561 |
if (name == "sygus-auto-unfold") { |
10855 |
|
assign_quantifiers_sygusInvAutoUnfold(opts, name, optionarg == "true"); |
10856 |
|
return; |
10857 |
|
} |
10858 |
1561 |
if (name == "sygus-bool-ite-return-const") { |
10859 |
|
assign_quantifiers_sygusBoolIteReturnConst(opts, name, optionarg == "true"); |
10860 |
|
return; |
10861 |
|
} |
10862 |
1561 |
if (name == "sygus-core-connective") { |
10863 |
|
assign_quantifiers_sygusCoreConnective(opts, name, optionarg == "true"); |
10864 |
|
return; |
10865 |
|
} |
10866 |
1561 |
if (name == "sygus-crepair-abort") { |
10867 |
|
assign_quantifiers_sygusConstRepairAbort(opts, name, optionarg == "true"); |
10868 |
|
return; |
10869 |
|
} |
10870 |
1561 |
if (name == "sygus-eval-opt") { |
10871 |
|
assign_quantifiers_sygusEvalOpt(opts, name, optionarg == "true"); |
10872 |
|
return; |
10873 |
|
} |
10874 |
1561 |
if (name == "sygus-eval-unfold") { |
10875 |
|
assign_quantifiers_sygusEvalUnfold(opts, name, optionarg == "true"); |
10876 |
|
return; |
10877 |
|
} |
10878 |
1561 |
if (name == "sygus-eval-unfold-bool") { |
10879 |
|
assign_quantifiers_sygusEvalUnfoldBool(opts, name, optionarg == "true"); |
10880 |
|
return; |
10881 |
|
} |
10882 |
1561 |
if (name == "sygus-expr-miner-check-timeout") { |
10883 |
|
assign_quantifiers_sygusExprMinerCheckTimeout(opts, name, optionarg); |
10884 |
|
return; |
10885 |
|
} |
10886 |
1561 |
if (name == "sygus-ext-rew") { |
10887 |
2 |
assign_quantifiers_sygusExtRew(opts, name, optionarg == "true"); |
10888 |
2 |
return; |
10889 |
|
} |
10890 |
1559 |
if (name == "sygus-filter-sol-rev") { |
10891 |
|
assign_quantifiers_sygusFilterSolRevSubsume(opts, name, optionarg == "true"); |
10892 |
|
return; |
10893 |
|
} |
10894 |
1559 |
if (name == "sygus-filter-sol") { |
10895 |
|
assign_quantifiers_sygusFilterSolMode(opts, name, optionarg); |
10896 |
|
return; |
10897 |
|
} |
10898 |
1559 |
if (name == "sygus-grammar-cons") { |
10899 |
|
assign_quantifiers_sygusGrammarConsMode(opts, name, optionarg); |
10900 |
|
return; |
10901 |
|
} |
10902 |
1559 |
if (name == "sygus-grammar-norm") { |
10903 |
|
assign_quantifiers_sygusGrammarNorm(opts, name, optionarg == "true"); |
10904 |
|
return; |
10905 |
|
} |
10906 |
1559 |
if (name == "sygus-inference") { |
10907 |
14 |
assign_quantifiers_sygusInference(opts, name, optionarg == "true"); |
10908 |
14 |
return; |
10909 |
|
} |
10910 |
1545 |
if (name == "sygus-inst") { |
10911 |
4 |
assign_quantifiers_sygusInst(opts, name, optionarg == "true"); |
10912 |
4 |
return; |
10913 |
|
} |
10914 |
1541 |
if (name == "sygus-inst-mode") { |
10915 |
|
assign_quantifiers_sygusInstMode(opts, name, optionarg); |
10916 |
|
return; |
10917 |
|
} |
10918 |
1541 |
if (name == "sygus-inst-scope") { |
10919 |
|
assign_quantifiers_sygusInstScope(opts, name, optionarg); |
10920 |
|
return; |
10921 |
|
} |
10922 |
1541 |
if (name == "sygus-inst-term-sel") { |
10923 |
|
assign_quantifiers_sygusInstTermSel(opts, name, optionarg); |
10924 |
|
return; |
10925 |
|
} |
10926 |
1541 |
if (name == "sygus-inv-templ-when-sg") { |
10927 |
|
assign_quantifiers_sygusInvTemplWhenSyntax(opts, name, optionarg == "true"); |
10928 |
|
return; |
10929 |
|
} |
10930 |
1541 |
if (name == "sygus-inv-templ") { |
10931 |
|
assign_quantifiers_sygusInvTemplMode(opts, name, optionarg); |
10932 |
|
return; |
10933 |
|
} |
10934 |
1541 |
if (name == "sygus-min-grammar") { |
10935 |
|
assign_quantifiers_sygusMinGrammar(opts, name, optionarg == "true"); |
10936 |
|
return; |
10937 |
|
} |
10938 |
1541 |
if (name == "sygus-pbe") { |
10939 |
|
assign_quantifiers_sygusUnifPbe(opts, name, optionarg == "true"); |
10940 |
|
return; |
10941 |
|
} |
10942 |
1541 |
if (name == "sygus-pbe-multi-fair") { |
10943 |
|
assign_quantifiers_sygusPbeMultiFair(opts, name, optionarg == "true"); |
10944 |
|
return; |
10945 |
|
} |
10946 |
1541 |
if (name == "sygus-pbe-multi-fair-diff") { |
10947 |
|
assign_quantifiers_sygusPbeMultiFairDiff(opts, name, optionarg); |
10948 |
|
return; |
10949 |
|
} |
10950 |
1541 |
if (name == "sygus-qe-preproc") { |
10951 |
|
assign_quantifiers_sygusQePreproc(opts, name, optionarg == "true"); |
10952 |
|
return; |
10953 |
|
} |
10954 |
1541 |
if (name == "sygus-query-gen") { |
10955 |
|
assign_quantifiers_sygusQueryGen(opts, name, optionarg == "true"); |
10956 |
|
return; |
10957 |
|
} |
10958 |
1541 |
if (name == "sygus-query-gen-check") { |
10959 |
|
assign_quantifiers_sygusQueryGenCheck(opts, name, optionarg == "true"); |
10960 |
|
return; |
10961 |
|
} |
10962 |
1541 |
if (name == "sygus-query-gen-dump-files") { |
10963 |
|
assign_quantifiers_sygusQueryGenDumpFiles(opts, name, optionarg); |
10964 |
|
return; |
10965 |
|
} |
10966 |
1541 |
if (name == "sygus-query-gen-thresh") { |
10967 |
|
assign_quantifiers_sygusQueryGenThresh(opts, name, optionarg); |
10968 |
|
return; |
10969 |
|
} |
10970 |
1541 |
if (name == "sygus-rec-fun") { |
10971 |
2 |
assign_quantifiers_sygusRecFun(opts, name, optionarg == "true"); |
10972 |
2 |
return; |
10973 |
|
} |
10974 |
1539 |
if (name == "sygus-rec-fun-eval-limit") { |
10975 |
|
assign_quantifiers_sygusRecFunEvalLimit(opts, name, optionarg); |
10976 |
|
return; |
10977 |
|
} |
10978 |
1539 |
if (name == "sygus-repair-const") { |
10979 |
|
assign_quantifiers_sygusRepairConst(opts, name, optionarg == "true"); |
10980 |
|
return; |
10981 |
|
} |
10982 |
1539 |
if (name == "sygus-repair-const-timeout") { |
10983 |
|
assign_quantifiers_sygusRepairConstTimeout(opts, name, optionarg); |
10984 |
|
return; |
10985 |
|
} |
10986 |
1539 |
if (name == "sygus-rr") { |
10987 |
|
assign_quantifiers_sygusRew(opts, name, optionarg == "true"); |
10988 |
|
return; |
10989 |
|
} |
10990 |
1539 |
if (name == "sygus-rr-synth") { |
10991 |
|
assign_quantifiers_sygusRewSynth(opts, name, optionarg == "true"); |
10992 |
|
return; |
10993 |
|
} |
10994 |
1539 |
if (name == "sygus-rr-synth-accel") { |
10995 |
|
assign_quantifiers_sygusRewSynthAccel(opts, name, optionarg == "true"); |
10996 |
|
return; |
10997 |
|
} |
10998 |
1539 |
if (name == "sygus-rr-synth-check") { |
10999 |
2 |
assign_quantifiers_sygusRewSynthCheck(opts, name, optionarg == "true"); |
11000 |
2 |
return; |
11001 |
|
} |
11002 |
1537 |
if (name == "sygus-rr-synth-filter-cong") { |
11003 |
|
assign_quantifiers_sygusRewSynthFilterCong(opts, name, optionarg == "true"); |
11004 |
|
return; |
11005 |
|
} |
11006 |
1537 |
if (name == "sygus-rr-synth-filter-match") { |
11007 |
|
assign_quantifiers_sygusRewSynthFilterMatch(opts, name, optionarg == "true"); |
11008 |
|
return; |
11009 |
|
} |
11010 |
1537 |
if (name == "sygus-rr-synth-filter-nl") { |
11011 |
|
assign_quantifiers_sygusRewSynthFilterNonLinear(opts, name, optionarg == "true"); |
11012 |
|
return; |
11013 |
|
} |
11014 |
1537 |
if (name == "sygus-rr-synth-filter-order") { |
11015 |
|
assign_quantifiers_sygusRewSynthFilterOrder(opts, name, optionarg == "true"); |
11016 |
|
return; |
11017 |
|
} |
11018 |
1537 |
if (name == "sygus-rr-synth-input") { |
11019 |
256 |
assign_quantifiers_sygusRewSynthInput(opts, name, optionarg == "true"); |
11020 |
256 |
return; |
11021 |
|
} |
11022 |
1281 |
if (name == "sygus-rr-synth-input-nvars") { |
11023 |
|
assign_quantifiers_sygusRewSynthInputNVars(opts, name, optionarg); |
11024 |
|
return; |
11025 |
|
} |
11026 |
1281 |
if (name == "sygus-rr-synth-input-use-bool") { |
11027 |
|
assign_quantifiers_sygusRewSynthInputUseBool(opts, name, optionarg == "true"); |
11028 |
|
return; |
11029 |
|
} |
11030 |
1281 |
if (name == "sygus-rr-synth-rec") { |
11031 |
|
assign_quantifiers_sygusRewSynthRec(opts, name, optionarg == "true"); |
11032 |
|
return; |
11033 |
|
} |
11034 |
1281 |
if (name == "sygus-rr-verify") { |
11035 |
|
assign_quantifiers_sygusRewVerify(opts, name, optionarg == "true"); |
11036 |
|
return; |
11037 |
|
} |
11038 |
1281 |
if (name == "sygus-rr-verify-abort") { |
11039 |
|
assign_quantifiers_sygusRewVerifyAbort(opts, name, optionarg == "true"); |
11040 |
|
return; |
11041 |
|
} |
11042 |
1281 |
if (name == "sygus-sample-fp-uniform") { |
11043 |
|
assign_quantifiers_sygusSampleFpUniform(opts, name, optionarg == "true"); |
11044 |
|
return; |
11045 |
|
} |
11046 |
1281 |
if (name == "sygus-sample-grammar") { |
11047 |
|
assign_quantifiers_sygusSampleGrammar(opts, name, optionarg == "true"); |
11048 |
|
return; |
11049 |
|
} |
11050 |
1281 |
if (name == "sygus-samples") { |
11051 |
|
assign_quantifiers_sygusSamples(opts, name, optionarg); |
11052 |
|
return; |
11053 |
|
} |
11054 |
1281 |
if (name == "sygus-si-abort") { |
11055 |
|
assign_quantifiers_cegqiSingleInvAbort(opts, name, optionarg == "true"); |
11056 |
|
return; |
11057 |
|
} |
11058 |
1281 |
if (name == "sygus-si-partial") { |
11059 |
|
assign_quantifiers_cegqiSingleInvPartial(opts, name, optionarg == "true"); |
11060 |
|
return; |
11061 |
|
} |
11062 |
1281 |
if (name == "sygus-si-rcons-limit") { |
11063 |
|
assign_quantifiers_cegqiSingleInvReconstructLimit(opts, name, optionarg); |
11064 |
|
return; |
11065 |
|
} |
11066 |
1281 |
if (name == "sygus-si-rcons") { |
11067 |
|
assign_quantifiers_cegqiSingleInvReconstruct(opts, name, optionarg); |
11068 |
|
return; |
11069 |
|
} |
11070 |
1281 |
if (name == "sygus-si-reconstruct-const") { |
11071 |
|
assign_quantifiers_cegqiSingleInvReconstructConst(opts, name, optionarg == "true"); |
11072 |
|
return; |
11073 |
|
} |
11074 |
1281 |
if (name == "sygus-si") { |
11075 |
|
assign_quantifiers_cegqiSingleInvMode(opts, name, optionarg); |
11076 |
|
return; |
11077 |
|
} |
11078 |
1281 |
if (name == "sygus-stream") { |
11079 |
|
assign_quantifiers_sygusStream(opts, name, optionarg == "true"); |
11080 |
|
return; |
11081 |
|
} |
11082 |
1281 |
if (name == "sygus-templ-embed-grammar") { |
11083 |
|
assign_quantifiers_sygusTemplEmbedGrammar(opts, name, optionarg == "true"); |
11084 |
|
return; |
11085 |
|
} |
11086 |
1281 |
if (name == "sygus-unif-cond-independent-no-repeat-sol") { |
11087 |
|
assign_quantifiers_sygusUnifCondIndNoRepeatSol(opts, name, optionarg == "true"); |
11088 |
|
return; |
11089 |
|
} |
11090 |
1281 |
if (name == "sygus-unif-pi") { |
11091 |
|
assign_quantifiers_sygusUnifPi(opts, name, optionarg); |
11092 |
|
return; |
11093 |
|
} |
11094 |
1281 |
if (name == "sygus-unif-shuffle-cond") { |
11095 |
|
assign_quantifiers_sygusUnifShuffleCond(opts, name, optionarg == "true"); |
11096 |
|
return; |
11097 |
|
} |
11098 |
1281 |
if (name == "sygus-verify-inst-max-rounds") { |
11099 |
|
assign_quantifiers_sygusVerifyInstMaxRounds(opts, name, optionarg); |
11100 |
|
return; |
11101 |
|
} |
11102 |
1281 |
if (name == "term-db-cd") { |
11103 |
|
assign_quantifiers_termDbCd(opts, name, optionarg == "true"); |
11104 |
|
return; |
11105 |
|
} |
11106 |
1281 |
if (name == "term-db-mode") { |
11107 |
|
assign_quantifiers_termDbMode(opts, name, optionarg); |
11108 |
|
return; |
11109 |
|
} |
11110 |
1281 |
if (name == "trigger-active-sel") { |
11111 |
|
assign_quantifiers_triggerActiveSelMode(opts, name, optionarg); |
11112 |
|
return; |
11113 |
|
} |
11114 |
1281 |
if (name == "trigger-sel") { |
11115 |
|
assign_quantifiers_triggerSelMode(opts, name, optionarg); |
11116 |
|
return; |
11117 |
|
} |
11118 |
1281 |
if (name == "user-pat") { |
11119 |
|
assign_quantifiers_userPatternsQuant(opts, name, optionarg); |
11120 |
|
return; |
11121 |
|
} |
11122 |
1281 |
if (name == "var-elim-quant") { |
11123 |
|
assign_quantifiers_varElimQuant(opts, name, optionarg == "true"); |
11124 |
|
return; |
11125 |
|
} |
11126 |
1281 |
if (name == "var-ineq-elim-quant") { |
11127 |
5 |
assign_quantifiers_varIneqElimQuant(opts, name, optionarg == "true"); |
11128 |
5 |
return; |
11129 |
|
} |
11130 |
1276 |
if (name == "sep-check-neg") { |
11131 |
|
assign_sep_sepCheckNeg(opts, name, optionarg == "true"); |
11132 |
|
return; |
11133 |
|
} |
11134 |
1276 |
if (name == "sep-child-refine") { |
11135 |
|
assign_sep_sepChildRefine(opts, name, optionarg == "true"); |
11136 |
|
return; |
11137 |
|
} |
11138 |
1276 |
if (name == "sep-deq-c") { |
11139 |
|
assign_sep_sepDisequalC(opts, name, optionarg == "true"); |
11140 |
|
return; |
11141 |
|
} |
11142 |
1276 |
if (name == "sep-exp") { |
11143 |
|
assign_sep_sepExp(opts, name, optionarg == "true"); |
11144 |
|
return; |
11145 |
|
} |
11146 |
1276 |
if (name == "sep-min-refine") { |
11147 |
|
assign_sep_sepMinimalRefine(opts, name, optionarg == "true"); |
11148 |
|
return; |
11149 |
|
} |
11150 |
1276 |
if (name == "sep-pre-skolem-emp") { |
11151 |
|
assign_sep_sepPreSkolemEmp(opts, name, optionarg == "true"); |
11152 |
|
return; |
11153 |
|
} |
11154 |
1276 |
if (name == "sets-ext") { |
11155 |
84 |
assign_sets_setsExt(opts, name, optionarg == "true"); |
11156 |
84 |
return; |
11157 |
|
} |
11158 |
1192 |
if (name == "sets-infer-as-lemmas") { |
11159 |
|
assign_sets_setsInferAsLemmas(opts, name, optionarg == "true"); |
11160 |
|
return; |
11161 |
|
} |
11162 |
1192 |
if (name == "sets-proxy-lemmas") { |
11163 |
|
assign_sets_setsProxyLemmas(opts, name, optionarg == "true"); |
11164 |
|
return; |
11165 |
|
} |
11166 |
1192 |
if (name == "abstract-values") { |
11167 |
|
assign_smt_abstractValues(opts, name, optionarg == "true"); |
11168 |
|
return; |
11169 |
|
} |
11170 |
1192 |
if (name == "ackermann") { |
11171 |
|
assign_smt_ackermann(opts, name, optionarg == "true"); |
11172 |
|
return; |
11173 |
|
} |
11174 |
1192 |
if (name == "block-models") { |
11175 |
14 |
assign_smt_blockModelsMode(opts, name, optionarg); |
11176 |
14 |
return; |
11177 |
|
} |
11178 |
1178 |
if (name == "bvand-integer-granularity") { |
11179 |
|
assign_smt_BVAndIntegerGranularity(opts, name, optionarg); |
11180 |
|
return; |
11181 |
|
} |
11182 |
1178 |
if (name == "check-abducts") { |
11183 |
|
assign_smt_checkAbducts(opts, name, optionarg == "true"); |
11184 |
|
return; |
11185 |
|
} |
11186 |
1178 |
if (name == "check-interpols") { |
11187 |
|
assign_smt_checkInterpols(opts, name, optionarg == "true"); |
11188 |
|
return; |
11189 |
|
} |
11190 |
1178 |
if (name == "check-models") { |
11191 |
9 |
assign_smt_checkModels(opts, name, optionarg == "true"); |
11192 |
9 |
return; |
11193 |
|
} |
11194 |
1169 |
if (name == "check-proofs") { |
11195 |
|
assign_smt_checkProofs(opts, name, optionarg == "true"); |
11196 |
|
return; |
11197 |
|
} |
11198 |
1169 |
if (name == "check-synth-sol") { |
11199 |
|
assign_smt_checkSynthSol(opts, name, optionarg == "true"); |
11200 |
|
return; |
11201 |
|
} |
11202 |
1169 |
if (name == "check-unsat-cores") { |
11203 |
8 |
assign_smt_checkUnsatCores(opts, name, optionarg == "true"); |
11204 |
8 |
return; |
11205 |
|
} |
11206 |
1161 |
if (name == "debug-check-models") { |
11207 |
|
assign_smt_debugCheckModels(opts, name, optionarg == "true"); |
11208 |
|
return; |
11209 |
|
} |
11210 |
1161 |
if (name == "dump-to") { |
11211 |
|
assign_smt_dumpToFileName(opts, name, optionarg); |
11212 |
|
return; |
11213 |
|
} |
11214 |
1161 |
if (name == "dump") { |
11215 |
|
assign_smt_dumpModeString(opts, name, optionarg); |
11216 |
|
return; |
11217 |
|
} |
11218 |
1161 |
if (name == "early-ite-removal") { |
11219 |
|
assign_smt_earlyIteRemoval(opts, name, optionarg == "true"); |
11220 |
|
return; |
11221 |
|
} |
11222 |
1161 |
if (name == "expand-definitions") { |
11223 |
|
assign_smt_expandDefinitions(opts, name, optionarg == "true"); |
11224 |
|
return; |
11225 |
|
} |
11226 |
1161 |
if (name == "ext-rew-prep") { |
11227 |
2 |
assign_smt_extRewPrep(opts, name, optionarg == "true"); |
11228 |
2 |
return; |
11229 |
|
} |
11230 |
1159 |
if (name == "ext-rew-prep-agg") { |
11231 |
|
assign_smt_extRewPrepAgg(opts, name, optionarg == "true"); |
11232 |
|
return; |
11233 |
|
} |
11234 |
1159 |
if (name == "foreign-theory-rewrite") { |
11235 |
|
assign_smt_foreignTheoryRewrite(opts, name, optionarg == "true"); |
11236 |
|
return; |
11237 |
|
} |
11238 |
1159 |
if (name == "iand-mode") { |
11239 |
|
assign_smt_iandMode(opts, name, optionarg); |
11240 |
|
return; |
11241 |
|
} |
11242 |
1159 |
if (name == "interactive-mode") { |
11243 |
2 |
assign_smt_interactiveMode(opts, name, optionarg == "true"); |
11244 |
2 |
return; |
11245 |
|
} |
11246 |
1157 |
if (name == "ite-simp") { |
11247 |
3 |
assign_smt_doITESimp(opts, name, optionarg == "true"); |
11248 |
3 |
return; |
11249 |
|
} |
11250 |
1154 |
if (name == "learned-rewrite") { |
11251 |
|
assign_smt_learnedRewrite(opts, name, optionarg == "true"); |
11252 |
|
return; |
11253 |
|
} |
11254 |
1154 |
if (name == "minimal-unsat-cores") { |
11255 |
|
assign_smt_minimalUnsatCores(opts, name, optionarg == "true"); |
11256 |
|
return; |
11257 |
|
} |
11258 |
1154 |
if (name == "model-cores") { |
11259 |
|
assign_smt_modelCoresMode(opts, name, optionarg); |
11260 |
|
return; |
11261 |
|
} |
11262 |
1154 |
if (name == "model-u-print" || name == "model-uninterp-print") { |
11263 |
|
assign_smt_modelUninterpPrint(opts, name, optionarg); |
11264 |
|
return; |
11265 |
|
} |
11266 |
1154 |
if (name == "model-witness-value") { |
11267 |
|
assign_smt_modelWitnessValue(opts, name, optionarg == "true"); |
11268 |
|
return; |
11269 |
|
} |
11270 |
1154 |
if (name == "on-repeat-ite-simp") { |
11271 |
|
assign_smt_doITESimpOnRepeat(opts, name, optionarg == "true"); |
11272 |
|
return; |
11273 |
|
} |
11274 |
1154 |
if (name == "produce-abducts") { |
11275 |
9 |
assign_smt_produceAbducts(opts, name, optionarg == "true"); |
11276 |
9 |
return; |
11277 |
|
} |
11278 |
1145 |
if (name == "produce-assertions") { |
11279 |
26 |
assign_smt_produceAssertions(opts, name, optionarg == "true"); |
11280 |
26 |
return; |
11281 |
|
} |
11282 |
1119 |
if (name == "produce-assignments") { |
11283 |
4 |
assign_smt_produceAssignments(opts, name, optionarg == "true"); |
11284 |
4 |
return; |
11285 |
|
} |
11286 |
1115 |
if (name == "produce-interpols") { |
11287 |
3 |
assign_smt_produceInterpols(opts, name, optionarg); |
11288 |
3 |
return; |
11289 |
|
} |
11290 |
1112 |
if (name == "produce-models") { |
11291 |
759 |
assign_smt_produceModels(opts, name, optionarg == "true"); |
11292 |
759 |
return; |
11293 |
|
} |
11294 |
353 |
if (name == "produce-proofs") { |
11295 |
6 |
assign_smt_produceProofs(opts, name, optionarg == "true"); |
11296 |
6 |
return; |
11297 |
|
} |
11298 |
347 |
if (name == "produce-unsat-assumptions") { |
11299 |
15 |
assign_smt_unsatAssumptions(opts, name, optionarg == "true"); |
11300 |
15 |
return; |
11301 |
|
} |
11302 |
332 |
if (name == "produce-unsat-cores") { |
11303 |
15 |
assign_smt_unsatCores(opts, name, optionarg == "true"); |
11304 |
15 |
return; |
11305 |
|
} |
11306 |
317 |
if (name == "repeat-simp") { |
11307 |
2 |
assign_smt_repeatSimp(opts, name, optionarg == "true"); |
11308 |
2 |
return; |
11309 |
|
} |
11310 |
315 |
if (name == "simp-ite-compress") { |
11311 |
3 |
assign_smt_compressItes(opts, name, optionarg == "true"); |
11312 |
3 |
return; |
11313 |
|
} |
11314 |
312 |
if (name == "simp-ite-hunt-zombies") { |
11315 |
|
assign_smt_zombieHuntThreshold(opts, name, optionarg); |
11316 |
|
return; |
11317 |
|
} |
11318 |
312 |
if (name == "simp-with-care") { |
11319 |
|
assign_smt_simplifyWithCareEnabled(opts, name, optionarg == "true"); |
11320 |
|
return; |
11321 |
|
} |
11322 |
312 |
if (name == "simplification" || name == "simplification-mode") { |
11323 |
1 |
assign_smt_simplificationMode(opts, name, optionarg); |
11324 |
1 |
return; |
11325 |
|
} |
11326 |
311 |
if (name == "solve-bv-as-int") { |
11327 |
14 |
assign_smt_solveBVAsInt(opts, name, optionarg); |
11328 |
14 |
return; |
11329 |
|
} |
11330 |
297 |
if (name == "solve-int-as-bv") { |
11331 |
4 |
assign_smt_solveIntAsBV(opts, name, optionarg); |
11332 |
4 |
return; |
11333 |
|
} |
11334 |
293 |
if (name == "solve-real-as-int") { |
11335 |
|
assign_smt_solveRealAsInt(opts, name, optionarg == "true"); |
11336 |
|
return; |
11337 |
|
} |
11338 |
293 |
if (name == "sort-inference") { |
11339 |
6 |
assign_smt_sortInference(opts, name, optionarg == "true"); |
11340 |
6 |
return; |
11341 |
|
} |
11342 |
287 |
if (name == "static-learning") { |
11343 |
|
assign_smt_doStaticLearning(opts, name, optionarg == "true"); |
11344 |
|
return; |
11345 |
|
} |
11346 |
287 |
if (name == "sygus-out") { |
11347 |
|
assign_smt_sygusOut(opts, name, optionarg); |
11348 |
|
return; |
11349 |
|
} |
11350 |
287 |
if (name == "sygus-print-callbacks") { |
11351 |
|
assign_smt_sygusPrintCallbacks(opts, name, optionarg == "true"); |
11352 |
|
return; |
11353 |
|
} |
11354 |
287 |
if (name == "unconstrained-simp") { |
11355 |
|
assign_smt_unconstrainedSimp(opts, name, optionarg == "true"); |
11356 |
|
return; |
11357 |
|
} |
11358 |
287 |
if (name == "unsat-cores-mode") { |
11359 |
|
assign_smt_unsatCoresMode(opts, name, optionarg); |
11360 |
|
return; |
11361 |
|
} |
11362 |
287 |
if (name == "re-elim") { |
11363 |
16 |
assign_strings_regExpElim(opts, name, optionarg == "true"); |
11364 |
16 |
return; |
11365 |
|
} |
11366 |
271 |
if (name == "re-elim-agg") { |
11367 |
8 |
assign_strings_regExpElimAgg(opts, name, optionarg == "true"); |
11368 |
8 |
return; |
11369 |
|
} |
11370 |
263 |
if (name == "re-inter-mode") { |
11371 |
|
assign_strings_stringRegExpInterMode(opts, name, optionarg); |
11372 |
|
return; |
11373 |
|
} |
11374 |
263 |
if (name == "strings-check-entail-len") { |
11375 |
|
assign_strings_stringCheckEntailLen(opts, name, optionarg == "true"); |
11376 |
|
return; |
11377 |
|
} |
11378 |
263 |
if (name == "strings-eager") { |
11379 |
|
assign_strings_stringEager(opts, name, optionarg == "true"); |
11380 |
|
return; |
11381 |
|
} |
11382 |
263 |
if (name == "strings-eager-eval") { |
11383 |
|
assign_strings_stringEagerEval(opts, name, optionarg == "true"); |
11384 |
|
return; |
11385 |
|
} |
11386 |
263 |
if (name == "strings-eager-len") { |
11387 |
|
assign_strings_stringEagerLen(opts, name, optionarg == "true"); |
11388 |
|
return; |
11389 |
|
} |
11390 |
263 |
if (name == "strings-exp") { |
11391 |
224 |
assign_strings_stringExp(opts, name, optionarg == "true"); |
11392 |
224 |
return; |
11393 |
|
} |
11394 |
39 |
if (name == "strings-ff") { |
11395 |
|
assign_strings_stringFlatForms(opts, name, optionarg == "true"); |
11396 |
|
return; |
11397 |
|
} |
11398 |
39 |
if (name == "strings-fmf") { |
11399 |
26 |
assign_strings_stringFMF(opts, name, optionarg == "true"); |
11400 |
26 |
return; |
11401 |
|
} |
11402 |
13 |
if (name == "strings-guess-model") { |
11403 |
|
assign_strings_stringGuessModel(opts, name, optionarg == "true"); |
11404 |
|
return; |
11405 |
|
} |
11406 |
13 |
if (name == "strings-infer-as-lemmas") { |
11407 |
|
assign_strings_stringInferAsLemmas(opts, name, optionarg == "true"); |
11408 |
|
return; |
11409 |
|
} |
11410 |
13 |
if (name == "strings-infer-sym") { |
11411 |
|
assign_strings_stringInferSym(opts, name, optionarg == "true"); |
11412 |
|
return; |
11413 |
|
} |
11414 |
13 |
if (name == "strings-lazy-pp") { |
11415 |
11 |
assign_strings_stringLazyPreproc(opts, name, optionarg == "true"); |
11416 |
11 |
return; |
11417 |
|
} |
11418 |
2 |
if (name == "strings-len-norm") { |
11419 |
|
assign_strings_stringLenNorm(opts, name, optionarg == "true"); |
11420 |
|
return; |
11421 |
|
} |
11422 |
2 |
if (name == "strings-lprop-csp") { |
11423 |
|
assign_strings_stringLenPropCsp(opts, name, optionarg == "true"); |
11424 |
|
return; |
11425 |
|
} |
11426 |
2 |
if (name == "strings-min-prefix-explain") { |
11427 |
|
assign_strings_stringMinPrefixExplain(opts, name, optionarg == "true"); |
11428 |
|
return; |
11429 |
|
} |
11430 |
2 |
if (name == "strings-process-loop-mode") { |
11431 |
|
assign_strings_stringProcessLoopMode(opts, name, optionarg); |
11432 |
|
return; |
11433 |
|
} |
11434 |
2 |
if (name == "strings-rexplain-lemmas") { |
11435 |
|
assign_strings_stringRExplainLemmas(opts, name, optionarg == "true"); |
11436 |
|
return; |
11437 |
|
} |
11438 |
2 |
if (name == "strings-unified-vspt") { |
11439 |
|
assign_strings_stringUnifiedVSpt(opts, name, optionarg == "true"); |
11440 |
|
return; |
11441 |
|
} |
11442 |
2 |
if (name == "assign-function-values") { |
11443 |
2 |
assign_theory_assignFunctionValues(opts, name, optionarg == "true"); |
11444 |
2 |
return; |
11445 |
|
} |
11446 |
|
if (name == "condense-function-values") { |
11447 |
|
assign_theory_condenseFunctionValues(opts, name, optionarg == "true"); |
11448 |
|
return; |
11449 |
|
} |
11450 |
|
if (name == "ee-mode") { |
11451 |
|
assign_theory_eeMode(opts, name, optionarg); |
11452 |
|
return; |
11453 |
|
} |
11454 |
|
if (name == "relevance-filter") { |
11455 |
|
assign_theory_relevanceFilter(opts, name, optionarg == "true"); |
11456 |
|
return; |
11457 |
|
} |
11458 |
|
if (name == "tc-mode") { |
11459 |
|
assign_theory_tcMode(opts, name, optionarg); |
11460 |
|
return; |
11461 |
|
} |
11462 |
|
if (name == "theoryof-mode") { |
11463 |
|
assign_theory_theoryOfMode(opts, name, optionarg); |
11464 |
|
return; |
11465 |
|
} |
11466 |
|
if (name == "symmetry-breaker" || name == "uf-symmetry-breaker") { |
11467 |
|
assign_uf_ufSymmetryBreaker(opts, name, optionarg == "true"); |
11468 |
|
return; |
11469 |
|
} |
11470 |
|
if (name == "uf-ho") { |
11471 |
|
assign_uf_ufHo(opts, name, optionarg == "true"); |
11472 |
|
return; |
11473 |
|
} |
11474 |
|
if (name == "uf-ho-ext") { |
11475 |
|
assign_uf_ufHoExt(opts, name, optionarg == "true"); |
11476 |
|
return; |
11477 |
|
} |
11478 |
|
if (name == "uf-ss-abort-card") { |
11479 |
|
assign_uf_ufssAbortCardinality(opts, name, optionarg); |
11480 |
|
return; |
11481 |
|
} |
11482 |
|
if (name == "uf-ss-fair") { |
11483 |
|
assign_uf_ufssFairness(opts, name, optionarg == "true"); |
11484 |
|
return; |
11485 |
|
} |
11486 |
|
if (name == "uf-ss-fair-monotone") { |
11487 |
|
assign_uf_ufssFairnessMonotone(opts, name, optionarg == "true"); |
11488 |
|
return; |
11489 |
|
} |
11490 |
|
if (name == "uf-ss-totality-limited") { |
11491 |
|
assign_uf_ufssTotalityLimited(opts, name, optionarg); |
11492 |
|
return; |
11493 |
|
} |
11494 |
|
if (name == "uf-ss-totality-sym-break") { |
11495 |
|
assign_uf_ufssTotalitySymBreak(opts, name, optionarg == "true"); |
11496 |
|
return; |
11497 |
|
} |
11498 |
|
if (name == "uf-ss") { |
11499 |
|
assign_uf_ufssMode(opts, name, optionarg); |
11500 |
|
return; |
11501 |
|
} |
11502 |
|
throw UnrecognizedOptionException(name); |
11503 |
|
} |
11504 |
|
|
11505 |
9570 |
void set(Options& opts, const std::string& name, const std::string& optionarg) |
11506 |
|
{ |
11507 |
|
|
11508 |
19140 |
Trace("options") << "setOption(" << name << ", " << optionarg << ")" |
11509 |
9570 |
<< std::endl; |
11510 |
|
// first update this object |
11511 |
9570 |
setInternal(opts, name, optionarg); |
11512 |
9568 |
} |
11513 |
|
|
11514 |
|
std::vector<std::vector<std::string> > getAll(const Options& opts) |
11515 |
|
{ |
11516 |
|
std::vector<std::vector<std::string>> res; |
11517 |
|
|
11518 |
|
res.push_back({"approx-branch-depth", std::to_string(opts.arith.maxApproxDepth)}); |
11519 |
|
res.push_back({"arith-brab", opts.arith.brabTest ? "true" : "false"}); |
11520 |
|
res.push_back({"arith-cong-man", opts.arith.arithCongMan ? "true" : "false"}); |
11521 |
|
res.push_back({"arith-eq-solver", opts.arith.arithEqSolver ? "true" : "false"}); |
11522 |
|
res.push_back({"arith-no-partial-fun", opts.arith.arithNoPartialFun ? "true" : "false"}); |
11523 |
|
res.push_back({"arith-prop-clauses", std::to_string(opts.arith.arithPropAsLemmaLength)}); |
11524 |
|
{ std::stringstream ss; ss << opts.arith.arithPropagationMode; res.push_back({"arith-prop", ss.str()}); } |
11525 |
|
res.push_back({"arith-rewrite-equalities", opts.arith.arithRewriteEq ? "true" : "false"}); |
11526 |
|
res.push_back({"collect-pivot-stats", opts.arith.collectPivots ? "true" : "false"}); |
11527 |
|
res.push_back({"cut-all-bounded", opts.arith.doCutAllBounded ? "true" : "false"}); |
11528 |
|
res.push_back({"dio-decomps", opts.arith.exportDioDecompositions ? "true" : "false"}); |
11529 |
|
res.push_back({"dio-repeat", opts.arith.dioRepeat ? "true" : "false"}); |
11530 |
|
res.push_back({"dio-solver", opts.arith.arithDioSolver ? "true" : "false"}); |
11531 |
|
res.push_back({"dio-turns", std::to_string(opts.arith.dioSolverTurns)}); |
11532 |
|
{ std::stringstream ss; ss << opts.arith.arithErrorSelectionRule; res.push_back({"error-selection-rule", ss.str()}); } |
11533 |
|
res.push_back({"fc-penalties", opts.arith.havePenalties ? "true" : "false"}); |
11534 |
|
res.push_back({"heuristic-pivots", std::to_string(opts.arith.arithHeuristicPivots)}); |
11535 |
|
res.push_back({"lemmas-on-replay-failure", opts.arith.replayFailureLemma ? "true" : "false"}); |
11536 |
|
res.push_back({"maxCutsInContext", std::to_string(opts.arith.maxCutsInContext)}); |
11537 |
|
res.push_back({"miplib-trick", opts.arith.arithMLTrick ? "true" : "false"}); |
11538 |
|
res.push_back({"miplib-trick-subs", std::to_string(opts.arith.arithMLTrickSubstitutions)}); |
11539 |
|
res.push_back({"new-prop", opts.arith.newProp ? "true" : "false"}); |
11540 |
|
res.push_back({"nl-cad", opts.arith.nlCad ? "true" : "false"}); |
11541 |
|
res.push_back({"nl-cad-initial", opts.arith.nlCadUseInitial ? "true" : "false"}); |
11542 |
|
{ std::stringstream ss; ss << opts.arith.nlCadLifting; res.push_back({"nl-cad-lift", ss.str()}); } |
11543 |
|
{ std::stringstream ss; ss << opts.arith.nlCadProjection; res.push_back({"nl-cad-proj", ss.str()}); } |
11544 |
|
res.push_back({"nl-ext-ent-conf", opts.arith.nlExtEntailConflicts ? "true" : "false"}); |
11545 |
|
res.push_back({"nl-ext-factor", opts.arith.nlExtFactor ? "true" : "false"}); |
11546 |
|
res.push_back({"nl-ext-inc-prec", opts.arith.nlExtIncPrecision ? "true" : "false"}); |
11547 |
|
res.push_back({"nl-ext-purify", opts.arith.nlExtPurify ? "true" : "false"}); |
11548 |
|
res.push_back({"nl-ext-rbound", opts.arith.nlExtResBound ? "true" : "false"}); |
11549 |
|
res.push_back({"nl-ext-rewrite", opts.arith.nlExtRewrites ? "true" : "false"}); |
11550 |
|
res.push_back({"nl-ext-split-zero", opts.arith.nlExtSplitZero ? "true" : "false"}); |
11551 |
|
res.push_back({"nl-ext-tf-taylor-deg", std::to_string(opts.arith.nlExtTfTaylorDegree)}); |
11552 |
|
res.push_back({"nl-ext-tf-tplanes", opts.arith.nlExtTfTangentPlanes ? "true" : "false"}); |
11553 |
|
res.push_back({"nl-ext-tplanes", opts.arith.nlExtTangentPlanes ? "true" : "false"}); |
11554 |
|
res.push_back({"nl-ext-tplanes-interleave", opts.arith.nlExtTangentPlanesInterleave ? "true" : "false"}); |
11555 |
|
{ std::stringstream ss; ss << opts.arith.nlExt; res.push_back({"nl-ext", ss.str()}); } |
11556 |
|
res.push_back({"nl-icp", opts.arith.nlICP ? "true" : "false"}); |
11557 |
|
{ std::stringstream ss; ss << opts.arith.nlRlvMode; res.push_back({"nl-rlv", ss.str()}); } |
11558 |
|
res.push_back({"pb-rewrites", opts.arith.pbRewrites ? "true" : "false"}); |
11559 |
|
res.push_back({"pivot-threshold", std::to_string(opts.arith.arithPivotThreshold)}); |
11560 |
|
res.push_back({"pp-assert-max-sub-size", std::to_string(opts.arith.ppAssertMaxSubSize)}); |
11561 |
|
res.push_back({"prop-row-length", std::to_string(opts.arith.arithPropagateMaxLength)}); |
11562 |
|
res.push_back({"replay-early-close-depth", std::to_string(opts.arith.replayEarlyCloseDepths)}); |
11563 |
|
res.push_back({"replay-failure-penalty", std::to_string(opts.arith.replayFailurePenalty)}); |
11564 |
|
res.push_back({"replay-lemma-reject-cut", std::to_string(opts.arith.lemmaRejectCutSize)}); |
11565 |
|
res.push_back({"replay-num-err-penalty", std::to_string(opts.arith.replayNumericFailurePenalty)}); |
11566 |
|
res.push_back({"replay-reject-cut", std::to_string(opts.arith.replayRejectCutSize)}); |
11567 |
|
res.push_back({"replay-soi-major-threshold-pen", std::to_string(opts.arith.soiApproxMajorFailurePen)}); |
11568 |
|
res.push_back({"replay-soi-major-threshold", std::to_string(opts.arith.soiApproxMajorFailure)}); |
11569 |
|
res.push_back({"replay-soi-minor-threshold-pen", std::to_string(opts.arith.soiApproxMinorFailurePen)}); |
11570 |
|
res.push_back({"replay-soi-minor-threshold", std::to_string(opts.arith.soiApproxMinorFailure)}); |
11571 |
|
res.push_back({"restrict-pivots", opts.arith.restrictedPivots ? "true" : "false"}); |
11572 |
|
res.push_back({"revert-arith-models-on-unsat", opts.arith.revertArithModels ? "true" : "false"}); |
11573 |
|
res.push_back({"rr-turns", std::to_string(opts.arith.rrTurns)}); |
11574 |
|
res.push_back({"se-solve-int", opts.arith.trySolveIntStandardEffort ? "true" : "false"}); |
11575 |
|
res.push_back({"simplex-check-period", std::to_string(opts.arith.arithSimplexCheckPeriod)}); |
11576 |
|
res.push_back({"soi-qe", opts.arith.soiQuickExplain ? "true" : "false"}); |
11577 |
|
res.push_back({"standard-effort-variable-order-pivots", std::to_string(opts.arith.arithStandardCheckVarOrderPivots)}); |
11578 |
|
{ std::stringstream ss; ss << opts.arith.arithUnateLemmaMode; res.push_back({"unate-lemmas", ss.str()}); } |
11579 |
|
res.push_back({"use-approx", opts.arith.useApprox ? "true" : "false"}); |
11580 |
|
res.push_back({"use-fcsimplex", opts.arith.useFC ? "true" : "false"}); |
11581 |
|
res.push_back({"use-soi", opts.arith.useSOI ? "true" : "false"}); |
11582 |
|
res.push_back({"arrays-config", std::to_string(opts.arrays.arraysConfig)}); |
11583 |
|
res.push_back({"arrays-eager-index", opts.arrays.arraysEagerIndexSplitting ? "true" : "false"}); |
11584 |
|
res.push_back({"arrays-eager-lemmas", opts.arrays.arraysEagerLemmas ? "true" : "false"}); |
11585 |
|
res.push_back({"arrays-exp", opts.arrays.arraysExp ? "true" : "false"}); |
11586 |
|
res.push_back({"arrays-model-based", opts.arrays.arraysModelBased ? "true" : "false"}); |
11587 |
|
res.push_back({"arrays-optimize-linear", opts.arrays.arraysOptimizeLinear ? "true" : "false"}); |
11588 |
|
res.push_back({"arrays-prop", std::to_string(opts.arrays.arraysPropagate)}); |
11589 |
|
res.push_back({"arrays-reduce-sharing", opts.arrays.arraysReduceSharing ? "true" : "false"}); |
11590 |
|
res.push_back({"arrays-weak-equiv", opts.arrays.arraysWeakEquivalence ? "true" : "false"}); |
11591 |
|
{ std::stringstream ss; ss << opts.base.err; res.push_back({"err", ss.str()}); } |
11592 |
|
{ std::stringstream ss; ss << opts.base.in; res.push_back({"in", ss.str()}); } |
11593 |
|
res.push_back({"incremental", opts.base.incrementalSolving ? "true" : "false"}); |
11594 |
|
{ std::stringstream ss; ss << opts.base.inputLanguage; res.push_back({"lang", ss.str()}); } |
11595 |
|
{ std::stringstream ss; ss << opts.base.out; res.push_back({"out", ss.str()}); } |
11596 |
|
{ std::stringstream ss; ss << opts.base.outputLanguage; res.push_back({"output-lang", ss.str()}); } |
11597 |
|
{ std::stringstream ss; ss << opts.base.outputTag; res.push_back({"output", ss.str()}); } |
11598 |
|
res.push_back({"parse-only", opts.base.parseOnly ? "true" : "false"}); |
11599 |
|
res.push_back({"preprocess-only", opts.base.preprocessOnly ? "true" : "false"}); |
11600 |
|
res.push_back({"print-success", opts.base.printSuccess ? "true" : "false"}); |
11601 |
|
res.push_back({"rlimit-per", std::to_string(opts.base.perCallResourceLimit)}); |
11602 |
|
res.push_back({"rlimit", std::to_string(opts.base.cumulativeResourceLimit)}); |
11603 |
|
res.push_back({"stats", opts.base.statistics ? "true" : "false"}); |
11604 |
|
res.push_back({"stats-all", opts.base.statisticsAll ? "true" : "false"}); |
11605 |
|
res.push_back({"stats-every-query", opts.base.statisticsEveryQuery ? "true" : "false"}); |
11606 |
|
res.push_back({"stats-expert", opts.base.statisticsExpert ? "true" : "false"}); |
11607 |
|
res.push_back({"tlimit-per", std::to_string(opts.base.perCallMillisecondLimit)}); |
11608 |
|
res.push_back({"tlimit", std::to_string(opts.base.cumulativeMillisecondLimit)}); |
11609 |
|
res.push_back({"verbosity", std::to_string(opts.base.verbosity)}); |
11610 |
|
res.push_back({"bitblast-aig", opts.bv.bitvectorAig ? "true" : "false"}); |
11611 |
|
{ std::stringstream ss; ss << opts.bv.bitblastMode; res.push_back({"bitblast", ss.str()}); } |
11612 |
|
res.push_back({"bitwise-eq", opts.bv.bitwiseEq ? "true" : "false"}); |
11613 |
|
{ std::stringstream ss; ss << opts.bv.boolToBitvector; res.push_back({"bool-to-bv", ss.str()}); } |
11614 |
|
res.push_back({"bv-abstraction", opts.bv.bvAbstraction ? "true" : "false"}); |
11615 |
|
res.push_back({"bv-aig-simp", opts.bv.bitvectorAigSimplifications}); |
11616 |
|
res.push_back({"bv-alg-extf", opts.bv.bvAlgExtf ? "true" : "false"}); |
11617 |
|
res.push_back({"bv-algebraic-budget", std::to_string(opts.bv.bitvectorAlgebraicBudget)}); |
11618 |
|
res.push_back({"bv-algebraic-solver", opts.bv.bitvectorAlgebraicSolver ? "true" : "false"}); |
11619 |
|
res.push_back({"bv-assert-input", opts.bv.bvAssertInput ? "true" : "false"}); |
11620 |
|
res.push_back({"bv-eager-explanations", opts.bv.bvEagerExplanations ? "true" : "false"}); |
11621 |
|
res.push_back({"bv-eq-solver", opts.bv.bitvectorEqualitySolver ? "true" : "false"}); |
11622 |
|
res.push_back({"bv-extract-arith", opts.bv.bvExtractArithRewrite ? "true" : "false"}); |
11623 |
|
res.push_back({"bv-gauss-elim", opts.bv.bvGaussElim ? "true" : "false"}); |
11624 |
|
res.push_back({"bv-inequality-solver", opts.bv.bitvectorInequalitySolver ? "true" : "false"}); |
11625 |
|
res.push_back({"bv-intro-pow2", opts.bv.bvIntroducePow2 ? "true" : "false"}); |
11626 |
|
res.push_back({"bv-num-func", std::to_string(opts.bv.bvNumFunc)}); |
11627 |
|
res.push_back({"bv-print-consts-as-indexed-symbols", opts.bv.bvPrintConstsAsIndexedSymbols ? "true" : "false"}); |
11628 |
|
res.push_back({"bv-propagate", opts.bv.bitvectorPropagate ? "true" : "false"}); |
11629 |
|
res.push_back({"bv-quick-xplain", opts.bv.bitvectorQuickXplain ? "true" : "false"}); |
11630 |
|
{ std::stringstream ss; ss << opts.bv.bvSatSolver; res.push_back({"bv-sat-solver", ss.str()}); } |
11631 |
|
res.push_back({"bv-skolemize", opts.bv.skolemizeArguments ? "true" : "false"}); |
11632 |
|
{ std::stringstream ss; ss << opts.bv.bvSolver; res.push_back({"bv-solver", ss.str()}); } |
11633 |
|
res.push_back({"bv-to-bool", opts.bv.bitvectorToBool ? "true" : "false"}); |
11634 |
|
res.push_back({"cdt-bisimilar", opts.datatypes.cdtBisimilar ? "true" : "false"}); |
11635 |
|
res.push_back({"dt-binary-split", opts.datatypes.dtBinarySplit ? "true" : "false"}); |
11636 |
|
res.push_back({"dt-blast-splits", opts.datatypes.dtBlastSplits ? "true" : "false"}); |
11637 |
|
res.push_back({"dt-cyclic", opts.datatypes.dtCyclic ? "true" : "false"}); |
11638 |
|
res.push_back({"dt-force-assignment", opts.datatypes.dtForceAssignment ? "true" : "false"}); |
11639 |
|
res.push_back({"dt-infer-as-lemmas", opts.datatypes.dtInferAsLemmas ? "true" : "false"}); |
11640 |
|
res.push_back({"dt-nested-rec", opts.datatypes.dtNestedRec ? "true" : "false"}); |
11641 |
|
res.push_back({"dt-polite-optimize", opts.datatypes.dtPoliteOptimize ? "true" : "false"}); |
11642 |
|
res.push_back({"dt-rewrite-error-sel", opts.datatypes.dtRewriteErrorSel ? "true" : "false"}); |
11643 |
|
res.push_back({"dt-share-sel", opts.datatypes.dtSharedSelectors ? "true" : "false"}); |
11644 |
|
res.push_back({"sygus-abort-size", std::to_string(opts.datatypes.sygusAbortSize)}); |
11645 |
|
res.push_back({"sygus-fair-max", opts.datatypes.sygusFairMax ? "true" : "false"}); |
11646 |
|
{ std::stringstream ss; ss << opts.datatypes.sygusFair; res.push_back({"sygus-fair", ss.str()}); } |
11647 |
|
res.push_back({"sygus-sym-break", opts.datatypes.sygusSymBreak ? "true" : "false"}); |
11648 |
|
res.push_back({"sygus-sym-break-agg", opts.datatypes.sygusSymBreakAgg ? "true" : "false"}); |
11649 |
|
res.push_back({"sygus-sym-break-dynamic", opts.datatypes.sygusSymBreakDynamic ? "true" : "false"}); |
11650 |
|
res.push_back({"sygus-sym-break-lazy", opts.datatypes.sygusSymBreakLazy ? "true" : "false"}); |
11651 |
|
res.push_back({"sygus-sym-break-pbe", opts.datatypes.sygusSymBreakPbe ? "true" : "false"}); |
11652 |
|
res.push_back({"sygus-sym-break-rlv", opts.datatypes.sygusSymBreakRlv ? "true" : "false"}); |
11653 |
|
res.push_back({"decision-random-weight", std::to_string(opts.decision.decisionRandomWeight)}); |
11654 |
|
{ std::stringstream ss; ss << opts.decision.decisionThreshold; res.push_back({"decision-threshold", ss.str()}); } |
11655 |
|
res.push_back({"decision-use-weight", opts.decision.decisionUseWeight ? "true" : "false"}); |
11656 |
|
{ std::stringstream ss; ss << opts.decision.decisionWeightInternal; res.push_back({"decision-weight-internal", ss.str()}); } |
11657 |
|
{ std::stringstream ss; ss << opts.decision.decisionMode; res.push_back({"decision", ss.str()}); } |
11658 |
|
res.push_back({"jh-rlv-order", opts.decision.jhRlvOrder ? "true" : "false"}); |
11659 |
|
{ std::stringstream ss; ss << opts.decision.jhSkolemRlvMode; res.push_back({"jh-skolem-rlv", ss.str()}); } |
11660 |
|
{ std::stringstream ss; ss << opts.decision.jhSkolemMode; res.push_back({"jh-skolem", ss.str()}); } |
11661 |
|
res.push_back({"dag-thresh", std::to_string(opts.expr.defaultDagThresh)}); |
11662 |
|
res.push_back({"expr-depth", std::to_string(opts.expr.defaultExprDepth)}); |
11663 |
|
res.push_back({"type-checking", opts.expr.typeChecking ? "true" : "false"}); |
11664 |
|
res.push_back({"fp-exp", opts.fp.fpExp ? "true" : "false"}); |
11665 |
|
res.push_back({"fp-lazy-wb", opts.fp.fpLazyWb ? "true" : "false"}); |
11666 |
|
res.push_back({"dump-instantiations", opts.driver.dumpInstantiations ? "true" : "false"}); |
11667 |
|
res.push_back({"dump-instantiations-debug", opts.driver.dumpInstantiationsDebug ? "true" : "false"}); |
11668 |
|
res.push_back({"dump-models", opts.driver.dumpModels ? "true" : "false"}); |
11669 |
|
res.push_back({"dump-proofs", opts.driver.dumpProofs ? "true" : "false"}); |
11670 |
|
res.push_back({"dump-unsat-cores", opts.driver.dumpUnsatCores ? "true" : "false"}); |
11671 |
|
res.push_back({"dump-unsat-cores-full", opts.driver.dumpUnsatCoresFull ? "true" : "false"}); |
11672 |
|
res.push_back({"early-exit", opts.driver.earlyExit ? "true" : "false"}); |
11673 |
|
res.push_back({"force-no-limit-cpu-while-dump", opts.driver.forceNoLimitCpuWhileDump ? "true" : "false"}); |
11674 |
|
res.push_back({"help", opts.driver.help ? "true" : "false"}); |
11675 |
|
res.push_back({"interactive", opts.driver.interactive ? "true" : "false"}); |
11676 |
|
res.push_back({"interactive-prompt", opts.driver.interactivePrompt ? "true" : "false"}); |
11677 |
|
res.push_back({"seed", std::to_string(opts.driver.seed)}); |
11678 |
|
res.push_back({"segv-spin", opts.driver.segvSpin ? "true" : "false"}); |
11679 |
|
res.push_back({"version", opts.driver.version ? "true" : "false"}); |
11680 |
|
res.push_back({"filesystem-access", opts.parser.filesystemAccess ? "true" : "false"}); |
11681 |
|
res.push_back({"force-logic", opts.parser.forceLogicString}); |
11682 |
|
res.push_back({"global-declarations", opts.parser.globalDeclarations ? "true" : "false"}); |
11683 |
|
res.push_back({"mmap", opts.parser.memoryMap ? "true" : "false"}); |
11684 |
|
res.push_back({"semantic-checks", opts.parser.semanticChecks ? "true" : "false"}); |
11685 |
|
res.push_back({"strict-parsing", opts.parser.strictParsing ? "true" : "false"}); |
11686 |
|
res.push_back({"flatten-ho-chains", opts.printer.flattenHOChains ? "true" : "false"}); |
11687 |
|
{ std::stringstream ss; ss << opts.printer.instFormatMode; res.push_back({"inst-format", ss.str()}); } |
11688 |
|
{ std::stringstream ss; ss << opts.printer.modelFormatMode; res.push_back({"model-format", ss.str()}); } |
11689 |
|
res.push_back({"print-inst-full", opts.printer.printInstFull ? "true" : "false"}); |
11690 |
|
{ std::stringstream ss; ss << opts.printer.printInstMode; res.push_back({"print-inst", ss.str()}); } |
11691 |
|
res.push_back({"proof-eager-checking", opts.proof.proofEagerChecking ? "true" : "false"}); |
11692 |
|
{ std::stringstream ss; ss << opts.proof.proofFormatMode; res.push_back({"proof-format-mode", ss.str()}); } |
11693 |
|
{ std::stringstream ss; ss << opts.proof.proofGranularityMode; res.push_back({"proof-granularity", ss.str()}); } |
11694 |
|
res.push_back({"proof-pedantic", std::to_string(opts.proof.proofPedantic)}); |
11695 |
|
res.push_back({"proof-print-conclusion", opts.proof.proofPrintConclusion ? "true" : "false"}); |
11696 |
|
res.push_back({"minisat-dump-dimacs", opts.prop.minisatDumpDimacs ? "true" : "false"}); |
11697 |
|
res.push_back({"minisat-elimination", opts.prop.minisatUseElim ? "true" : "false"}); |
11698 |
|
res.push_back({"random-freq", std::to_string(opts.prop.satRandomFreq)}); |
11699 |
|
res.push_back({"random-seed", std::to_string(opts.prop.satRandomSeed)}); |
11700 |
|
res.push_back({"refine-conflicts", opts.prop.sat_refine_conflicts ? "true" : "false"}); |
11701 |
|
res.push_back({"restart-int-base", std::to_string(opts.prop.satRestartFirst)}); |
11702 |
|
res.push_back({"restart-int-inc", std::to_string(opts.prop.satRestartInc)}); |
11703 |
|
res.push_back({"ag-miniscope-quant", opts.quantifiers.aggressiveMiniscopeQuant ? "true" : "false"}); |
11704 |
|
{ std::stringstream ss; ss << opts.quantifiers.cegisSample; res.push_back({"cegis-sample", ss.str()}); } |
11705 |
|
res.push_back({"cegqi", opts.quantifiers.cegqi ? "true" : "false"}); |
11706 |
|
res.push_back({"cegqi-all", opts.quantifiers.cegqiAll ? "true" : "false"}); |
11707 |
|
res.push_back({"cegqi-bv", opts.quantifiers.cegqiBv ? "true" : "false"}); |
11708 |
|
res.push_back({"cegqi-bv-concat-inv", opts.quantifiers.cegqiBvConcInv ? "true" : "false"}); |
11709 |
|
{ std::stringstream ss; ss << opts.quantifiers.cegqiBvIneqMode; res.push_back({"cegqi-bv-ineq", ss.str()}); } |
11710 |
|
res.push_back({"cegqi-bv-interleave-value", opts.quantifiers.cegqiBvInterleaveValue ? "true" : "false"}); |
11711 |
|
res.push_back({"cegqi-bv-linear", opts.quantifiers.cegqiBvLinearize ? "true" : "false"}); |
11712 |
|
res.push_back({"cegqi-bv-rm-extract", opts.quantifiers.cegqiBvRmExtract ? "true" : "false"}); |
11713 |
|
res.push_back({"cegqi-bv-solve-nl", opts.quantifiers.cegqiBvSolveNl ? "true" : "false"}); |
11714 |
|
res.push_back({"cegqi-full", opts.quantifiers.cegqiFullEffort ? "true" : "false"}); |
11715 |
|
res.push_back({"cegqi-innermost", opts.quantifiers.cegqiInnermost ? "true" : "false"}); |
11716 |
|
res.push_back({"cegqi-midpoint", opts.quantifiers.cegqiMidpoint ? "true" : "false"}); |
11717 |
|
res.push_back({"cegqi-min-bounds", opts.quantifiers.cegqiMinBounds ? "true" : "false"}); |
11718 |
|
res.push_back({"cegqi-model", opts.quantifiers.cegqiModel ? "true" : "false"}); |
11719 |
|
res.push_back({"cegqi-multi-inst", opts.quantifiers.cegqiMultiInst ? "true" : "false"}); |
11720 |
|
res.push_back({"cegqi-nested-qe", opts.quantifiers.cegqiNestedQE ? "true" : "false"}); |
11721 |
|
res.push_back({"cegqi-nopt", opts.quantifiers.cegqiNopt ? "true" : "false"}); |
11722 |
|
res.push_back({"cegqi-repeat-lit", opts.quantifiers.cegqiRepeatLit ? "true" : "false"}); |
11723 |
|
res.push_back({"cegqi-round-up-lia", opts.quantifiers.cegqiRoundUpLowerLia ? "true" : "false"}); |
11724 |
|
res.push_back({"cegqi-sat", opts.quantifiers.cegqiSat ? "true" : "false"}); |
11725 |
|
res.push_back({"cegqi-use-inf-int", opts.quantifiers.cegqiUseInfInt ? "true" : "false"}); |
11726 |
|
res.push_back({"cegqi-use-inf-real", opts.quantifiers.cegqiUseInfReal ? "true" : "false"}); |
11727 |
|
res.push_back({"cond-var-split-agg-quant", opts.quantifiers.condVarSplitQuantAgg ? "true" : "false"}); |
11728 |
|
res.push_back({"cond-var-split-quant", opts.quantifiers.condVarSplitQuant ? "true" : "false"}); |
11729 |
|
res.push_back({"conjecture-filter-active-terms", opts.quantifiers.conjectureFilterActiveTerms ? "true" : "false"}); |
11730 |
|
res.push_back({"conjecture-filter-canonical", opts.quantifiers.conjectureFilterCanonical ? "true" : "false"}); |
11731 |
|
res.push_back({"conjecture-filter-model", opts.quantifiers.conjectureFilterModel ? "true" : "false"}); |
11732 |
|
res.push_back({"conjecture-gen", opts.quantifiers.conjectureGen ? "true" : "false"}); |
11733 |
|
res.push_back({"conjecture-gen-gt-enum", std::to_string(opts.quantifiers.conjectureGenGtEnum)}); |
11734 |
|
res.push_back({"conjecture-gen-max-depth", std::to_string(opts.quantifiers.conjectureGenMaxDepth)}); |
11735 |
|
res.push_back({"conjecture-gen-per-round", std::to_string(opts.quantifiers.conjectureGenPerRound)}); |
11736 |
|
res.push_back({"conjecture-gen-uee-intro", opts.quantifiers.conjectureUeeIntro ? "true" : "false"}); |
11737 |
|
res.push_back({"conjecture-no-filter", opts.quantifiers.conjectureNoFilter ? "true" : "false"}); |
11738 |
|
res.push_back({"dt-stc-ind", opts.quantifiers.dtStcInduction ? "true" : "false"}); |
11739 |
|
res.push_back({"dt-var-exp-quant", opts.quantifiers.dtVarExpandQuant ? "true" : "false"}); |
11740 |
|
res.push_back({"e-matching", opts.quantifiers.eMatching ? "true" : "false"}); |
11741 |
|
res.push_back({"elim-taut-quant", opts.quantifiers.elimTautQuant ? "true" : "false"}); |
11742 |
|
res.push_back({"ext-rewrite-quant", opts.quantifiers.extRewriteQuant ? "true" : "false"}); |
11743 |
|
res.push_back({"finite-model-find", opts.quantifiers.finiteModelFind ? "true" : "false"}); |
11744 |
|
res.push_back({"fmf-bound", opts.quantifiers.fmfBound ? "true" : "false"}); |
11745 |
|
res.push_back({"fmf-bound-int", opts.quantifiers.fmfBoundInt ? "true" : "false"}); |
11746 |
|
res.push_back({"fmf-bound-lazy", opts.quantifiers.fmfBoundLazy ? "true" : "false"}); |
11747 |
|
res.push_back({"fmf-fmc-simple", opts.quantifiers.fmfFmcSimple ? "true" : "false"}); |
11748 |
|
res.push_back({"fmf-fresh-dc", opts.quantifiers.fmfFreshDistConst ? "true" : "false"}); |
11749 |
|
res.push_back({"fmf-fun", opts.quantifiers.fmfFunWellDefined ? "true" : "false"}); |
11750 |
|
res.push_back({"fmf-fun-rlv", opts.quantifiers.fmfFunWellDefinedRelevant ? "true" : "false"}); |
11751 |
|
res.push_back({"fmf-inst-engine", opts.quantifiers.fmfInstEngine ? "true" : "false"}); |
11752 |
|
res.push_back({"fmf-type-completion-thresh", std::to_string(opts.quantifiers.fmfTypeCompletionThresh)}); |
11753 |
|
res.push_back({"fs-interleave", opts.quantifiers.fullSaturateInterleave ? "true" : "false"}); |
11754 |
|
res.push_back({"fs-stratify", opts.quantifiers.fullSaturateStratify ? "true" : "false"}); |
11755 |
|
res.push_back({"fs-sum", opts.quantifiers.fullSaturateSum ? "true" : "false"}); |
11756 |
|
res.push_back({"full-saturate-quant", opts.quantifiers.fullSaturateQuant ? "true" : "false"}); |
11757 |
|
res.push_back({"full-saturate-quant-limit", std::to_string(opts.quantifiers.fullSaturateLimit)}); |
11758 |
|
res.push_back({"full-saturate-quant-rd", opts.quantifiers.fullSaturateQuantRd ? "true" : "false"}); |
11759 |
|
res.push_back({"global-negate", opts.quantifiers.globalNegate ? "true" : "false"}); |
11760 |
|
res.push_back({"ho-elim", opts.quantifiers.hoElim ? "true" : "false"}); |
11761 |
|
res.push_back({"ho-elim-store-ax", opts.quantifiers.hoElimStoreAx ? "true" : "false"}); |
11762 |
|
res.push_back({"ho-matching", opts.quantifiers.hoMatching ? "true" : "false"}); |
11763 |
|
res.push_back({"ho-matching-var-priority", opts.quantifiers.hoMatchingVarArgPriority ? "true" : "false"}); |
11764 |
|
res.push_back({"ho-merge-term-db", opts.quantifiers.hoMergeTermDb ? "true" : "false"}); |
11765 |
|
res.push_back({"increment-triggers", opts.quantifiers.incrementTriggers ? "true" : "false"}); |
11766 |
|
res.push_back({"inst-level-input-only", opts.quantifiers.instLevelInputOnly ? "true" : "false"}); |
11767 |
|
res.push_back({"inst-max-level", std::to_string(opts.quantifiers.instMaxLevel)}); |
11768 |
|
res.push_back({"inst-max-rounds", std::to_string(opts.quantifiers.instMaxRounds)}); |
11769 |
|
res.push_back({"inst-no-entail", opts.quantifiers.instNoEntail ? "true" : "false"}); |
11770 |
|
res.push_back({"inst-when-phase", std::to_string(opts.quantifiers.instWhenPhase)}); |
11771 |
|
res.push_back({"inst-when-strict-interleave", opts.quantifiers.instWhenStrictInterleave ? "true" : "false"}); |
11772 |
|
res.push_back({"inst-when-tc-first", opts.quantifiers.instWhenTcFirst ? "true" : "false"}); |
11773 |
|
{ std::stringstream ss; ss << opts.quantifiers.instWhenMode; res.push_back({"inst-when", ss.str()}); } |
11774 |
|
res.push_back({"int-wf-ind", opts.quantifiers.intWfInduction ? "true" : "false"}); |
11775 |
|
res.push_back({"ite-dtt-split-quant", opts.quantifiers.iteDtTesterSplitQuant ? "true" : "false"}); |
11776 |
|
{ std::stringstream ss; ss << opts.quantifiers.iteLiftQuant; res.push_back({"ite-lift-quant", ss.str()}); } |
11777 |
|
{ std::stringstream ss; ss << opts.quantifiers.literalMatchMode; res.push_back({"literal-matching", ss.str()}); } |
11778 |
|
res.push_back({"macros-quant", opts.quantifiers.macrosQuant ? "true" : "false"}); |
11779 |
|
{ std::stringstream ss; ss << opts.quantifiers.macrosQuantMode; res.push_back({"macros-quant-mode", ss.str()}); } |
11780 |
|
res.push_back({"mbqi-interleave", opts.quantifiers.mbqiInterleave ? "true" : "false"}); |
11781 |
|
res.push_back({"mbqi-one-inst-per-round", opts.quantifiers.fmfOneInstPerRound ? "true" : "false"}); |
11782 |
|
{ std::stringstream ss; ss << opts.quantifiers.mbqiMode; res.push_back({"mbqi", ss.str()}); } |
11783 |
|
res.push_back({"miniscope-quant", opts.quantifiers.miniscopeQuant ? "true" : "false"}); |
11784 |
|
res.push_back({"miniscope-quant-fv", opts.quantifiers.miniscopeQuantFreeVar ? "true" : "false"}); |
11785 |
|
res.push_back({"multi-trigger-cache", opts.quantifiers.multiTriggerCache ? "true" : "false"}); |
11786 |
|
res.push_back({"multi-trigger-linear", opts.quantifiers.multiTriggerLinear ? "true" : "false"}); |
11787 |
|
res.push_back({"multi-trigger-priority", opts.quantifiers.multiTriggerPriority ? "true" : "false"}); |
11788 |
|
res.push_back({"multi-trigger-when-single", opts.quantifiers.multiTriggerWhenSingle ? "true" : "false"}); |
11789 |
|
res.push_back({"partial-triggers", opts.quantifiers.partialTriggers ? "true" : "false"}); |
11790 |
|
res.push_back({"pool-inst", opts.quantifiers.poolInst ? "true" : "false"}); |
11791 |
|
res.push_back({"pre-skolem-quant", opts.quantifiers.preSkolemQuant ? "true" : "false"}); |
11792 |
|
res.push_back({"pre-skolem-quant-agg", opts.quantifiers.preSkolemQuantAgg ? "true" : "false"}); |
11793 |
|
res.push_back({"pre-skolem-quant-nested", opts.quantifiers.preSkolemQuantNested ? "true" : "false"}); |
11794 |
|
res.push_back({"prenex-quant-user", opts.quantifiers.prenexQuantUser ? "true" : "false"}); |
11795 |
|
{ std::stringstream ss; ss << opts.quantifiers.prenexQuant; res.push_back({"prenex-quant", ss.str()}); } |
11796 |
|
res.push_back({"purify-triggers", opts.quantifiers.purifyTriggers ? "true" : "false"}); |
11797 |
|
res.push_back({"qcf-all-conflict", opts.quantifiers.qcfAllConflict ? "true" : "false"}); |
11798 |
|
res.push_back({"qcf-eager-check-rd", opts.quantifiers.qcfEagerCheckRd ? "true" : "false"}); |
11799 |
|
res.push_back({"qcf-eager-test", opts.quantifiers.qcfEagerTest ? "true" : "false"}); |
11800 |
|
res.push_back({"qcf-nested-conflict", opts.quantifiers.qcfNestedConflict ? "true" : "false"}); |
11801 |
|
res.push_back({"qcf-skip-rd", opts.quantifiers.qcfSkipRd ? "true" : "false"}); |
11802 |
|
res.push_back({"qcf-tconstraint", opts.quantifiers.qcfTConstraint ? "true" : "false"}); |
11803 |
|
res.push_back({"qcf-vo-exp", opts.quantifiers.qcfVoExp ? "true" : "false"}); |
11804 |
|
res.push_back({"quant-alpha-equiv", opts.quantifiers.quantAlphaEquiv ? "true" : "false"}); |
11805 |
|
res.push_back({"quant-cf", opts.quantifiers.quantConflictFind ? "true" : "false"}); |
11806 |
|
{ std::stringstream ss; ss << opts.quantifiers.qcfMode; res.push_back({"quant-cf-mode", ss.str()}); } |
11807 |
|
{ std::stringstream ss; ss << opts.quantifiers.qcfWhenMode; res.push_back({"quant-cf-when", ss.str()}); } |
11808 |
|
{ std::stringstream ss; ss << opts.quantifiers.quantDynamicSplit; res.push_back({"quant-dsplit-mode", ss.str()}); } |
11809 |
|
res.push_back({"quant-fun-wd", opts.quantifiers.quantFunWellDefined ? "true" : "false"}); |
11810 |
|
res.push_back({"quant-ind", opts.quantifiers.quantInduction ? "true" : "false"}); |
11811 |
|
{ std::stringstream ss; ss << opts.quantifiers.quantRepMode; res.push_back({"quant-rep-mode", ss.str()}); } |
11812 |
|
res.push_back({"quant-split", opts.quantifiers.quantSplit ? "true" : "false"}); |
11813 |
|
res.push_back({"register-quant-body-terms", opts.quantifiers.registerQuantBodyTerms ? "true" : "false"}); |
11814 |
|
res.push_back({"relational-triggers", opts.quantifiers.relationalTriggers ? "true" : "false"}); |
11815 |
|
res.push_back({"relevant-triggers", opts.quantifiers.relevantTriggers ? "true" : "false"}); |
11816 |
|
res.push_back({"strict-triggers", opts.quantifiers.strictTriggers ? "true" : "false"}); |
11817 |
|
res.push_back({"sygus", opts.quantifiers.sygus ? "true" : "false"}); |
11818 |
|
res.push_back({"sygus-active-gen-cfactor", std::to_string(opts.quantifiers.sygusActiveGenEnumConsts)}); |
11819 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusActiveGenMode; res.push_back({"sygus-active-gen", ss.str()}); } |
11820 |
|
res.push_back({"sygus-add-const-grammar", opts.quantifiers.sygusAddConstGrammar ? "true" : "false"}); |
11821 |
|
res.push_back({"sygus-arg-relevant", opts.quantifiers.sygusArgRelevant ? "true" : "false"}); |
11822 |
|
res.push_back({"sygus-auto-unfold", opts.quantifiers.sygusInvAutoUnfold ? "true" : "false"}); |
11823 |
|
res.push_back({"sygus-bool-ite-return-const", opts.quantifiers.sygusBoolIteReturnConst ? "true" : "false"}); |
11824 |
|
res.push_back({"sygus-core-connective", opts.quantifiers.sygusCoreConnective ? "true" : "false"}); |
11825 |
|
res.push_back({"sygus-crepair-abort", opts.quantifiers.sygusConstRepairAbort ? "true" : "false"}); |
11826 |
|
res.push_back({"sygus-eval-opt", opts.quantifiers.sygusEvalOpt ? "true" : "false"}); |
11827 |
|
res.push_back({"sygus-eval-unfold", opts.quantifiers.sygusEvalUnfold ? "true" : "false"}); |
11828 |
|
res.push_back({"sygus-eval-unfold-bool", opts.quantifiers.sygusEvalUnfoldBool ? "true" : "false"}); |
11829 |
|
res.push_back({"sygus-expr-miner-check-timeout", std::to_string(opts.quantifiers.sygusExprMinerCheckTimeout)}); |
11830 |
|
res.push_back({"sygus-ext-rew", opts.quantifiers.sygusExtRew ? "true" : "false"}); |
11831 |
|
res.push_back({"sygus-filter-sol-rev", opts.quantifiers.sygusFilterSolRevSubsume ? "true" : "false"}); |
11832 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusFilterSolMode; res.push_back({"sygus-filter-sol", ss.str()}); } |
11833 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusGrammarConsMode; res.push_back({"sygus-grammar-cons", ss.str()}); } |
11834 |
|
res.push_back({"sygus-grammar-norm", opts.quantifiers.sygusGrammarNorm ? "true" : "false"}); |
11835 |
|
res.push_back({"sygus-inference", opts.quantifiers.sygusInference ? "true" : "false"}); |
11836 |
|
res.push_back({"sygus-inst", opts.quantifiers.sygusInst ? "true" : "false"}); |
11837 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusInstMode; res.push_back({"sygus-inst-mode", ss.str()}); } |
11838 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusInstScope; res.push_back({"sygus-inst-scope", ss.str()}); } |
11839 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusInstTermSel; res.push_back({"sygus-inst-term-sel", ss.str()}); } |
11840 |
|
res.push_back({"sygus-inv-templ-when-sg", opts.quantifiers.sygusInvTemplWhenSyntax ? "true" : "false"}); |
11841 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusInvTemplMode; res.push_back({"sygus-inv-templ", ss.str()}); } |
11842 |
|
res.push_back({"sygus-min-grammar", opts.quantifiers.sygusMinGrammar ? "true" : "false"}); |
11843 |
|
res.push_back({"sygus-pbe", opts.quantifiers.sygusUnifPbe ? "true" : "false"}); |
11844 |
|
res.push_back({"sygus-pbe-multi-fair", opts.quantifiers.sygusPbeMultiFair ? "true" : "false"}); |
11845 |
|
res.push_back({"sygus-pbe-multi-fair-diff", std::to_string(opts.quantifiers.sygusPbeMultiFairDiff)}); |
11846 |
|
res.push_back({"sygus-qe-preproc", opts.quantifiers.sygusQePreproc ? "true" : "false"}); |
11847 |
|
res.push_back({"sygus-query-gen", opts.quantifiers.sygusQueryGen ? "true" : "false"}); |
11848 |
|
res.push_back({"sygus-query-gen-check", opts.quantifiers.sygusQueryGenCheck ? "true" : "false"}); |
11849 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusQueryGenDumpFiles; res.push_back({"sygus-query-gen-dump-files", ss.str()}); } |
11850 |
|
res.push_back({"sygus-query-gen-thresh", std::to_string(opts.quantifiers.sygusQueryGenThresh)}); |
11851 |
|
res.push_back({"sygus-rec-fun", opts.quantifiers.sygusRecFun ? "true" : "false"}); |
11852 |
|
res.push_back({"sygus-rec-fun-eval-limit", std::to_string(opts.quantifiers.sygusRecFunEvalLimit)}); |
11853 |
|
res.push_back({"sygus-repair-const", opts.quantifiers.sygusRepairConst ? "true" : "false"}); |
11854 |
|
res.push_back({"sygus-repair-const-timeout", std::to_string(opts.quantifiers.sygusRepairConstTimeout)}); |
11855 |
|
res.push_back({"sygus-rr", opts.quantifiers.sygusRew ? "true" : "false"}); |
11856 |
|
res.push_back({"sygus-rr-synth", opts.quantifiers.sygusRewSynth ? "true" : "false"}); |
11857 |
|
res.push_back({"sygus-rr-synth-accel", opts.quantifiers.sygusRewSynthAccel ? "true" : "false"}); |
11858 |
|
res.push_back({"sygus-rr-synth-check", opts.quantifiers.sygusRewSynthCheck ? "true" : "false"}); |
11859 |
|
res.push_back({"sygus-rr-synth-filter-cong", opts.quantifiers.sygusRewSynthFilterCong ? "true" : "false"}); |
11860 |
|
res.push_back({"sygus-rr-synth-filter-match", opts.quantifiers.sygusRewSynthFilterMatch ? "true" : "false"}); |
11861 |
|
res.push_back({"sygus-rr-synth-filter-nl", opts.quantifiers.sygusRewSynthFilterNonLinear ? "true" : "false"}); |
11862 |
|
res.push_back({"sygus-rr-synth-filter-order", opts.quantifiers.sygusRewSynthFilterOrder ? "true" : "false"}); |
11863 |
|
res.push_back({"sygus-rr-synth-input", opts.quantifiers.sygusRewSynthInput ? "true" : "false"}); |
11864 |
|
res.push_back({"sygus-rr-synth-input-nvars", std::to_string(opts.quantifiers.sygusRewSynthInputNVars)}); |
11865 |
|
res.push_back({"sygus-rr-synth-input-use-bool", opts.quantifiers.sygusRewSynthInputUseBool ? "true" : "false"}); |
11866 |
|
res.push_back({"sygus-rr-synth-rec", opts.quantifiers.sygusRewSynthRec ? "true" : "false"}); |
11867 |
|
res.push_back({"sygus-rr-verify", opts.quantifiers.sygusRewVerify ? "true" : "false"}); |
11868 |
|
res.push_back({"sygus-rr-verify-abort", opts.quantifiers.sygusRewVerifyAbort ? "true" : "false"}); |
11869 |
|
res.push_back({"sygus-sample-fp-uniform", opts.quantifiers.sygusSampleFpUniform ? "true" : "false"}); |
11870 |
|
res.push_back({"sygus-sample-grammar", opts.quantifiers.sygusSampleGrammar ? "true" : "false"}); |
11871 |
|
res.push_back({"sygus-samples", std::to_string(opts.quantifiers.sygusSamples)}); |
11872 |
|
res.push_back({"sygus-si-abort", opts.quantifiers.cegqiSingleInvAbort ? "true" : "false"}); |
11873 |
|
res.push_back({"sygus-si-partial", opts.quantifiers.cegqiSingleInvPartial ? "true" : "false"}); |
11874 |
|
res.push_back({"sygus-si-rcons-limit", std::to_string(opts.quantifiers.cegqiSingleInvReconstructLimit)}); |
11875 |
|
{ std::stringstream ss; ss << opts.quantifiers.cegqiSingleInvReconstruct; res.push_back({"sygus-si-rcons", ss.str()}); } |
11876 |
|
res.push_back({"sygus-si-reconstruct-const", opts.quantifiers.cegqiSingleInvReconstructConst ? "true" : "false"}); |
11877 |
|
{ std::stringstream ss; ss << opts.quantifiers.cegqiSingleInvMode; res.push_back({"sygus-si", ss.str()}); } |
11878 |
|
res.push_back({"sygus-stream", opts.quantifiers.sygusStream ? "true" : "false"}); |
11879 |
|
res.push_back({"sygus-templ-embed-grammar", opts.quantifiers.sygusTemplEmbedGrammar ? "true" : "false"}); |
11880 |
|
res.push_back({"sygus-unif-cond-independent-no-repeat-sol", opts.quantifiers.sygusUnifCondIndNoRepeatSol ? "true" : "false"}); |
11881 |
|
{ std::stringstream ss; ss << opts.quantifiers.sygusUnifPi; res.push_back({"sygus-unif-pi", ss.str()}); } |
11882 |
|
res.push_back({"sygus-unif-shuffle-cond", opts.quantifiers.sygusUnifShuffleCond ? "true" : "false"}); |
11883 |
|
res.push_back({"sygus-verify-inst-max-rounds", std::to_string(opts.quantifiers.sygusVerifyInstMaxRounds)}); |
11884 |
|
res.push_back({"term-db-cd", opts.quantifiers.termDbCd ? "true" : "false"}); |
11885 |
|
{ std::stringstream ss; ss << opts.quantifiers.termDbMode; res.push_back({"term-db-mode", ss.str()}); } |
11886 |
|
{ std::stringstream ss; ss << opts.quantifiers.triggerActiveSelMode; res.push_back({"trigger-active-sel", ss.str()}); } |
11887 |
|
{ std::stringstream ss; ss << opts.quantifiers.triggerSelMode; res.push_back({"trigger-sel", ss.str()}); } |
11888 |
|
{ std::stringstream ss; ss << opts.quantifiers.userPatternsQuant; res.push_back({"user-pat", ss.str()}); } |
11889 |
|
res.push_back({"var-elim-quant", opts.quantifiers.varElimQuant ? "true" : "false"}); |
11890 |
|
res.push_back({"var-ineq-elim-quant", opts.quantifiers.varIneqElimQuant ? "true" : "false"}); |
11891 |
|
res.push_back({"sep-check-neg", opts.sep.sepCheckNeg ? "true" : "false"}); |
11892 |
|
res.push_back({"sep-child-refine", opts.sep.sepChildRefine ? "true" : "false"}); |
11893 |
|
res.push_back({"sep-deq-c", opts.sep.sepDisequalC ? "true" : "false"}); |
11894 |
|
res.push_back({"sep-exp", opts.sep.sepExp ? "true" : "false"}); |
11895 |
|
res.push_back({"sep-min-refine", opts.sep.sepMinimalRefine ? "true" : "false"}); |
11896 |
|
res.push_back({"sep-pre-skolem-emp", opts.sep.sepPreSkolemEmp ? "true" : "false"}); |
11897 |
|
res.push_back({"sets-ext", opts.sets.setsExt ? "true" : "false"}); |
11898 |
|
res.push_back({"sets-infer-as-lemmas", opts.sets.setsInferAsLemmas ? "true" : "false"}); |
11899 |
|
res.push_back({"sets-proxy-lemmas", opts.sets.setsProxyLemmas ? "true" : "false"}); |
11900 |
|
res.push_back({"abstract-values", opts.smt.abstractValues ? "true" : "false"}); |
11901 |
|
res.push_back({"ackermann", opts.smt.ackermann ? "true" : "false"}); |
11902 |
|
{ std::stringstream ss; ss << opts.smt.blockModelsMode; res.push_back({"block-models", ss.str()}); } |
11903 |
|
res.push_back({"bvand-integer-granularity", std::to_string(opts.smt.BVAndIntegerGranularity)}); |
11904 |
|
res.push_back({"check-abducts", opts.smt.checkAbducts ? "true" : "false"}); |
11905 |
|
res.push_back({"check-interpols", opts.smt.checkInterpols ? "true" : "false"}); |
11906 |
|
res.push_back({"check-models", opts.smt.checkModels ? "true" : "false"}); |
11907 |
|
res.push_back({"check-proofs", opts.smt.checkProofs ? "true" : "false"}); |
11908 |
|
res.push_back({"check-synth-sol", opts.smt.checkSynthSol ? "true" : "false"}); |
11909 |
|
res.push_back({"check-unsat-cores", opts.smt.checkUnsatCores ? "true" : "false"}); |
11910 |
|
res.push_back({"debug-check-models", opts.smt.debugCheckModels ? "true" : "false"}); |
11911 |
|
{ std::stringstream ss; ss << opts.smt.dumpToFileName; res.push_back({"dump-to", ss.str()}); } |
11912 |
|
res.push_back({"dump", opts.smt.dumpModeString}); |
11913 |
|
res.push_back({"early-ite-removal", opts.smt.earlyIteRemoval ? "true" : "false"}); |
11914 |
|
res.push_back({"expand-definitions", opts.smt.expandDefinitions ? "true" : "false"}); |
11915 |
|
res.push_back({"ext-rew-prep", opts.smt.extRewPrep ? "true" : "false"}); |
11916 |
|
res.push_back({"ext-rew-prep-agg", opts.smt.extRewPrepAgg ? "true" : "false"}); |
11917 |
|
res.push_back({"foreign-theory-rewrite", opts.smt.foreignTheoryRewrite ? "true" : "false"}); |
11918 |
|
{ std::stringstream ss; ss << opts.smt.iandMode; res.push_back({"iand-mode", ss.str()}); } |
11919 |
|
res.push_back({"interactive-mode", opts.smt.interactiveMode ? "true" : "false"}); |
11920 |
|
res.push_back({"ite-simp", opts.smt.doITESimp ? "true" : "false"}); |
11921 |
|
res.push_back({"learned-rewrite", opts.smt.learnedRewrite ? "true" : "false"}); |
11922 |
|
res.push_back({"minimal-unsat-cores", opts.smt.minimalUnsatCores ? "true" : "false"}); |
11923 |
|
{ std::stringstream ss; ss << opts.smt.modelCoresMode; res.push_back({"model-cores", ss.str()}); } |
11924 |
|
{ std::stringstream ss; ss << opts.smt.modelUninterpPrint; res.push_back({"model-u-print", ss.str()}); } |
11925 |
|
res.push_back({"model-witness-value", opts.smt.modelWitnessValue ? "true" : "false"}); |
11926 |
|
res.push_back({"on-repeat-ite-simp", opts.smt.doITESimpOnRepeat ? "true" : "false"}); |
11927 |
|
res.push_back({"produce-abducts", opts.smt.produceAbducts ? "true" : "false"}); |
11928 |
|
res.push_back({"produce-assertions", opts.smt.produceAssertions ? "true" : "false"}); |
11929 |
|
res.push_back({"produce-assignments", opts.smt.produceAssignments ? "true" : "false"}); |
11930 |
|
{ std::stringstream ss; ss << opts.smt.produceInterpols; res.push_back({"produce-interpols", ss.str()}); } |
11931 |
|
res.push_back({"produce-models", opts.smt.produceModels ? "true" : "false"}); |
11932 |
|
res.push_back({"produce-proofs", opts.smt.produceProofs ? "true" : "false"}); |
11933 |
|
res.push_back({"produce-unsat-assumptions", opts.smt.unsatAssumptions ? "true" : "false"}); |
11934 |
|
res.push_back({"produce-unsat-cores", opts.smt.unsatCores ? "true" : "false"}); |
11935 |
|
res.push_back({"repeat-simp", opts.smt.repeatSimp ? "true" : "false"}); |
11936 |
|
res.push_back({"simp-ite-compress", opts.smt.compressItes ? "true" : "false"}); |
11937 |
|
res.push_back({"simp-ite-hunt-zombies", std::to_string(opts.smt.zombieHuntThreshold)}); |
11938 |
|
res.push_back({"simp-with-care", opts.smt.simplifyWithCareEnabled ? "true" : "false"}); |
11939 |
|
{ std::stringstream ss; ss << opts.smt.simplificationMode; res.push_back({"simplification", ss.str()}); } |
11940 |
|
{ std::stringstream ss; ss << opts.smt.solveBVAsInt; res.push_back({"solve-bv-as-int", ss.str()}); } |
11941 |
|
res.push_back({"solve-int-as-bv", std::to_string(opts.smt.solveIntAsBV)}); |
11942 |
|
res.push_back({"solve-real-as-int", opts.smt.solveRealAsInt ? "true" : "false"}); |
11943 |
|
res.push_back({"sort-inference", opts.smt.sortInference ? "true" : "false"}); |
11944 |
|
res.push_back({"static-learning", opts.smt.doStaticLearning ? "true" : "false"}); |
11945 |
|
{ std::stringstream ss; ss << opts.smt.sygusOut; res.push_back({"sygus-out", ss.str()}); } |
11946 |
|
res.push_back({"sygus-print-callbacks", opts.smt.sygusPrintCallbacks ? "true" : "false"}); |
11947 |
|
res.push_back({"unconstrained-simp", opts.smt.unconstrainedSimp ? "true" : "false"}); |
11948 |
|
{ std::stringstream ss; ss << opts.smt.unsatCoresMode; res.push_back({"unsat-cores-mode", ss.str()}); } |
11949 |
|
res.push_back({"re-elim", opts.strings.regExpElim ? "true" : "false"}); |
11950 |
|
res.push_back({"re-elim-agg", opts.strings.regExpElimAgg ? "true" : "false"}); |
11951 |
|
{ std::stringstream ss; ss << opts.strings.stringRegExpInterMode; res.push_back({"re-inter-mode", ss.str()}); } |
11952 |
|
res.push_back({"strings-check-entail-len", opts.strings.stringCheckEntailLen ? "true" : "false"}); |
11953 |
|
res.push_back({"strings-eager", opts.strings.stringEager ? "true" : "false"}); |
11954 |
|
res.push_back({"strings-eager-eval", opts.strings.stringEagerEval ? "true" : "false"}); |
11955 |
|
res.push_back({"strings-eager-len", opts.strings.stringEagerLen ? "true" : "false"}); |
11956 |
|
res.push_back({"strings-exp", opts.strings.stringExp ? "true" : "false"}); |
11957 |
|
res.push_back({"strings-ff", opts.strings.stringFlatForms ? "true" : "false"}); |
11958 |
|
res.push_back({"strings-fmf", opts.strings.stringFMF ? "true" : "false"}); |
11959 |
|
res.push_back({"strings-guess-model", opts.strings.stringGuessModel ? "true" : "false"}); |
11960 |
|
res.push_back({"strings-infer-as-lemmas", opts.strings.stringInferAsLemmas ? "true" : "false"}); |
11961 |
|
res.push_back({"strings-infer-sym", opts.strings.stringInferSym ? "true" : "false"}); |
11962 |
|
res.push_back({"strings-lazy-pp", opts.strings.stringLazyPreproc ? "true" : "false"}); |
11963 |
|
res.push_back({"strings-len-norm", opts.strings.stringLenNorm ? "true" : "false"}); |
11964 |
|
res.push_back({"strings-lprop-csp", opts.strings.stringLenPropCsp ? "true" : "false"}); |
11965 |
|
res.push_back({"strings-min-prefix-explain", opts.strings.stringMinPrefixExplain ? "true" : "false"}); |
11966 |
|
{ std::stringstream ss; ss << opts.strings.stringProcessLoopMode; res.push_back({"strings-process-loop-mode", ss.str()}); } |
11967 |
|
res.push_back({"strings-rexplain-lemmas", opts.strings.stringRExplainLemmas ? "true" : "false"}); |
11968 |
|
res.push_back({"strings-unified-vspt", opts.strings.stringUnifiedVSpt ? "true" : "false"}); |
11969 |
|
res.push_back({"assign-function-values", opts.theory.assignFunctionValues ? "true" : "false"}); |
11970 |
|
res.push_back({"condense-function-values", opts.theory.condenseFunctionValues ? "true" : "false"}); |
11971 |
|
{ std::stringstream ss; ss << opts.theory.eeMode; res.push_back({"ee-mode", ss.str()}); } |
11972 |
|
res.push_back({"relevance-filter", opts.theory.relevanceFilter ? "true" : "false"}); |
11973 |
|
{ std::stringstream ss; ss << opts.theory.tcMode; res.push_back({"tc-mode", ss.str()}); } |
11974 |
|
{ std::stringstream ss; ss << opts.theory.theoryOfMode; res.push_back({"theoryof-mode", ss.str()}); } |
11975 |
|
res.push_back({"symmetry-breaker", opts.uf.ufSymmetryBreaker ? "true" : "false"}); |
11976 |
|
res.push_back({"uf-ho", opts.uf.ufHo ? "true" : "false"}); |
11977 |
|
res.push_back({"uf-ho-ext", opts.uf.ufHoExt ? "true" : "false"}); |
11978 |
|
res.push_back({"uf-ss-abort-card", std::to_string(opts.uf.ufssAbortCardinality)}); |
11979 |
|
res.push_back({"uf-ss-fair", opts.uf.ufssFairness ? "true" : "false"}); |
11980 |
|
res.push_back({"uf-ss-fair-monotone", opts.uf.ufssFairnessMonotone ? "true" : "false"}); |
11981 |
|
res.push_back({"uf-ss-totality-limited", std::to_string(opts.uf.ufssTotalityLimited)}); |
11982 |
|
res.push_back({"uf-ss-totality-sym-break", opts.uf.ufssTotalitySymBreak ? "true" : "false"}); |
11983 |
|
{ std::stringstream ss; ss << opts.uf.ufssMode; res.push_back({"uf-ss", ss.str()}); } |
11984 |
|
|
11985 |
|
return res; |
11986 |
|
} |
11987 |
|
|
11988 |
2 |
std::vector<std::string> getNames() |
11989 |
|
{ |
11990 |
|
return { |
11991 |
|
"abstract-values", "ackermann", "ag-miniscope-quant", "approx-branch-depth", |
11992 |
|
"arith-brab", "arith-cong-man", "arith-eq-solver", "arith-no-partial-fun", |
11993 |
|
"arith-prop", "arith-prop-clauses", "arith-rewrite-equalities", "arrays-config", |
11994 |
|
"arrays-eager-index", "arrays-eager-lemmas", "arrays-exp", "arrays-model-based", |
11995 |
|
"arrays-optimize-linear", "arrays-prop", "arrays-reduce-sharing", |
11996 |
|
"arrays-weak-equiv", "assign-function-values", "bitblast", "bitblast-aig", |
11997 |
|
"bitwise-eq", "block-models", "bool-to-bv", "bv-abstraction", "bv-aig-simp", |
11998 |
|
"bv-alg-extf", "bv-algebraic-budget", "bv-algebraic-solver", "bv-assert-input", |
11999 |
|
"bv-eager-explanations", "bv-eq-solver", "bv-extract-arith", "bv-gauss-elim", |
12000 |
|
"bv-inequality-solver", "bv-intro-pow2", "bv-num-func", |
12001 |
|
"bv-print-consts-as-indexed-symbols", "bv-propagate", "bv-quick-xplain", |
12002 |
|
"bv-sat-solver", "bv-skolemize", "bv-solver", "bv-to-bool", |
12003 |
|
"bvand-integer-granularity", "cdt-bisimilar", "cegis-sample", "cegqi", |
12004 |
|
"cegqi-all", "cegqi-bv", "cegqi-bv-concat-inv", "cegqi-bv-ineq", |
12005 |
|
"cegqi-bv-interleave-value", "cegqi-bv-linear", "cegqi-bv-rm-extract", |
12006 |
|
"cegqi-bv-solve-nl", "cegqi-full", "cegqi-innermost", "cegqi-midpoint", |
12007 |
|
"cegqi-min-bounds", "cegqi-model", "cegqi-multi-inst", "cegqi-nested-qe", |
12008 |
|
"cegqi-nopt", "cegqi-repeat-lit", "cegqi-round-up-lia", "cegqi-sat", |
12009 |
|
"cegqi-use-inf-int", "cegqi-use-inf-real", "check-abducts", "check-interpols", |
12010 |
|
"check-models", "check-proofs", "check-synth-sol", "check-unsat-cores", |
12011 |
|
"collect-pivot-stats", "cond-var-split-agg-quant", "cond-var-split-quant", |
12012 |
|
"condense-function-values", "conjecture-filter-active-terms", |
12013 |
|
"conjecture-filter-canonical", "conjecture-filter-model", "conjecture-gen", |
12014 |
|
"conjecture-gen-gt-enum", "conjecture-gen-max-depth", |
12015 |
|
"conjecture-gen-per-round", "conjecture-gen-uee-intro", "conjecture-no-filter", |
12016 |
|
"copyright", "cut-all-bounded", "dag-thresh", "debug", "debug-check-models", |
12017 |
|
"decision", "decision-mode", "decision-random-weight", "decision-threshold", |
12018 |
|
"decision-use-weight", "decision-weight-internal", "diagnostic-output-channel", |
12019 |
|
"dio-decomps", "dio-repeat", "dio-solver", "dio-turns", "dt-binary-split", |
12020 |
|
"dt-blast-splits", "dt-cyclic", "dt-force-assignment", "dt-infer-as-lemmas", |
12021 |
|
"dt-nested-rec", "dt-polite-optimize", "dt-rewrite-error-sel", "dt-share-sel", |
12022 |
|
"dt-stc-ind", "dt-var-exp-quant", "dump", "dump-instantiations", |
12023 |
|
"dump-instantiations-debug", "dump-models", "dump-proofs", "dump-to", |
12024 |
|
"dump-unsat-cores", "dump-unsat-cores-full", "e-matching", "early-exit", |
12025 |
|
"early-ite-removal", "ee-mode", "elim-taut-quant", "err", |
12026 |
|
"error-selection-rule", "expand-definitions", "expr-depth", "ext-rew-prep", |
12027 |
|
"ext-rew-prep-agg", "ext-rewrite-quant", "fc-penalties", "filesystem-access", |
12028 |
|
"finite-model-find", "flatten-ho-chains", "fmf-bound", "fmf-bound-int", |
12029 |
|
"fmf-bound-lazy", "fmf-fmc-simple", "fmf-fresh-dc", "fmf-fun", "fmf-fun-rlv", |
12030 |
|
"fmf-inst-engine", "fmf-type-completion-thresh", "force-logic", |
12031 |
|
"force-no-limit-cpu-while-dump", "foreign-theory-rewrite", "fp-exp", |
12032 |
|
"fp-lazy-wb", "fs-interleave", "fs-stratify", "fs-sum", "full-saturate-quant", |
12033 |
|
"full-saturate-quant-limit", "full-saturate-quant-rd", "global-declarations", |
12034 |
|
"global-negate", "help", "heuristic-pivots", "ho-elim", "ho-elim-store-ax", |
12035 |
|
"ho-matching", "ho-matching-var-priority", "ho-merge-term-db", "iand-mode", |
12036 |
|
"in", "increment-triggers", "incremental", "input-language", "inst-format", |
12037 |
|
"inst-level-input-only", "inst-max-level", "inst-max-rounds", "inst-no-entail", |
12038 |
|
"inst-when", "inst-when-phase", "inst-when-strict-interleave", |
12039 |
|
"inst-when-tc-first", "int-wf-ind", "interactive", "interactive-mode", |
12040 |
|
"interactive-prompt", "ite-dtt-split-quant", "ite-lift-quant", "ite-simp", |
12041 |
|
"jh-rlv-order", "jh-skolem", "jh-skolem-rlv", "lang", "learned-rewrite", |
12042 |
|
"lemmas-on-replay-failure", "literal-matching", "macros-quant", |
12043 |
|
"macros-quant-mode", "maxCutsInContext", "mbqi", "mbqi-interleave", |
12044 |
|
"mbqi-one-inst-per-round", "minimal-unsat-cores", "minisat-dump-dimacs", |
12045 |
|
"minisat-elimination", "miniscope-quant", "miniscope-quant-fv", "miplib-trick", |
12046 |
|
"miplib-trick-subs", "mmap", "model-cores", "model-format", "model-u-print", |
12047 |
|
"model-uninterp-print", "model-witness-value", "multi-trigger-cache", |
12048 |
|
"multi-trigger-linear", "multi-trigger-priority", "multi-trigger-when-single", |
12049 |
|
"new-prop", "nl-cad", "nl-cad-initial", "nl-cad-lift", "nl-cad-proj", "nl-ext", |
12050 |
|
"nl-ext-ent-conf", "nl-ext-factor", "nl-ext-inc-prec", "nl-ext-purify", |
12051 |
|
"nl-ext-rbound", "nl-ext-rewrite", "nl-ext-split-zero", "nl-ext-tf-taylor-deg", |
12052 |
|
"nl-ext-tf-tplanes", "nl-ext-tplanes", "nl-ext-tplanes-interleave", "nl-icp", |
12053 |
|
"nl-rlv", "on-repeat-ite-simp", "out", "output", "output-lang", |
12054 |
|
"output-language", "parse-only", "partial-triggers", "pb-rewrites", |
12055 |
|
"pivot-threshold", "pool-inst", "pp-assert-max-sub-size", "pre-skolem-quant", |
12056 |
|
"pre-skolem-quant-agg", "pre-skolem-quant-nested", "prenex-quant", |
12057 |
|
"prenex-quant-user", "preprocess-only", "print-inst", "print-inst-full", |
12058 |
|
"print-success", "produce-abducts", "produce-assertions", "produce-assignments", |
12059 |
|
"produce-interpols", "produce-models", "produce-proofs", |
12060 |
|
"produce-unsat-assumptions", "produce-unsat-cores", "proof-eager-checking", |
12061 |
|
"proof-format-mode", "proof-granularity", "proof-pedantic", |
12062 |
|
"proof-print-conclusion", "prop-row-length", "purify-triggers", |
12063 |
|
"qcf-all-conflict", "qcf-eager-check-rd", "qcf-eager-test", |
12064 |
|
"qcf-nested-conflict", "qcf-skip-rd", "qcf-tconstraint", "qcf-vo-exp", |
12065 |
|
"quant-alpha-equiv", "quant-cf", "quant-cf-mode", "quant-cf-when", |
12066 |
|
"quant-dsplit-mode", "quant-fun-wd", "quant-ind", "quant-rep-mode", |
12067 |
|
"quant-split", "quiet", "random-freq", "random-frequency", "random-seed", |
12068 |
|
"re-elim", "re-elim-agg", "re-inter-mode", "refine-conflicts", |
12069 |
|
"register-quant-body-terms", "regular-output-channel", "relational-triggers", |
12070 |
|
"relevance-filter", "relevant-triggers", "repeat-simp", |
12071 |
|
"replay-early-close-depth", "replay-failure-penalty", "replay-lemma-reject-cut", |
12072 |
|
"replay-num-err-penalty", "replay-reject-cut", "replay-soi-major-threshold", |
12073 |
|
"replay-soi-major-threshold-pen", "replay-soi-minor-threshold", |
12074 |
|
"replay-soi-minor-threshold-pen", "reproducible-resource-limit", |
12075 |
|
"restart-int-base", "restart-int-inc", "restrict-pivots", |
12076 |
|
"revert-arith-models-on-unsat", "rlimit", "rlimit-per", "rr-turns", "rweight", |
12077 |
|
"se-solve-int", "seed", "segv-spin", "semantic-checks", "sep-check-neg", |
12078 |
|
"sep-child-refine", "sep-deq-c", "sep-exp", "sep-min-refine", |
12079 |
|
"sep-pre-skolem-emp", "sets-ext", "sets-infer-as-lemmas", "sets-proxy-lemmas", |
12080 |
|
"show-config", "show-debug-tags", "show-trace-tags", "simp-ite-compress", |
12081 |
|
"simp-ite-hunt-zombies", "simp-with-care", "simplex-check-period", |
12082 |
|
"simplification", "simplification-mode", "soi-qe", "solve-bv-as-int", |
12083 |
|
"solve-int-as-bv", "solve-real-as-int", "sort-inference", |
12084 |
|
"standard-effort-variable-order-pivots", "static-learning", "stats", |
12085 |
|
"stats-all", "stats-every-query", "stats-expert", "strict-parsing", |
12086 |
|
"strict-triggers", "strings-check-entail-len", "strings-eager", |
12087 |
|
"strings-eager-eval", "strings-eager-len", "strings-exp", "strings-ff", |
12088 |
|
"strings-fmf", "strings-guess-model", "strings-infer-as-lemmas", |
12089 |
|
"strings-infer-sym", "strings-lazy-pp", "strings-len-norm", "strings-lprop-csp", |
12090 |
|
"strings-min-prefix-explain", "strings-process-loop-mode", |
12091 |
|
"strings-rexplain-lemmas", "strings-unified-vspt", "sygus", "sygus-abort-size", |
12092 |
|
"sygus-active-gen", "sygus-active-gen-cfactor", "sygus-add-const-grammar", |
12093 |
|
"sygus-arg-relevant", "sygus-auto-unfold", "sygus-bool-ite-return-const", |
12094 |
|
"sygus-core-connective", "sygus-crepair-abort", "sygus-eval-opt", |
12095 |
|
"sygus-eval-unfold", "sygus-eval-unfold-bool", "sygus-expr-miner-check-timeout", |
12096 |
|
"sygus-ext-rew", "sygus-fair", "sygus-fair-max", "sygus-filter-sol", |
12097 |
|
"sygus-filter-sol-rev", "sygus-grammar-cons", "sygus-grammar-norm", |
12098 |
|
"sygus-inference", "sygus-inst", "sygus-inst-mode", "sygus-inst-scope", |
12099 |
|
"sygus-inst-term-sel", "sygus-inv-templ", "sygus-inv-templ-when-sg", |
12100 |
|
"sygus-min-grammar", "sygus-out", "sygus-pbe", "sygus-pbe-multi-fair", |
12101 |
|
"sygus-pbe-multi-fair-diff", "sygus-print-callbacks", "sygus-qe-preproc", |
12102 |
|
"sygus-query-gen", "sygus-query-gen-check", "sygus-query-gen-dump-files", |
12103 |
|
"sygus-query-gen-thresh", "sygus-rec-fun", "sygus-rec-fun-eval-limit", |
12104 |
|
"sygus-repair-const", "sygus-repair-const-timeout", "sygus-rr", |
12105 |
|
"sygus-rr-synth", "sygus-rr-synth-accel", "sygus-rr-synth-check", |
12106 |
|
"sygus-rr-synth-filter-cong", "sygus-rr-synth-filter-match", |
12107 |
|
"sygus-rr-synth-filter-nl", "sygus-rr-synth-filter-order", |
12108 |
|
"sygus-rr-synth-input", "sygus-rr-synth-input-nvars", |
12109 |
|
"sygus-rr-synth-input-use-bool", "sygus-rr-synth-rec", "sygus-rr-verify", |
12110 |
|
"sygus-rr-verify-abort", "sygus-sample-fp-uniform", "sygus-sample-grammar", |
12111 |
|
"sygus-samples", "sygus-si", "sygus-si-abort", "sygus-si-partial", |
12112 |
|
"sygus-si-rcons", "sygus-si-rcons-limit", "sygus-si-reconstruct-const", |
12113 |
|
"sygus-stream", "sygus-sym-break", "sygus-sym-break-agg", |
12114 |
|
"sygus-sym-break-dynamic", "sygus-sym-break-lazy", "sygus-sym-break-pbe", |
12115 |
|
"sygus-sym-break-rlv", "sygus-templ-embed-grammar", |
12116 |
|
"sygus-unif-cond-independent-no-repeat-sol", "sygus-unif-pi", |
12117 |
|
"sygus-unif-shuffle-cond", "sygus-verify-inst-max-rounds", "symmetry-breaker", |
12118 |
|
"tc-mode", "term-db-cd", "term-db-mode", "theoryof-mode", "tlimit", |
12119 |
|
"tlimit-per", "trace", "trigger-active-sel", "trigger-sel", "type-checking", |
12120 |
|
"uf-ho", "uf-ho-ext", "uf-ss", "uf-ss-abort-card", "uf-ss-fair", |
12121 |
|
"uf-ss-fair-monotone", "uf-ss-totality-limited", "uf-ss-totality-sym-break", |
12122 |
|
"uf-symmetry-breaker", "unate-lemmas", "unconstrained-simp", "unsat-cores-mode", |
12123 |
|
"use-approx", "use-fcsimplex", "use-soi", "user-pat", "var-elim-quant", |
12124 |
|
"var-ineq-elim-quant", "verbose", "verbosity", "version" |
12125 |
2 |
}; |
12126 |
|
} |
12127 |
|
|
12128 |
29322 |
} // namespace cvc5::options |