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 |
|
USE, NONE, TRUST |
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 |
|
KEEP, EQ_BOUNDARY, 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, PRE_FULL, FULL_DELAY, LAST_CALL, FULL_LAST_CALL, FULL |
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 |
|
SIMPLE, ALL, NONE |
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 |
|
AGG, USE, NONE, 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, GROUND_UF |
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 |
|
FMC, NONE, TRUST |
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 |
|
SIMPLE, NORMAL, NONE |
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 |
|
CONFLICT_ONLY, PROP_EQ, PARTIAL |
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 |
|
AGG, DEFAULT, NONE |
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 |
|
VAR_AGNOSTIC, AUTO, NONE, ENUM, ENUM_BASIC |
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 |
|
STRONG, WEAK, NONE |
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 |
|
SIMPLE, ANY_TERM, ANY_CONST, ANY_TERM_CONCISE |
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 |
|
OUT, IN, BOTH |
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 |
|
MAX, MIN, BOTH |
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 |
|
POST, NONE, PRE |
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, USE, NONE |
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, TRY, NONE, ALL_LIMIT |
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, NONE, CENUM, CENUM_IGAIN |
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, MAX, MIN |
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_MAX, MAX, MIN, MIN_SINGLE_ALL |
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 |
|
RESORT, TRUST, IGNORE, USE, STRICT, INTERLEAVE |
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 |
24146 |
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 |
|
CegqiSingleInvRconsMode cegqiSingleInvReconstruct = CegqiSingleInvRconsMode::ALL_LIMIT; |
601 |
|
bool cegqiSingleInvReconstructWasSetByUser = false; |
602 |
|
int64_t cegqiSingleInvReconstructLimit = 10000; |
603 |
|
bool cegqiSingleInvReconstructLimitWasSetByUser = false; |
604 |
|
bool sygusStream = false; |
605 |
|
bool sygusStreamWasSetByUser = false; |
606 |
|
bool sygusTemplEmbedGrammar = false; |
607 |
|
bool sygusTemplEmbedGrammarWasSetByUser = false; |
608 |
|
bool sygusUnifCondIndNoRepeatSol = true; |
609 |
|
bool sygusUnifCondIndNoRepeatSolWasSetByUser = false; |
610 |
|
SygusUnifPiMode sygusUnifPi = SygusUnifPiMode::NONE; |
611 |
|
bool sygusUnifPiWasSetByUser = false; |
612 |
|
bool sygusUnifShuffleCond = false; |
613 |
|
bool sygusUnifShuffleCondWasSetByUser = false; |
614 |
|
int64_t sygusVerifyInstMaxRounds = 3; |
615 |
|
bool sygusVerifyInstMaxRoundsWasSetByUser = false; |
616 |
|
bool termDbCd = true; |
617 |
|
bool termDbCdWasSetByUser = false; |
618 |
|
TermDbMode termDbMode = TermDbMode::ALL; |
619 |
|
bool termDbModeWasSetByUser = false; |
620 |
|
TriggerActiveSelMode triggerActiveSelMode = TriggerActiveSelMode::ALL; |
621 |
|
bool triggerActiveSelModeWasSetByUser = false; |
622 |
|
TriggerSelMode triggerSelMode = TriggerSelMode::MIN; |
623 |
|
bool triggerSelModeWasSetByUser = false; |
624 |
|
UserPatMode userPatternsQuant = UserPatMode::TRUST; |
625 |
|
bool userPatternsQuantWasSetByUser = false; |
626 |
|
bool varElimQuant = true; |
627 |
|
bool varElimQuantWasSetByUser = false; |
628 |
|
bool varIneqElimQuant = true; |
629 |
|
bool varIneqElimQuantWasSetByUser = false; |
630 |
|
// clang-format on |
631 |
|
}; |
632 |
|
|
633 |
|
#undef DO_SEMANTIC_CHECKS_BY_DEFAULT |
634 |
|
|
635 |
|
// clang-format off |
636 |
|
inline bool aggressiveMiniscopeQuant() { return Options::current().quantifiers.aggressiveMiniscopeQuant; } |
637 |
3617 |
inline CegisSampleMode cegisSample() { return Options::current().quantifiers.cegisSample; } |
638 |
4607613 |
inline bool cegqi() { return Options::current().quantifiers.cegqi; } |
639 |
17318 |
inline bool cegqiAll() { return Options::current().quantifiers.cegqiAll; } |
640 |
12381 |
inline bool cegqiBv() { return Options::current().quantifiers.cegqiBv; } |
641 |
462 |
inline bool cegqiBvConcInv() { return Options::current().quantifiers.cegqiBvConcInv; } |
642 |
24477 |
inline CegqiBvIneqMode cegqiBvIneqMode() { return Options::current().quantifiers.cegqiBvIneqMode; } |
643 |
2263 |
inline bool cegqiBvInterleaveValue() { return Options::current().quantifiers.cegqiBvInterleaveValue; } |
644 |
9926 |
inline bool cegqiBvLinearize() { return Options::current().quantifiers.cegqiBvLinearize; } |
645 |
710 |
inline bool cegqiBvRmExtract() { return Options::current().quantifiers.cegqiBvRmExtract; } |
646 |
4699 |
inline bool cegqiBvSolveNl() { return Options::current().quantifiers.cegqiBvSolveNl; } |
647 |
1402 |
inline bool cegqiFullEffort() { return Options::current().quantifiers.cegqiFullEffort; } |
648 |
27260 |
inline bool cegqiInnermost() { return Options::current().quantifiers.cegqiInnermost; } |
649 |
9277 |
inline bool cegqiMidpoint() { return Options::current().quantifiers.cegqiMidpoint; } |
650 |
14644 |
inline bool cegqiMinBounds() { return Options::current().quantifiers.cegqiMinBounds; } |
651 |
76149 |
inline bool cegqiModel() { return Options::current().quantifiers.cegqiModel; } |
652 |
84210 |
inline bool cegqiMultiInst() { return Options::current().quantifiers.cegqiMultiInst; } |
653 |
6724 |
inline bool cegqiNestedQE() { return Options::current().quantifiers.cegqiNestedQE; } |
654 |
941 |
inline bool cegqiNopt() { return Options::current().quantifiers.cegqiNopt; } |
655 |
444829 |
inline bool cegqiRepeatLit() { return Options::current().quantifiers.cegqiRepeatLit; } |
656 |
13 |
inline bool cegqiRoundUpLowerLia() { return Options::current().quantifiers.cegqiRoundUpLowerLia; } |
657 |
2587 |
inline bool cegqiSat() { return Options::current().quantifiers.cegqiSat; } |
658 |
13288 |
inline bool cegqiUseInfInt() { return Options::current().quantifiers.cegqiUseInfInt; } |
659 |
1356 |
inline bool cegqiUseInfReal() { return Options::current().quantifiers.cegqiUseInfReal; } |
660 |
|
inline bool condVarSplitQuantAgg() { return Options::current().quantifiers.condVarSplitQuantAgg; } |
661 |
|
inline bool condVarSplitQuant() { return Options::current().quantifiers.condVarSplitQuant; } |
662 |
3243 |
inline bool conjectureFilterActiveTerms() { return Options::current().quantifiers.conjectureFilterActiveTerms; } |
663 |
6592 |
inline bool conjectureFilterCanonical() { return Options::current().quantifiers.conjectureFilterCanonical; } |
664 |
14590 |
inline bool conjectureFilterModel() { return Options::current().quantifiers.conjectureFilterModel; } |
665 |
6840 |
inline bool conjectureGen() { return Options::current().quantifiers.conjectureGen; } |
666 |
92 |
inline int64_t conjectureGenGtEnum() { return Options::current().quantifiers.conjectureGenGtEnum; } |
667 |
44 |
inline int64_t conjectureGenMaxDepth() { return Options::current().quantifiers.conjectureGenMaxDepth; } |
668 |
698 |
inline int64_t conjectureGenPerRound() { return Options::current().quantifiers.conjectureGenPerRound; } |
669 |
100 |
inline bool conjectureUeeIntro() { return Options::current().quantifiers.conjectureUeeIntro; } |
670 |
|
inline bool conjectureNoFilter() { return Options::current().quantifiers.conjectureNoFilter; } |
671 |
9589 |
inline bool dtStcInduction() { return Options::current().quantifiers.dtStcInduction; } |
672 |
|
inline bool dtVarExpandQuant() { return Options::current().quantifiers.dtVarExpandQuant; } |
673 |
6578 |
inline bool eMatching() { return Options::current().quantifiers.eMatching; } |
674 |
|
inline bool elimTautQuant() { return Options::current().quantifiers.elimTautQuant; } |
675 |
|
inline bool extRewriteQuant() { return Options::current().quantifiers.extRewriteQuant; } |
676 |
10539034 |
inline bool finiteModelFind() { return Options::current().quantifiers.finiteModelFind; } |
677 |
42275 |
inline bool fmfBound() { return Options::current().quantifiers.fmfBound; } |
678 |
|
inline bool fmfBoundInt() { return Options::current().quantifiers.fmfBoundInt; } |
679 |
678 |
inline bool fmfBoundLazy() { return Options::current().quantifiers.fmfBoundLazy; } |
680 |
38643 |
inline bool fmfFmcSimple() { return Options::current().quantifiers.fmfFmcSimple; } |
681 |
510 |
inline bool fmfFreshDistConst() { return Options::current().quantifiers.fmfFreshDistConst; } |
682 |
8170 |
inline bool fmfFunWellDefined() { return Options::current().quantifiers.fmfFunWellDefined; } |
683 |
13025 |
inline bool fmfFunWellDefinedRelevant() { return Options::current().quantifiers.fmfFunWellDefinedRelevant; } |
684 |
270 |
inline bool fmfInstEngine() { return Options::current().quantifiers.fmfInstEngine; } |
685 |
9943 |
inline int64_t fmfTypeCompletionThresh() { return Options::current().quantifiers.fmfTypeCompletionThresh; } |
686 |
17133 |
inline bool fullSaturateInterleave() { return Options::current().quantifiers.fullSaturateInterleave; } |
687 |
995 |
inline bool fullSaturateStratify() { return Options::current().quantifiers.fullSaturateStratify; } |
688 |
1294 |
inline bool fullSaturateSum() { return Options::current().quantifiers.fullSaturateSum; } |
689 |
17231 |
inline bool fullSaturateQuant() { return Options::current().quantifiers.fullSaturateQuant; } |
690 |
98 |
inline int64_t fullSaturateLimit() { return Options::current().quantifiers.fullSaturateLimit; } |
691 |
115 |
inline bool fullSaturateQuantRd() { return Options::current().quantifiers.fullSaturateQuantRd; } |
692 |
13801 |
inline bool globalNegate() { return Options::current().quantifiers.globalNegate; } |
693 |
|
inline bool hoElim() { return Options::current().quantifiers.hoElim; } |
694 |
|
inline bool hoElimStoreAx() { return Options::current().quantifiers.hoElimStoreAx; } |
695 |
192 |
inline bool hoMatching() { return Options::current().quantifiers.hoMatching; } |
696 |
324 |
inline bool hoMatchingVarArgPriority() { return Options::current().quantifiers.hoMatchingVarArgPriority; } |
697 |
|
inline bool hoMergeTermDb() { return Options::current().quantifiers.hoMergeTermDb; } |
698 |
6576 |
inline bool incrementTriggers() { return Options::current().quantifiers.incrementTriggers; } |
699 |
8168 |
inline bool instLevelInputOnly() { return Options::current().quantifiers.instLevelInputOnly; } |
700 |
190799 |
inline int64_t instMaxLevel() { return Options::current().quantifiers.instMaxLevel; } |
701 |
102703 |
inline int64_t instMaxRounds() { return Options::current().quantifiers.instMaxRounds; } |
702 |
182823 |
inline bool instNoEntail() { return Options::current().quantifiers.instNoEntail; } |
703 |
460314 |
inline InstWhenMode instWhenMode() { return Options::current().quantifiers.instWhenMode; } |
704 |
19886 |
inline int64_t instWhenPhase() { return Options::current().quantifiers.instWhenPhase; } |
705 |
12283 |
inline bool instWhenStrictInterleave() { return Options::current().quantifiers.instWhenStrictInterleave; } |
706 |
9943 |
inline bool instWhenTcFirst() { return Options::current().quantifiers.instWhenTcFirst; } |
707 |
5609 |
inline bool intWfInduction() { return Options::current().quantifiers.intWfInduction; } |
708 |
|
inline bool iteDtTesterSplitQuant() { return Options::current().quantifiers.iteDtTesterSplitQuant; } |
709 |
|
inline IteLiftQuantMode iteLiftQuant() { return Options::current().quantifiers.iteLiftQuant; } |
710 |
8753 |
inline LiteralMatchMode literalMatchMode() { return Options::current().quantifiers.literalMatchMode; } |
711 |
9943 |
inline bool macrosQuant() { return Options::current().quantifiers.macrosQuant; } |
712 |
46 |
inline MacrosQuantMode macrosQuantMode() { return Options::current().quantifiers.macrosQuantMode; } |
713 |
42524 |
inline MbqiMode mbqiMode() { return Options::current().quantifiers.mbqiMode; } |
714 |
7157 |
inline bool mbqiInterleave() { return Options::current().quantifiers.mbqiInterleave; } |
715 |
5949 |
inline bool fmfOneInstPerRound() { return Options::current().quantifiers.fmfOneInstPerRound; } |
716 |
|
inline bool miniscopeQuant() { return Options::current().quantifiers.miniscopeQuant; } |
717 |
|
inline bool miniscopeQuantFreeVar() { return Options::current().quantifiers.miniscopeQuantFreeVar; } |
718 |
1310 |
inline bool multiTriggerCache() { return Options::current().quantifiers.multiTriggerCache; } |
719 |
21922 |
inline bool multiTriggerLinear() { return Options::current().quantifiers.multiTriggerLinear; } |
720 |
8837 |
inline bool multiTriggerPriority() { return Options::current().quantifiers.multiTriggerPriority; } |
721 |
13632 |
inline bool multiTriggerWhenSingle() { return Options::current().quantifiers.multiTriggerWhenSingle; } |
722 |
37196 |
inline bool partialTriggers() { return Options::current().quantifiers.partialTriggers; } |
723 |
6840 |
inline bool poolInst() { return Options::current().quantifiers.poolInst; } |
724 |
|
inline bool preSkolemQuant() { return Options::current().quantifiers.preSkolemQuant; } |
725 |
|
inline bool preSkolemQuantAgg() { return Options::current().quantifiers.preSkolemQuantAgg; } |
726 |
|
inline bool preSkolemQuantNested() { return Options::current().quantifiers.preSkolemQuantNested; } |
727 |
|
inline PrenexQuantMode prenexQuant() { return Options::current().quantifiers.prenexQuant; } |
728 |
|
inline bool prenexQuantUser() { return Options::current().quantifiers.prenexQuantUser; } |
729 |
57203 |
inline bool purifyTriggers() { return Options::current().quantifiers.purifyTriggers; } |
730 |
875 |
inline bool qcfAllConflict() { return Options::current().quantifiers.qcfAllConflict; } |
731 |
17291 |
inline bool qcfEagerCheckRd() { return Options::current().quantifiers.qcfEagerCheckRd; } |
732 |
646416 |
inline bool qcfEagerTest() { return Options::current().quantifiers.qcfEagerTest; } |
733 |
3401 |
inline bool qcfNestedConflict() { return Options::current().quantifiers.qcfNestedConflict; } |
734 |
17291 |
inline bool qcfSkipRd() { return Options::current().quantifiers.qcfSkipRd; } |
735 |
105476 |
inline bool qcfTConstraint() { return Options::current().quantifiers.qcfTConstraint; } |
736 |
374504 |
inline bool qcfVoExp() { return Options::current().quantifiers.qcfVoExp; } |
737 |
6840 |
inline bool quantAlphaEquiv() { return Options::current().quantifiers.quantAlphaEquiv; } |
738 |
67247 |
inline bool quantConflictFind() { return Options::current().quantifiers.quantConflictFind; } |
739 |
16726 |
inline QcfMode qcfMode() { return Options::current().quantifiers.qcfMode; } |
740 |
60403 |
inline QcfWhenMode qcfWhenMode() { return Options::current().quantifiers.qcfWhenMode; } |
741 |
16094 |
inline QuantDSplitMode quantDynamicSplit() { return Options::current().quantifiers.quantDynamicSplit; } |
742 |
10645 |
inline bool quantFunWellDefined() { return Options::current().quantifiers.quantFunWellDefined; } |
743 |
|
inline bool quantInduction() { return Options::current().quantifiers.quantInduction; } |
744 |
128587 |
inline QuantRepMode quantRepMode() { return Options::current().quantifiers.quantRepMode; } |
745 |
|
inline bool quantSplit() { return Options::current().quantifiers.quantSplit; } |
746 |
68192 |
inline bool registerQuantBodyTerms() { return Options::current().quantifiers.registerQuantBodyTerms; } |
747 |
63286 |
inline bool relationalTriggers() { return Options::current().quantifiers.relationalTriggers; } |
748 |
28479 |
inline bool relevantTriggers() { return Options::current().quantifiers.relevantTriggers; } |
749 |
31791 |
inline bool sygus() { return Options::current().quantifiers.sygus; } |
750 |
1081 |
inline SygusActiveGenMode sygusActiveGenMode() { return Options::current().quantifiers.sygusActiveGenMode; } |
751 |
16 |
inline uint64_t sygusActiveGenEnumConsts() { return Options::current().quantifiers.sygusActiveGenEnumConsts; } |
752 |
332 |
inline bool sygusAddConstGrammar() { return Options::current().quantifiers.sygusAddConstGrammar; } |
753 |
332 |
inline bool sygusArgRelevant() { return Options::current().quantifiers.sygusArgRelevant; } |
754 |
31 |
inline bool sygusInvAutoUnfold() { return Options::current().quantifiers.sygusInvAutoUnfold; } |
755 |
14 |
inline bool sygusBoolIteReturnConst() { return Options::current().quantifiers.sygusBoolIteReturnConst; } |
756 |
1233 |
inline bool sygusCoreConnective() { return Options::current().quantifiers.sygusCoreConnective; } |
757 |
8 |
inline bool sygusConstRepairAbort() { return Options::current().quantifiers.sygusConstRepairAbort; } |
758 |
113262 |
inline bool sygusEvalOpt() { return Options::current().quantifiers.sygusEvalOpt; } |
759 |
381214 |
inline bool sygusEvalUnfold() { return Options::current().quantifiers.sygusEvalUnfold; } |
760 |
9299 |
inline bool sygusEvalUnfoldBool() { return Options::current().quantifiers.sygusEvalUnfoldBool; } |
761 |
|
inline uint64_t sygusExprMinerCheckTimeout() { return Options::current().quantifiers.sygusExprMinerCheckTimeout; } |
762 |
|
inline bool sygusExtRew() { return Options::current().quantifiers.sygusExtRew; } |
763 |
71 |
inline SygusFilterSolMode sygusFilterSolMode() { return Options::current().quantifiers.sygusFilterSolMode; } |
764 |
21 |
inline bool sygusFilterSolRevSubsume() { return Options::current().quantifiers.sygusFilterSolRevSubsume; } |
765 |
745 |
inline SygusGrammarConsMode sygusGrammarConsMode() { return Options::current().quantifiers.sygusGrammarConsMode; } |
766 |
431 |
inline bool sygusGrammarNorm() { return Options::current().quantifiers.sygusGrammarNorm; } |
767 |
10263 |
inline bool sygusInference() { return Options::current().quantifiers.sygusInference; } |
768 |
23718 |
inline bool sygusInst() { return Options::current().quantifiers.sygusInst; } |
769 |
189 |
inline SygusInstMode sygusInstMode() { return Options::current().quantifiers.sygusInstMode; } |
770 |
159 |
inline SygusInstScope sygusInstScope() { return Options::current().quantifiers.sygusInstScope; } |
771 |
177 |
inline SygusInstTermSelMode sygusInstTermSel() { return Options::current().quantifiers.sygusInstTermSel; } |
772 |
332 |
inline SygusInvTemplMode sygusInvTemplMode() { return Options::current().quantifiers.sygusInvTemplMode; } |
773 |
78 |
inline bool sygusInvTemplWhenSyntax() { return Options::current().quantifiers.sygusInvTemplWhenSyntax; } |
774 |
446 |
inline bool sygusMinGrammar() { return Options::current().quantifiers.sygusMinGrammar; } |
775 |
240 |
inline bool sygusUnifPbe() { return Options::current().quantifiers.sygusUnifPbe; } |
776 |
4327 |
inline bool sygusPbeMultiFair() { return Options::current().quantifiers.sygusPbeMultiFair; } |
777 |
517 |
inline int64_t sygusPbeMultiFairDiff() { return Options::current().quantifiers.sygusPbeMultiFairDiff; } |
778 |
672 |
inline bool sygusQePreproc() { return Options::current().quantifiers.sygusQePreproc; } |
779 |
69 |
inline bool sygusQueryGen() { return Options::current().quantifiers.sygusQueryGen; } |
780 |
|
inline bool sygusQueryGenCheck() { return Options::current().quantifiers.sygusQueryGenCheck; } |
781 |
|
inline SygusQueryDumpFilesMode sygusQueryGenDumpFiles() { return Options::current().quantifiers.sygusQueryGenDumpFiles; } |
782 |
|
inline uint64_t sygusQueryGenThresh() { return Options::current().quantifiers.sygusQueryGenThresh; } |
783 |
50086 |
inline bool sygusRecFun() { return Options::current().quantifiers.sygusRecFun; } |
784 |
3404 |
inline uint64_t sygusRecFunEvalLimit() { return Options::current().quantifiers.sygusRecFunEvalLimit; } |
785 |
39617 |
inline bool sygusRepairConst() { return Options::current().quantifiers.sygusRepairConst; } |
786 |
150 |
inline uint64_t sygusRepairConstTimeout() { return Options::current().quantifiers.sygusRepairConstTimeout; } |
787 |
|
inline bool sygusRew() { return Options::current().quantifiers.sygusRew; } |
788 |
1077 |
inline bool sygusRewSynth() { return Options::current().quantifiers.sygusRewSynth; } |
789 |
9 |
inline bool sygusRewSynthAccel() { return Options::current().quantifiers.sygusRewSynthAccel; } |
790 |
9 |
inline bool sygusRewSynthCheck() { return Options::current().quantifiers.sygusRewSynthCheck; } |
791 |
804 |
inline bool sygusRewSynthFilterCong() { return Options::current().quantifiers.sygusRewSynthFilterCong; } |
792 |
226 |
inline bool sygusRewSynthFilterMatch() { return Options::current().quantifiers.sygusRewSynthFilterMatch; } |
793 |
458 |
inline bool sygusRewSynthFilterNonLinear() { return Options::current().quantifiers.sygusRewSynthFilterNonLinear; } |
794 |
687 |
inline bool sygusRewSynthFilterOrder() { return Options::current().quantifiers.sygusRewSynthFilterOrder; } |
795 |
10206 |
inline bool sygusRewSynthInput() { return Options::current().quantifiers.sygusRewSynthInput; } |
796 |
|
inline int64_t sygusRewSynthInputNVars() { return Options::current().quantifiers.sygusRewSynthInputNVars; } |
797 |
|
inline bool sygusRewSynthInputUseBool() { return Options::current().quantifiers.sygusRewSynthInputUseBool; } |
798 |
1008 |
inline bool sygusRewSynthRec() { return Options::current().quantifiers.sygusRewSynthRec; } |
799 |
5085 |
inline bool sygusRewVerify() { return Options::current().quantifiers.sygusRewVerify; } |
800 |
|
inline bool sygusRewVerifyAbort() { return Options::current().quantifiers.sygusRewVerifyAbort; } |
801 |
|
inline bool sygusSampleFpUniform() { return Options::current().quantifiers.sygusSampleFpUniform; } |
802 |
363373 |
inline bool sygusSampleGrammar() { return Options::current().quantifiers.sygusSampleGrammar; } |
803 |
21 |
inline int64_t sygusSamples() { return Options::current().quantifiers.sygusSamples; } |
804 |
572 |
inline CegqiSingleInvMode cegqiSingleInvMode() { return Options::current().quantifiers.cegqiSingleInvMode; } |
805 |
235 |
inline bool cegqiSingleInvAbort() { return Options::current().quantifiers.cegqiSingleInvAbort; } |
806 |
283 |
inline CegqiSingleInvRconsMode cegqiSingleInvReconstruct() { return Options::current().quantifiers.cegqiSingleInvReconstruct; } |
807 |
24 |
inline int64_t cegqiSingleInvReconstructLimit() { return Options::current().quantifiers.cegqiSingleInvReconstructLimit; } |
808 |
1406 |
inline bool sygusStream() { return Options::current().quantifiers.sygusStream; } |
809 |
79 |
inline bool sygusTemplEmbedGrammar() { return Options::current().quantifiers.sygusTemplEmbedGrammar; } |
810 |
|
inline bool sygusUnifCondIndNoRepeatSol() { return Options::current().quantifiers.sygusUnifCondIndNoRepeatSol; } |
811 |
2929 |
inline SygusUnifPiMode sygusUnifPi() { return Options::current().quantifiers.sygusUnifPi; } |
812 |
|
inline bool sygusUnifShuffleCond() { return Options::current().quantifiers.sygusUnifShuffleCond; } |
813 |
|
inline int64_t sygusVerifyInstMaxRounds() { return Options::current().quantifiers.sygusVerifyInstMaxRounds; } |
814 |
174154 |
inline bool termDbCd() { return Options::current().quantifiers.termDbCd; } |
815 |
4441806 |
inline TermDbMode termDbMode() { return Options::current().quantifiers.termDbMode; } |
816 |
28537 |
inline TriggerActiveSelMode triggerActiveSelMode() { return Options::current().quantifiers.triggerActiveSelMode; } |
817 |
6576 |
inline TriggerSelMode triggerSelMode() { return Options::current().quantifiers.triggerSelMode; } |
818 |
289118 |
inline UserPatMode userPatternsQuant() { return Options::current().quantifiers.userPatternsQuant; } |
819 |
|
inline bool varElimQuant() { return Options::current().quantifiers.varElimQuant; } |
820 |
|
inline bool varIneqElimQuant() { return Options::current().quantifiers.varIneqElimQuant; } |
821 |
|
// clang-format on |
822 |
|
|
823 |
|
namespace quantifiers |
824 |
|
{ |
825 |
|
// clang-format off |
826 |
|
static constexpr const char* aggressiveMiniscopeQuant__name = "ag-miniscope-quant"; |
827 |
|
static constexpr const char* cegisSample__name = "cegis-sample"; |
828 |
|
static constexpr const char* cegqi__name = "cegqi"; |
829 |
|
static constexpr const char* cegqiAll__name = "cegqi-all"; |
830 |
|
static constexpr const char* cegqiBv__name = "cegqi-bv"; |
831 |
|
static constexpr const char* cegqiBvConcInv__name = "cegqi-bv-concat-inv"; |
832 |
|
static constexpr const char* cegqiBvIneqMode__name = "cegqi-bv-ineq"; |
833 |
|
static constexpr const char* cegqiBvInterleaveValue__name = "cegqi-bv-interleave-value"; |
834 |
|
static constexpr const char* cegqiBvLinearize__name = "cegqi-bv-linear"; |
835 |
|
static constexpr const char* cegqiBvRmExtract__name = "cegqi-bv-rm-extract"; |
836 |
|
static constexpr const char* cegqiBvSolveNl__name = "cegqi-bv-solve-nl"; |
837 |
|
static constexpr const char* cegqiFullEffort__name = "cegqi-full"; |
838 |
|
static constexpr const char* cegqiInnermost__name = "cegqi-innermost"; |
839 |
|
static constexpr const char* cegqiMidpoint__name = "cegqi-midpoint"; |
840 |
|
static constexpr const char* cegqiMinBounds__name = "cegqi-min-bounds"; |
841 |
|
static constexpr const char* cegqiModel__name = "cegqi-model"; |
842 |
|
static constexpr const char* cegqiMultiInst__name = "cegqi-multi-inst"; |
843 |
|
static constexpr const char* cegqiNestedQE__name = "cegqi-nested-qe"; |
844 |
|
static constexpr const char* cegqiNopt__name = "cegqi-nopt"; |
845 |
|
static constexpr const char* cegqiRepeatLit__name = "cegqi-repeat-lit"; |
846 |
|
static constexpr const char* cegqiRoundUpLowerLia__name = "cegqi-round-up-lia"; |
847 |
|
static constexpr const char* cegqiSat__name = "cegqi-sat"; |
848 |
|
static constexpr const char* cegqiUseInfInt__name = "cegqi-use-inf-int"; |
849 |
|
static constexpr const char* cegqiUseInfReal__name = "cegqi-use-inf-real"; |
850 |
|
static constexpr const char* condVarSplitQuantAgg__name = "cond-var-split-agg-quant"; |
851 |
|
static constexpr const char* condVarSplitQuant__name = "cond-var-split-quant"; |
852 |
|
static constexpr const char* conjectureFilterActiveTerms__name = "conjecture-filter-active-terms"; |
853 |
|
static constexpr const char* conjectureFilterCanonical__name = "conjecture-filter-canonical"; |
854 |
|
static constexpr const char* conjectureFilterModel__name = "conjecture-filter-model"; |
855 |
|
static constexpr const char* conjectureGen__name = "conjecture-gen"; |
856 |
|
static constexpr const char* conjectureGenGtEnum__name = "conjecture-gen-gt-enum"; |
857 |
|
static constexpr const char* conjectureGenMaxDepth__name = "conjecture-gen-max-depth"; |
858 |
|
static constexpr const char* conjectureGenPerRound__name = "conjecture-gen-per-round"; |
859 |
|
static constexpr const char* conjectureUeeIntro__name = "conjecture-gen-uee-intro"; |
860 |
|
static constexpr const char* conjectureNoFilter__name = "conjecture-no-filter"; |
861 |
|
static constexpr const char* dtStcInduction__name = "dt-stc-ind"; |
862 |
|
static constexpr const char* dtVarExpandQuant__name = "dt-var-exp-quant"; |
863 |
|
static constexpr const char* eMatching__name = "e-matching"; |
864 |
|
static constexpr const char* elimTautQuant__name = "elim-taut-quant"; |
865 |
|
static constexpr const char* extRewriteQuant__name = "ext-rewrite-quant"; |
866 |
|
static constexpr const char* finiteModelFind__name = "finite-model-find"; |
867 |
|
static constexpr const char* fmfBound__name = "fmf-bound"; |
868 |
|
static constexpr const char* fmfBoundInt__name = "fmf-bound-int"; |
869 |
|
static constexpr const char* fmfBoundLazy__name = "fmf-bound-lazy"; |
870 |
|
static constexpr const char* fmfFmcSimple__name = "fmf-fmc-simple"; |
871 |
|
static constexpr const char* fmfFreshDistConst__name = "fmf-fresh-dc"; |
872 |
|
static constexpr const char* fmfFunWellDefined__name = "fmf-fun"; |
873 |
|
static constexpr const char* fmfFunWellDefinedRelevant__name = "fmf-fun-rlv"; |
874 |
|
static constexpr const char* fmfInstEngine__name = "fmf-inst-engine"; |
875 |
|
static constexpr const char* fmfTypeCompletionThresh__name = "fmf-type-completion-thresh"; |
876 |
|
static constexpr const char* fullSaturateInterleave__name = "fs-interleave"; |
877 |
|
static constexpr const char* fullSaturateStratify__name = "fs-stratify"; |
878 |
|
static constexpr const char* fullSaturateSum__name = "fs-sum"; |
879 |
|
static constexpr const char* fullSaturateQuant__name = "full-saturate-quant"; |
880 |
|
static constexpr const char* fullSaturateLimit__name = "full-saturate-quant-limit"; |
881 |
|
static constexpr const char* fullSaturateQuantRd__name = "full-saturate-quant-rd"; |
882 |
|
static constexpr const char* globalNegate__name = "global-negate"; |
883 |
|
static constexpr const char* hoElim__name = "ho-elim"; |
884 |
|
static constexpr const char* hoElimStoreAx__name = "ho-elim-store-ax"; |
885 |
|
static constexpr const char* hoMatching__name = "ho-matching"; |
886 |
|
static constexpr const char* hoMatchingVarArgPriority__name = "ho-matching-var-priority"; |
887 |
|
static constexpr const char* hoMergeTermDb__name = "ho-merge-term-db"; |
888 |
|
static constexpr const char* incrementTriggers__name = "increment-triggers"; |
889 |
|
static constexpr const char* instLevelInputOnly__name = "inst-level-input-only"; |
890 |
|
static constexpr const char* instMaxLevel__name = "inst-max-level"; |
891 |
|
static constexpr const char* instMaxRounds__name = "inst-max-rounds"; |
892 |
|
static constexpr const char* instNoEntail__name = "inst-no-entail"; |
893 |
|
static constexpr const char* instWhenMode__name = "inst-when"; |
894 |
|
static constexpr const char* instWhenPhase__name = "inst-when-phase"; |
895 |
|
static constexpr const char* instWhenStrictInterleave__name = "inst-when-strict-interleave"; |
896 |
|
static constexpr const char* instWhenTcFirst__name = "inst-when-tc-first"; |
897 |
|
static constexpr const char* intWfInduction__name = "int-wf-ind"; |
898 |
|
static constexpr const char* iteDtTesterSplitQuant__name = "ite-dtt-split-quant"; |
899 |
|
static constexpr const char* iteLiftQuant__name = "ite-lift-quant"; |
900 |
|
static constexpr const char* literalMatchMode__name = "literal-matching"; |
901 |
|
static constexpr const char* macrosQuant__name = "macros-quant"; |
902 |
|
static constexpr const char* macrosQuantMode__name = "macros-quant-mode"; |
903 |
|
static constexpr const char* mbqiMode__name = "mbqi"; |
904 |
|
static constexpr const char* mbqiInterleave__name = "mbqi-interleave"; |
905 |
|
static constexpr const char* fmfOneInstPerRound__name = "mbqi-one-inst-per-round"; |
906 |
|
static constexpr const char* miniscopeQuant__name = "miniscope-quant"; |
907 |
|
static constexpr const char* miniscopeQuantFreeVar__name = "miniscope-quant-fv"; |
908 |
|
static constexpr const char* multiTriggerCache__name = "multi-trigger-cache"; |
909 |
|
static constexpr const char* multiTriggerLinear__name = "multi-trigger-linear"; |
910 |
|
static constexpr const char* multiTriggerPriority__name = "multi-trigger-priority"; |
911 |
|
static constexpr const char* multiTriggerWhenSingle__name = "multi-trigger-when-single"; |
912 |
|
static constexpr const char* partialTriggers__name = "partial-triggers"; |
913 |
|
static constexpr const char* poolInst__name = "pool-inst"; |
914 |
|
static constexpr const char* preSkolemQuant__name = "pre-skolem-quant"; |
915 |
|
static constexpr const char* preSkolemQuantAgg__name = "pre-skolem-quant-agg"; |
916 |
|
static constexpr const char* preSkolemQuantNested__name = "pre-skolem-quant-nested"; |
917 |
|
static constexpr const char* prenexQuant__name = "prenex-quant"; |
918 |
|
static constexpr const char* prenexQuantUser__name = "prenex-quant-user"; |
919 |
|
static constexpr const char* purifyTriggers__name = "purify-triggers"; |
920 |
|
static constexpr const char* qcfAllConflict__name = "qcf-all-conflict"; |
921 |
|
static constexpr const char* qcfEagerCheckRd__name = "qcf-eager-check-rd"; |
922 |
|
static constexpr const char* qcfEagerTest__name = "qcf-eager-test"; |
923 |
|
static constexpr const char* qcfNestedConflict__name = "qcf-nested-conflict"; |
924 |
|
static constexpr const char* qcfSkipRd__name = "qcf-skip-rd"; |
925 |
|
static constexpr const char* qcfTConstraint__name = "qcf-tconstraint"; |
926 |
|
static constexpr const char* qcfVoExp__name = "qcf-vo-exp"; |
927 |
|
static constexpr const char* quantAlphaEquiv__name = "quant-alpha-equiv"; |
928 |
|
static constexpr const char* quantConflictFind__name = "quant-cf"; |
929 |
|
static constexpr const char* qcfMode__name = "quant-cf-mode"; |
930 |
|
static constexpr const char* qcfWhenMode__name = "quant-cf-when"; |
931 |
|
static constexpr const char* quantDynamicSplit__name = "quant-dsplit-mode"; |
932 |
|
static constexpr const char* quantFunWellDefined__name = "quant-fun-wd"; |
933 |
|
static constexpr const char* quantInduction__name = "quant-ind"; |
934 |
|
static constexpr const char* quantRepMode__name = "quant-rep-mode"; |
935 |
|
static constexpr const char* quantSplit__name = "quant-split"; |
936 |
|
static constexpr const char* registerQuantBodyTerms__name = "register-quant-body-terms"; |
937 |
|
static constexpr const char* relationalTriggers__name = "relational-triggers"; |
938 |
|
static constexpr const char* relevantTriggers__name = "relevant-triggers"; |
939 |
|
static constexpr const char* sygus__name = "sygus"; |
940 |
|
static constexpr const char* sygusActiveGenMode__name = "sygus-active-gen"; |
941 |
|
static constexpr const char* sygusActiveGenEnumConsts__name = "sygus-active-gen-cfactor"; |
942 |
|
static constexpr const char* sygusAddConstGrammar__name = "sygus-add-const-grammar"; |
943 |
|
static constexpr const char* sygusArgRelevant__name = "sygus-arg-relevant"; |
944 |
|
static constexpr const char* sygusInvAutoUnfold__name = "sygus-auto-unfold"; |
945 |
|
static constexpr const char* sygusBoolIteReturnConst__name = "sygus-bool-ite-return-const"; |
946 |
|
static constexpr const char* sygusCoreConnective__name = "sygus-core-connective"; |
947 |
|
static constexpr const char* sygusConstRepairAbort__name = "sygus-crepair-abort"; |
948 |
|
static constexpr const char* sygusEvalOpt__name = "sygus-eval-opt"; |
949 |
|
static constexpr const char* sygusEvalUnfold__name = "sygus-eval-unfold"; |
950 |
|
static constexpr const char* sygusEvalUnfoldBool__name = "sygus-eval-unfold-bool"; |
951 |
|
static constexpr const char* sygusExprMinerCheckTimeout__name = "sygus-expr-miner-check-timeout"; |
952 |
|
static constexpr const char* sygusExtRew__name = "sygus-ext-rew"; |
953 |
|
static constexpr const char* sygusFilterSolMode__name = "sygus-filter-sol"; |
954 |
|
static constexpr const char* sygusFilterSolRevSubsume__name = "sygus-filter-sol-rev"; |
955 |
|
static constexpr const char* sygusGrammarConsMode__name = "sygus-grammar-cons"; |
956 |
|
static constexpr const char* sygusGrammarNorm__name = "sygus-grammar-norm"; |
957 |
|
static constexpr const char* sygusInference__name = "sygus-inference"; |
958 |
|
static constexpr const char* sygusInst__name = "sygus-inst"; |
959 |
|
static constexpr const char* sygusInstMode__name = "sygus-inst-mode"; |
960 |
|
static constexpr const char* sygusInstScope__name = "sygus-inst-scope"; |
961 |
|
static constexpr const char* sygusInstTermSel__name = "sygus-inst-term-sel"; |
962 |
|
static constexpr const char* sygusInvTemplMode__name = "sygus-inv-templ"; |
963 |
|
static constexpr const char* sygusInvTemplWhenSyntax__name = "sygus-inv-templ-when-sg"; |
964 |
|
static constexpr const char* sygusMinGrammar__name = "sygus-min-grammar"; |
965 |
|
static constexpr const char* sygusUnifPbe__name = "sygus-pbe"; |
966 |
|
static constexpr const char* sygusPbeMultiFair__name = "sygus-pbe-multi-fair"; |
967 |
|
static constexpr const char* sygusPbeMultiFairDiff__name = "sygus-pbe-multi-fair-diff"; |
968 |
|
static constexpr const char* sygusQePreproc__name = "sygus-qe-preproc"; |
969 |
|
static constexpr const char* sygusQueryGen__name = "sygus-query-gen"; |
970 |
|
static constexpr const char* sygusQueryGenCheck__name = "sygus-query-gen-check"; |
971 |
|
static constexpr const char* sygusQueryGenDumpFiles__name = "sygus-query-gen-dump-files"; |
972 |
|
static constexpr const char* sygusQueryGenThresh__name = "sygus-query-gen-thresh"; |
973 |
|
static constexpr const char* sygusRecFun__name = "sygus-rec-fun"; |
974 |
|
static constexpr const char* sygusRecFunEvalLimit__name = "sygus-rec-fun-eval-limit"; |
975 |
|
static constexpr const char* sygusRepairConst__name = "sygus-repair-const"; |
976 |
|
static constexpr const char* sygusRepairConstTimeout__name = "sygus-repair-const-timeout"; |
977 |
|
static constexpr const char* sygusRew__name = "sygus-rr"; |
978 |
|
static constexpr const char* sygusRewSynth__name = "sygus-rr-synth"; |
979 |
|
static constexpr const char* sygusRewSynthAccel__name = "sygus-rr-synth-accel"; |
980 |
|
static constexpr const char* sygusRewSynthCheck__name = "sygus-rr-synth-check"; |
981 |
|
static constexpr const char* sygusRewSynthFilterCong__name = "sygus-rr-synth-filter-cong"; |
982 |
|
static constexpr const char* sygusRewSynthFilterMatch__name = "sygus-rr-synth-filter-match"; |
983 |
|
static constexpr const char* sygusRewSynthFilterNonLinear__name = "sygus-rr-synth-filter-nl"; |
984 |
|
static constexpr const char* sygusRewSynthFilterOrder__name = "sygus-rr-synth-filter-order"; |
985 |
|
static constexpr const char* sygusRewSynthInput__name = "sygus-rr-synth-input"; |
986 |
|
static constexpr const char* sygusRewSynthInputNVars__name = "sygus-rr-synth-input-nvars"; |
987 |
|
static constexpr const char* sygusRewSynthInputUseBool__name = "sygus-rr-synth-input-use-bool"; |
988 |
|
static constexpr const char* sygusRewSynthRec__name = "sygus-rr-synth-rec"; |
989 |
|
static constexpr const char* sygusRewVerify__name = "sygus-rr-verify"; |
990 |
|
static constexpr const char* sygusRewVerifyAbort__name = "sygus-rr-verify-abort"; |
991 |
|
static constexpr const char* sygusSampleFpUniform__name = "sygus-sample-fp-uniform"; |
992 |
|
static constexpr const char* sygusSampleGrammar__name = "sygus-sample-grammar"; |
993 |
|
static constexpr const char* sygusSamples__name = "sygus-samples"; |
994 |
|
static constexpr const char* cegqiSingleInvMode__name = "sygus-si"; |
995 |
|
static constexpr const char* cegqiSingleInvAbort__name = "sygus-si-abort"; |
996 |
|
static constexpr const char* cegqiSingleInvReconstruct__name = "sygus-si-rcons"; |
997 |
|
static constexpr const char* cegqiSingleInvReconstructLimit__name = "sygus-si-rcons-limit"; |
998 |
|
static constexpr const char* sygusStream__name = "sygus-stream"; |
999 |
|
static constexpr const char* sygusTemplEmbedGrammar__name = "sygus-templ-embed-grammar"; |
1000 |
|
static constexpr const char* sygusUnifCondIndNoRepeatSol__name = "sygus-unif-cond-independent-no-repeat-sol"; |
1001 |
|
static constexpr const char* sygusUnifPi__name = "sygus-unif-pi"; |
1002 |
|
static constexpr const char* sygusUnifShuffleCond__name = "sygus-unif-shuffle-cond"; |
1003 |
|
static constexpr const char* sygusVerifyInstMaxRounds__name = "sygus-verify-inst-max-rounds"; |
1004 |
|
static constexpr const char* termDbCd__name = "term-db-cd"; |
1005 |
|
static constexpr const char* termDbMode__name = "term-db-mode"; |
1006 |
|
static constexpr const char* triggerActiveSelMode__name = "trigger-active-sel"; |
1007 |
|
static constexpr const char* triggerSelMode__name = "trigger-sel"; |
1008 |
|
static constexpr const char* userPatternsQuant__name = "user-pat"; |
1009 |
|
static constexpr const char* varElimQuant__name = "var-elim-quant"; |
1010 |
|
static constexpr const char* varIneqElimQuant__name = "var-ineq-elim-quant"; |
1011 |
|
|
1012 |
|
void setDefaultAggressiveMiniscopeQuant(Options& opts, bool value); |
1013 |
|
void setDefaultCegisSample(Options& opts, CegisSampleMode value); |
1014 |
|
void setDefaultCegqi(Options& opts, bool value); |
1015 |
|
void setDefaultCegqiAll(Options& opts, bool value); |
1016 |
|
void setDefaultCegqiBv(Options& opts, bool value); |
1017 |
|
void setDefaultCegqiBvConcInv(Options& opts, bool value); |
1018 |
|
void setDefaultCegqiBvIneqMode(Options& opts, CegqiBvIneqMode value); |
1019 |
|
void setDefaultCegqiBvInterleaveValue(Options& opts, bool value); |
1020 |
|
void setDefaultCegqiBvLinearize(Options& opts, bool value); |
1021 |
|
void setDefaultCegqiBvRmExtract(Options& opts, bool value); |
1022 |
|
void setDefaultCegqiBvSolveNl(Options& opts, bool value); |
1023 |
|
void setDefaultCegqiFullEffort(Options& opts, bool value); |
1024 |
|
void setDefaultCegqiInnermost(Options& opts, bool value); |
1025 |
|
void setDefaultCegqiMidpoint(Options& opts, bool value); |
1026 |
|
void setDefaultCegqiMinBounds(Options& opts, bool value); |
1027 |
|
void setDefaultCegqiModel(Options& opts, bool value); |
1028 |
|
void setDefaultCegqiMultiInst(Options& opts, bool value); |
1029 |
|
void setDefaultCegqiNestedQE(Options& opts, bool value); |
1030 |
|
void setDefaultCegqiNopt(Options& opts, bool value); |
1031 |
|
void setDefaultCegqiRepeatLit(Options& opts, bool value); |
1032 |
|
void setDefaultCegqiRoundUpLowerLia(Options& opts, bool value); |
1033 |
|
void setDefaultCegqiSat(Options& opts, bool value); |
1034 |
|
void setDefaultCegqiUseInfInt(Options& opts, bool value); |
1035 |
|
void setDefaultCegqiUseInfReal(Options& opts, bool value); |
1036 |
|
void setDefaultCondVarSplitQuantAgg(Options& opts, bool value); |
1037 |
|
void setDefaultCondVarSplitQuant(Options& opts, bool value); |
1038 |
|
void setDefaultConjectureFilterActiveTerms(Options& opts, bool value); |
1039 |
|
void setDefaultConjectureFilterCanonical(Options& opts, bool value); |
1040 |
|
void setDefaultConjectureFilterModel(Options& opts, bool value); |
1041 |
|
void setDefaultConjectureGen(Options& opts, bool value); |
1042 |
|
void setDefaultConjectureGenGtEnum(Options& opts, int64_t value); |
1043 |
|
void setDefaultConjectureGenMaxDepth(Options& opts, int64_t value); |
1044 |
|
void setDefaultConjectureGenPerRound(Options& opts, int64_t value); |
1045 |
|
void setDefaultConjectureUeeIntro(Options& opts, bool value); |
1046 |
|
void setDefaultConjectureNoFilter(Options& opts, bool value); |
1047 |
|
void setDefaultDtStcInduction(Options& opts, bool value); |
1048 |
|
void setDefaultDtVarExpandQuant(Options& opts, bool value); |
1049 |
|
void setDefaultEMatching(Options& opts, bool value); |
1050 |
|
void setDefaultElimTautQuant(Options& opts, bool value); |
1051 |
|
void setDefaultExtRewriteQuant(Options& opts, bool value); |
1052 |
|
void setDefaultFiniteModelFind(Options& opts, bool value); |
1053 |
|
void setDefaultFmfBound(Options& opts, bool value); |
1054 |
|
void setDefaultFmfBoundInt(Options& opts, bool value); |
1055 |
|
void setDefaultFmfBoundLazy(Options& opts, bool value); |
1056 |
|
void setDefaultFmfFmcSimple(Options& opts, bool value); |
1057 |
|
void setDefaultFmfFreshDistConst(Options& opts, bool value); |
1058 |
|
void setDefaultFmfFunWellDefined(Options& opts, bool value); |
1059 |
|
void setDefaultFmfFunWellDefinedRelevant(Options& opts, bool value); |
1060 |
|
void setDefaultFmfInstEngine(Options& opts, bool value); |
1061 |
|
void setDefaultFmfTypeCompletionThresh(Options& opts, int64_t value); |
1062 |
|
void setDefaultFullSaturateInterleave(Options& opts, bool value); |
1063 |
|
void setDefaultFullSaturateStratify(Options& opts, bool value); |
1064 |
|
void setDefaultFullSaturateSum(Options& opts, bool value); |
1065 |
|
void setDefaultFullSaturateQuant(Options& opts, bool value); |
1066 |
|
void setDefaultFullSaturateLimit(Options& opts, int64_t value); |
1067 |
|
void setDefaultFullSaturateQuantRd(Options& opts, bool value); |
1068 |
|
void setDefaultGlobalNegate(Options& opts, bool value); |
1069 |
|
void setDefaultHoElim(Options& opts, bool value); |
1070 |
|
void setDefaultHoElimStoreAx(Options& opts, bool value); |
1071 |
|
void setDefaultHoMatching(Options& opts, bool value); |
1072 |
|
void setDefaultHoMatchingVarArgPriority(Options& opts, bool value); |
1073 |
|
void setDefaultHoMergeTermDb(Options& opts, bool value); |
1074 |
|
void setDefaultIncrementTriggers(Options& opts, bool value); |
1075 |
|
void setDefaultInstLevelInputOnly(Options& opts, bool value); |
1076 |
|
void setDefaultInstMaxLevel(Options& opts, int64_t value); |
1077 |
|
void setDefaultInstMaxRounds(Options& opts, int64_t value); |
1078 |
|
void setDefaultInstNoEntail(Options& opts, bool value); |
1079 |
|
void setDefaultInstWhenMode(Options& opts, InstWhenMode value); |
1080 |
|
void setDefaultInstWhenPhase(Options& opts, int64_t value); |
1081 |
|
void setDefaultInstWhenStrictInterleave(Options& opts, bool value); |
1082 |
|
void setDefaultInstWhenTcFirst(Options& opts, bool value); |
1083 |
|
void setDefaultIntWfInduction(Options& opts, bool value); |
1084 |
|
void setDefaultIteDtTesterSplitQuant(Options& opts, bool value); |
1085 |
|
void setDefaultIteLiftQuant(Options& opts, IteLiftQuantMode value); |
1086 |
|
void setDefaultLiteralMatchMode(Options& opts, LiteralMatchMode value); |
1087 |
|
void setDefaultMacrosQuant(Options& opts, bool value); |
1088 |
|
void setDefaultMacrosQuantMode(Options& opts, MacrosQuantMode value); |
1089 |
|
void setDefaultMbqiMode(Options& opts, MbqiMode value); |
1090 |
|
void setDefaultMbqiInterleave(Options& opts, bool value); |
1091 |
|
void setDefaultFmfOneInstPerRound(Options& opts, bool value); |
1092 |
|
void setDefaultMiniscopeQuant(Options& opts, bool value); |
1093 |
|
void setDefaultMiniscopeQuantFreeVar(Options& opts, bool value); |
1094 |
|
void setDefaultMultiTriggerCache(Options& opts, bool value); |
1095 |
|
void setDefaultMultiTriggerLinear(Options& opts, bool value); |
1096 |
|
void setDefaultMultiTriggerPriority(Options& opts, bool value); |
1097 |
|
void setDefaultMultiTriggerWhenSingle(Options& opts, bool value); |
1098 |
|
void setDefaultPartialTriggers(Options& opts, bool value); |
1099 |
|
void setDefaultPoolInst(Options& opts, bool value); |
1100 |
|
void setDefaultPreSkolemQuant(Options& opts, bool value); |
1101 |
|
void setDefaultPreSkolemQuantAgg(Options& opts, bool value); |
1102 |
|
void setDefaultPreSkolemQuantNested(Options& opts, bool value); |
1103 |
|
void setDefaultPrenexQuant(Options& opts, PrenexQuantMode value); |
1104 |
|
void setDefaultPrenexQuantUser(Options& opts, bool value); |
1105 |
|
void setDefaultPurifyTriggers(Options& opts, bool value); |
1106 |
|
void setDefaultQcfAllConflict(Options& opts, bool value); |
1107 |
|
void setDefaultQcfEagerCheckRd(Options& opts, bool value); |
1108 |
|
void setDefaultQcfEagerTest(Options& opts, bool value); |
1109 |
|
void setDefaultQcfNestedConflict(Options& opts, bool value); |
1110 |
|
void setDefaultQcfSkipRd(Options& opts, bool value); |
1111 |
|
void setDefaultQcfTConstraint(Options& opts, bool value); |
1112 |
|
void setDefaultQcfVoExp(Options& opts, bool value); |
1113 |
|
void setDefaultQuantAlphaEquiv(Options& opts, bool value); |
1114 |
|
void setDefaultQuantConflictFind(Options& opts, bool value); |
1115 |
|
void setDefaultQcfMode(Options& opts, QcfMode value); |
1116 |
|
void setDefaultQcfWhenMode(Options& opts, QcfWhenMode value); |
1117 |
|
void setDefaultQuantDynamicSplit(Options& opts, QuantDSplitMode value); |
1118 |
|
void setDefaultQuantFunWellDefined(Options& opts, bool value); |
1119 |
|
void setDefaultQuantInduction(Options& opts, bool value); |
1120 |
|
void setDefaultQuantRepMode(Options& opts, QuantRepMode value); |
1121 |
|
void setDefaultQuantSplit(Options& opts, bool value); |
1122 |
|
void setDefaultRegisterQuantBodyTerms(Options& opts, bool value); |
1123 |
|
void setDefaultRelationalTriggers(Options& opts, bool value); |
1124 |
|
void setDefaultRelevantTriggers(Options& opts, bool value); |
1125 |
|
void setDefaultSygus(Options& opts, bool value); |
1126 |
|
void setDefaultSygusActiveGenMode(Options& opts, SygusActiveGenMode value); |
1127 |
|
void setDefaultSygusActiveGenEnumConsts(Options& opts, uint64_t value); |
1128 |
|
void setDefaultSygusAddConstGrammar(Options& opts, bool value); |
1129 |
|
void setDefaultSygusArgRelevant(Options& opts, bool value); |
1130 |
|
void setDefaultSygusInvAutoUnfold(Options& opts, bool value); |
1131 |
|
void setDefaultSygusBoolIteReturnConst(Options& opts, bool value); |
1132 |
|
void setDefaultSygusCoreConnective(Options& opts, bool value); |
1133 |
|
void setDefaultSygusConstRepairAbort(Options& opts, bool value); |
1134 |
|
void setDefaultSygusEvalOpt(Options& opts, bool value); |
1135 |
|
void setDefaultSygusEvalUnfold(Options& opts, bool value); |
1136 |
|
void setDefaultSygusEvalUnfoldBool(Options& opts, bool value); |
1137 |
|
void setDefaultSygusExprMinerCheckTimeout(Options& opts, uint64_t value); |
1138 |
|
void setDefaultSygusExtRew(Options& opts, bool value); |
1139 |
|
void setDefaultSygusFilterSolMode(Options& opts, SygusFilterSolMode value); |
1140 |
|
void setDefaultSygusFilterSolRevSubsume(Options& opts, bool value); |
1141 |
|
void setDefaultSygusGrammarConsMode(Options& opts, SygusGrammarConsMode value); |
1142 |
|
void setDefaultSygusGrammarNorm(Options& opts, bool value); |
1143 |
|
void setDefaultSygusInference(Options& opts, bool value); |
1144 |
|
void setDefaultSygusInst(Options& opts, bool value); |
1145 |
|
void setDefaultSygusInstMode(Options& opts, SygusInstMode value); |
1146 |
|
void setDefaultSygusInstScope(Options& opts, SygusInstScope value); |
1147 |
|
void setDefaultSygusInstTermSel(Options& opts, SygusInstTermSelMode value); |
1148 |
|
void setDefaultSygusInvTemplMode(Options& opts, SygusInvTemplMode value); |
1149 |
|
void setDefaultSygusInvTemplWhenSyntax(Options& opts, bool value); |
1150 |
|
void setDefaultSygusMinGrammar(Options& opts, bool value); |
1151 |
|
void setDefaultSygusUnifPbe(Options& opts, bool value); |
1152 |
|
void setDefaultSygusPbeMultiFair(Options& opts, bool value); |
1153 |
|
void setDefaultSygusPbeMultiFairDiff(Options& opts, int64_t value); |
1154 |
|
void setDefaultSygusQePreproc(Options& opts, bool value); |
1155 |
|
void setDefaultSygusQueryGen(Options& opts, bool value); |
1156 |
|
void setDefaultSygusQueryGenCheck(Options& opts, bool value); |
1157 |
|
void setDefaultSygusQueryGenDumpFiles(Options& opts, SygusQueryDumpFilesMode value); |
1158 |
|
void setDefaultSygusQueryGenThresh(Options& opts, uint64_t value); |
1159 |
|
void setDefaultSygusRecFun(Options& opts, bool value); |
1160 |
|
void setDefaultSygusRecFunEvalLimit(Options& opts, uint64_t value); |
1161 |
|
void setDefaultSygusRepairConst(Options& opts, bool value); |
1162 |
|
void setDefaultSygusRepairConstTimeout(Options& opts, uint64_t value); |
1163 |
|
void setDefaultSygusRew(Options& opts, bool value); |
1164 |
|
void setDefaultSygusRewSynth(Options& opts, bool value); |
1165 |
|
void setDefaultSygusRewSynthAccel(Options& opts, bool value); |
1166 |
|
void setDefaultSygusRewSynthCheck(Options& opts, bool value); |
1167 |
|
void setDefaultSygusRewSynthFilterCong(Options& opts, bool value); |
1168 |
|
void setDefaultSygusRewSynthFilterMatch(Options& opts, bool value); |
1169 |
|
void setDefaultSygusRewSynthFilterNonLinear(Options& opts, bool value); |
1170 |
|
void setDefaultSygusRewSynthFilterOrder(Options& opts, bool value); |
1171 |
|
void setDefaultSygusRewSynthInput(Options& opts, bool value); |
1172 |
|
void setDefaultSygusRewSynthInputNVars(Options& opts, int64_t value); |
1173 |
|
void setDefaultSygusRewSynthInputUseBool(Options& opts, bool value); |
1174 |
|
void setDefaultSygusRewSynthRec(Options& opts, bool value); |
1175 |
|
void setDefaultSygusRewVerify(Options& opts, bool value); |
1176 |
|
void setDefaultSygusRewVerifyAbort(Options& opts, bool value); |
1177 |
|
void setDefaultSygusSampleFpUniform(Options& opts, bool value); |
1178 |
|
void setDefaultSygusSampleGrammar(Options& opts, bool value); |
1179 |
|
void setDefaultSygusSamples(Options& opts, int64_t value); |
1180 |
|
void setDefaultCegqiSingleInvMode(Options& opts, CegqiSingleInvMode value); |
1181 |
|
void setDefaultCegqiSingleInvAbort(Options& opts, bool value); |
1182 |
|
void setDefaultCegqiSingleInvReconstruct(Options& opts, CegqiSingleInvRconsMode value); |
1183 |
|
void setDefaultCegqiSingleInvReconstructLimit(Options& opts, int64_t value); |
1184 |
|
void setDefaultSygusStream(Options& opts, bool value); |
1185 |
|
void setDefaultSygusTemplEmbedGrammar(Options& opts, bool value); |
1186 |
|
void setDefaultSygusUnifCondIndNoRepeatSol(Options& opts, bool value); |
1187 |
|
void setDefaultSygusUnifPi(Options& opts, SygusUnifPiMode value); |
1188 |
|
void setDefaultSygusUnifShuffleCond(Options& opts, bool value); |
1189 |
|
void setDefaultSygusVerifyInstMaxRounds(Options& opts, int64_t value); |
1190 |
|
void setDefaultTermDbCd(Options& opts, bool value); |
1191 |
|
void setDefaultTermDbMode(Options& opts, TermDbMode value); |
1192 |
|
void setDefaultTriggerActiveSelMode(Options& opts, TriggerActiveSelMode value); |
1193 |
|
void setDefaultTriggerSelMode(Options& opts, TriggerSelMode value); |
1194 |
|
void setDefaultUserPatternsQuant(Options& opts, UserPatMode value); |
1195 |
|
void setDefaultVarElimQuant(Options& opts, bool value); |
1196 |
|
void setDefaultVarIneqElimQuant(Options& opts, bool value); |
1197 |
|
// clang-format on |
1198 |
|
} |
1199 |
|
|
1200 |
|
} // namespace cvc5::options |
1201 |
|
|
1202 |
|
#endif /* CVC5__OPTIONS__QUANTIFIERS_H */ |