GCC Code Coverage Report
Directory: . Exec Total Coverage
File: build-coverage/src/options/quantifiers_options.h Lines: 149 157 94.9 %
Date: 2021-09-15 Branches: 0 0 0.0 %

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