SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
GBSettings.h
Go to the documentation of this file.
1 /*
2  * @file: GBSettings.h
3  * @author: Sebastian Junges
4  *
5  */
6 
7 
8 #pragma once
9 
10 #include <carl-arith/poly/umvpoly/MultivariatePolynomial.h>
12 
13 namespace smtrat
14 {
15  /**
16  * Only active if we check inequalities.
17  * AS_RECEIVED: Do not change the received inequalities.
18  * FULL_REDUCED: Pass the fully reduced received inequalities.
19  * REDUCED: Pass the reduced received inequalities.
20  * REDUCED_ONLYSTRICT: Pass the nonstrict inequalities reduced, the others unchanged
21  * FULL_REDUCED_ONLYNEW: Do only a full reduce on the newly added received inequalities.
22  */
24 
26 
28 
30 
32 
34 
35 
36  struct decidePassingPolynomial;
37 
38  typedef carl::StdMultivariatePolynomialPolicies<carl::BVReasons> ReasonPolicy;
39 
40 
41  struct GBSettings5
42  {
43  static constexpr auto moduleName = "GBModule<GBSettings5>";
44  static const unsigned identifier = 5;
45 
46  typedef carl::GrLexOrdering Order;
47  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
48  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
49  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
51  typedef carl::GBProcedure<PolynomialWithReasons, carl::Buchberger, carl::StdAdding> Groebner;
52 
53  static const bool passGB = true;
54  static const bool getReasonsForInfeasibility = true;
55  static const bool passWithMinimalReasons = true;
60  static const unsigned setCheckInequalitiesToBeginAfter = 0;
62  static const bool iterativeVariableRewriting = false;
63 
64  static const unsigned maxSearchExponent = 11;
65 
66  static const bool applyNSS = false;
67  static const unsigned maxSDPdegree = 4;
68  static const unsigned SDPupperBoundNrVariables = 6;
69 
70  };
71 
72 
73 
74  struct GBSettings3
75  {
76  static constexpr auto moduleName = "GBModule<GBSettings3>";
77  static const unsigned identifier = 3;
78 
79  typedef carl::GrLexOrdering Order;
80  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
81  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
82  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
84  typedef carl::GBProcedure<PolynomialWithReasons, carl::Buchberger, carl::StdAdding> Groebner;
85 
86  static const bool passGB = true;
87  static const bool getReasonsForInfeasibility = true;
88  static const bool passWithMinimalReasons = true;
95  static const unsigned setCheckInequalitiesToBeginAfter = 0;
96  static const bool checkInequalitiesForTrivialSumOfSquares = true;
97  static const bool checkEqualitiesForTrivialSumOfSquares = true;
99  static const bool iterativeVariableRewriting = false;
100 
101  static const bool applyNSS = false;
102  static const unsigned maxSDPdegree = 4;
103  static const unsigned SDPupperBoundNrVariables = 6;
104  static const unsigned callSDPAfterNMonomials = 6;
105  static const unsigned sternBrocotStartPrecisionOneTo = 80;
106  static const unsigned sternBrocotHigherPrecisionSteps = 2;
107  static const unsigned sternBrocotHigherPrecisionFactor = 10;
108  };
109 
110  struct GBSettings1
111  {
112  static constexpr auto moduleName = "GBModule<GBSettings1>";
113  static const unsigned identifier = 1;
114 
115  typedef carl::GrLexOrdering Order;
116  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
117  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
118  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
120  typedef carl::GBProcedure<PolynomialWithReasons, carl::Buchberger, carl::StdAdding> Groebner;
121 
122  static const bool passGB = true;
123  static const bool getReasonsForInfeasibility = false;
124  static const bool passWithMinimalReasons = false;
129  static const unsigned setCheckInequalitiesToBeginAfter = 0;
130  static const bool checkInequalitiesForTrivialSumOfSquares = true;
131  static const bool checkEqualitiesForTrivialSumOfSquares = true;
133  static const bool iterativeVariableRewriting = false;
134 
135  static const bool applyNSS = false;
136  static const unsigned maxSDPdegree = 4;
137  static const unsigned SDPupperBoundNrVariables = 6;
138  static const unsigned callSDPAfterNMonomials = 6;
139  static const unsigned sternBrocotStartPrecisionOneTo = 80;
140  static const unsigned sternBrocotHigherPrecisionSteps = 2;
141  static const unsigned sternBrocotHigherPrecisionFactor = 10;
142  };
143 
144  struct GBSettings4
145  {
146  static constexpr auto moduleName = "GBModule<GBSettings4>";
147  static const unsigned identifier = 4;
148 
149  typedef carl::GrLexOrdering Order;
150  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
151  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
152  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
154  typedef carl::GBProcedure<PolynomialWithReasons, carl::Buchberger, carl::StdAdding> Groebner;
155 
156  static const bool passGB = false;
157  static const bool getReasonsForInfeasibility = true;
158  static const bool passWithMinimalReasons = false;
163  static const unsigned setCheckInequalitiesToBeginAfter = 0;
164  static const bool checkInequalitiesForTrivialSumOfSquares = true;
165  static const bool checkEqualitiesForTrivialSumOfSquares = true;
167  static const bool iterativeVariableRewriting = false;
168 
169 
170  static const bool applyNSS = false;
171  static const unsigned maxSDPdegree = 4;
172  static const unsigned SDPupperBoundNrVariables = 6;
173 
174  };
175 
176 
177 
178  struct GBSettings6
179  {
180  static constexpr auto moduleName = "GBModule<GBSettings6>";
181  static const unsigned identifier = 6;
182 
183  typedef carl::GrLexOrdering Order;
184  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
185  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
186  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
188  typedef carl::GBProcedure<PolynomialWithReasons, carl::Buchberger, carl::StdAdding> Groebner;
189 
190  static const bool passGB = false;
191  static const bool getReasonsForInfeasibility = true;
192  static const bool passWithMinimalReasons = false;
197  static const unsigned setCheckInequalitiesToBeginAfter = 0;
198  static const bool checkInequalitiesForTrivialSumOfSquares = true;
199  static const bool checkEqualitiesForTrivialSumOfSquares = true;
201  static const bool iterativeVariableRewriting = false;
202 
203 
204  static const unsigned maxSearchExponent = 11;
205 
206  static const bool applyNSS = false;
207  static const unsigned maxSDPdegree = 4;
208  static const unsigned SDPupperBoundNrVariables = 6;
209  static const unsigned callSDPAfterNMonomials = 6;
210  static const unsigned sternBrocotStartPrecisionOneTo = 80;
211  static const unsigned sternBrocotHigherPrecisionSteps = 2;
212  static const unsigned sternBrocotHigherPrecisionFactor = 10;
213  };
214 
216  {
217  static const unsigned identifier = 41;
218  static const bool iterativeVariableRewriting = true;
219  };
220 
222  {
223  static const unsigned identifier = 51;
224  static const bool iterativeVariableRewriting = true;
225  };
226 
228  {
229  typedef carl::GrLexOrdering Order;
230  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
231  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
232  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
234 
235  static const unsigned identifier = 511;
236  static const bool iterativeVariableRewriting = true;
237  };
238 
239 
241  {
242  static const unsigned identifier = 61;
243  static const bool iterativeVariableRewriting = true;
244  };
245 
247  {
248  typedef carl::GrLexOrdering Order;
249  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
250  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
251  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
253 
254  static const unsigned identifier = 611;
255  static const bool iterativeVariableRewriting = true;
256  };
257 
258 
260  {
261  static const unsigned identifier = 43;
262  static const bool applyNSS = true;
263  static const unsigned maxSDPdegree = 4;
264  static const unsigned SDPupperBoundNrVariables = 15;
265 
266  };
267 
269  {
270  typedef carl::GrLexOrdering Order;
271  typedef carl::MultivariatePolynomial<Rational, Order, ReasonPolicy> PolynomialWithReasons;
272  typedef carl::Ideal<PolynomialWithReasons> MultivariateIdeal;
273  typedef carl::Reductor<PolynomialWithReasons,PolynomialWithReasons> Reductor;
275 
276 
277 
278  static const unsigned identifier = 63;
279  static const bool applyNSS = true;
280  static const unsigned maxSDPdegree = 4;
281  static const unsigned SDPupperBoundNrVariables = 15;
282 
283  };
284 
285 
287  template<typename O, typename P>
288  static bool evaluate (const carl::MultivariatePolynomial<Rational, O, P>& original, const carl::MultivariatePolynomial<Rational, O, P>& reduced) {
289  return (original.lterm().tdeg() >= reduced.lterm().tdeg() && original.nr_terms() > reduced.nr_terms() );
290  }
291  };
292 
293 }
Class to create the formulas for axioms.
transform_inequalities
Definition: GBSettings.h:31
@ ONLY_NONSTRICT
Definition: GBSettings.h:31
@ NO_INEQUALITIES
Definition: GBSettings.h:31
@ ALL_INEQUALITIES
Definition: GBSettings.h:31
backtracking_mode
Definition: GBSettings.h:33
@ CHRONOLOGICAL
Definition: GBSettings.h:33
@ NON_CHRONOLOGICAL
Definition: GBSettings.h:33
pass_inequalities
Only active if we check inequalities.
Definition: GBSettings.h:23
@ AS_RECEIVED
Definition: GBSettings.h:23
@ FULL_REDUCED
Definition: GBSettings.h:23
@ FULL_REDUCED_IF
Definition: GBSettings.h:23
theory_deductions
Definition: GBSettings.h:27
@ NO_CONSTRAINTS
Definition: GBSettings.h:27
@ ALL_CONSTRAINTS
Definition: GBSettings.h:27
@ ONLY_INEQUALITIES
Definition: GBSettings.h:27
check_inequalities
Definition: GBSettings.h:29
@ ALWAYS
Definition: GBSettings.h:29
@ NEVER
Definition: GBSettings.h:29
@ AFTER_NEW_GB
Definition: GBSettings.h:29
carl::StdMultivariatePolynomialPolicies< carl::BVReasons > ReasonPolicy
Definition: GBSettings.h:36
after_firstInfeasibleSubset
Definition: GBSettings.h:25
@ PROCEED_ALLINEQUALITIES
Definition: GBSettings.h:25
@ RETURN_DIRECTLY
Definition: GBSettings.h:25
@ PROCEED_INFEASIBLEANDDEDUCTION
Definition: GBSettings.h:25
static constexpr auto moduleName
Definition: GBSettings.h:112
static const check_inequalities checkInequalities
Definition: GBSettings.h:125
static const transform_inequalities transformIntoEqualities
Definition: GBSettings.h:132
static const bool getReasonsForInfeasibility
Definition: GBSettings.h:123
carl::GBProcedure< PolynomialWithReasons, carl::Buchberger, carl::StdAdding > Groebner
Definition: GBSettings.h:120
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:118
static const bool passGB
Definition: GBSettings.h:122
static const unsigned sternBrocotHigherPrecisionSteps
Definition: GBSettings.h:140
static const unsigned sternBrocotHigherPrecisionFactor
Definition: GBSettings.h:141
static const bool passWithMinimalReasons
Definition: GBSettings.h:124
static const theory_deductions addTheoryDeductions
Definition: GBSettings.h:128
static const bool checkInequalitiesForTrivialSumOfSquares
Definition: GBSettings.h:130
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:116
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:117
static const unsigned callSDPAfterNMonomials
Definition: GBSettings.h:138
carl::GrLexOrdering Order
Definition: GBSettings.h:115
static const bool applyNSS
Definition: GBSettings.h:135
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:137
static const unsigned sternBrocotStartPrecisionOneTo
Definition: GBSettings.h:139
static const pass_inequalities passInequalities
Definition: GBSettings.h:126
static const unsigned identifier
Definition: GBSettings.h:113
static const bool checkEqualitiesForTrivialSumOfSquares
Definition: GBSettings.h:131
static const after_firstInfeasibleSubset withInfeasibleSubset
Definition: GBSettings.h:127
static const unsigned maxSDPdegree
Definition: GBSettings.h:136
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:119
static const bool iterativeVariableRewriting
Definition: GBSettings.h:133
static const unsigned setCheckInequalitiesToBeginAfter
Definition: GBSettings.h:129
static const unsigned callSDPAfterNMonomials
Definition: GBSettings.h:104
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:81
static const backtracking_mode backtrackingIneq
Definition: GBSettings.h:90
static constexpr auto moduleName
Definition: GBSettings.h:76
static const unsigned sternBrocotHigherPrecisionFactor
Definition: GBSettings.h:107
static const bool passGB
Definition: GBSettings.h:86
static const bool iterativeVariableRewriting
Definition: GBSettings.h:99
static const bool passWithMinimalReasons
Definition: GBSettings.h:88
static const bool getReasonsForInfeasibility
Definition: GBSettings.h:87
static const theory_deductions addTheoryDeductions
Definition: GBSettings.h:94
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:80
static const after_firstInfeasibleSubset withInfeasibleSubset
Definition: GBSettings.h:93
carl::GrLexOrdering Order
Definition: GBSettings.h:79
static const unsigned identifier
Definition: GBSettings.h:77
static const bool checkInequalitiesForTrivialSumOfSquares
Definition: GBSettings.h:96
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:83
carl::GBProcedure< PolynomialWithReasons, carl::Buchberger, carl::StdAdding > Groebner
Definition: GBSettings.h:84
static const check_inequalities checkInequalities
Definition: GBSettings.h:91
static const bool checkEqualitiesForTrivialSumOfSquares
Definition: GBSettings.h:97
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:82
static const unsigned maxSDPdegree
Definition: GBSettings.h:102
static const unsigned sternBrocotStartPrecisionOneTo
Definition: GBSettings.h:105
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:103
static const unsigned sternBrocotHigherPrecisionSteps
Definition: GBSettings.h:106
static const backtracking_mode backtrackingGB
Definition: GBSettings.h:89
static const pass_inequalities passInequalities
Definition: GBSettings.h:92
static const transform_inequalities transformIntoEqualities
Definition: GBSettings.h:98
static const bool applyNSS
Definition: GBSettings.h:101
static const unsigned setCheckInequalitiesToBeginAfter
Definition: GBSettings.h:95
static const unsigned identifier
Definition: GBSettings.h:217
static const bool iterativeVariableRewriting
Definition: GBSettings.h:218
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:264
static const unsigned maxSDPdegree
Definition: GBSettings.h:263
static const unsigned identifier
Definition: GBSettings.h:261
static const bool applyNSS
Definition: GBSettings.h:262
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:153
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:150
static const unsigned setCheckInequalitiesToBeginAfter
Definition: GBSettings.h:163
static constexpr auto moduleName
Definition: GBSettings.h:146
carl::GrLexOrdering Order
Definition: GBSettings.h:149
static const bool getReasonsForInfeasibility
Definition: GBSettings.h:157
static const bool checkEqualitiesForTrivialSumOfSquares
Definition: GBSettings.h:165
static const bool applyNSS
Definition: GBSettings.h:170
static const bool checkInequalitiesForTrivialSumOfSquares
Definition: GBSettings.h:164
static const bool iterativeVariableRewriting
Definition: GBSettings.h:167
static const transform_inequalities transformIntoEqualities
Definition: GBSettings.h:166
static const after_firstInfeasibleSubset withInfeasibleSubset
Definition: GBSettings.h:161
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:151
static const unsigned identifier
Definition: GBSettings.h:147
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:172
static const theory_deductions addTheoryDeductions
Definition: GBSettings.h:162
static const bool passWithMinimalReasons
Definition: GBSettings.h:158
carl::GBProcedure< PolynomialWithReasons, carl::Buchberger, carl::StdAdding > Groebner
Definition: GBSettings.h:154
static const pass_inequalities passInequalities
Definition: GBSettings.h:160
static const unsigned maxSDPdegree
Definition: GBSettings.h:171
static const bool passGB
Definition: GBSettings.h:156
static const check_inequalities checkInequalities
Definition: GBSettings.h:159
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:152
carl::GrLexOrdering Order
Definition: GBSettings.h:229
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:233
static const unsigned identifier
Definition: GBSettings.h:235
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:231
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:230
static const bool iterativeVariableRewriting
Definition: GBSettings.h:236
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:232
static const unsigned identifier
Definition: GBSettings.h:223
static const bool iterativeVariableRewriting
Definition: GBSettings.h:224
static const transform_inequalities transformIntoEqualities
Definition: GBSettings.h:61
static const pass_inequalities passInequalities
Definition: GBSettings.h:57
static const unsigned setCheckInequalitiesToBeginAfter
Definition: GBSettings.h:60
static const bool iterativeVariableRewriting
Definition: GBSettings.h:62
carl::GBProcedure< PolynomialWithReasons, carl::Buchberger, carl::StdAdding > Groebner
Definition: GBSettings.h:51
static constexpr auto moduleName
Definition: GBSettings.h:43
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:48
static const bool passGB
Definition: GBSettings.h:53
static const check_inequalities checkInequalities
Definition: GBSettings.h:56
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:49
static const unsigned maxSDPdegree
Definition: GBSettings.h:67
carl::GrLexOrdering Order
Definition: GBSettings.h:46
static const bool passWithMinimalReasons
Definition: GBSettings.h:55
static const bool applyNSS
Definition: GBSettings.h:66
static const bool getReasonsForInfeasibility
Definition: GBSettings.h:54
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:47
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:68
static const after_firstInfeasibleSubset withInfeasibleSubset
Definition: GBSettings.h:58
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:50
static const unsigned maxSearchExponent
Definition: GBSettings.h:64
static const theory_deductions addTheoryDeductions
Definition: GBSettings.h:59
static const unsigned identifier
Definition: GBSettings.h:44
static const bool iterativeVariableRewriting
Definition: GBSettings.h:255
carl::GrLexOrdering Order
Definition: GBSettings.h:248
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:251
static const unsigned identifier
Definition: GBSettings.h:254
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:250
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:252
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:249
static const unsigned identifier
Definition: GBSettings.h:242
static const bool iterativeVariableRewriting
Definition: GBSettings.h:243
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:274
static const unsigned identifier
Definition: GBSettings.h:278
carl::GrLexOrdering Order
Definition: GBSettings.h:270
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:271
static const bool applyNSS
Definition: GBSettings.h:279
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:281
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:272
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:273
static const unsigned maxSDPdegree
Definition: GBSettings.h:280
static const bool checkEqualitiesForTrivialSumOfSquares
Definition: GBSettings.h:199
static const unsigned identifier
Definition: GBSettings.h:181
static const unsigned setCheckInequalitiesToBeginAfter
Definition: GBSettings.h:197
static const check_inequalities checkInequalities
Definition: GBSettings.h:193
static const unsigned maxSearchExponent
Definition: GBSettings.h:204
static const after_firstInfeasibleSubset withInfeasibleSubset
Definition: GBSettings.h:195
static const transform_inequalities transformIntoEqualities
Definition: GBSettings.h:200
static const bool iterativeVariableRewriting
Definition: GBSettings.h:201
carl::GrLexOrdering Order
Definition: GBSettings.h:183
static const unsigned callSDPAfterNMonomials
Definition: GBSettings.h:209
static const bool passGB
Definition: GBSettings.h:190
static const bool applyNSS
Definition: GBSettings.h:206
static const unsigned sternBrocotHigherPrecisionSteps
Definition: GBSettings.h:211
smtrat::decidePassingPolynomial passPolynomial
Definition: GBSettings.h:187
static constexpr auto moduleName
Definition: GBSettings.h:180
static const pass_inequalities passInequalities
Definition: GBSettings.h:194
static const bool passWithMinimalReasons
Definition: GBSettings.h:192
static const bool checkInequalitiesForTrivialSumOfSquares
Definition: GBSettings.h:198
static const unsigned maxSDPdegree
Definition: GBSettings.h:207
static const unsigned sternBrocotStartPrecisionOneTo
Definition: GBSettings.h:210
static const unsigned SDPupperBoundNrVariables
Definition: GBSettings.h:208
static const theory_deductions addTheoryDeductions
Definition: GBSettings.h:196
carl::Reductor< PolynomialWithReasons, PolynomialWithReasons > Reductor
Definition: GBSettings.h:186
carl::Ideal< PolynomialWithReasons > MultivariateIdeal
Definition: GBSettings.h:185
carl::GBProcedure< PolynomialWithReasons, carl::Buchberger, carl::StdAdding > Groebner
Definition: GBSettings.h:188
carl::MultivariatePolynomial< Rational, Order, ReasonPolicy > PolynomialWithReasons
Definition: GBSettings.h:184
static const unsigned sternBrocotHigherPrecisionFactor
Definition: GBSettings.h:212
static const bool getReasonsForInfeasibility
Definition: GBSettings.h:191
static bool evaluate(const carl::MultivariatePolynomial< Rational, O, P > &original, const carl::MultivariatePolynomial< Rational, O, P > &reduced)
Definition: GBSettings.h:288