1 |
|
/****************************************************************************** |
2 |
|
* Top contributors (to current version): |
3 |
|
* Mathias Preiner, Aina Niemetz |
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 |
|
* Contains code for handling command-line options. |
14 |
|
* |
15 |
|
* For each <module>_options.toml configuration file, mkoptions.py |
16 |
|
* expands this template and generates a <module>_options.h file. |
17 |
|
*/ |
18 |
|
|
19 |
|
#include "cvc5_private.h" |
20 |
|
|
21 |
|
#ifndef CVC5__OPTIONS__QUANTIFIERS_H |
22 |
|
#define CVC5__OPTIONS__QUANTIFIERS_H |
23 |
|
|
24 |
|
#include "options/options.h" |
25 |
|
|
26 |
|
// clang-format off |
27 |
|
|
28 |
|
// clang-format on |
29 |
|
|
30 |
|
namespace cvc5::options { |
31 |
|
|
32 |
|
// clang-format off |
33 |
|
|
34 |
|
enum class CegisSampleMode |
35 |
|
{ |
36 |
|
NONE, |
37 |
|
TRUST, |
38 |
|
USE |
39 |
|
}; |
40 |
|
|
41 |
|
static constexpr size_t CegisSampleMode__numValues = 3; |
42 |
|
|
43 |
|
std::ostream& operator<<(std::ostream& os, CegisSampleMode mode); |
44 |
|
CegisSampleMode stringToCegisSampleMode(const std::string& optarg); |
45 |
|
|
46 |
|
enum class CegqiBvIneqMode |
47 |
|
{ |
48 |
|
EQ_BOUNDARY, |
49 |
|
KEEP, |
50 |
|
EQ_SLACK |
51 |
|
}; |
52 |
|
|
53 |
|
static constexpr size_t CegqiBvIneqMode__numValues = 3; |
54 |
|
|
55 |
|
std::ostream& operator<<(std::ostream& os, CegqiBvIneqMode mode); |
56 |
|
CegqiBvIneqMode stringToCegqiBvIneqMode(const std::string& optarg); |
57 |
|
|
58 |
|
enum class InstWhenMode |
59 |
|
{ |
60 |
|
PRE_FULL, |
61 |
|
FULL_DELAY_LAST_CALL, |
62 |
|
FULL, |
63 |
|
LAST_CALL, |
64 |
|
FULL_LAST_CALL, |
65 |
|
FULL_DELAY |
66 |
|
}; |
67 |
|
|
68 |
|
static constexpr size_t InstWhenMode__numValues = 6; |
69 |
|
|
70 |
|
std::ostream& operator<<(std::ostream& os, InstWhenMode mode); |
71 |
|
InstWhenMode stringToInstWhenMode(const std::string& optarg); |
72 |
|
|
73 |
|
enum class IteLiftQuantMode |
74 |
|
{ |
75 |
|
NONE, |
76 |
|
ALL, |
77 |
|
SIMPLE |
78 |
|
}; |
79 |
|
|
80 |
|
static constexpr size_t IteLiftQuantMode__numValues = 3; |
81 |
|
|
82 |
|
std::ostream& operator<<(std::ostream& os, IteLiftQuantMode mode); |
83 |
|
IteLiftQuantMode stringToIteLiftQuantMode(const std::string& optarg); |
84 |
|
|
85 |
|
enum class LiteralMatchMode |
86 |
|
{ |
87 |
|
NONE, |
88 |
|
AGG, |
89 |
|
AGG_PREDICATE, |
90 |
|
USE |
91 |
|
}; |
92 |
|
|
93 |
|
static constexpr size_t LiteralMatchMode__numValues = 4; |
94 |
|
|
95 |
|
std::ostream& operator<<(std::ostream& os, LiteralMatchMode mode); |
96 |
|
LiteralMatchMode stringToLiteralMatchMode(const std::string& optarg); |
97 |
|
|
98 |
|
enum class MacrosQuantMode |
99 |
|
{ |
100 |
|
GROUND_UF, |
101 |
|
ALL, |
102 |
|
GROUND |
103 |
|
}; |
104 |
|
|
105 |
|
static constexpr size_t MacrosQuantMode__numValues = 3; |
106 |
|
|
107 |
|
std::ostream& operator<<(std::ostream& os, MacrosQuantMode mode); |
108 |
|
MacrosQuantMode stringToMacrosQuantMode(const std::string& optarg); |
109 |
|
|
110 |
|
enum class MbqiMode |
111 |
|
{ |
112 |
|
NONE, |
113 |
|
TRUST, |
114 |
|
FMC |
115 |
|
}; |
116 |
|
|
117 |
|
static constexpr size_t MbqiMode__numValues = 3; |
118 |
|
|
119 |
|
std::ostream& operator<<(std::ostream& os, MbqiMode mode); |
120 |
|
MbqiMode stringToMbqiMode(const std::string& optarg); |
121 |
|
|
122 |
|
enum class PrenexQuantMode |
123 |
|
{ |
124 |
|
NONE, |
125 |
|
SIMPLE, |
126 |
|
NORMAL |
127 |
|
}; |
128 |
|
|
129 |
|
static constexpr size_t PrenexQuantMode__numValues = 3; |
130 |
|
|
131 |
|
std::ostream& operator<<(std::ostream& os, PrenexQuantMode mode); |
132 |
|
PrenexQuantMode stringToPrenexQuantMode(const std::string& optarg); |
133 |
|
|
134 |
|
enum class QcfMode |
135 |
|
{ |
136 |
|
PARTIAL, |
137 |
|
CONFLICT_ONLY, |
138 |
|
PROP_EQ |
139 |
|
}; |
140 |
|
|
141 |
|
static constexpr size_t QcfMode__numValues = 3; |
142 |
|
|
143 |
|
std::ostream& operator<<(std::ostream& os, QcfMode mode); |
144 |
|
QcfMode stringToQcfMode(const std::string& optarg); |
145 |
|
|
146 |
|
enum class QcfWhenMode |
147 |
|
{ |
148 |
|
STD_H, |
149 |
|
DEFAULT, |
150 |
|
STD, |
151 |
|
LAST_CALL |
152 |
|
}; |
153 |
|
|
154 |
|
static constexpr size_t QcfWhenMode__numValues = 4; |
155 |
|
|
156 |
|
std::ostream& operator<<(std::ostream& os, QcfWhenMode mode); |
157 |
|
QcfWhenMode stringToQcfWhenMode(const std::string& optarg); |
158 |
|
|
159 |
|
enum class QuantDSplitMode |
160 |
|
{ |
161 |
|
NONE, |
162 |
|
DEFAULT, |
163 |
|
AGG |
164 |
|
}; |
165 |
|
|
166 |
|
static constexpr size_t QuantDSplitMode__numValues = 3; |
167 |
|
|
168 |
|
std::ostream& operator<<(std::ostream& os, QuantDSplitMode mode); |
169 |
|
QuantDSplitMode stringToQuantDSplitMode(const std::string& optarg); |
170 |
|
|
171 |
|
enum class QuantRepMode |
172 |
|
{ |
173 |
|
DEPTH, |
174 |
|
EE, |
175 |
|
FIRST |
176 |
|
}; |
177 |
|
|
178 |
|
static constexpr size_t QuantRepMode__numValues = 3; |
179 |
|
|
180 |
|
std::ostream& operator<<(std::ostream& os, QuantRepMode mode); |
181 |
|
QuantRepMode stringToQuantRepMode(const std::string& optarg); |
182 |
|
|
183 |
|
enum class SygusActiveGenMode |
184 |
|
{ |
185 |
|
NONE, |
186 |
|
ENUM_BASIC, |
187 |
|
VAR_AGNOSTIC, |
188 |
|
ENUM, |
189 |
|
AUTO |
190 |
|
}; |
191 |
|
|
192 |
|
static constexpr size_t SygusActiveGenMode__numValues = 5; |
193 |
|
|
194 |
|
std::ostream& operator<<(std::ostream& os, SygusActiveGenMode mode); |
195 |
|
SygusActiveGenMode stringToSygusActiveGenMode(const std::string& optarg); |
196 |
|
|
197 |
|
enum class SygusFilterSolMode |
198 |
|
{ |
199 |
|
NONE, |
200 |
|
WEAK, |
201 |
|
STRONG |
202 |
|
}; |
203 |
|
|
204 |
|
static constexpr size_t SygusFilterSolMode__numValues = 3; |
205 |
|
|
206 |
|
std::ostream& operator<<(std::ostream& os, SygusFilterSolMode mode); |
207 |
|
SygusFilterSolMode stringToSygusFilterSolMode(const std::string& optarg); |
208 |
|
|
209 |
|
enum class SygusGrammarConsMode |
210 |
|
{ |
211 |
|
ANY_TERM, |
212 |
|
ANY_TERM_CONCISE, |
213 |
|
SIMPLE, |
214 |
|
ANY_CONST |
215 |
|
}; |
216 |
|
|
217 |
|
static constexpr size_t SygusGrammarConsMode__numValues = 4; |
218 |
|
|
219 |
|
std::ostream& operator<<(std::ostream& os, SygusGrammarConsMode mode); |
220 |
|
SygusGrammarConsMode stringToSygusGrammarConsMode(const std::string& optarg); |
221 |
|
|
222 |
|
enum class SygusInstMode |
223 |
|
{ |
224 |
|
PRIORITY_EVAL, |
225 |
|
INTERLEAVE, |
226 |
|
PRIORITY_INST |
227 |
|
}; |
228 |
|
|
229 |
|
static constexpr size_t SygusInstMode__numValues = 3; |
230 |
|
|
231 |
|
std::ostream& operator<<(std::ostream& os, SygusInstMode mode); |
232 |
|
SygusInstMode stringToSygusInstMode(const std::string& optarg); |
233 |
|
|
234 |
|
enum class SygusInstScope |
235 |
|
{ |
236 |
|
IN, |
237 |
|
BOTH, |
238 |
|
OUT |
239 |
|
}; |
240 |
|
|
241 |
|
static constexpr size_t SygusInstScope__numValues = 3; |
242 |
|
|
243 |
|
std::ostream& operator<<(std::ostream& os, SygusInstScope mode); |
244 |
|
SygusInstScope stringToSygusInstScope(const std::string& optarg); |
245 |
|
|
246 |
|
enum class SygusInstTermSelMode |
247 |
|
{ |
248 |
|
MIN, |
249 |
|
MAX, |
250 |
|
BOTH |
251 |
|
}; |
252 |
|
|
253 |
|
static constexpr size_t SygusInstTermSelMode__numValues = 3; |
254 |
|
|
255 |
|
std::ostream& operator<<(std::ostream& os, SygusInstTermSelMode mode); |
256 |
|
SygusInstTermSelMode stringToSygusInstTermSelMode(const std::string& optarg); |
257 |
|
|
258 |
|
enum class SygusInvTemplMode |
259 |
|
{ |
260 |
|
NONE, |
261 |
|
PRE, |
262 |
|
POST |
263 |
|
}; |
264 |
|
|
265 |
|
static constexpr size_t SygusInvTemplMode__numValues = 3; |
266 |
|
|
267 |
|
std::ostream& operator<<(std::ostream& os, SygusInvTemplMode mode); |
268 |
|
SygusInvTemplMode stringToSygusInvTemplMode(const std::string& optarg); |
269 |
|
|
270 |
|
enum class SygusQueryDumpFilesMode |
271 |
|
{ |
272 |
|
NONE, |
273 |
|
UNSOLVED, |
274 |
|
ALL |
275 |
|
}; |
276 |
|
|
277 |
|
static constexpr size_t SygusQueryDumpFilesMode__numValues = 3; |
278 |
|
|
279 |
|
std::ostream& operator<<(std::ostream& os, SygusQueryDumpFilesMode mode); |
280 |
|
SygusQueryDumpFilesMode stringToSygusQueryDumpFilesMode(const std::string& optarg); |
281 |
|
|
282 |
|
enum class CegqiSingleInvRconsMode |
283 |
|
{ |
284 |
|
NONE, |
285 |
|
TRY, |
286 |
|
ALL, |
287 |
|
ALL_LIMIT |
288 |
|
}; |
289 |
|
|
290 |
|
static constexpr size_t CegqiSingleInvRconsMode__numValues = 4; |
291 |
|
|
292 |
|
std::ostream& operator<<(std::ostream& os, CegqiSingleInvRconsMode mode); |
293 |
|
CegqiSingleInvRconsMode stringToCegqiSingleInvRconsMode(const std::string& optarg); |
294 |
|
|
295 |
|
enum class CegqiSingleInvMode |
296 |
|
{ |
297 |
|
NONE, |
298 |
|
ALL, |
299 |
|
USE |
300 |
|
}; |
301 |
|
|
302 |
|
static constexpr size_t CegqiSingleInvMode__numValues = 3; |
303 |
|
|
304 |
|
std::ostream& operator<<(std::ostream& os, CegqiSingleInvMode mode); |
305 |
|
CegqiSingleInvMode stringToCegqiSingleInvMode(const std::string& optarg); |
306 |
|
|
307 |
|
enum class SygusUnifPiMode |
308 |
|
{ |
309 |
|
NONE, |
310 |
|
COMPLETE, |
311 |
|
CENUM, |
312 |
|
CENUM_IGAIN |
313 |
|
}; |
314 |
|
|
315 |
|
static constexpr size_t SygusUnifPiMode__numValues = 4; |
316 |
|
|
317 |
|
std::ostream& operator<<(std::ostream& os, SygusUnifPiMode mode); |
318 |
|
SygusUnifPiMode stringToSygusUnifPiMode(const std::string& optarg); |
319 |
|
|
320 |
|
enum class TermDbMode |
321 |
|
{ |
322 |
|
RELEVANT, |
323 |
|
ALL |
324 |
|
}; |
325 |
|
|
326 |
|
static constexpr size_t TermDbMode__numValues = 2; |
327 |
|
|
328 |
|
std::ostream& operator<<(std::ostream& os, TermDbMode mode); |
329 |
|
TermDbMode stringToTermDbMode(const std::string& optarg); |
330 |
|
|
331 |
|
enum class TriggerActiveSelMode |
332 |
|
{ |
333 |
|
MIN, |
334 |
|
MAX, |
335 |
|
ALL |
336 |
|
}; |
337 |
|
|
338 |
|
static constexpr size_t TriggerActiveSelMode__numValues = 3; |
339 |
|
|
340 |
|
std::ostream& operator<<(std::ostream& os, TriggerActiveSelMode mode); |
341 |
|
TriggerActiveSelMode stringToTriggerActiveSelMode(const std::string& optarg); |
342 |
|
|
343 |
|
enum class TriggerSelMode |
344 |
|
{ |
345 |
|
MIN, |
346 |
|
MAX, |
347 |
|
MIN_SINGLE_ALL, |
348 |
|
ALL, |
349 |
|
MIN_SINGLE_MAX |
350 |
|
}; |
351 |
|
|
352 |
|
static constexpr size_t TriggerSelMode__numValues = 5; |
353 |
|
|
354 |
|
std::ostream& operator<<(std::ostream& os, TriggerSelMode mode); |
355 |
|
TriggerSelMode stringToTriggerSelMode(const std::string& optarg); |
356 |
|
|
357 |
|
enum class UserPatMode |
358 |
|
{ |
359 |
|
IGNORE, |
360 |
|
USE, |
361 |
|
TRUST, |
362 |
|
INTERLEAVE, |
363 |
|
RESORT |
364 |
|
}; |
365 |
|
|
366 |
|
static constexpr size_t UserPatMode__numValues = 5; |
367 |
|
|
368 |
|
std::ostream& operator<<(std::ostream& os, UserPatMode mode); |
369 |
|
UserPatMode stringToUserPatMode(const std::string& optarg); |
370 |
|
// clang-format on |
371 |
|
|
372 |
|
#if defined(CVC5_MUZZLED) || defined(CVC5_COMPETITION_MODE) |
373 |
|
# define DO_SEMANTIC_CHECKS_BY_DEFAULT false |
374 |
|
#else /* CVC5_MUZZLED || CVC5_COMPETITION_MODE */ |
375 |
|
# define DO_SEMANTIC_CHECKS_BY_DEFAULT true |
376 |
|
#endif /* CVC5_MUZZLED || CVC5_COMPETITION_MODE */ |
377 |
|
|
378 |
27407 |
struct HolderQUANTIFIERS |
379 |
|
{ |
380 |
|
// clang-format off |
381 |
|
bool aggressiveMiniscopeQuant = false; |
382 |
|
bool aggressiveMiniscopeQuantWasSetByUser = false; |
383 |
|
CegisSampleMode cegisSample = CegisSampleMode::NONE; |
384 |
|
bool cegisSampleWasSetByUser = false; |
385 |
|
bool cegqi = false; |
386 |
|
bool cegqiWasSetByUser = false; |
387 |
|
bool cegqiAll = false; |
388 |
|
bool cegqiAllWasSetByUser = false; |
389 |
|
bool cegqiBv = true; |
390 |
|
bool cegqiBvWasSetByUser = false; |
391 |
|
bool cegqiBvConcInv = true; |
392 |
|
bool cegqiBvConcInvWasSetByUser = false; |
393 |
|
CegqiBvIneqMode cegqiBvIneqMode = CegqiBvIneqMode::EQ_BOUNDARY; |
394 |
|
bool cegqiBvIneqModeWasSetByUser = false; |
395 |
|
bool cegqiBvInterleaveValue = false; |
396 |
|
bool cegqiBvInterleaveValueWasSetByUser = false; |
397 |
|
bool cegqiBvLinearize = true; |
398 |
|
bool cegqiBvLinearizeWasSetByUser = false; |
399 |
|
bool cegqiBvRmExtract = true; |
400 |
|
bool cegqiBvRmExtractWasSetByUser = false; |
401 |
|
bool cegqiBvSolveNl = false; |
402 |
|
bool cegqiBvSolveNlWasSetByUser = false; |
403 |
|
bool cegqiFullEffort = false; |
404 |
|
bool cegqiFullEffortWasSetByUser = false; |
405 |
|
bool cegqiInnermost = true; |
406 |
|
bool cegqiInnermostWasSetByUser = false; |
407 |
|
bool cegqiMidpoint = false; |
408 |
|
bool cegqiMidpointWasSetByUser = false; |
409 |
|
bool cegqiMinBounds = false; |
410 |
|
bool cegqiMinBoundsWasSetByUser = false; |
411 |
|
bool cegqiModel = true; |
412 |
|
bool cegqiModelWasSetByUser = false; |
413 |
|
bool cegqiMultiInst = false; |
414 |
|
bool cegqiMultiInstWasSetByUser = false; |
415 |
|
bool cegqiNestedQE = false; |
416 |
|
bool cegqiNestedQEWasSetByUser = false; |
417 |
|
bool cegqiNopt = true; |
418 |
|
bool cegqiNoptWasSetByUser = false; |
419 |
|
bool cegqiRepeatLit = false; |
420 |
|
bool cegqiRepeatLitWasSetByUser = false; |
421 |
|
bool cegqiRoundUpLowerLia = false; |
422 |
|
bool cegqiRoundUpLowerLiaWasSetByUser = false; |
423 |
|
bool cegqiSat = true; |
424 |
|
bool cegqiSatWasSetByUser = false; |
425 |
|
bool cegqiUseInfInt = false; |
426 |
|
bool cegqiUseInfIntWasSetByUser = false; |
427 |
|
bool cegqiUseInfReal = false; |
428 |
|
bool cegqiUseInfRealWasSetByUser = false; |
429 |
|
bool condVarSplitQuantAgg = false; |
430 |
|
bool condVarSplitQuantAggWasSetByUser = false; |
431 |
|
bool condVarSplitQuant = true; |
432 |
|
bool condVarSplitQuantWasSetByUser = false; |
433 |
|
bool conjectureFilterActiveTerms = true; |
434 |
|
bool conjectureFilterActiveTermsWasSetByUser = false; |
435 |
|
bool conjectureFilterCanonical = true; |
436 |
|
bool conjectureFilterCanonicalWasSetByUser = false; |
437 |
|
bool conjectureFilterModel = true; |
438 |
|
bool conjectureFilterModelWasSetByUser = false; |
439 |
|
bool conjectureGen = false; |
440 |
|
bool conjectureGenWasSetByUser = false; |
441 |
|
int64_t conjectureGenGtEnum = 50; |
442 |
|
bool conjectureGenGtEnumWasSetByUser = false; |
443 |
|
int64_t conjectureGenMaxDepth = 3; |
444 |
|
bool conjectureGenMaxDepthWasSetByUser = false; |
445 |
|
int64_t conjectureGenPerRound = 1; |
446 |
|
bool conjectureGenPerRoundWasSetByUser = false; |
447 |
|
bool conjectureUeeIntro = false; |
448 |
|
bool conjectureUeeIntroWasSetByUser = false; |
449 |
|
bool conjectureNoFilter = false; |
450 |
|
bool conjectureNoFilterWasSetByUser = false; |
451 |
|
bool dtStcInduction = false; |
452 |
|
bool dtStcInductionWasSetByUser = false; |
453 |
|
bool dtVarExpandQuant = true; |
454 |
|
bool dtVarExpandQuantWasSetByUser = false; |
455 |
|
bool eMatching = true; |
456 |
|
bool eMatchingWasSetByUser = false; |
457 |
|
bool elimTautQuant = true; |
458 |
|
bool elimTautQuantWasSetByUser = false; |
459 |
|
bool extRewriteQuant = false; |
460 |
|
bool extRewriteQuantWasSetByUser = false; |
461 |
|
bool finiteModelFind = false; |
462 |
|
bool finiteModelFindWasSetByUser = false; |
463 |
|
bool fmfBound = false; |
464 |
|
bool fmfBoundWasSetByUser = false; |
465 |
|
bool fmfBoundInt = false; |
466 |
|
bool fmfBoundIntWasSetByUser = false; |
467 |
|
bool fmfBoundLazy = false; |
468 |
|
bool fmfBoundLazyWasSetByUser = false; |
469 |
|
bool fmfFmcSimple = true; |
470 |
|
bool fmfFmcSimpleWasSetByUser = false; |
471 |
|
bool fmfFreshDistConst = false; |
472 |
|
bool fmfFreshDistConstWasSetByUser = false; |
473 |
|
bool fmfFunWellDefined = false; |
474 |
|
bool fmfFunWellDefinedWasSetByUser = false; |
475 |
|
bool fmfFunWellDefinedRelevant = false; |
476 |
|
bool fmfFunWellDefinedRelevantWasSetByUser = false; |
477 |
|
bool fmfInstEngine = false; |
478 |
|
bool fmfInstEngineWasSetByUser = false; |
479 |
|
int64_t fmfTypeCompletionThresh = 1000; |
480 |
|
bool fmfTypeCompletionThreshWasSetByUser = false; |
481 |
|
bool fullSaturateInterleave = false; |
482 |
|
bool fullSaturateInterleaveWasSetByUser = false; |
483 |
|
bool fullSaturateStratify = false; |
484 |
|
bool fullSaturateStratifyWasSetByUser = false; |
485 |
|
bool fullSaturateSum = false; |
486 |
|
bool fullSaturateSumWasSetByUser = false; |
487 |
|
bool fullSaturateQuant = false; |
488 |
|
bool fullSaturateQuantWasSetByUser = false; |
489 |
|
int64_t fullSaturateLimit = -1; |
490 |
|
bool fullSaturateLimitWasSetByUser = false; |
491 |
|
bool fullSaturateQuantRd = true; |
492 |
|
bool fullSaturateQuantRdWasSetByUser = false; |
493 |
|
bool globalNegate = false; |
494 |
|
bool globalNegateWasSetByUser = false; |
495 |
|
bool hoElim = false; |
496 |
|
bool hoElimWasSetByUser = false; |
497 |
|
bool hoElimStoreAx = true; |
498 |
|
bool hoElimStoreAxWasSetByUser = false; |
499 |
|
bool hoMatching = true; |
500 |
|
bool hoMatchingWasSetByUser = false; |
501 |
|
bool hoMatchingVarArgPriority = true; |
502 |
|
bool hoMatchingVarArgPriorityWasSetByUser = false; |
503 |
|
bool hoMergeTermDb = true; |
504 |
|
bool hoMergeTermDbWasSetByUser = false; |
505 |
|
bool incrementTriggers = true; |
506 |
|
bool incrementTriggersWasSetByUser = false; |
507 |
|
bool instLevelInputOnly = true; |
508 |
|
bool instLevelInputOnlyWasSetByUser = false; |
509 |
|
int64_t instMaxLevel = -1; |
510 |
|
bool instMaxLevelWasSetByUser = false; |
511 |
|
int64_t instMaxRounds = -1; |
512 |
|
bool instMaxRoundsWasSetByUser = false; |
513 |
|
bool instNoEntail = true; |
514 |
|
bool instNoEntailWasSetByUser = false; |
515 |
|
int64_t instWhenPhase = 2; |
516 |
|
bool instWhenPhaseWasSetByUser = false; |
517 |
|
bool instWhenStrictInterleave = true; |
518 |
|
bool instWhenStrictInterleaveWasSetByUser = false; |
519 |
|
bool instWhenTcFirst = true; |
520 |
|
bool instWhenTcFirstWasSetByUser = false; |
521 |
|
InstWhenMode instWhenMode = InstWhenMode::FULL_LAST_CALL; |
522 |
|
bool instWhenModeWasSetByUser = false; |
523 |
|
bool intWfInduction = false; |
524 |
|
bool intWfInductionWasSetByUser = false; |
525 |
|
bool iteDtTesterSplitQuant = false; |
526 |
|
bool iteDtTesterSplitQuantWasSetByUser = false; |
527 |
|
IteLiftQuantMode iteLiftQuant = IteLiftQuantMode::SIMPLE; |
528 |
|
bool iteLiftQuantWasSetByUser = false; |
529 |
|
LiteralMatchMode literalMatchMode = LiteralMatchMode::USE; |
530 |
|
bool literalMatchModeWasSetByUser = false; |
531 |
|
bool macrosQuant = false; |
532 |
|
bool macrosQuantWasSetByUser = false; |
533 |
|
MacrosQuantMode macrosQuantMode = MacrosQuantMode::GROUND_UF; |
534 |
|
bool macrosQuantModeWasSetByUser = false; |
535 |
|
bool mbqiInterleave = false; |
536 |
|
bool mbqiInterleaveWasSetByUser = false; |
537 |
|
bool fmfOneInstPerRound = false; |
538 |
|
bool fmfOneInstPerRoundWasSetByUser = false; |
539 |
|
MbqiMode mbqiMode = MbqiMode::FMC; |
540 |
|
bool mbqiModeWasSetByUser = false; |
541 |
|
bool miniscopeQuant = true; |
542 |
|
bool miniscopeQuantWasSetByUser = false; |
543 |
|
bool miniscopeQuantFreeVar = true; |
544 |
|
bool miniscopeQuantFreeVarWasSetByUser = false; |
545 |
|
bool multiTriggerCache = false; |
546 |
|
bool multiTriggerCacheWasSetByUser = false; |
547 |
|
bool multiTriggerLinear = true; |
548 |
|
bool multiTriggerLinearWasSetByUser = false; |
549 |
|
bool multiTriggerPriority = false; |
550 |
|
bool multiTriggerPriorityWasSetByUser = false; |
551 |
|
bool multiTriggerWhenSingle = false; |
552 |
|
bool multiTriggerWhenSingleWasSetByUser = false; |
553 |
|
bool partialTriggers = false; |
554 |
|
bool partialTriggersWasSetByUser = false; |
555 |
|
bool poolInst = true; |
556 |
|
bool poolInstWasSetByUser = false; |
557 |
|
bool preSkolemQuant = false; |
558 |
|
bool preSkolemQuantWasSetByUser = false; |
559 |
|
bool preSkolemQuantAgg = true; |
560 |
|
bool preSkolemQuantAggWasSetByUser = false; |
561 |
|
bool preSkolemQuantNested = true; |
562 |
|
bool preSkolemQuantNestedWasSetByUser = false; |
563 |
|
bool prenexQuantUser = false; |
564 |
|
bool prenexQuantUserWasSetByUser = false; |
565 |
|
PrenexQuantMode prenexQuant = PrenexQuantMode::SIMPLE; |
566 |
|
bool prenexQuantWasSetByUser = false; |
567 |
|
bool purifyTriggers = false; |
568 |
|
bool purifyTriggersWasSetByUser = false; |
569 |
|
bool qcfAllConflict = false; |
570 |
|
bool qcfAllConflictWasSetByUser = false; |
571 |
|
bool qcfEagerCheckRd = true; |
572 |
|
bool qcfEagerCheckRdWasSetByUser = false; |
573 |
|
bool qcfEagerTest = true; |
574 |
|
bool qcfEagerTestWasSetByUser = false; |
575 |
|
bool qcfNestedConflict = false; |
576 |
|
bool qcfNestedConflictWasSetByUser = false; |
577 |
|
bool qcfSkipRd = false; |
578 |
|
bool qcfSkipRdWasSetByUser = false; |
579 |
|
bool qcfTConstraint = false; |
580 |
|
bool qcfTConstraintWasSetByUser = false; |
581 |
|
bool qcfVoExp = false; |
582 |
|
bool qcfVoExpWasSetByUser = false; |
583 |
|
bool quantAlphaEquiv = true; |
584 |
|
bool quantAlphaEquivWasSetByUser = false; |
585 |
|
bool quantConflictFind = true; |
586 |
|
bool quantConflictFindWasSetByUser = false; |
587 |
|
QcfMode qcfMode = QcfMode::PROP_EQ; |
588 |
|
bool qcfModeWasSetByUser = false; |
589 |
|
QcfWhenMode qcfWhenMode = QcfWhenMode::DEFAULT; |
590 |
|
bool qcfWhenModeWasSetByUser = false; |
591 |
|
QuantDSplitMode quantDynamicSplit = QuantDSplitMode::DEFAULT; |
592 |
|
bool quantDynamicSplitWasSetByUser = false; |
593 |
|
bool quantFunWellDefined = false; |
594 |
|
bool quantFunWellDefinedWasSetByUser = false; |
595 |
|
bool quantInduction = false; |
596 |
|
bool quantInductionWasSetByUser = false; |
597 |
|
QuantRepMode quantRepMode = QuantRepMode::FIRST; |
598 |
|
bool quantRepModeWasSetByUser = false; |
599 |
|
bool quantSplit = true; |
600 |
|
bool quantSplitWasSetByUser = false; |
601 |
|
bool registerQuantBodyTerms = false; |
602 |
|
bool registerQuantBodyTermsWasSetByUser = false; |
603 |
|
bool relationalTriggers = false; |
604 |
|
bool relationalTriggersWasSetByUser = false; |
605 |
|
bool relevantTriggers = false; |
606 |
|
bool relevantTriggersWasSetByUser = false; |
607 |
|
bool strictTriggers = false; |
608 |
|
bool strictTriggersWasSetByUser = false; |
609 |
|
bool sygus = false; |
610 |
|
bool sygusWasSetByUser = false; |
611 |
|
uint64_t sygusActiveGenEnumConsts = 5; |
612 |
|
bool sygusActiveGenEnumConstsWasSetByUser = false; |
613 |
|
SygusActiveGenMode sygusActiveGenMode = SygusActiveGenMode::AUTO; |
614 |
|
bool sygusActiveGenModeWasSetByUser = false; |
615 |
|
bool sygusAddConstGrammar = false; |
616 |
|
bool sygusAddConstGrammarWasSetByUser = false; |
617 |
|
bool sygusArgRelevant = false; |
618 |
|
bool sygusArgRelevantWasSetByUser = false; |
619 |
|
bool sygusInvAutoUnfold = true; |
620 |
|
bool sygusInvAutoUnfoldWasSetByUser = false; |
621 |
|
bool sygusBoolIteReturnConst = true; |
622 |
|
bool sygusBoolIteReturnConstWasSetByUser = false; |
623 |
|
bool sygusCoreConnective = false; |
624 |
|
bool sygusCoreConnectiveWasSetByUser = false; |
625 |
|
bool sygusConstRepairAbort = false; |
626 |
|
bool sygusConstRepairAbortWasSetByUser = false; |
627 |
|
bool sygusEvalOpt = true; |
628 |
|
bool sygusEvalOptWasSetByUser = false; |
629 |
|
bool sygusEvalUnfold = true; |
630 |
|
bool sygusEvalUnfoldWasSetByUser = false; |
631 |
|
bool sygusEvalUnfoldBool = true; |
632 |
|
bool sygusEvalUnfoldBoolWasSetByUser = false; |
633 |
|
uint64_t sygusExprMinerCheckTimeout; |
634 |
|
bool sygusExprMinerCheckTimeoutWasSetByUser = false; |
635 |
|
bool sygusExtRew = true; |
636 |
|
bool sygusExtRewWasSetByUser = false; |
637 |
|
bool sygusFilterSolRevSubsume = false; |
638 |
|
bool sygusFilterSolRevSubsumeWasSetByUser = false; |
639 |
|
SygusFilterSolMode sygusFilterSolMode = SygusFilterSolMode::NONE; |
640 |
|
bool sygusFilterSolModeWasSetByUser = false; |
641 |
|
SygusGrammarConsMode sygusGrammarConsMode = SygusGrammarConsMode::SIMPLE; |
642 |
|
bool sygusGrammarConsModeWasSetByUser = false; |
643 |
|
bool sygusGrammarNorm = false; |
644 |
|
bool sygusGrammarNormWasSetByUser = false; |
645 |
|
bool sygusInference = false; |
646 |
|
bool sygusInferenceWasSetByUser = false; |
647 |
|
bool sygusInst = false; |
648 |
|
bool sygusInstWasSetByUser = false; |
649 |
|
SygusInstMode sygusInstMode = SygusInstMode::PRIORITY_INST; |
650 |
|
bool sygusInstModeWasSetByUser = false; |
651 |
|
SygusInstScope sygusInstScope = SygusInstScope::IN; |
652 |
|
bool sygusInstScopeWasSetByUser = false; |
653 |
|
SygusInstTermSelMode sygusInstTermSel = SygusInstTermSelMode::MIN; |
654 |
|
bool sygusInstTermSelWasSetByUser = false; |
655 |
|
bool sygusInvTemplWhenSyntax = false; |
656 |
|
bool sygusInvTemplWhenSyntaxWasSetByUser = false; |
657 |
|
SygusInvTemplMode sygusInvTemplMode = SygusInvTemplMode::POST; |
658 |
|
bool sygusInvTemplModeWasSetByUser = false; |
659 |
|
bool sygusMinGrammar = true; |
660 |
|
bool sygusMinGrammarWasSetByUser = false; |
661 |
|
bool sygusUnifPbe = true; |
662 |
|
bool sygusUnifPbeWasSetByUser = false; |
663 |
|
bool sygusPbeMultiFair = false; |
664 |
|
bool sygusPbeMultiFairWasSetByUser = false; |
665 |
|
int64_t sygusPbeMultiFairDiff = 0; |
666 |
|
bool sygusPbeMultiFairDiffWasSetByUser = false; |
667 |
|
bool sygusQePreproc = false; |
668 |
|
bool sygusQePreprocWasSetByUser = false; |
669 |
|
bool sygusQueryGen = false; |
670 |
|
bool sygusQueryGenWasSetByUser = false; |
671 |
|
bool sygusQueryGenCheck = true; |
672 |
|
bool sygusQueryGenCheckWasSetByUser = false; |
673 |
|
SygusQueryDumpFilesMode sygusQueryGenDumpFiles = SygusQueryDumpFilesMode::NONE; |
674 |
|
bool sygusQueryGenDumpFilesWasSetByUser = false; |
675 |
|
uint64_t sygusQueryGenThresh = 5; |
676 |
|
bool sygusQueryGenThreshWasSetByUser = false; |
677 |
|
bool sygusRecFun = true; |
678 |
|
bool sygusRecFunWasSetByUser = false; |
679 |
|
uint64_t sygusRecFunEvalLimit = 1000; |
680 |
|
bool sygusRecFunEvalLimitWasSetByUser = false; |
681 |
|
bool sygusRepairConst = false; |
682 |
|
bool sygusRepairConstWasSetByUser = false; |
683 |
|
uint64_t sygusRepairConstTimeout; |
684 |
|
bool sygusRepairConstTimeoutWasSetByUser = false; |
685 |
|
bool sygusRew = false; |
686 |
|
bool sygusRewWasSetByUser = false; |
687 |
|
bool sygusRewSynth = false; |
688 |
|
bool sygusRewSynthWasSetByUser = false; |
689 |
|
bool sygusRewSynthAccel = false; |
690 |
|
bool sygusRewSynthAccelWasSetByUser = false; |
691 |
|
bool sygusRewSynthCheck = false; |
692 |
|
bool sygusRewSynthCheckWasSetByUser = false; |
693 |
|
bool sygusRewSynthFilterCong = true; |
694 |
|
bool sygusRewSynthFilterCongWasSetByUser = false; |
695 |
|
bool sygusRewSynthFilterMatch = true; |
696 |
|
bool sygusRewSynthFilterMatchWasSetByUser = false; |
697 |
|
bool sygusRewSynthFilterNonLinear = false; |
698 |
|
bool sygusRewSynthFilterNonLinearWasSetByUser = false; |
699 |
|
bool sygusRewSynthFilterOrder = true; |
700 |
|
bool sygusRewSynthFilterOrderWasSetByUser = false; |
701 |
|
bool sygusRewSynthInput = false; |
702 |
|
bool sygusRewSynthInputWasSetByUser = false; |
703 |
|
int64_t sygusRewSynthInputNVars = 3; |
704 |
|
bool sygusRewSynthInputNVarsWasSetByUser = false; |
705 |
|
bool sygusRewSynthInputUseBool = false; |
706 |
|
bool sygusRewSynthInputUseBoolWasSetByUser = false; |
707 |
|
bool sygusRewSynthRec = false; |
708 |
|
bool sygusRewSynthRecWasSetByUser = false; |
709 |
|
bool sygusRewVerify = false; |
710 |
|
bool sygusRewVerifyWasSetByUser = false; |
711 |
|
bool sygusRewVerifyAbort = true; |
712 |
|
bool sygusRewVerifyAbortWasSetByUser = false; |
713 |
|
bool sygusSampleFpUniform = false; |
714 |
|
bool sygusSampleFpUniformWasSetByUser = false; |
715 |
|
bool sygusSampleGrammar = true; |
716 |
|
bool sygusSampleGrammarWasSetByUser = false; |
717 |
|
int64_t sygusSamples = 1000; |
718 |
|
bool sygusSamplesWasSetByUser = false; |
719 |
|
bool cegqiSingleInvAbort = false; |
720 |
|
bool cegqiSingleInvAbortWasSetByUser = false; |
721 |
|
bool cegqiSingleInvPartial = false; |
722 |
|
bool cegqiSingleInvPartialWasSetByUser = false; |
723 |
|
int64_t cegqiSingleInvReconstructLimit = 10000; |
724 |
|
bool cegqiSingleInvReconstructLimitWasSetByUser = false; |
725 |
|
CegqiSingleInvRconsMode cegqiSingleInvReconstruct = CegqiSingleInvRconsMode::ALL_LIMIT; |
726 |
|
bool cegqiSingleInvReconstructWasSetByUser = false; |
727 |
|
bool cegqiSingleInvReconstructConst = true; |
728 |
|
bool cegqiSingleInvReconstructConstWasSetByUser = false; |
729 |
|
CegqiSingleInvMode cegqiSingleInvMode = CegqiSingleInvMode::NONE; |
730 |
|
bool cegqiSingleInvModeWasSetByUser = false; |
731 |
|
bool sygusStream = false; |
732 |
|
bool sygusStreamWasSetByUser = false; |
733 |
|
bool sygusTemplEmbedGrammar = false; |
734 |
|
bool sygusTemplEmbedGrammarWasSetByUser = false; |
735 |
|
bool sygusUnifCondIndNoRepeatSol = true; |
736 |
|
bool sygusUnifCondIndNoRepeatSolWasSetByUser = false; |
737 |
|
SygusUnifPiMode sygusUnifPi = SygusUnifPiMode::NONE; |
738 |
|
bool sygusUnifPiWasSetByUser = false; |
739 |
|
bool sygusUnifShuffleCond = false; |
740 |
|
bool sygusUnifShuffleCondWasSetByUser = false; |
741 |
|
int64_t sygusVerifyInstMaxRounds = 3; |
742 |
|
bool sygusVerifyInstMaxRoundsWasSetByUser = false; |
743 |
|
bool termDbCd = true; |
744 |
|
bool termDbCdWasSetByUser = false; |
745 |
|
TermDbMode termDbMode = TermDbMode::ALL; |
746 |
|
bool termDbModeWasSetByUser = false; |
747 |
|
TriggerActiveSelMode triggerActiveSelMode = TriggerActiveSelMode::ALL; |
748 |
|
bool triggerActiveSelModeWasSetByUser = false; |
749 |
|
TriggerSelMode triggerSelMode = TriggerSelMode::MIN; |
750 |
|
bool triggerSelModeWasSetByUser = false; |
751 |
|
UserPatMode userPatternsQuant = UserPatMode::TRUST; |
752 |
|
bool userPatternsQuantWasSetByUser = false; |
753 |
|
bool varElimQuant = true; |
754 |
|
bool varElimQuantWasSetByUser = false; |
755 |
|
bool varIneqElimQuant = true; |
756 |
|
bool varIneqElimQuantWasSetByUser = false; |
757 |
|
// clang-format on |
758 |
|
}; |
759 |
|
|
760 |
|
#undef DO_SEMANTIC_CHECKS_BY_DEFAULT |
761 |
|
|
762 |
|
// clang-format off |
763 |
235244 |
inline bool aggressiveMiniscopeQuant() { return Options::current().quantifiers.aggressiveMiniscopeQuant; } |
764 |
3653 |
inline CegisSampleMode cegisSample() { return Options::current().quantifiers.cegisSample; } |
765 |
4495940 |
inline bool cegqi() { return Options::current().quantifiers.cegqi; } |
766 |
17023 |
inline bool cegqiAll() { return Options::current().quantifiers.cegqiAll; } |
767 |
12337 |
inline bool cegqiBv() { return Options::current().quantifiers.cegqiBv; } |
768 |
462 |
inline bool cegqiBvConcInv() { return Options::current().quantifiers.cegqiBvConcInv; } |
769 |
24608 |
inline CegqiBvIneqMode cegqiBvIneqMode() { return Options::current().quantifiers.cegqiBvIneqMode; } |
770 |
2278 |
inline bool cegqiBvInterleaveValue() { return Options::current().quantifiers.cegqiBvInterleaveValue; } |
771 |
10815 |
inline bool cegqiBvLinearize() { return Options::current().quantifiers.cegqiBvLinearize; } |
772 |
710 |
inline bool cegqiBvRmExtract() { return Options::current().quantifiers.cegqiBvRmExtract; } |
773 |
4732 |
inline bool cegqiBvSolveNl() { return Options::current().quantifiers.cegqiBvSolveNl; } |
774 |
1422 |
inline bool cegqiFullEffort() { return Options::current().quantifiers.cegqiFullEffort; } |
775 |
27677 |
inline bool cegqiInnermost() { return Options::current().quantifiers.cegqiInnermost; } |
776 |
4948 |
inline bool cegqiMidpoint() { return Options::current().quantifiers.cegqiMidpoint; } |
777 |
13992 |
inline bool cegqiMinBounds() { return Options::current().quantifiers.cegqiMinBounds; } |
778 |
71739 |
inline bool cegqiModel() { return Options::current().quantifiers.cegqiModel; } |
779 |
67595 |
inline bool cegqiMultiInst() { return Options::current().quantifiers.cegqiMultiInst; } |
780 |
6647 |
inline bool cegqiNestedQE() { return Options::current().quantifiers.cegqiNestedQE; } |
781 |
40 |
inline bool cegqiNopt() { return Options::current().quantifiers.cegqiNopt; } |
782 |
445213 |
inline bool cegqiRepeatLit() { return Options::current().quantifiers.cegqiRepeatLit; } |
783 |
13 |
inline bool cegqiRoundUpLowerLia() { return Options::current().quantifiers.cegqiRoundUpLowerLia; } |
784 |
2680 |
inline bool cegqiSat() { return Options::current().quantifiers.cegqiSat; } |
785 |
13534 |
inline bool cegqiUseInfInt() { return Options::current().quantifiers.cegqiUseInfInt; } |
786 |
458 |
inline bool cegqiUseInfReal() { return Options::current().quantifiers.cegqiUseInfReal; } |
787 |
23103 |
inline bool condVarSplitQuantAgg() { return Options::current().quantifiers.condVarSplitQuantAgg; } |
788 |
212852 |
inline bool condVarSplitQuant() { return Options::current().quantifiers.condVarSplitQuant; } |
789 |
3243 |
inline bool conjectureFilterActiveTerms() { return Options::current().quantifiers.conjectureFilterActiveTerms; } |
790 |
6592 |
inline bool conjectureFilterCanonical() { return Options::current().quantifiers.conjectureFilterCanonical; } |
791 |
14590 |
inline bool conjectureFilterModel() { return Options::current().quantifiers.conjectureFilterModel; } |
792 |
6763 |
inline bool conjectureGen() { return Options::current().quantifiers.conjectureGen; } |
793 |
92 |
inline int64_t conjectureGenGtEnum() { return Options::current().quantifiers.conjectureGenGtEnum; } |
794 |
44 |
inline int64_t conjectureGenMaxDepth() { return Options::current().quantifiers.conjectureGenMaxDepth; } |
795 |
698 |
inline int64_t conjectureGenPerRound() { return Options::current().quantifiers.conjectureGenPerRound; } |
796 |
100 |
inline bool conjectureUeeIntro() { return Options::current().quantifiers.conjectureUeeIntro; } |
797 |
|
inline bool conjectureNoFilter() { return Options::current().quantifiers.conjectureNoFilter; } |
798 |
9383 |
inline bool dtStcInduction() { return Options::current().quantifiers.dtStcInduction; } |
799 |
37 |
inline bool dtVarExpandQuant() { return Options::current().quantifiers.dtVarExpandQuant; } |
800 |
6503 |
inline bool eMatching() { return Options::current().quantifiers.eMatching; } |
801 |
633709 |
inline bool elimTautQuant() { return Options::current().quantifiers.elimTautQuant; } |
802 |
117271 |
inline bool extRewriteQuant() { return Options::current().quantifiers.extRewriteQuant; } |
803 |
10080256 |
inline bool finiteModelFind() { return Options::current().quantifiers.finiteModelFind; } |
804 |
41057 |
inline bool fmfBound() { return Options::current().quantifiers.fmfBound; } |
805 |
|
inline bool fmfBoundInt() { return Options::current().quantifiers.fmfBoundInt; } |
806 |
649 |
inline bool fmfBoundLazy() { return Options::current().quantifiers.fmfBoundLazy; } |
807 |
38356 |
inline bool fmfFmcSimple() { return Options::current().quantifiers.fmfFmcSimple; } |
808 |
516 |
inline bool fmfFreshDistConst() { return Options::current().quantifiers.fmfFreshDistConst; } |
809 |
8130 |
inline bool fmfFunWellDefined() { return Options::current().quantifiers.fmfFunWellDefined; } |
810 |
13190 |
inline bool fmfFunWellDefinedRelevant() { return Options::current().quantifiers.fmfFunWellDefinedRelevant; } |
811 |
268 |
inline bool fmfInstEngine() { return Options::current().quantifiers.fmfInstEngine; } |
812 |
9853 |
inline int64_t fmfTypeCompletionThresh() { return Options::current().quantifiers.fmfTypeCompletionThresh; } |
813 |
17931 |
inline bool fullSaturateInterleave() { return Options::current().quantifiers.fullSaturateInterleave; } |
814 |
994 |
inline bool fullSaturateStratify() { return Options::current().quantifiers.fullSaturateStratify; } |
815 |
1284 |
inline bool fullSaturateSum() { return Options::current().quantifiers.fullSaturateSum; } |
816 |
18029 |
inline bool fullSaturateQuant() { return Options::current().quantifiers.fullSaturateQuant; } |
817 |
98 |
inline int64_t fullSaturateLimit() { return Options::current().quantifiers.fullSaturateLimit; } |
818 |
112 |
inline bool fullSaturateQuantRd() { return Options::current().quantifiers.fullSaturateQuantRd; } |
819 |
13748 |
inline bool globalNegate() { return Options::current().quantifiers.globalNegate; } |
820 |
27193 |
inline bool hoElim() { return Options::current().quantifiers.hoElim; } |
821 |
673 |
inline bool hoElimStoreAx() { return Options::current().quantifiers.hoElimStoreAx; } |
822 |
192 |
inline bool hoMatching() { return Options::current().quantifiers.hoMatching; } |
823 |
324 |
inline bool hoMatchingVarArgPriority() { return Options::current().quantifiers.hoMatchingVarArgPriority; } |
824 |
908 |
inline bool hoMergeTermDb() { return Options::current().quantifiers.hoMergeTermDb; } |
825 |
6501 |
inline bool incrementTriggers() { return Options::current().quantifiers.incrementTriggers; } |
826 |
8128 |
inline bool instLevelInputOnly() { return Options::current().quantifiers.instLevelInputOnly; } |
827 |
176103 |
inline int64_t instMaxLevel() { return Options::current().quantifiers.instMaxLevel; } |
828 |
101467 |
inline int64_t instMaxRounds() { return Options::current().quantifiers.instMaxRounds; } |
829 |
171805 |
inline bool instNoEntail() { return Options::current().quantifiers.instNoEntail; } |
830 |
19706 |
inline int64_t instWhenPhase() { return Options::current().quantifiers.instWhenPhase; } |
831 |
12142 |
inline bool instWhenStrictInterleave() { return Options::current().quantifiers.instWhenStrictInterleave; } |
832 |
9853 |
inline bool instWhenTcFirst() { return Options::current().quantifiers.instWhenTcFirst; } |
833 |
462364 |
inline InstWhenMode instWhenMode() { return Options::current().quantifiers.instWhenMode; } |
834 |
5403 |
inline bool intWfInduction() { return Options::current().quantifiers.intWfInduction; } |
835 |
213210 |
inline bool iteDtTesterSplitQuant() { return Options::current().quantifiers.iteDtTesterSplitQuant; } |
836 |
307085 |
inline IteLiftQuantMode iteLiftQuant() { return Options::current().quantifiers.iteLiftQuant; } |
837 |
8707 |
inline LiteralMatchMode literalMatchMode() { return Options::current().quantifiers.literalMatchMode; } |
838 |
9853 |
inline bool macrosQuant() { return Options::current().quantifiers.macrosQuant; } |
839 |
46 |
inline MacrosQuantMode macrosQuantMode() { return Options::current().quantifiers.macrosQuantMode; } |
840 |
6921 |
inline bool mbqiInterleave() { return Options::current().quantifiers.mbqiInterleave; } |
841 |
5788 |
inline bool fmfOneInstPerRound() { return Options::current().quantifiers.fmfOneInstPerRound; } |
842 |
41443 |
inline MbqiMode mbqiMode() { return Options::current().quantifiers.mbqiMode; } |
843 |
1258 |
inline bool miniscopeQuant() { return Options::current().quantifiers.miniscopeQuant; } |
844 |
1227 |
inline bool miniscopeQuantFreeVar() { return Options::current().quantifiers.miniscopeQuantFreeVar; } |
845 |
1220 |
inline bool multiTriggerCache() { return Options::current().quantifiers.multiTriggerCache; } |
846 |
18820 |
inline bool multiTriggerLinear() { return Options::current().quantifiers.multiTriggerLinear; } |
847 |
9007 |
inline bool multiTriggerPriority() { return Options::current().quantifiers.multiTriggerPriority; } |
848 |
12954 |
inline bool multiTriggerWhenSingle() { return Options::current().quantifiers.multiTriggerWhenSingle; } |
849 |
36425 |
inline bool partialTriggers() { return Options::current().quantifiers.partialTriggers; } |
850 |
6763 |
inline bool poolInst() { return Options::current().quantifiers.poolInst; } |
851 |
91399 |
inline bool preSkolemQuant() { return Options::current().quantifiers.preSkolemQuant; } |
852 |
14 |
inline bool preSkolemQuantAgg() { return Options::current().quantifiers.preSkolemQuantAgg; } |
853 |
162 |
inline bool preSkolemQuantNested() { return Options::current().quantifiers.preSkolemQuantNested; } |
854 |
1096 |
inline bool prenexQuantUser() { return Options::current().quantifiers.prenexQuantUser; } |
855 |
406237 |
inline PrenexQuantMode prenexQuant() { return Options::current().quantifiers.prenexQuant; } |
856 |
55203 |
inline bool purifyTriggers() { return Options::current().quantifiers.purifyTriggers; } |
857 |
828 |
inline bool qcfAllConflict() { return Options::current().quantifiers.qcfAllConflict; } |
858 |
17150 |
inline bool qcfEagerCheckRd() { return Options::current().quantifiers.qcfEagerCheckRd; } |
859 |
614766 |
inline bool qcfEagerTest() { return Options::current().quantifiers.qcfEagerTest; } |
860 |
3503 |
inline bool qcfNestedConflict() { return Options::current().quantifiers.qcfNestedConflict; } |
861 |
17150 |
inline bool qcfSkipRd() { return Options::current().quantifiers.qcfSkipRd; } |
862 |
101884 |
inline bool qcfTConstraint() { return Options::current().quantifiers.qcfTConstraint; } |
863 |
374267 |
inline bool qcfVoExp() { return Options::current().quantifiers.qcfVoExp; } |
864 |
6763 |
inline bool quantAlphaEquiv() { return Options::current().quantifiers.quantAlphaEquiv; } |
865 |
67005 |
inline bool quantConflictFind() { return Options::current().quantifiers.quantConflictFind; } |
866 |
16471 |
inline QcfMode qcfMode() { return Options::current().quantifiers.qcfMode; } |
867 |
60238 |
inline QcfWhenMode qcfWhenMode() { return Options::current().quantifiers.qcfWhenMode; } |
868 |
15867 |
inline QuantDSplitMode quantDynamicSplit() { return Options::current().quantifiers.quantDynamicSplit; } |
869 |
10337 |
inline bool quantFunWellDefined() { return Options::current().quantifiers.quantFunWellDefined; } |
870 |
|
inline bool quantInduction() { return Options::current().quantifiers.quantInduction; } |
871 |
119948 |
inline QuantRepMode quantRepMode() { return Options::current().quantifiers.quantRepMode; } |
872 |
42508 |
inline bool quantSplit() { return Options::current().quantifiers.quantSplit; } |
873 |
67840 |
inline bool registerQuantBodyTerms() { return Options::current().quantifiers.registerQuantBodyTerms; } |
874 |
58986 |
inline bool relationalTriggers() { return Options::current().quantifiers.relationalTriggers; } |
875 |
27728 |
inline bool relevantTriggers() { return Options::current().quantifiers.relevantTriggers; } |
876 |
22735 |
inline bool strictTriggers() { return Options::current().quantifiers.strictTriggers; } |
877 |
31507 |
inline bool sygus() { return Options::current().quantifiers.sygus; } |
878 |
16 |
inline uint64_t sygusActiveGenEnumConsts() { return Options::current().quantifiers.sygusActiveGenEnumConsts; } |
879 |
1062 |
inline SygusActiveGenMode sygusActiveGenMode() { return Options::current().quantifiers.sygusActiveGenMode; } |
880 |
331 |
inline bool sygusAddConstGrammar() { return Options::current().quantifiers.sygusAddConstGrammar; } |
881 |
331 |
inline bool sygusArgRelevant() { return Options::current().quantifiers.sygusArgRelevant; } |
882 |
31 |
inline bool sygusInvAutoUnfold() { return Options::current().quantifiers.sygusInvAutoUnfold; } |
883 |
14 |
inline bool sygusBoolIteReturnConst() { return Options::current().quantifiers.sygusBoolIteReturnConst; } |
884 |
1151 |
inline bool sygusCoreConnective() { return Options::current().quantifiers.sygusCoreConnective; } |
885 |
8 |
inline bool sygusConstRepairAbort() { return Options::current().quantifiers.sygusConstRepairAbort; } |
886 |
113508 |
inline bool sygusEvalOpt() { return Options::current().quantifiers.sygusEvalOpt; } |
887 |
363980 |
inline bool sygusEvalUnfold() { return Options::current().quantifiers.sygusEvalUnfold; } |
888 |
11618 |
inline bool sygusEvalUnfoldBool() { return Options::current().quantifiers.sygusEvalUnfoldBool; } |
889 |
|
inline uint64_t sygusExprMinerCheckTimeout() { return Options::current().quantifiers.sygusExprMinerCheckTimeout; } |
890 |
274576 |
inline bool sygusExtRew() { return Options::current().quantifiers.sygusExtRew; } |
891 |
21 |
inline bool sygusFilterSolRevSubsume() { return Options::current().quantifiers.sygusFilterSolRevSubsume; } |
892 |
71 |
inline SygusFilterSolMode sygusFilterSolMode() { return Options::current().quantifiers.sygusFilterSolMode; } |
893 |
666 |
inline SygusGrammarConsMode sygusGrammarConsMode() { return Options::current().quantifiers.sygusGrammarConsMode; } |
894 |
450 |
inline bool sygusGrammarNorm() { return Options::current().quantifiers.sygusGrammarNorm; } |
895 |
10212 |
inline bool sygusInference() { return Options::current().quantifiers.sygusInference; } |
896 |
23593 |
inline bool sygusInst() { return Options::current().quantifiers.sygusInst; } |
897 |
84 |
inline SygusInstMode sygusInstMode() { return Options::current().quantifiers.sygusInstMode; } |
898 |
117 |
inline SygusInstScope sygusInstScope() { return Options::current().quantifiers.sygusInstScope; } |
899 |
132 |
inline SygusInstTermSelMode sygusInstTermSel() { return Options::current().quantifiers.sygusInstTermSel; } |
900 |
80 |
inline bool sygusInvTemplWhenSyntax() { return Options::current().quantifiers.sygusInvTemplWhenSyntax; } |
901 |
331 |
inline SygusInvTemplMode sygusInvTemplMode() { return Options::current().quantifiers.sygusInvTemplMode; } |
902 |
465 |
inline bool sygusMinGrammar() { return Options::current().quantifiers.sygusMinGrammar; } |
903 |
240 |
inline bool sygusUnifPbe() { return Options::current().quantifiers.sygusUnifPbe; } |
904 |
4266 |
inline bool sygusPbeMultiFair() { return Options::current().quantifiers.sygusPbeMultiFair; } |
905 |
489 |
inline int64_t sygusPbeMultiFairDiff() { return Options::current().quantifiers.sygusPbeMultiFairDiff; } |
906 |
670 |
inline bool sygusQePreproc() { return Options::current().quantifiers.sygusQePreproc; } |
907 |
69 |
inline bool sygusQueryGen() { return Options::current().quantifiers.sygusQueryGen; } |
908 |
|
inline bool sygusQueryGenCheck() { return Options::current().quantifiers.sygusQueryGenCheck; } |
909 |
|
inline SygusQueryDumpFilesMode sygusQueryGenDumpFiles() { return Options::current().quantifiers.sygusQueryGenDumpFiles; } |
910 |
|
inline uint64_t sygusQueryGenThresh() { return Options::current().quantifiers.sygusQueryGenThresh; } |
911 |
203872 |
inline bool sygusRecFun() { return Options::current().quantifiers.sygusRecFun; } |
912 |
5325 |
inline uint64_t sygusRecFunEvalLimit() { return Options::current().quantifiers.sygusRecFunEvalLimit; } |
913 |
39971 |
inline bool sygusRepairConst() { return Options::current().quantifiers.sygusRepairConst; } |
914 |
114 |
inline uint64_t sygusRepairConstTimeout() { return Options::current().quantifiers.sygusRepairConstTimeout; } |
915 |
|
inline bool sygusRew() { return Options::current().quantifiers.sygusRew; } |
916 |
1077 |
inline bool sygusRewSynth() { return Options::current().quantifiers.sygusRewSynth; } |
917 |
9 |
inline bool sygusRewSynthAccel() { return Options::current().quantifiers.sygusRewSynthAccel; } |
918 |
9 |
inline bool sygusRewSynthCheck() { return Options::current().quantifiers.sygusRewSynthCheck; } |
919 |
804 |
inline bool sygusRewSynthFilterCong() { return Options::current().quantifiers.sygusRewSynthFilterCong; } |
920 |
226 |
inline bool sygusRewSynthFilterMatch() { return Options::current().quantifiers.sygusRewSynthFilterMatch; } |
921 |
458 |
inline bool sygusRewSynthFilterNonLinear() { return Options::current().quantifiers.sygusRewSynthFilterNonLinear; } |
922 |
687 |
inline bool sygusRewSynthFilterOrder() { return Options::current().quantifiers.sygusRewSynthFilterOrder; } |
923 |
10154 |
inline bool sygusRewSynthInput() { return Options::current().quantifiers.sygusRewSynthInput; } |
924 |
|
inline int64_t sygusRewSynthInputNVars() { return Options::current().quantifiers.sygusRewSynthInputNVars; } |
925 |
|
inline bool sygusRewSynthInputUseBool() { return Options::current().quantifiers.sygusRewSynthInputUseBool; } |
926 |
1008 |
inline bool sygusRewSynthRec() { return Options::current().quantifiers.sygusRewSynthRec; } |
927 |
60786 |
inline bool sygusRewVerify() { return Options::current().quantifiers.sygusRewVerify; } |
928 |
|
inline bool sygusRewVerifyAbort() { return Options::current().quantifiers.sygusRewVerifyAbort; } |
929 |
|
inline bool sygusSampleFpUniform() { return Options::current().quantifiers.sygusSampleFpUniform; } |
930 |
443503 |
inline bool sygusSampleGrammar() { return Options::current().quantifiers.sygusSampleGrammar; } |
931 |
23 |
inline int64_t sygusSamples() { return Options::current().quantifiers.sygusSamples; } |
932 |
235 |
inline bool cegqiSingleInvAbort() { return Options::current().quantifiers.cegqiSingleInvAbort; } |
933 |
|
inline bool cegqiSingleInvPartial() { return Options::current().quantifiers.cegqiSingleInvPartial; } |
934 |
24 |
inline int64_t cegqiSingleInvReconstructLimit() { return Options::current().quantifiers.cegqiSingleInvReconstructLimit; } |
935 |
224 |
inline CegqiSingleInvRconsMode cegqiSingleInvReconstruct() { return Options::current().quantifiers.cegqiSingleInvReconstruct; } |
936 |
|
inline bool cegqiSingleInvReconstructConst() { return Options::current().quantifiers.cegqiSingleInvReconstructConst; } |
937 |
569 |
inline CegqiSingleInvMode cegqiSingleInvMode() { return Options::current().quantifiers.cegqiSingleInvMode; } |
938 |
1405 |
inline bool sygusStream() { return Options::current().quantifiers.sygusStream; } |
939 |
79 |
inline bool sygusTemplEmbedGrammar() { return Options::current().quantifiers.sygusTemplEmbedGrammar; } |
940 |
|
inline bool sygusUnifCondIndNoRepeatSol() { return Options::current().quantifiers.sygusUnifCondIndNoRepeatSol; } |
941 |
2687 |
inline SygusUnifPiMode sygusUnifPi() { return Options::current().quantifiers.sygusUnifPi; } |
942 |
|
inline bool sygusUnifShuffleCond() { return Options::current().quantifiers.sygusUnifShuffleCond; } |
943 |
|
inline int64_t sygusVerifyInstMaxRounds() { return Options::current().quantifiers.sygusVerifyInstMaxRounds; } |
944 |
165454 |
inline bool termDbCd() { return Options::current().quantifiers.termDbCd; } |
945 |
4404159 |
inline TermDbMode termDbMode() { return Options::current().quantifiers.termDbMode; } |
946 |
26634 |
inline TriggerActiveSelMode triggerActiveSelMode() { return Options::current().quantifiers.triggerActiveSelMode; } |
947 |
6501 |
inline TriggerSelMode triggerSelMode() { return Options::current().quantifiers.triggerSelMode; } |
948 |
380903 |
inline UserPatMode userPatternsQuant() { return Options::current().quantifiers.userPatternsQuant; } |
949 |
524030 |
inline bool varElimQuant() { return Options::current().quantifiers.varElimQuant; } |
950 |
97172 |
inline bool varIneqElimQuant() { return Options::current().quantifiers.varIneqElimQuant; } |
951 |
|
// clang-format on |
952 |
|
|
953 |
|
namespace quantifiers |
954 |
|
{ |
955 |
|
// clang-format off |
956 |
|
static constexpr const char* aggressiveMiniscopeQuant__name = "ag-miniscope-quant"; |
957 |
|
static constexpr const char* cegisSample__name = "cegis-sample"; |
958 |
|
static constexpr const char* cegqi__name = "cegqi"; |
959 |
|
static constexpr const char* cegqiAll__name = "cegqi-all"; |
960 |
|
static constexpr const char* cegqiBv__name = "cegqi-bv"; |
961 |
|
static constexpr const char* cegqiBvConcInv__name = "cegqi-bv-concat-inv"; |
962 |
|
static constexpr const char* cegqiBvIneqMode__name = "cegqi-bv-ineq"; |
963 |
|
static constexpr const char* cegqiBvInterleaveValue__name = "cegqi-bv-interleave-value"; |
964 |
|
static constexpr const char* cegqiBvLinearize__name = "cegqi-bv-linear"; |
965 |
|
static constexpr const char* cegqiBvRmExtract__name = "cegqi-bv-rm-extract"; |
966 |
|
static constexpr const char* cegqiBvSolveNl__name = "cegqi-bv-solve-nl"; |
967 |
|
static constexpr const char* cegqiFullEffort__name = "cegqi-full"; |
968 |
|
static constexpr const char* cegqiInnermost__name = "cegqi-innermost"; |
969 |
|
static constexpr const char* cegqiMidpoint__name = "cegqi-midpoint"; |
970 |
|
static constexpr const char* cegqiMinBounds__name = "cegqi-min-bounds"; |
971 |
|
static constexpr const char* cegqiModel__name = "cegqi-model"; |
972 |
|
static constexpr const char* cegqiMultiInst__name = "cegqi-multi-inst"; |
973 |
|
static constexpr const char* cegqiNestedQE__name = "cegqi-nested-qe"; |
974 |
|
static constexpr const char* cegqiNopt__name = "cegqi-nopt"; |
975 |
|
static constexpr const char* cegqiRepeatLit__name = "cegqi-repeat-lit"; |
976 |
|
static constexpr const char* cegqiRoundUpLowerLia__name = "cegqi-round-up-lia"; |
977 |
|
static constexpr const char* cegqiSat__name = "cegqi-sat"; |
978 |
|
static constexpr const char* cegqiUseInfInt__name = "cegqi-use-inf-int"; |
979 |
|
static constexpr const char* cegqiUseInfReal__name = "cegqi-use-inf-real"; |
980 |
|
static constexpr const char* condVarSplitQuantAgg__name = "cond-var-split-agg-quant"; |
981 |
|
static constexpr const char* condVarSplitQuant__name = "cond-var-split-quant"; |
982 |
|
static constexpr const char* conjectureFilterActiveTerms__name = "conjecture-filter-active-terms"; |
983 |
|
static constexpr const char* conjectureFilterCanonical__name = "conjecture-filter-canonical"; |
984 |
|
static constexpr const char* conjectureFilterModel__name = "conjecture-filter-model"; |
985 |
|
static constexpr const char* conjectureGen__name = "conjecture-gen"; |
986 |
|
static constexpr const char* conjectureGenGtEnum__name = "conjecture-gen-gt-enum"; |
987 |
|
static constexpr const char* conjectureGenMaxDepth__name = "conjecture-gen-max-depth"; |
988 |
|
static constexpr const char* conjectureGenPerRound__name = "conjecture-gen-per-round"; |
989 |
|
static constexpr const char* conjectureUeeIntro__name = "conjecture-gen-uee-intro"; |
990 |
|
static constexpr const char* conjectureNoFilter__name = "conjecture-no-filter"; |
991 |
|
static constexpr const char* dtStcInduction__name = "dt-stc-ind"; |
992 |
|
static constexpr const char* dtVarExpandQuant__name = "dt-var-exp-quant"; |
993 |
|
static constexpr const char* eMatching__name = "e-matching"; |
994 |
|
static constexpr const char* elimTautQuant__name = "elim-taut-quant"; |
995 |
|
static constexpr const char* extRewriteQuant__name = "ext-rewrite-quant"; |
996 |
|
static constexpr const char* finiteModelFind__name = "finite-model-find"; |
997 |
|
static constexpr const char* fmfBound__name = "fmf-bound"; |
998 |
|
static constexpr const char* fmfBoundInt__name = "fmf-bound-int"; |
999 |
|
static constexpr const char* fmfBoundLazy__name = "fmf-bound-lazy"; |
1000 |
|
static constexpr const char* fmfFmcSimple__name = "fmf-fmc-simple"; |
1001 |
|
static constexpr const char* fmfFreshDistConst__name = "fmf-fresh-dc"; |
1002 |
|
static constexpr const char* fmfFunWellDefined__name = "fmf-fun"; |
1003 |
|
static constexpr const char* fmfFunWellDefinedRelevant__name = "fmf-fun-rlv"; |
1004 |
|
static constexpr const char* fmfInstEngine__name = "fmf-inst-engine"; |
1005 |
|
static constexpr const char* fmfTypeCompletionThresh__name = "fmf-type-completion-thresh"; |
1006 |
|
static constexpr const char* fullSaturateInterleave__name = "fs-interleave"; |
1007 |
|
static constexpr const char* fullSaturateStratify__name = "fs-stratify"; |
1008 |
|
static constexpr const char* fullSaturateSum__name = "fs-sum"; |
1009 |
|
static constexpr const char* fullSaturateQuant__name = "full-saturate-quant"; |
1010 |
|
static constexpr const char* fullSaturateLimit__name = "full-saturate-quant-limit"; |
1011 |
|
static constexpr const char* fullSaturateQuantRd__name = "full-saturate-quant-rd"; |
1012 |
|
static constexpr const char* globalNegate__name = "global-negate"; |
1013 |
|
static constexpr const char* hoElim__name = "ho-elim"; |
1014 |
|
static constexpr const char* hoElimStoreAx__name = "ho-elim-store-ax"; |
1015 |
|
static constexpr const char* hoMatching__name = "ho-matching"; |
1016 |
|
static constexpr const char* hoMatchingVarArgPriority__name = "ho-matching-var-priority"; |
1017 |
|
static constexpr const char* hoMergeTermDb__name = "ho-merge-term-db"; |
1018 |
|
static constexpr const char* incrementTriggers__name = "increment-triggers"; |
1019 |
|
static constexpr const char* instLevelInputOnly__name = "inst-level-input-only"; |
1020 |
|
static constexpr const char* instMaxLevel__name = "inst-max-level"; |
1021 |
|
static constexpr const char* instMaxRounds__name = "inst-max-rounds"; |
1022 |
|
static constexpr const char* instNoEntail__name = "inst-no-entail"; |
1023 |
|
static constexpr const char* instWhenPhase__name = "inst-when-phase"; |
1024 |
|
static constexpr const char* instWhenStrictInterleave__name = "inst-when-strict-interleave"; |
1025 |
|
static constexpr const char* instWhenTcFirst__name = "inst-when-tc-first"; |
1026 |
|
static constexpr const char* instWhenMode__name = "inst-when"; |
1027 |
|
static constexpr const char* intWfInduction__name = "int-wf-ind"; |
1028 |
|
static constexpr const char* iteDtTesterSplitQuant__name = "ite-dtt-split-quant"; |
1029 |
|
static constexpr const char* iteLiftQuant__name = "ite-lift-quant"; |
1030 |
|
static constexpr const char* literalMatchMode__name = "literal-matching"; |
1031 |
|
static constexpr const char* macrosQuant__name = "macros-quant"; |
1032 |
|
static constexpr const char* macrosQuantMode__name = "macros-quant-mode"; |
1033 |
|
static constexpr const char* mbqiInterleave__name = "mbqi-interleave"; |
1034 |
|
static constexpr const char* fmfOneInstPerRound__name = "mbqi-one-inst-per-round"; |
1035 |
|
static constexpr const char* mbqiMode__name = "mbqi"; |
1036 |
|
static constexpr const char* miniscopeQuant__name = "miniscope-quant"; |
1037 |
|
static constexpr const char* miniscopeQuantFreeVar__name = "miniscope-quant-fv"; |
1038 |
|
static constexpr const char* multiTriggerCache__name = "multi-trigger-cache"; |
1039 |
|
static constexpr const char* multiTriggerLinear__name = "multi-trigger-linear"; |
1040 |
|
static constexpr const char* multiTriggerPriority__name = "multi-trigger-priority"; |
1041 |
|
static constexpr const char* multiTriggerWhenSingle__name = "multi-trigger-when-single"; |
1042 |
|
static constexpr const char* partialTriggers__name = "partial-triggers"; |
1043 |
|
static constexpr const char* poolInst__name = "pool-inst"; |
1044 |
|
static constexpr const char* preSkolemQuant__name = "pre-skolem-quant"; |
1045 |
|
static constexpr const char* preSkolemQuantAgg__name = "pre-skolem-quant-agg"; |
1046 |
|
static constexpr const char* preSkolemQuantNested__name = "pre-skolem-quant-nested"; |
1047 |
|
static constexpr const char* prenexQuantUser__name = "prenex-quant-user"; |
1048 |
|
static constexpr const char* prenexQuant__name = "prenex-quant"; |
1049 |
|
static constexpr const char* purifyTriggers__name = "purify-triggers"; |
1050 |
|
static constexpr const char* qcfAllConflict__name = "qcf-all-conflict"; |
1051 |
|
static constexpr const char* qcfEagerCheckRd__name = "qcf-eager-check-rd"; |
1052 |
|
static constexpr const char* qcfEagerTest__name = "qcf-eager-test"; |
1053 |
|
static constexpr const char* qcfNestedConflict__name = "qcf-nested-conflict"; |
1054 |
|
static constexpr const char* qcfSkipRd__name = "qcf-skip-rd"; |
1055 |
|
static constexpr const char* qcfTConstraint__name = "qcf-tconstraint"; |
1056 |
|
static constexpr const char* qcfVoExp__name = "qcf-vo-exp"; |
1057 |
|
static constexpr const char* quantAlphaEquiv__name = "quant-alpha-equiv"; |
1058 |
|
static constexpr const char* quantConflictFind__name = "quant-cf"; |
1059 |
|
static constexpr const char* qcfMode__name = "quant-cf-mode"; |
1060 |
|
static constexpr const char* qcfWhenMode__name = "quant-cf-when"; |
1061 |
|
static constexpr const char* quantDynamicSplit__name = "quant-dsplit-mode"; |
1062 |
|
static constexpr const char* quantFunWellDefined__name = "quant-fun-wd"; |
1063 |
|
static constexpr const char* quantInduction__name = "quant-ind"; |
1064 |
|
static constexpr const char* quantRepMode__name = "quant-rep-mode"; |
1065 |
|
static constexpr const char* quantSplit__name = "quant-split"; |
1066 |
|
static constexpr const char* registerQuantBodyTerms__name = "register-quant-body-terms"; |
1067 |
|
static constexpr const char* relationalTriggers__name = "relational-triggers"; |
1068 |
|
static constexpr const char* relevantTriggers__name = "relevant-triggers"; |
1069 |
|
static constexpr const char* strictTriggers__name = "strict-triggers"; |
1070 |
|
static constexpr const char* sygus__name = "sygus"; |
1071 |
|
static constexpr const char* sygusActiveGenEnumConsts__name = "sygus-active-gen-cfactor"; |
1072 |
|
static constexpr const char* sygusActiveGenMode__name = "sygus-active-gen"; |
1073 |
|
static constexpr const char* sygusAddConstGrammar__name = "sygus-add-const-grammar"; |
1074 |
|
static constexpr const char* sygusArgRelevant__name = "sygus-arg-relevant"; |
1075 |
|
static constexpr const char* sygusInvAutoUnfold__name = "sygus-auto-unfold"; |
1076 |
|
static constexpr const char* sygusBoolIteReturnConst__name = "sygus-bool-ite-return-const"; |
1077 |
|
static constexpr const char* sygusCoreConnective__name = "sygus-core-connective"; |
1078 |
|
static constexpr const char* sygusConstRepairAbort__name = "sygus-crepair-abort"; |
1079 |
|
static constexpr const char* sygusEvalOpt__name = "sygus-eval-opt"; |
1080 |
|
static constexpr const char* sygusEvalUnfold__name = "sygus-eval-unfold"; |
1081 |
|
static constexpr const char* sygusEvalUnfoldBool__name = "sygus-eval-unfold-bool"; |
1082 |
|
static constexpr const char* sygusExprMinerCheckTimeout__name = "sygus-expr-miner-check-timeout"; |
1083 |
|
static constexpr const char* sygusExtRew__name = "sygus-ext-rew"; |
1084 |
|
static constexpr const char* sygusFilterSolRevSubsume__name = "sygus-filter-sol-rev"; |
1085 |
|
static constexpr const char* sygusFilterSolMode__name = "sygus-filter-sol"; |
1086 |
|
static constexpr const char* sygusGrammarConsMode__name = "sygus-grammar-cons"; |
1087 |
|
static constexpr const char* sygusGrammarNorm__name = "sygus-grammar-norm"; |
1088 |
|
static constexpr const char* sygusInference__name = "sygus-inference"; |
1089 |
|
static constexpr const char* sygusInst__name = "sygus-inst"; |
1090 |
|
static constexpr const char* sygusInstMode__name = "sygus-inst-mode"; |
1091 |
|
static constexpr const char* sygusInstScope__name = "sygus-inst-scope"; |
1092 |
|
static constexpr const char* sygusInstTermSel__name = "sygus-inst-term-sel"; |
1093 |
|
static constexpr const char* sygusInvTemplWhenSyntax__name = "sygus-inv-templ-when-sg"; |
1094 |
|
static constexpr const char* sygusInvTemplMode__name = "sygus-inv-templ"; |
1095 |
|
static constexpr const char* sygusMinGrammar__name = "sygus-min-grammar"; |
1096 |
|
static constexpr const char* sygusUnifPbe__name = "sygus-pbe"; |
1097 |
|
static constexpr const char* sygusPbeMultiFair__name = "sygus-pbe-multi-fair"; |
1098 |
|
static constexpr const char* sygusPbeMultiFairDiff__name = "sygus-pbe-multi-fair-diff"; |
1099 |
|
static constexpr const char* sygusQePreproc__name = "sygus-qe-preproc"; |
1100 |
|
static constexpr const char* sygusQueryGen__name = "sygus-query-gen"; |
1101 |
|
static constexpr const char* sygusQueryGenCheck__name = "sygus-query-gen-check"; |
1102 |
|
static constexpr const char* sygusQueryGenDumpFiles__name = "sygus-query-gen-dump-files"; |
1103 |
|
static constexpr const char* sygusQueryGenThresh__name = "sygus-query-gen-thresh"; |
1104 |
|
static constexpr const char* sygusRecFun__name = "sygus-rec-fun"; |
1105 |
|
static constexpr const char* sygusRecFunEvalLimit__name = "sygus-rec-fun-eval-limit"; |
1106 |
|
static constexpr const char* sygusRepairConst__name = "sygus-repair-const"; |
1107 |
|
static constexpr const char* sygusRepairConstTimeout__name = "sygus-repair-const-timeout"; |
1108 |
|
static constexpr const char* sygusRew__name = "sygus-rr"; |
1109 |
|
static constexpr const char* sygusRewSynth__name = "sygus-rr-synth"; |
1110 |
|
static constexpr const char* sygusRewSynthAccel__name = "sygus-rr-synth-accel"; |
1111 |
|
static constexpr const char* sygusRewSynthCheck__name = "sygus-rr-synth-check"; |
1112 |
|
static constexpr const char* sygusRewSynthFilterCong__name = "sygus-rr-synth-filter-cong"; |
1113 |
|
static constexpr const char* sygusRewSynthFilterMatch__name = "sygus-rr-synth-filter-match"; |
1114 |
|
static constexpr const char* sygusRewSynthFilterNonLinear__name = "sygus-rr-synth-filter-nl"; |
1115 |
|
static constexpr const char* sygusRewSynthFilterOrder__name = "sygus-rr-synth-filter-order"; |
1116 |
|
static constexpr const char* sygusRewSynthInput__name = "sygus-rr-synth-input"; |
1117 |
|
static constexpr const char* sygusRewSynthInputNVars__name = "sygus-rr-synth-input-nvars"; |
1118 |
|
static constexpr const char* sygusRewSynthInputUseBool__name = "sygus-rr-synth-input-use-bool"; |
1119 |
|
static constexpr const char* sygusRewSynthRec__name = "sygus-rr-synth-rec"; |
1120 |
|
static constexpr const char* sygusRewVerify__name = "sygus-rr-verify"; |
1121 |
|
static constexpr const char* sygusRewVerifyAbort__name = "sygus-rr-verify-abort"; |
1122 |
|
static constexpr const char* sygusSampleFpUniform__name = "sygus-sample-fp-uniform"; |
1123 |
|
static constexpr const char* sygusSampleGrammar__name = "sygus-sample-grammar"; |
1124 |
|
static constexpr const char* sygusSamples__name = "sygus-samples"; |
1125 |
|
static constexpr const char* cegqiSingleInvAbort__name = "sygus-si-abort"; |
1126 |
|
static constexpr const char* cegqiSingleInvPartial__name = "sygus-si-partial"; |
1127 |
|
static constexpr const char* cegqiSingleInvReconstructLimit__name = "sygus-si-rcons-limit"; |
1128 |
|
static constexpr const char* cegqiSingleInvReconstruct__name = "sygus-si-rcons"; |
1129 |
|
static constexpr const char* cegqiSingleInvReconstructConst__name = "sygus-si-reconstruct-const"; |
1130 |
|
static constexpr const char* cegqiSingleInvMode__name = "sygus-si"; |
1131 |
|
static constexpr const char* sygusStream__name = "sygus-stream"; |
1132 |
|
static constexpr const char* sygusTemplEmbedGrammar__name = "sygus-templ-embed-grammar"; |
1133 |
|
static constexpr const char* sygusUnifCondIndNoRepeatSol__name = "sygus-unif-cond-independent-no-repeat-sol"; |
1134 |
|
static constexpr const char* sygusUnifPi__name = "sygus-unif-pi"; |
1135 |
|
static constexpr const char* sygusUnifShuffleCond__name = "sygus-unif-shuffle-cond"; |
1136 |
|
static constexpr const char* sygusVerifyInstMaxRounds__name = "sygus-verify-inst-max-rounds"; |
1137 |
|
static constexpr const char* termDbCd__name = "term-db-cd"; |
1138 |
|
static constexpr const char* termDbMode__name = "term-db-mode"; |
1139 |
|
static constexpr const char* triggerActiveSelMode__name = "trigger-active-sel"; |
1140 |
|
static constexpr const char* triggerSelMode__name = "trigger-sel"; |
1141 |
|
static constexpr const char* userPatternsQuant__name = "user-pat"; |
1142 |
|
static constexpr const char* varElimQuant__name = "var-elim-quant"; |
1143 |
|
static constexpr const char* varIneqElimQuant__name = "var-ineq-elim-quant"; |
1144 |
|
|
1145 |
|
void setDefaultAggressiveMiniscopeQuant(Options& opts, bool value);void setDefaultCegisSample(Options& opts, CegisSampleMode value);void setDefaultCegqi(Options& opts, bool value);void setDefaultCegqiAll(Options& opts, bool value);void setDefaultCegqiBv(Options& opts, bool value);void setDefaultCegqiBvConcInv(Options& opts, bool value);void setDefaultCegqiBvIneqMode(Options& opts, CegqiBvIneqMode value);void setDefaultCegqiBvInterleaveValue(Options& opts, bool value);void setDefaultCegqiBvLinearize(Options& opts, bool value);void setDefaultCegqiBvRmExtract(Options& opts, bool value);void setDefaultCegqiBvSolveNl(Options& opts, bool value);void setDefaultCegqiFullEffort(Options& opts, bool value);void setDefaultCegqiInnermost(Options& opts, bool value);void setDefaultCegqiMidpoint(Options& opts, bool value);void setDefaultCegqiMinBounds(Options& opts, bool value);void setDefaultCegqiModel(Options& opts, bool value);void setDefaultCegqiMultiInst(Options& opts, bool value);void setDefaultCegqiNestedQE(Options& opts, bool value);void setDefaultCegqiNopt(Options& opts, bool value);void setDefaultCegqiRepeatLit(Options& opts, bool value);void setDefaultCegqiRoundUpLowerLia(Options& opts, bool value);void setDefaultCegqiSat(Options& opts, bool value);void setDefaultCegqiUseInfInt(Options& opts, bool value);void setDefaultCegqiUseInfReal(Options& opts, bool value);void setDefaultCondVarSplitQuantAgg(Options& opts, bool value);void setDefaultCondVarSplitQuant(Options& opts, bool value);void setDefaultConjectureFilterActiveTerms(Options& opts, bool value);void setDefaultConjectureFilterCanonical(Options& opts, bool value);void setDefaultConjectureFilterModel(Options& opts, bool value);void setDefaultConjectureGen(Options& opts, bool value);void setDefaultConjectureGenGtEnum(Options& opts, int64_t value);void setDefaultConjectureGenMaxDepth(Options& opts, int64_t value);void setDefaultConjectureGenPerRound(Options& opts, int64_t value);void setDefaultConjectureUeeIntro(Options& opts, bool value);void setDefaultConjectureNoFilter(Options& opts, bool value);void setDefaultDtStcInduction(Options& opts, bool value);void setDefaultDtVarExpandQuant(Options& opts, bool value);void setDefaultEMatching(Options& opts, bool value);void setDefaultElimTautQuant(Options& opts, bool value);void setDefaultExtRewriteQuant(Options& opts, bool value);void setDefaultFiniteModelFind(Options& opts, bool value);void setDefaultFmfBound(Options& opts, bool value);void setDefaultFmfBoundInt(Options& opts, bool value);void setDefaultFmfBoundLazy(Options& opts, bool value);void setDefaultFmfFmcSimple(Options& opts, bool value);void setDefaultFmfFreshDistConst(Options& opts, bool value);void setDefaultFmfFunWellDefined(Options& opts, bool value);void setDefaultFmfFunWellDefinedRelevant(Options& opts, bool value);void setDefaultFmfInstEngine(Options& opts, bool value);void setDefaultFmfTypeCompletionThresh(Options& opts, int64_t value);void setDefaultFullSaturateInterleave(Options& opts, bool value);void setDefaultFullSaturateStratify(Options& opts, bool value);void setDefaultFullSaturateSum(Options& opts, bool value);void setDefaultFullSaturateQuant(Options& opts, bool value);void setDefaultFullSaturateLimit(Options& opts, int64_t value);void setDefaultFullSaturateQuantRd(Options& opts, bool value);void setDefaultGlobalNegate(Options& opts, bool value);void setDefaultHoElim(Options& opts, bool value);void setDefaultHoElimStoreAx(Options& opts, bool value);void setDefaultHoMatching(Options& opts, bool value);void setDefaultHoMatchingVarArgPriority(Options& opts, bool value);void setDefaultHoMergeTermDb(Options& opts, bool value);void setDefaultIncrementTriggers(Options& opts, bool value);void setDefaultInstLevelInputOnly(Options& opts, bool value);void setDefaultInstMaxLevel(Options& opts, int64_t value);void setDefaultInstMaxRounds(Options& opts, int64_t value);void setDefaultInstNoEntail(Options& opts, bool value);void setDefaultInstWhenPhase(Options& opts, int64_t value);void setDefaultInstWhenStrictInterleave(Options& opts, bool value);void setDefaultInstWhenTcFirst(Options& opts, bool value);void setDefaultInstWhenMode(Options& opts, InstWhenMode value);void setDefaultIntWfInduction(Options& opts, bool value);void setDefaultIteDtTesterSplitQuant(Options& opts, bool value);void setDefaultIteLiftQuant(Options& opts, IteLiftQuantMode value);void setDefaultLiteralMatchMode(Options& opts, LiteralMatchMode value);void setDefaultMacrosQuant(Options& opts, bool value);void setDefaultMacrosQuantMode(Options& opts, MacrosQuantMode value);void setDefaultMbqiInterleave(Options& opts, bool value);void setDefaultFmfOneInstPerRound(Options& opts, bool value);void setDefaultMbqiMode(Options& opts, MbqiMode value);void setDefaultMiniscopeQuant(Options& opts, bool value);void setDefaultMiniscopeQuantFreeVar(Options& opts, bool value);void setDefaultMultiTriggerCache(Options& opts, bool value);void setDefaultMultiTriggerLinear(Options& opts, bool value);void setDefaultMultiTriggerPriority(Options& opts, bool value);void setDefaultMultiTriggerWhenSingle(Options& opts, bool value);void setDefaultPartialTriggers(Options& opts, bool value);void setDefaultPoolInst(Options& opts, bool value);void setDefaultPreSkolemQuant(Options& opts, bool value);void setDefaultPreSkolemQuantAgg(Options& opts, bool value);void setDefaultPreSkolemQuantNested(Options& opts, bool value);void setDefaultPrenexQuantUser(Options& opts, bool value);void setDefaultPrenexQuant(Options& opts, PrenexQuantMode value);void setDefaultPurifyTriggers(Options& opts, bool value);void setDefaultQcfAllConflict(Options& opts, bool value);void setDefaultQcfEagerCheckRd(Options& opts, bool value);void setDefaultQcfEagerTest(Options& opts, bool value);void setDefaultQcfNestedConflict(Options& opts, bool value);void setDefaultQcfSkipRd(Options& opts, bool value);void setDefaultQcfTConstraint(Options& opts, bool value);void setDefaultQcfVoExp(Options& opts, bool value);void setDefaultQuantAlphaEquiv(Options& opts, bool value);void setDefaultQuantConflictFind(Options& opts, bool value);void setDefaultQcfMode(Options& opts, QcfMode value);void setDefaultQcfWhenMode(Options& opts, QcfWhenMode value);void setDefaultQuantDynamicSplit(Options& opts, QuantDSplitMode value);void setDefaultQuantFunWellDefined(Options& opts, bool value);void setDefaultQuantInduction(Options& opts, bool value);void setDefaultQuantRepMode(Options& opts, QuantRepMode value);void setDefaultQuantSplit(Options& opts, bool value);void setDefaultRegisterQuantBodyTerms(Options& opts, bool value);void setDefaultRelationalTriggers(Options& opts, bool value);void setDefaultRelevantTriggers(Options& opts, bool value);void setDefaultStrictTriggers(Options& opts, bool value);void setDefaultSygus(Options& opts, bool value);void setDefaultSygusActiveGenEnumConsts(Options& opts, uint64_t value);void setDefaultSygusActiveGenMode(Options& opts, SygusActiveGenMode value);void setDefaultSygusAddConstGrammar(Options& opts, bool value);void setDefaultSygusArgRelevant(Options& opts, bool value);void setDefaultSygusInvAutoUnfold(Options& opts, bool value);void setDefaultSygusBoolIteReturnConst(Options& opts, bool value);void setDefaultSygusCoreConnective(Options& opts, bool value);void setDefaultSygusConstRepairAbort(Options& opts, bool value);void setDefaultSygusEvalOpt(Options& opts, bool value);void setDefaultSygusEvalUnfold(Options& opts, bool value);void setDefaultSygusEvalUnfoldBool(Options& opts, bool value);void setDefaultSygusExprMinerCheckTimeout(Options& opts, uint64_t value);void setDefaultSygusExtRew(Options& opts, bool value);void setDefaultSygusFilterSolRevSubsume(Options& opts, bool value);void setDefaultSygusFilterSolMode(Options& opts, SygusFilterSolMode value);void setDefaultSygusGrammarConsMode(Options& opts, SygusGrammarConsMode value);void setDefaultSygusGrammarNorm(Options& opts, bool value);void setDefaultSygusInference(Options& opts, bool value);void setDefaultSygusInst(Options& opts, bool value);void setDefaultSygusInstMode(Options& opts, SygusInstMode value);void setDefaultSygusInstScope(Options& opts, SygusInstScope value);void setDefaultSygusInstTermSel(Options& opts, SygusInstTermSelMode value);void setDefaultSygusInvTemplWhenSyntax(Options& opts, bool value);void setDefaultSygusInvTemplMode(Options& opts, SygusInvTemplMode value);void setDefaultSygusMinGrammar(Options& opts, bool value);void setDefaultSygusUnifPbe(Options& opts, bool value);void setDefaultSygusPbeMultiFair(Options& opts, bool value);void setDefaultSygusPbeMultiFairDiff(Options& opts, int64_t value);void setDefaultSygusQePreproc(Options& opts, bool value);void setDefaultSygusQueryGen(Options& opts, bool value);void setDefaultSygusQueryGenCheck(Options& opts, bool value);void setDefaultSygusQueryGenDumpFiles(Options& opts, SygusQueryDumpFilesMode value);void setDefaultSygusQueryGenThresh(Options& opts, uint64_t value);void setDefaultSygusRecFun(Options& opts, bool value);void setDefaultSygusRecFunEvalLimit(Options& opts, uint64_t value);void setDefaultSygusRepairConst(Options& opts, bool value);void setDefaultSygusRepairConstTimeout(Options& opts, uint64_t value);void setDefaultSygusRew(Options& opts, bool value);void setDefaultSygusRewSynth(Options& opts, bool value);void setDefaultSygusRewSynthAccel(Options& opts, bool value);void setDefaultSygusRewSynthCheck(Options& opts, bool value);void setDefaultSygusRewSynthFilterCong(Options& opts, bool value);void setDefaultSygusRewSynthFilterMatch(Options& opts, bool value);void setDefaultSygusRewSynthFilterNonLinear(Options& opts, bool value);void setDefaultSygusRewSynthFilterOrder(Options& opts, bool value);void setDefaultSygusRewSynthInput(Options& opts, bool value);void setDefaultSygusRewSynthInputNVars(Options& opts, int64_t value);void setDefaultSygusRewSynthInputUseBool(Options& opts, bool value);void setDefaultSygusRewSynthRec(Options& opts, bool value);void setDefaultSygusRewVerify(Options& opts, bool value);void setDefaultSygusRewVerifyAbort(Options& opts, bool value);void setDefaultSygusSampleFpUniform(Options& opts, bool value);void setDefaultSygusSampleGrammar(Options& opts, bool value);void setDefaultSygusSamples(Options& opts, int64_t value);void setDefaultCegqiSingleInvAbort(Options& opts, bool value);void setDefaultCegqiSingleInvPartial(Options& opts, bool value);void setDefaultCegqiSingleInvReconstructLimit(Options& opts, int64_t value);void setDefaultCegqiSingleInvReconstruct(Options& opts, CegqiSingleInvRconsMode value);void setDefaultCegqiSingleInvReconstructConst(Options& opts, bool value);void setDefaultCegqiSingleInvMode(Options& opts, CegqiSingleInvMode value);void setDefaultSygusStream(Options& opts, bool value);void setDefaultSygusTemplEmbedGrammar(Options& opts, bool value);void setDefaultSygusUnifCondIndNoRepeatSol(Options& opts, bool value);void setDefaultSygusUnifPi(Options& opts, SygusUnifPiMode value);void setDefaultSygusUnifShuffleCond(Options& opts, bool value);void setDefaultSygusVerifyInstMaxRounds(Options& opts, int64_t value);void setDefaultTermDbCd(Options& opts, bool value);void setDefaultTermDbMode(Options& opts, TermDbMode value);void setDefaultTriggerActiveSelMode(Options& opts, TriggerActiveSelMode value);void setDefaultTriggerSelMode(Options& opts, TriggerSelMode value);void setDefaultUserPatternsQuant(Options& opts, UserPatMode value);void setDefaultVarElimQuant(Options& opts, bool value);void setDefaultVarIneqElimQuant(Options& opts, bool value); |
1146 |
|
// clang-format on |
1147 |
|
} |
1148 |
|
|
1149 |
|
} // namespace cvc5::options |
1150 |
|
|
1151 |
|
#endif /* CVC5__OPTIONS__QUANTIFIERS_H */ |