GCC Code Coverage Report
Directory: . Exec Total Coverage
File: build-coverage/src/options/arith_options.h Lines: 13 15 86.7 %
Date: 2021-09-17 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__ARITH_H
22
#define CVC5__OPTIONS__ARITH_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 ArithPropagationMode
34
{
35
  UNATE_PROP, BOTH_PROP, BOUND_INFERENCE_PROP, NO_PROP
36
};
37
static constexpr size_t ArithPropagationMode__numValues = 4;
38
std::ostream& operator<<(std::ostream& os, ArithPropagationMode mode);
39
ArithPropagationMode stringToArithPropagationMode(const std::string& optarg);
40
41
enum class ErrorSelectionRule
42
{
43
  SUM_METRIC, VAR_ORDER, MAXIMUM_AMOUNT, MINIMUM_AMOUNT
44
};
45
static constexpr size_t ErrorSelectionRule__numValues = 4;
46
std::ostream& operator<<(std::ostream& os, ErrorSelectionRule mode);
47
ErrorSelectionRule stringToErrorSelectionRule(const std::string& optarg);
48
49
enum class NlCadLiftingMode
50
{
51
  LAZARD, REGULAR
52
};
53
static constexpr size_t NlCadLiftingMode__numValues = 2;
54
std::ostream& operator<<(std::ostream& os, NlCadLiftingMode mode);
55
NlCadLiftingMode stringToNlCadLiftingMode(const std::string& optarg);
56
57
enum class NlCadProjectionMode
58
{
59
  LAZARD, MCCALLUM, LAZARDMOD
60
};
61
static constexpr size_t NlCadProjectionMode__numValues = 3;
62
std::ostream& operator<<(std::ostream& os, NlCadProjectionMode mode);
63
NlCadProjectionMode stringToNlCadProjectionMode(const std::string& optarg);
64
65
enum class NlExtMode
66
{
67
  FULL, NONE, LIGHT
68
};
69
static constexpr size_t NlExtMode__numValues = 3;
70
std::ostream& operator<<(std::ostream& os, NlExtMode mode);
71
NlExtMode stringToNlExtMode(const std::string& optarg);
72
73
enum class NlRlvMode
74
{
75
  NONE, ALWAYS, INTERLEAVE
76
};
77
static constexpr size_t NlRlvMode__numValues = 3;
78
std::ostream& operator<<(std::ostream& os, NlRlvMode mode);
79
NlRlvMode stringToNlRlvMode(const std::string& optarg);
80
81
enum class ArithUnateLemmaMode
82
{
83
  ALL, EQUALITY, NO, INEQUALITY
84
};
85
static constexpr size_t ArithUnateLemmaMode__numValues = 4;
86
std::ostream& operator<<(std::ostream& os, ArithUnateLemmaMode mode);
87
ArithUnateLemmaMode stringToArithUnateLemmaMode(const std::string& optarg);
88
89
// clang-format on
90
91
#if defined(CVC5_MUZZLED) || defined(CVC5_COMPETITION_MODE)
92
#  define DO_SEMANTIC_CHECKS_BY_DEFAULT false
93
#else /* CVC5_MUZZLED || CVC5_COMPETITION_MODE */
94
#  define DO_SEMANTIC_CHECKS_BY_DEFAULT true
95
#endif /* CVC5_MUZZLED || CVC5_COMPETITION_MODE */
96
97
24139
struct HolderARITH
98
{
99
// clang-format off
100
int64_t maxApproxDepth = 200;
101
  bool maxApproxDepthWasSetByUser = false;
102
  bool brabTest = true;
103
  bool brabTestWasSetByUser = false;
104
  bool arithCongMan = true;
105
  bool arithCongManWasSetByUser = false;
106
  bool arithEqSolver = false;
107
  bool arithEqSolverWasSetByUser = false;
108
  bool arithNoPartialFun = false;
109
  bool arithNoPartialFunWasSetByUser = false;
110
  ArithPropagationMode arithPropagationMode = ArithPropagationMode::BOTH_PROP;
111
  bool arithPropagationModeWasSetByUser = false;
112
  uint64_t arithPropAsLemmaLength = 8;
113
  bool arithPropAsLemmaLengthWasSetByUser = false;
114
  bool arithRewriteEq = false;
115
  bool arithRewriteEqWasSetByUser = false;
116
  bool collectPivots = false;
117
  bool collectPivotsWasSetByUser = false;
118
  bool doCutAllBounded = false;
119
  bool doCutAllBoundedWasSetByUser = false;
120
  bool exportDioDecompositions = false;
121
  bool exportDioDecompositionsWasSetByUser = false;
122
  bool arithDioSolver = true;
123
  bool arithDioSolverWasSetByUser = false;
124
  int64_t dioSolverTurns = 10;
125
  bool dioSolverTurnsWasSetByUser = false;
126
  ErrorSelectionRule arithErrorSelectionRule = ErrorSelectionRule::MINIMUM_AMOUNT;
127
  bool arithErrorSelectionRuleWasSetByUser = false;
128
  bool havePenalties = false;
129
  bool havePenaltiesWasSetByUser = false;
130
  int64_t arithHeuristicPivots = 0;
131
  bool arithHeuristicPivotsWasSetByUser = false;
132
  bool replayFailureLemma = false;
133
  bool replayFailureLemmaWasSetByUser = false;
134
  uint64_t maxCutsInContext = 65535;
135
  bool maxCutsInContextWasSetByUser = false;
136
  bool arithMLTrick = false;
137
  bool arithMLTrickWasSetByUser = false;
138
  uint64_t arithMLTrickSubstitutions = 1;
139
  bool arithMLTrickSubstitutionsWasSetByUser = false;
140
  bool newProp = true;
141
  bool newPropWasSetByUser = false;
142
  bool nlCad = false;
143
  bool nlCadWasSetByUser = false;
144
  bool nlCadUseInitial = false;
145
  bool nlCadUseInitialWasSetByUser = false;
146
  NlCadLiftingMode nlCadLifting = NlCadLiftingMode::REGULAR;
147
  bool nlCadLiftingWasSetByUser = false;
148
  NlCadProjectionMode nlCadProjection = NlCadProjectionMode::MCCALLUM;
149
  bool nlCadProjectionWasSetByUser = false;
150
  NlExtMode nlExt = NlExtMode::FULL;
151
  bool nlExtWasSetByUser = false;
152
  bool nlExtEntailConflicts = false;
153
  bool nlExtEntailConflictsWasSetByUser = false;
154
  bool nlExtFactor = true;
155
  bool nlExtFactorWasSetByUser = false;
156
  bool nlExtIncPrecision = true;
157
  bool nlExtIncPrecisionWasSetByUser = false;
158
  bool nlExtPurify = false;
159
  bool nlExtPurifyWasSetByUser = false;
160
  bool nlExtResBound = false;
161
  bool nlExtResBoundWasSetByUser = false;
162
  bool nlExtRewrites = true;
163
  bool nlExtRewritesWasSetByUser = false;
164
  bool nlExtSplitZero = false;
165
  bool nlExtSplitZeroWasSetByUser = false;
166
  int64_t nlExtTfTaylorDegree = 4;
167
  bool nlExtTfTaylorDegreeWasSetByUser = false;
168
  bool nlExtTfTangentPlanes = true;
169
  bool nlExtTfTangentPlanesWasSetByUser = false;
170
  bool nlExtTangentPlanes = false;
171
  bool nlExtTangentPlanesWasSetByUser = false;
172
  bool nlExtTangentPlanesInterleave = false;
173
  bool nlExtTangentPlanesInterleaveWasSetByUser = false;
174
  bool nlICP = false;
175
  bool nlICPWasSetByUser = false;
176
  NlRlvMode nlRlvMode = NlRlvMode::NONE;
177
  bool nlRlvModeWasSetByUser = false;
178
  bool nlRlvAssertBounds = false;
179
  bool nlRlvAssertBoundsWasSetByUser = false;
180
  bool pbRewrites = false;
181
  bool pbRewritesWasSetByUser = false;
182
  uint64_t arithPivotThreshold = 2;
183
  bool arithPivotThresholdWasSetByUser = false;
184
  uint64_t ppAssertMaxSubSize = 2;
185
  bool ppAssertMaxSubSizeWasSetByUser = false;
186
  uint64_t arithPropagateMaxLength = 16;
187
  bool arithPropagateMaxLengthWasSetByUser = false;
188
  int64_t replayEarlyCloseDepths = 1;
189
  bool replayEarlyCloseDepthsWasSetByUser = false;
190
  uint64_t lemmaRejectCutSize = 25500;
191
  bool lemmaRejectCutSizeWasSetByUser = false;
192
  int64_t replayNumericFailurePenalty = 4194304;
193
  bool replayNumericFailurePenaltyWasSetByUser = false;
194
  uint64_t replayRejectCutSize = 25500;
195
  bool replayRejectCutSizeWasSetByUser = false;
196
  bool restrictedPivots = true;
197
  bool restrictedPivotsWasSetByUser = false;
198
  bool revertArithModels = false;
199
  bool revertArithModelsWasSetByUser = false;
200
  int64_t rrTurns = 3;
201
  bool rrTurnsWasSetByUser = false;
202
  bool trySolveIntStandardEffort = false;
203
  bool trySolveIntStandardEffortWasSetByUser = false;
204
  uint64_t arithSimplexCheckPeriod = 200;
205
  bool arithSimplexCheckPeriodWasSetByUser = false;
206
  bool soiQuickExplain = false;
207
  bool soiQuickExplainWasSetByUser = false;
208
  int64_t arithStandardCheckVarOrderPivots = -1;
209
  bool arithStandardCheckVarOrderPivotsWasSetByUser = false;
210
  ArithUnateLemmaMode arithUnateLemmaMode = ArithUnateLemmaMode::ALL;
211
  bool arithUnateLemmaModeWasSetByUser = false;
212
  bool useApprox = false;
213
  bool useApproxWasSetByUser = false;
214
  bool useFC = false;
215
  bool useFCWasSetByUser = false;
216
  bool useSOI = false;
217
  bool useSOIWasSetByUser = false;
218
// clang-format on
219
};
220
221
#undef DO_SEMANTIC_CHECKS_BY_DEFAULT
222
223
// clang-format off
224
inline int64_t maxApproxDepth() { return Options::current().arith.maxApproxDepth; }
225
inline bool brabTest() { return Options::current().arith.brabTest; }
226
inline bool arithCongMan() { return Options::current().arith.arithCongMan; }
227
19876
inline bool arithEqSolver() { return Options::current().arith.arithEqSolver; }
228
705
inline bool arithNoPartialFun() { return Options::current().arith.arithNoPartialFun; }
229
inline ArithPropagationMode arithPropagationMode() { return Options::current().arith.arithPropagationMode; }
230
inline uint64_t arithPropAsLemmaLength() { return Options::current().arith.arithPropAsLemmaLength; }
231
28113
inline bool arithRewriteEq() { return Options::current().arith.arithRewriteEq; }
232
inline bool collectPivots() { return Options::current().arith.collectPivots; }
233
inline bool doCutAllBounded() { return Options::current().arith.doCutAllBounded; }
234
336
inline bool exportDioDecompositions() { return Options::current().arith.exportDioDecompositions; }
235
inline bool arithDioSolver() { return Options::current().arith.arithDioSolver; }
236
inline int64_t dioSolverTurns() { return Options::current().arith.dioSolverTurns; }
237
39768
inline ErrorSelectionRule arithErrorSelectionRule() { return Options::current().arith.arithErrorSelectionRule; }
238
inline bool havePenalties() { return Options::current().arith.havePenalties; }
239
179076
inline int64_t arithHeuristicPivots() { return Options::current().arith.arithHeuristicPivots; }
240
inline bool replayFailureLemma() { return Options::current().arith.replayFailureLemma; }
241
inline uint64_t maxCutsInContext() { return Options::current().arith.maxCutsInContext; }
242
9484
inline bool arithMLTrick() { return Options::current().arith.arithMLTrick; }
243
inline uint64_t arithMLTrickSubstitutions() { return Options::current().arith.arithMLTrickSubstitutions; }
244
inline bool newProp() { return Options::current().arith.newProp; }
245
inline bool nlCad() { return Options::current().arith.nlCad; }
246
inline bool nlCadUseInitial() { return Options::current().arith.nlCadUseInitial; }
247
inline NlCadLiftingMode nlCadLifting() { return Options::current().arith.nlCadLifting; }
248
inline NlCadProjectionMode nlCadProjection() { return Options::current().arith.nlCadProjection; }
249
inline NlExtMode nlExt() { return Options::current().arith.nlExt; }
250
inline bool nlExtEntailConflicts() { return Options::current().arith.nlExtEntailConflicts; }
251
inline bool nlExtFactor() { return Options::current().arith.nlExtFactor; }
252
inline bool nlExtIncPrecision() { return Options::current().arith.nlExtIncPrecision; }
253
13800
inline bool nlExtPurify() { return Options::current().arith.nlExtPurify; }
254
inline bool nlExtResBound() { return Options::current().arith.nlExtResBound; }
255
inline bool nlExtRewrites() { return Options::current().arith.nlExtRewrites; }
256
inline bool nlExtSplitZero() { return Options::current().arith.nlExtSplitZero; }
257
inline int64_t nlExtTfTaylorDegree() { return Options::current().arith.nlExtTfTaylorDegree; }
258
inline bool nlExtTfTangentPlanes() { return Options::current().arith.nlExtTfTangentPlanes; }
259
inline bool nlExtTangentPlanes() { return Options::current().arith.nlExtTangentPlanes; }
260
inline bool nlExtTangentPlanesInterleave() { return Options::current().arith.nlExtTangentPlanesInterleave; }
261
inline bool nlICP() { return Options::current().arith.nlICP; }
262
inline NlRlvMode nlRlvMode() { return Options::current().arith.nlRlvMode; }
263
inline bool nlRlvAssertBounds() { return Options::current().arith.nlRlvAssertBounds; }
264
13799
inline bool pbRewrites() { return Options::current().arith.pbRewrites; }
265
422446
inline uint64_t arithPivotThreshold() { return Options::current().arith.arithPivotThreshold; }
266
inline uint64_t ppAssertMaxSubSize() { return Options::current().arith.ppAssertMaxSubSize; }
267
inline uint64_t arithPropagateMaxLength() { return Options::current().arith.arithPropagateMaxLength; }
268
inline int64_t replayEarlyCloseDepths() { return Options::current().arith.replayEarlyCloseDepths; }
269
inline uint64_t lemmaRejectCutSize() { return Options::current().arith.lemmaRejectCutSize; }
270
inline int64_t replayNumericFailurePenalty() { return Options::current().arith.replayNumericFailurePenalty; }
271
inline uint64_t replayRejectCutSize() { return Options::current().arith.replayRejectCutSize; }
272
inline bool restrictedPivots() { return Options::current().arith.restrictedPivots; }
273
inline bool revertArithModels() { return Options::current().arith.revertArithModels; }
274
inline int64_t rrTurns() { return Options::current().arith.rrTurns; }
275
inline bool trySolveIntStandardEffort() { return Options::current().arith.trySolveIntStandardEffort; }
276
96622
inline uint64_t arithSimplexCheckPeriod() { return Options::current().arith.arithSimplexCheckPeriod; }
277
inline bool soiQuickExplain() { return Options::current().arith.soiQuickExplain; }
278
123038
inline int64_t arithStandardCheckVarOrderPivots() { return Options::current().arith.arithStandardCheckVarOrderPivots; }
279
inline ArithUnateLemmaMode arithUnateLemmaMode() { return Options::current().arith.arithUnateLemmaMode; }
280
inline bool useApprox() { return Options::current().arith.useApprox; }
281
inline bool useFC() { return Options::current().arith.useFC; }
282
inline bool useSOI() { return Options::current().arith.useSOI; }
283
// clang-format on
284
285
namespace arith
286
{
287
// clang-format off
288
static constexpr const char* maxApproxDepth__name = "approx-branch-depth";
289
static constexpr const char* brabTest__name = "arith-brab";
290
static constexpr const char* arithCongMan__name = "arith-cong-man";
291
static constexpr const char* arithEqSolver__name = "arith-eq-solver";
292
static constexpr const char* arithNoPartialFun__name = "arith-no-partial-fun";
293
static constexpr const char* arithPropagationMode__name = "arith-prop";
294
static constexpr const char* arithPropAsLemmaLength__name = "arith-prop-clauses";
295
static constexpr const char* arithRewriteEq__name = "arith-rewrite-equalities";
296
static constexpr const char* collectPivots__name = "collect-pivot-stats";
297
static constexpr const char* doCutAllBounded__name = "cut-all-bounded";
298
static constexpr const char* exportDioDecompositions__name = "dio-decomps";
299
static constexpr const char* arithDioSolver__name = "dio-solver";
300
static constexpr const char* dioSolverTurns__name = "dio-turns";
301
static constexpr const char* arithErrorSelectionRule__name = "error-selection-rule";
302
static constexpr const char* havePenalties__name = "fc-penalties";
303
static constexpr const char* arithHeuristicPivots__name = "heuristic-pivots";
304
static constexpr const char* replayFailureLemma__name = "lemmas-on-replay-failure";
305
static constexpr const char* maxCutsInContext__name = "maxCutsInContext";
306
static constexpr const char* arithMLTrick__name = "miplib-trick";
307
static constexpr const char* arithMLTrickSubstitutions__name = "miplib-trick-subs";
308
static constexpr const char* newProp__name = "new-prop";
309
static constexpr const char* nlCad__name = "nl-cad";
310
static constexpr const char* nlCadUseInitial__name = "nl-cad-initial";
311
static constexpr const char* nlCadLifting__name = "nl-cad-lift";
312
static constexpr const char* nlCadProjection__name = "nl-cad-proj";
313
static constexpr const char* nlExt__name = "nl-ext";
314
static constexpr const char* nlExtEntailConflicts__name = "nl-ext-ent-conf";
315
static constexpr const char* nlExtFactor__name = "nl-ext-factor";
316
static constexpr const char* nlExtIncPrecision__name = "nl-ext-inc-prec";
317
static constexpr const char* nlExtPurify__name = "nl-ext-purify";
318
static constexpr const char* nlExtResBound__name = "nl-ext-rbound";
319
static constexpr const char* nlExtRewrites__name = "nl-ext-rewrite";
320
static constexpr const char* nlExtSplitZero__name = "nl-ext-split-zero";
321
static constexpr const char* nlExtTfTaylorDegree__name = "nl-ext-tf-taylor-deg";
322
static constexpr const char* nlExtTfTangentPlanes__name = "nl-ext-tf-tplanes";
323
static constexpr const char* nlExtTangentPlanes__name = "nl-ext-tplanes";
324
static constexpr const char* nlExtTangentPlanesInterleave__name = "nl-ext-tplanes-interleave";
325
static constexpr const char* nlICP__name = "nl-icp";
326
static constexpr const char* nlRlvMode__name = "nl-rlv";
327
static constexpr const char* nlRlvAssertBounds__name = "nl-rlv-assert-bounds";
328
static constexpr const char* pbRewrites__name = "pb-rewrites";
329
static constexpr const char* arithPivotThreshold__name = "pivot-threshold";
330
static constexpr const char* ppAssertMaxSubSize__name = "pp-assert-max-sub-size";
331
static constexpr const char* arithPropagateMaxLength__name = "prop-row-length";
332
static constexpr const char* replayEarlyCloseDepths__name = "replay-early-close-depth";
333
static constexpr const char* lemmaRejectCutSize__name = "replay-lemma-reject-cut";
334
static constexpr const char* replayNumericFailurePenalty__name = "replay-num-err-penalty";
335
static constexpr const char* replayRejectCutSize__name = "replay-reject-cut";
336
static constexpr const char* restrictedPivots__name = "restrict-pivots";
337
static constexpr const char* revertArithModels__name = "revert-arith-models-on-unsat";
338
static constexpr const char* rrTurns__name = "rr-turns";
339
static constexpr const char* trySolveIntStandardEffort__name = "se-solve-int";
340
static constexpr const char* arithSimplexCheckPeriod__name = "simplex-check-period";
341
static constexpr const char* soiQuickExplain__name = "soi-qe";
342
static constexpr const char* arithStandardCheckVarOrderPivots__name = "standard-effort-variable-order-pivots";
343
static constexpr const char* arithUnateLemmaMode__name = "unate-lemmas";
344
static constexpr const char* useApprox__name = "use-approx";
345
static constexpr const char* useFC__name = "use-fcsimplex";
346
static constexpr const char* useSOI__name = "use-soi";
347
348
void setDefaultMaxApproxDepth(Options& opts, int64_t value);
349
void setDefaultBrabTest(Options& opts, bool value);
350
void setDefaultArithCongMan(Options& opts, bool value);
351
void setDefaultArithEqSolver(Options& opts, bool value);
352
void setDefaultArithNoPartialFun(Options& opts, bool value);
353
void setDefaultArithPropagationMode(Options& opts, ArithPropagationMode value);
354
void setDefaultArithPropAsLemmaLength(Options& opts, uint64_t value);
355
void setDefaultArithRewriteEq(Options& opts, bool value);
356
void setDefaultCollectPivots(Options& opts, bool value);
357
void setDefaultDoCutAllBounded(Options& opts, bool value);
358
void setDefaultExportDioDecompositions(Options& opts, bool value);
359
void setDefaultArithDioSolver(Options& opts, bool value);
360
void setDefaultDioSolverTurns(Options& opts, int64_t value);
361
void setDefaultArithErrorSelectionRule(Options& opts, ErrorSelectionRule value);
362
void setDefaultHavePenalties(Options& opts, bool value);
363
void setDefaultArithHeuristicPivots(Options& opts, int64_t value);
364
void setDefaultReplayFailureLemma(Options& opts, bool value);
365
void setDefaultMaxCutsInContext(Options& opts, uint64_t value);
366
void setDefaultArithMLTrick(Options& opts, bool value);
367
void setDefaultArithMLTrickSubstitutions(Options& opts, uint64_t value);
368
void setDefaultNewProp(Options& opts, bool value);
369
void setDefaultNlCad(Options& opts, bool value);
370
void setDefaultNlCadUseInitial(Options& opts, bool value);
371
void setDefaultNlCadLifting(Options& opts, NlCadLiftingMode value);
372
void setDefaultNlCadProjection(Options& opts, NlCadProjectionMode value);
373
void setDefaultNlExt(Options& opts, NlExtMode value);
374
void setDefaultNlExtEntailConflicts(Options& opts, bool value);
375
void setDefaultNlExtFactor(Options& opts, bool value);
376
void setDefaultNlExtIncPrecision(Options& opts, bool value);
377
void setDefaultNlExtPurify(Options& opts, bool value);
378
void setDefaultNlExtResBound(Options& opts, bool value);
379
void setDefaultNlExtRewrites(Options& opts, bool value);
380
void setDefaultNlExtSplitZero(Options& opts, bool value);
381
void setDefaultNlExtTfTaylorDegree(Options& opts, int64_t value);
382
void setDefaultNlExtTfTangentPlanes(Options& opts, bool value);
383
void setDefaultNlExtTangentPlanes(Options& opts, bool value);
384
void setDefaultNlExtTangentPlanesInterleave(Options& opts, bool value);
385
void setDefaultNlICP(Options& opts, bool value);
386
void setDefaultNlRlvMode(Options& opts, NlRlvMode value);
387
void setDefaultNlRlvAssertBounds(Options& opts, bool value);
388
void setDefaultPbRewrites(Options& opts, bool value);
389
void setDefaultArithPivotThreshold(Options& opts, uint64_t value);
390
void setDefaultPpAssertMaxSubSize(Options& opts, uint64_t value);
391
void setDefaultArithPropagateMaxLength(Options& opts, uint64_t value);
392
void setDefaultReplayEarlyCloseDepths(Options& opts, int64_t value);
393
void setDefaultLemmaRejectCutSize(Options& opts, uint64_t value);
394
void setDefaultReplayNumericFailurePenalty(Options& opts, int64_t value);
395
void setDefaultReplayRejectCutSize(Options& opts, uint64_t value);
396
void setDefaultRestrictedPivots(Options& opts, bool value);
397
void setDefaultRevertArithModels(Options& opts, bool value);
398
void setDefaultRrTurns(Options& opts, int64_t value);
399
void setDefaultTrySolveIntStandardEffort(Options& opts, bool value);
400
void setDefaultArithSimplexCheckPeriod(Options& opts, uint64_t value);
401
void setDefaultSoiQuickExplain(Options& opts, bool value);
402
void setDefaultArithStandardCheckVarOrderPivots(Options& opts, int64_t value);
403
void setDefaultArithUnateLemmaMode(Options& opts, ArithUnateLemmaMode value);
404
void setDefaultUseApprox(Options& opts, bool value);
405
void setDefaultUseFC(Options& opts, bool value);
406
void setDefaultUseSOI(Options& opts, bool value);
407
// clang-format on
408
}
409
410
}  // namespace cvc5::options
411
412
#endif /* CVC5__OPTIONS__ARITH_H */