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