OR-Tools  9.1
sat_parameters.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/sat/sat_parameters.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fsat_5fparameters_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fsat_5fparameters_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3017000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
14 #error your headers.
15 #endif
16 #if 3017003 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/metadata_lite.h>
29 #include <google/protobuf/generated_message_reflection.h>
30 #include <google/protobuf/message.h>
31 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
32 #include <google/protobuf/extension_set.h> // IWYU pragma: export
33 #include <google/protobuf/generated_enum_reflection.h>
34 #include <google/protobuf/unknown_field_set.h>
35 // @@protoc_insertion_point(includes)
36 #include <google/protobuf/port_def.inc>
37 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fsat_5fparameters_2eproto
38 PROTOBUF_NAMESPACE_OPEN
39 namespace internal {
40 class AnyMetadata;
41 } // namespace internal
42 PROTOBUF_NAMESPACE_CLOSE
43 
44 // Internal implementation detail -- do not use these members.
46  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
47  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
48  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
49  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
50  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
51  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
52  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
53  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
54  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
55 };
56 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fsat_5fparameters_2eproto;
57 namespace operations_research {
58 namespace sat {
59 class SatParameters;
60 struct SatParametersDefaultTypeInternal;
61 extern SatParametersDefaultTypeInternal _SatParameters_default_instance_;
62 } // namespace sat
63 } // namespace operations_research
64 PROTOBUF_NAMESPACE_OPEN
65 template<> ::operations_research::sat::SatParameters* Arena::CreateMaybeMessage<::operations_research::sat::SatParameters>(Arena*);
66 PROTOBUF_NAMESPACE_CLOSE
67 namespace operations_research {
68 namespace sat {
69 
74 };
79 
80 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_VariableOrder_descriptor();
81 template<typename T>
82 inline const std::string& SatParameters_VariableOrder_Name(T enum_t_value) {
85  "Incorrect type passed to function SatParameters_VariableOrder_Name.");
86  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
88 }
90  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_VariableOrder* value) {
91  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_VariableOrder>(
93 }
100 };
105 
106 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_Polarity_descriptor();
107 template<typename T>
108 inline const std::string& SatParameters_Polarity_Name(T enum_t_value) {
111  "Incorrect type passed to function SatParameters_Polarity_Name.");
112  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
113  SatParameters_Polarity_descriptor(), enum_t_value);
114 }
116  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_Polarity* value) {
117  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_Polarity>(
119 }
125 };
130 
131 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_ConflictMinimizationAlgorithm_descriptor();
132 template<typename T>
133 inline const std::string& SatParameters_ConflictMinimizationAlgorithm_Name(T enum_t_value) {
136  "Incorrect type passed to function SatParameters_ConflictMinimizationAlgorithm_Name.");
137  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
139 }
141  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_ConflictMinimizationAlgorithm* value) {
142  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_ConflictMinimizationAlgorithm>(
144 }
151 };
156 
157 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_BinaryMinizationAlgorithm_descriptor();
158 template<typename T>
159 inline const std::string& SatParameters_BinaryMinizationAlgorithm_Name(T enum_t_value) {
162  "Incorrect type passed to function SatParameters_BinaryMinizationAlgorithm_Name.");
163  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
165 }
167  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_BinaryMinizationAlgorithm* value) {
168  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_BinaryMinizationAlgorithm>(
170 }
175 };
180 
181 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_ClauseProtection_descriptor();
182 template<typename T>
183 inline const std::string& SatParameters_ClauseProtection_Name(T enum_t_value) {
186  "Incorrect type passed to function SatParameters_ClauseProtection_Name.");
187  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
189 }
191  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_ClauseProtection* value) {
192  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_ClauseProtection>(
194 }
198 };
203 
204 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_ClauseOrdering_descriptor();
205 template<typename T>
206 inline const std::string& SatParameters_ClauseOrdering_Name(T enum_t_value) {
209  "Incorrect type passed to function SatParameters_ClauseOrdering_Name.");
210  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
212 }
214  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_ClauseOrdering* value) {
215  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_ClauseOrdering>(
217 }
224 };
229 
230 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_RestartAlgorithm_descriptor();
231 template<typename T>
232 inline const std::string& SatParameters_RestartAlgorithm_Name(T enum_t_value) {
235  "Incorrect type passed to function SatParameters_RestartAlgorithm_Name.");
236  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
238 }
240  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_RestartAlgorithm* value) {
241  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_RestartAlgorithm>(
243 }
248 };
253 
254 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_MaxSatAssumptionOrder_descriptor();
255 template<typename T>
256 inline const std::string& SatParameters_MaxSatAssumptionOrder_Name(T enum_t_value) {
259  "Incorrect type passed to function SatParameters_MaxSatAssumptionOrder_Name.");
260  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
262 }
264  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_MaxSatAssumptionOrder* value) {
265  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_MaxSatAssumptionOrder>(
267 }
272 };
277 
278 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_MaxSatStratificationAlgorithm_descriptor();
279 template<typename T>
280 inline const std::string& SatParameters_MaxSatStratificationAlgorithm_Name(T enum_t_value) {
283  "Incorrect type passed to function SatParameters_MaxSatStratificationAlgorithm_Name.");
284  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
286 }
288  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_MaxSatStratificationAlgorithm* value) {
289  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_MaxSatStratificationAlgorithm>(
291 }
300 };
305 
306 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_SearchBranching_descriptor();
307 template<typename T>
308 inline const std::string& SatParameters_SearchBranching_Name(T enum_t_value) {
311  "Incorrect type passed to function SatParameters_SearchBranching_Name.");
312  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
314 }
316  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_SearchBranching* value) {
317  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_SearchBranching>(
319 }
325 };
330 
331 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SatParameters_FPRoundingMethod_descriptor();
332 template<typename T>
333 inline const std::string& SatParameters_FPRoundingMethod_Name(T enum_t_value) {
336  "Incorrect type passed to function SatParameters_FPRoundingMethod_Name.");
337  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
339 }
341  ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_FPRoundingMethod* value) {
342  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_FPRoundingMethod>(
344 }
345 // ===================================================================
346 
347 class SatParameters final :
348  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.SatParameters) */ {
349  public:
350  inline SatParameters() : SatParameters(nullptr) {}
351  ~SatParameters() override;
352  explicit constexpr SatParameters(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
353 
354  SatParameters(const SatParameters& from);
355  SatParameters(SatParameters&& from) noexcept
356  : SatParameters() {
357  *this = ::std::move(from);
358  }
359 
360  inline SatParameters& operator=(const SatParameters& from) {
361  CopyFrom(from);
362  return *this;
363  }
364  inline SatParameters& operator=(SatParameters&& from) noexcept {
365  if (this == &from) return *this;
366  if (GetOwningArena() == from.GetOwningArena()) {
367  InternalSwap(&from);
368  } else {
369  CopyFrom(from);
370  }
371  return *this;
372  }
373 
374  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
375  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
376  }
377  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
378  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
379  }
380 
381  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
382  return GetDescriptor();
383  }
384  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
385  return default_instance().GetMetadata().descriptor;
386  }
387  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
388  return default_instance().GetMetadata().reflection;
389  }
390  static const SatParameters& default_instance() {
391  return *internal_default_instance();
392  }
393  static inline const SatParameters* internal_default_instance() {
394  return reinterpret_cast<const SatParameters*>(
396  }
397  static constexpr int kIndexInFileMessages =
398  0;
399 
400  friend void swap(SatParameters& a, SatParameters& b) {
401  a.Swap(&b);
402  }
403  inline void Swap(SatParameters* other) {
404  if (other == this) return;
405  if (GetOwningArena() == other->GetOwningArena()) {
406  InternalSwap(other);
407  } else {
408  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
409  }
410  }
412  if (other == this) return;
413  GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
414  InternalSwap(other);
415  }
416 
417  // implements Message ----------------------------------------------
418 
419  inline SatParameters* New() const final {
420  return new SatParameters();
421  }
422 
423  SatParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
424  return CreateMaybeMessage<SatParameters>(arena);
425  }
426  using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
427  void CopyFrom(const SatParameters& from);
428  using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
429  void MergeFrom(const SatParameters& from);
430  private:
431  static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from);
432  public:
433  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
434  bool IsInitialized() const final;
435 
436  size_t ByteSizeLong() const final;
437  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
438  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
439  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
440  int GetCachedSize() const final { return _cached_size_.Get(); }
441 
442  private:
443  void SharedCtor();
444  void SharedDtor();
445  void SetCachedSize(int size) const final;
446  void InternalSwap(SatParameters* other);
447  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
448  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
449  return "operations_research.sat.SatParameters";
450  }
451  protected:
452  explicit SatParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena,
453  bool is_message_owned = false);
454  private:
455  static void ArenaDtor(void* object);
456  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
457  public:
458 
459  static const ClassData _class_data_;
460  const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
461 
462  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
463 
464  // nested types ----------------------------------------------------
465 
467  static constexpr VariableOrder IN_ORDER =
469  static constexpr VariableOrder IN_REVERSE_ORDER =
471  static constexpr VariableOrder IN_RANDOM_ORDER =
473  static inline bool VariableOrder_IsValid(int value) {
475  }
476  static constexpr VariableOrder VariableOrder_MIN =
478  static constexpr VariableOrder VariableOrder_MAX =
480  static constexpr int VariableOrder_ARRAYSIZE =
482  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
485  }
486  template<typename T>
487  static inline const std::string& VariableOrder_Name(T enum_t_value) {
488  static_assert(::std::is_same<T, VariableOrder>::value ||
490  "Incorrect type passed to function VariableOrder_Name.");
491  return SatParameters_VariableOrder_Name(enum_t_value);
492  }
493  static inline bool VariableOrder_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
494  VariableOrder* value) {
496  }
497 
499  static constexpr Polarity POLARITY_TRUE =
501  static constexpr Polarity POLARITY_FALSE =
503  static constexpr Polarity POLARITY_RANDOM =
505  static constexpr Polarity POLARITY_WEIGHTED_SIGN =
509  static inline bool Polarity_IsValid(int value) {
511  }
512  static constexpr Polarity Polarity_MIN =
514  static constexpr Polarity Polarity_MAX =
516  static constexpr int Polarity_ARRAYSIZE =
518  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
521  }
522  template<typename T>
523  static inline const std::string& Polarity_Name(T enum_t_value) {
524  static_assert(::std::is_same<T, Polarity>::value ||
526  "Incorrect type passed to function Polarity_Name.");
527  return SatParameters_Polarity_Name(enum_t_value);
528  }
529  static inline bool Polarity_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
530  Polarity* value) {
532  }
533 
545  }
552  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
555  }
556  template<typename T>
557  static inline const std::string& ConflictMinimizationAlgorithm_Name(T enum_t_value) {
560  "Incorrect type passed to function ConflictMinimizationAlgorithm_Name.");
562  }
563  static inline bool ConflictMinimizationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
566  }
567 
579  static inline bool BinaryMinizationAlgorithm_IsValid(int value) {
581  }
586  static constexpr int BinaryMinizationAlgorithm_ARRAYSIZE =
588  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
591  }
592  template<typename T>
593  static inline const std::string& BinaryMinizationAlgorithm_Name(T enum_t_value) {
596  "Incorrect type passed to function BinaryMinizationAlgorithm_Name.");
598  }
599  static inline bool BinaryMinizationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
602  }
603 
609  static constexpr ClauseProtection PROTECTION_LBD =
611  static inline bool ClauseProtection_IsValid(int value) {
613  }
618  static constexpr int ClauseProtection_ARRAYSIZE =
620  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
623  }
624  template<typename T>
625  static inline const std::string& ClauseProtection_Name(T enum_t_value) {
628  "Incorrect type passed to function ClauseProtection_Name.");
629  return SatParameters_ClauseProtection_Name(enum_t_value);
630  }
631  static inline bool ClauseProtection_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
634  }
635 
637  static constexpr ClauseOrdering CLAUSE_ACTIVITY =
639  static constexpr ClauseOrdering CLAUSE_LBD =
641  static inline bool ClauseOrdering_IsValid(int value) {
643  }
648  static constexpr int ClauseOrdering_ARRAYSIZE =
650  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
653  }
654  template<typename T>
655  static inline const std::string& ClauseOrdering_Name(T enum_t_value) {
656  static_assert(::std::is_same<T, ClauseOrdering>::value ||
658  "Incorrect type passed to function ClauseOrdering_Name.");
659  return SatParameters_ClauseOrdering_Name(enum_t_value);
660  }
661  static inline bool ClauseOrdering_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
664  }
665 
667  static constexpr RestartAlgorithm NO_RESTART =
669  static constexpr RestartAlgorithm LUBY_RESTART =
675  static constexpr RestartAlgorithm FIXED_RESTART =
677  static inline bool RestartAlgorithm_IsValid(int value) {
679  }
684  static constexpr int RestartAlgorithm_ARRAYSIZE =
686  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
689  }
690  template<typename T>
691  static inline const std::string& RestartAlgorithm_Name(T enum_t_value) {
694  "Incorrect type passed to function RestartAlgorithm_Name.");
695  return SatParameters_RestartAlgorithm_Name(enum_t_value);
696  }
697  static inline bool RestartAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
700  }
701 
709  static inline bool MaxSatAssumptionOrder_IsValid(int value) {
711  }
716  static constexpr int MaxSatAssumptionOrder_ARRAYSIZE =
718  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
721  }
722  template<typename T>
723  static inline const std::string& MaxSatAssumptionOrder_Name(T enum_t_value) {
726  "Incorrect type passed to function MaxSatAssumptionOrder_Name.");
727  return SatParameters_MaxSatAssumptionOrder_Name(enum_t_value);
728  }
729  static inline bool MaxSatAssumptionOrder_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
732  }
733 
743  }
750  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
753  }
754  template<typename T>
755  static inline const std::string& MaxSatStratificationAlgorithm_Name(T enum_t_value) {
758  "Incorrect type passed to function MaxSatStratificationAlgorithm_Name.");
760  }
761  static inline bool MaxSatStratificationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
764  }
765 
769  static constexpr SearchBranching FIXED_SEARCH =
773  static constexpr SearchBranching LP_SEARCH =
779  static constexpr SearchBranching HINT_SEARCH =
781  static inline bool SearchBranching_IsValid(int value) {
783  }
788  static constexpr int SearchBranching_ARRAYSIZE =
790  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
793  }
794  template<typename T>
795  static inline const std::string& SearchBranching_Name(T enum_t_value) {
796  static_assert(::std::is_same<T, SearchBranching>::value ||
798  "Incorrect type passed to function SearchBranching_Name.");
799  return SatParameters_SearchBranching_Name(enum_t_value);
800  }
801  static inline bool SearchBranching_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
804  }
805 
809  static constexpr FPRoundingMethod LOCK_BASED =
815  static inline bool FPRoundingMethod_IsValid(int value) {
817  }
822  static constexpr int FPRoundingMethod_ARRAYSIZE =
824  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
827  }
828  template<typename T>
829  static inline const std::string& FPRoundingMethod_Name(T enum_t_value) {
832  "Incorrect type passed to function FPRoundingMethod_Name.");
833  return SatParameters_FPRoundingMethod_Name(enum_t_value);
834  }
835  static inline bool FPRoundingMethod_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
838  }
839 
840  // accessors -------------------------------------------------------
841 
842  enum : int {
1013  };
1014  // repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;
1015  int restart_algorithms_size() const;
1016  private:
1017  int _internal_restart_algorithms_size() const;
1018  public:
1019  void clear_restart_algorithms();
1020  private:
1021  ::operations_research::sat::SatParameters_RestartAlgorithm _internal_restart_algorithms(int index) const;
1022  void _internal_add_restart_algorithms(::operations_research::sat::SatParameters_RestartAlgorithm value);
1023  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_restart_algorithms();
1024  public:
1028  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& restart_algorithms() const;
1029  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_restart_algorithms();
1030 
1031  // optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];
1032  bool has_default_restart_algorithms() const;
1033  private:
1034  bool _internal_has_default_restart_algorithms() const;
1035  public:
1037  const std::string& default_restart_algorithms() const;
1038  template <typename ArgT0 = const std::string&, typename... ArgT>
1039  void set_default_restart_algorithms(ArgT0&& arg0, ArgT... args);
1040  std::string* mutable_default_restart_algorithms();
1041  PROTOBUF_MUST_USE_RESULT std::string* release_default_restart_algorithms();
1043  private:
1044  const std::string& _internal_default_restart_algorithms() const;
1045  inline PROTOBUF_ALWAYS_INLINE void _internal_set_default_restart_algorithms(const std::string& value);
1046  std::string* _internal_mutable_default_restart_algorithms();
1047  public:
1048 
1049  // optional string name = 171 [default = ""];
1050  bool has_name() const;
1051  private:
1052  bool _internal_has_name() const;
1053  public:
1054  void clear_name();
1055  const std::string& name() const;
1056  template <typename ArgT0 = const std::string&, typename... ArgT>
1057  void set_name(ArgT0&& arg0, ArgT... args);
1058  std::string* mutable_name();
1059  PROTOBUF_MUST_USE_RESULT std::string* release_name();
1060  void set_allocated_name(std::string* name);
1061  private:
1062  const std::string& _internal_name() const;
1063  inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value);
1064  std::string* _internal_mutable_name();
1065  public:
1066 
1067  // optional string log_prefix = 185 [default = ""];
1068  bool has_log_prefix() const;
1069  private:
1070  bool _internal_has_log_prefix() const;
1071  public:
1072  void clear_log_prefix();
1073  const std::string& log_prefix() const;
1074  template <typename ArgT0 = const std::string&, typename... ArgT>
1075  void set_log_prefix(ArgT0&& arg0, ArgT... args);
1076  std::string* mutable_log_prefix();
1077  PROTOBUF_MUST_USE_RESULT std::string* release_log_prefix();
1078  void set_allocated_log_prefix(std::string* log_prefix);
1079  private:
1080  const std::string& _internal_log_prefix() const;
1081  inline PROTOBUF_ALWAYS_INLINE void _internal_set_log_prefix(const std::string& value);
1082  std::string* _internal_mutable_log_prefix();
1083  public:
1084 
1085  // optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];
1086  bool has_preferred_variable_order() const;
1087  private:
1088  bool _internal_has_preferred_variable_order() const;
1089  public:
1093  private:
1094  ::operations_research::sat::SatParameters_VariableOrder _internal_preferred_variable_order() const;
1095  void _internal_set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value);
1096  public:
1097 
1098  // optional int32 clause_cleanup_target = 13 [default = 0];
1099  bool has_clause_cleanup_target() const;
1100  private:
1101  bool _internal_has_clause_cleanup_target() const;
1102  public:
1104  ::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_target() const;
1105  void set_clause_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1106  private:
1107  ::PROTOBUF_NAMESPACE_ID::int32 _internal_clause_cleanup_target() const;
1108  void _internal_set_clause_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1109  public:
1110 
1111  // optional double random_branches_ratio = 32 [default = 0];
1112  bool has_random_branches_ratio() const;
1113  private:
1114  bool _internal_has_random_branches_ratio() const;
1115  public:
1117  double random_branches_ratio() const;
1118  void set_random_branches_ratio(double value);
1119  private:
1120  double _internal_random_branches_ratio() const;
1121  void _internal_set_random_branches_ratio(double value);
1122  public:
1123 
1124  // optional double random_polarity_ratio = 45 [default = 0];
1125  bool has_random_polarity_ratio() const;
1126  private:
1127  bool _internal_has_random_polarity_ratio() const;
1128  public:
1130  double random_polarity_ratio() const;
1131  void set_random_polarity_ratio(double value);
1132  private:
1133  double _internal_random_polarity_ratio() const;
1134  void _internal_set_random_polarity_ratio(double value);
1135  public:
1136 
1137  // optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];
1138  bool has_max_sat_assumption_order() const;
1139  private:
1140  bool _internal_has_max_sat_assumption_order() const;
1141  public:
1145  private:
1146  ::operations_research::sat::SatParameters_MaxSatAssumptionOrder _internal_max_sat_assumption_order() const;
1147  void _internal_set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value);
1148  public:
1149 
1150  // optional .operations_research.sat.SatParameters.ClauseProtection clause_cleanup_protection = 58 [default = PROTECTION_NONE];
1151  bool has_clause_cleanup_protection() const;
1152  private:
1153  bool _internal_has_clause_cleanup_protection() const;
1154  public:
1158  private:
1159  ::operations_research::sat::SatParameters_ClauseProtection _internal_clause_cleanup_protection() const;
1160  void _internal_set_clause_cleanup_protection(::operations_research::sat::SatParameters_ClauseProtection value);
1161  public:
1162 
1163  // optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];
1164  bool has_clause_cleanup_ordering() const;
1165  private:
1166  bool _internal_has_clause_cleanup_ordering() const;
1167  public:
1171  private:
1172  ::operations_research::sat::SatParameters_ClauseOrdering _internal_clause_cleanup_ordering() const;
1173  void _internal_set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value);
1174  public:
1175 
1176  // optional int32 num_conflicts_before_strategy_changes = 68 [default = 0];
1178  private:
1179  bool _internal_has_num_conflicts_before_strategy_changes() const;
1180  public:
1182  ::PROTOBUF_NAMESPACE_ID::int32 num_conflicts_before_strategy_changes() const;
1183  void set_num_conflicts_before_strategy_changes(::PROTOBUF_NAMESPACE_ID::int32 value);
1184  private:
1185  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_conflicts_before_strategy_changes() const;
1186  void _internal_set_num_conflicts_before_strategy_changes(::PROTOBUF_NAMESPACE_ID::int32 value);
1187  public:
1188 
1189  // optional double strategy_change_increase_ratio = 69 [default = 0];
1191  private:
1192  bool _internal_has_strategy_change_increase_ratio() const;
1193  public:
1195  double strategy_change_increase_ratio() const;
1197  private:
1198  double _internal_strategy_change_increase_ratio() const;
1199  void _internal_set_strategy_change_increase_ratio(double value);
1200  public:
1201 
1202  // optional double initial_variables_activity = 76 [default = 0];
1203  bool has_initial_variables_activity() const;
1204  private:
1205  bool _internal_has_initial_variables_activity() const;
1206  public:
1208  double initial_variables_activity() const;
1210  private:
1211  double _internal_initial_variables_activity() const;
1212  void _internal_set_initial_variables_activity(double value);
1213  public:
1214 
1215  // optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];
1216  bool has_search_branching() const;
1217  private:
1218  bool _internal_has_search_branching() const;
1219  public:
1220  void clear_search_branching();
1223  private:
1224  ::operations_research::sat::SatParameters_SearchBranching _internal_search_branching() const;
1225  void _internal_set_search_branching(::operations_research::sat::SatParameters_SearchBranching value);
1226  public:
1227 
1228  // optional bool use_overload_checker_in_cumulative_constraint = 78 [default = false];
1230  private:
1231  bool _internal_has_use_overload_checker_in_cumulative_constraint() const;
1232  public:
1236  private:
1237  bool _internal_use_overload_checker_in_cumulative_constraint() const;
1238  void _internal_set_use_overload_checker_in_cumulative_constraint(bool value);
1239  public:
1240 
1241  // optional bool use_timetable_edge_finding_in_cumulative_constraint = 79 [default = false];
1243  private:
1244  bool _internal_has_use_timetable_edge_finding_in_cumulative_constraint() const;
1245  public:
1249  private:
1250  bool _internal_use_timetable_edge_finding_in_cumulative_constraint() const;
1251  void _internal_set_use_timetable_edge_finding_in_cumulative_constraint(bool value);
1252  public:
1253 
1254  // optional bool only_add_cuts_at_level_zero = 92 [default = false];
1255  bool has_only_add_cuts_at_level_zero() const;
1256  private:
1257  bool _internal_has_only_add_cuts_at_level_zero() const;
1258  public:
1260  bool only_add_cuts_at_level_zero() const;
1262  private:
1263  bool _internal_only_add_cuts_at_level_zero() const;
1264  void _internal_set_only_add_cuts_at_level_zero(bool value);
1265  public:
1266 
1267  // optional bool add_knapsack_cuts = 111 [default = false];
1268  bool has_add_knapsack_cuts() const;
1269  private:
1270  bool _internal_has_add_knapsack_cuts() const;
1271  public:
1272  void clear_add_knapsack_cuts();
1273  bool add_knapsack_cuts() const;
1274  void set_add_knapsack_cuts(bool value);
1275  private:
1276  bool _internal_add_knapsack_cuts() const;
1277  void _internal_set_add_knapsack_cuts(bool value);
1278  public:
1279 
1280  // optional bool use_erwa_heuristic = 75 [default = false];
1281  bool has_use_erwa_heuristic() const;
1282  private:
1283  bool _internal_has_use_erwa_heuristic() const;
1284  public:
1285  void clear_use_erwa_heuristic();
1286  bool use_erwa_heuristic() const;
1287  void set_use_erwa_heuristic(bool value);
1288  private:
1289  bool _internal_use_erwa_heuristic() const;
1290  void _internal_set_use_erwa_heuristic(bool value);
1291  public:
1292 
1293  // optional bool also_bump_variables_in_conflict_reasons = 77 [default = false];
1295  private:
1296  bool _internal_has_also_bump_variables_in_conflict_reasons() const;
1297  public:
1301  private:
1302  bool _internal_also_bump_variables_in_conflict_reasons() const;
1303  void _internal_set_also_bump_variables_in_conflict_reasons(bool value);
1304  public:
1305 
1306  // optional bool use_blocking_restart = 64 [default = false];
1307  bool has_use_blocking_restart() const;
1308  private:
1309  bool _internal_has_use_blocking_restart() const;
1310  public:
1312  bool use_blocking_restart() const;
1313  void set_use_blocking_restart(bool value);
1314  private:
1315  bool _internal_use_blocking_restart() const;
1316  void _internal_set_use_blocking_restart(bool value);
1317  public:
1318 
1319  // optional bool permute_variable_randomly = 178 [default = false];
1320  bool has_permute_variable_randomly() const;
1321  private:
1322  bool _internal_has_permute_variable_randomly() const;
1323  public:
1325  bool permute_variable_randomly() const;
1327  private:
1328  bool _internal_permute_variable_randomly() const;
1329  void _internal_set_permute_variable_randomly(bool value);
1330  public:
1331 
1332  // optional int32 num_search_workers = 100 [default = 0];
1333  bool has_num_search_workers() const;
1334  private:
1335  bool _internal_has_num_search_workers() const;
1336  public:
1337  void clear_num_search_workers();
1338  ::PROTOBUF_NAMESPACE_ID::int32 num_search_workers() const;
1339  void set_num_search_workers(::PROTOBUF_NAMESPACE_ID::int32 value);
1340  private:
1341  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_search_workers() const;
1342  void _internal_set_num_search_workers(::PROTOBUF_NAMESPACE_ID::int32 value);
1343  public:
1344 
1345  // optional int64 search_randomization_tolerance = 104 [default = 0];
1347  private:
1348  bool _internal_has_search_randomization_tolerance() const;
1349  public:
1351  ::PROTOBUF_NAMESPACE_ID::int64 search_randomization_tolerance() const;
1352  void set_search_randomization_tolerance(::PROTOBUF_NAMESPACE_ID::int64 value);
1353  private:
1354  ::PROTOBUF_NAMESPACE_ID::int64 _internal_search_randomization_tolerance() const;
1355  void _internal_set_search_randomization_tolerance(::PROTOBUF_NAMESPACE_ID::int64 value);
1356  public:
1357 
1358  // optional bool use_pb_resolution = 43 [default = false];
1359  bool has_use_pb_resolution() const;
1360  private:
1361  bool _internal_has_use_pb_resolution() const;
1362  public:
1363  void clear_use_pb_resolution();
1364  bool use_pb_resolution() const;
1365  void set_use_pb_resolution(bool value);
1366  private:
1367  bool _internal_use_pb_resolution() const;
1368  void _internal_set_use_pb_resolution(bool value);
1369  public:
1370 
1371  // optional bool minimize_reduction_during_pb_resolution = 48 [default = false];
1373  private:
1374  bool _internal_has_minimize_reduction_during_pb_resolution() const;
1375  public:
1379  private:
1380  bool _internal_minimize_reduction_during_pb_resolution() const;
1381  void _internal_set_minimize_reduction_during_pb_resolution(bool value);
1382  public:
1383 
1384  // optional bool cp_model_postsolve_with_full_solver = 162 [default = false];
1386  private:
1387  bool _internal_has_cp_model_postsolve_with_full_solver() const;
1388  public:
1392  private:
1393  bool _internal_cp_model_postsolve_with_full_solver() const;
1394  void _internal_set_cp_model_postsolve_with_full_solver(bool value);
1395  public:
1396 
1397  // optional bool use_sat_inprocessing = 163 [default = false];
1398  bool has_use_sat_inprocessing() const;
1399  private:
1400  bool _internal_has_use_sat_inprocessing() const;
1401  public:
1403  bool use_sat_inprocessing() const;
1404  void set_use_sat_inprocessing(bool value);
1405  private:
1406  bool _internal_use_sat_inprocessing() const;
1407  void _internal_set_use_sat_inprocessing(bool value);
1408  public:
1409 
1410  // optional bool enumerate_all_solutions = 87 [default = false];
1411  bool has_enumerate_all_solutions() const;
1412  private:
1413  bool _internal_has_enumerate_all_solutions() const;
1414  public:
1416  bool enumerate_all_solutions() const;
1418  private:
1419  bool _internal_enumerate_all_solutions() const;
1420  void _internal_set_enumerate_all_solutions(bool value);
1421  public:
1422 
1423  // optional bool keep_all_feasible_solutions_in_presolve = 173 [default = false];
1425  private:
1426  bool _internal_has_keep_all_feasible_solutions_in_presolve() const;
1427  public:
1431  private:
1432  bool _internal_keep_all_feasible_solutions_in_presolve() const;
1433  void _internal_set_keep_all_feasible_solutions_in_presolve(bool value);
1434  public:
1435 
1436  // optional bool fill_tightened_domains_in_response = 132 [default = false];
1438  private:
1439  bool _internal_has_fill_tightened_domains_in_response() const;
1440  public:
1444  private:
1445  bool _internal_fill_tightened_domains_in_response() const;
1446  void _internal_set_fill_tightened_domains_in_response(bool value);
1447  public:
1448 
1449  // optional bool stop_after_first_solution = 98 [default = false];
1450  bool has_stop_after_first_solution() const;
1451  private:
1452  bool _internal_has_stop_after_first_solution() const;
1453  public:
1455  bool stop_after_first_solution() const;
1457  private:
1458  bool _internal_stop_after_first_solution() const;
1459  void _internal_set_stop_after_first_solution(bool value);
1460  public:
1461 
1462  // optional bool lns_focus_on_decision_variables = 105 [default = false];
1464  private:
1465  bool _internal_has_lns_focus_on_decision_variables() const;
1466  public:
1468  bool lns_focus_on_decision_variables() const;
1470  private:
1471  bool _internal_lns_focus_on_decision_variables() const;
1472  void _internal_set_lns_focus_on_decision_variables(bool value);
1473  public:
1474 
1475  // optional bool use_relaxation_lns = 150 [default = false];
1476  bool has_use_relaxation_lns() const;
1477  private:
1478  bool _internal_has_use_relaxation_lns() const;
1479  public:
1480  void clear_use_relaxation_lns();
1481  bool use_relaxation_lns() const;
1482  void set_use_relaxation_lns(bool value);
1483  private:
1484  bool _internal_use_relaxation_lns() const;
1485  void _internal_set_use_relaxation_lns(bool value);
1486  public:
1487 
1488  // optional bool diversify_lns_params = 137 [default = false];
1489  bool has_diversify_lns_params() const;
1490  private:
1491  bool _internal_has_diversify_lns_params() const;
1492  public:
1494  bool diversify_lns_params() const;
1495  void set_diversify_lns_params(bool value);
1496  private:
1497  bool _internal_diversify_lns_params() const;
1498  void _internal_set_diversify_lns_params(bool value);
1499  public:
1500 
1501  // optional bool randomize_search = 103 [default = false];
1502  bool has_randomize_search() const;
1503  private:
1504  bool _internal_has_randomize_search() const;
1505  public:
1506  void clear_randomize_search();
1507  bool randomize_search() const;
1508  void set_randomize_search(bool value);
1509  private:
1510  bool _internal_randomize_search() const;
1511  void _internal_set_randomize_search(bool value);
1512  public:
1513 
1514  // optional bool stop_after_presolve = 149 [default = false];
1515  bool has_stop_after_presolve() const;
1516  private:
1517  bool _internal_has_stop_after_presolve() const;
1518  public:
1520  bool stop_after_presolve() const;
1521  void set_stop_after_presolve(bool value);
1522  private:
1523  bool _internal_stop_after_presolve() const;
1524  void _internal_set_stop_after_presolve(bool value);
1525  public:
1526 
1527  // optional bool interleave_search = 136 [default = false];
1528  bool has_interleave_search() const;
1529  private:
1530  bool _internal_has_interleave_search() const;
1531  public:
1532  void clear_interleave_search();
1533  bool interleave_search() const;
1534  void set_interleave_search(bool value);
1535  private:
1536  bool _internal_interleave_search() const;
1537  void _internal_set_interleave_search(bool value);
1538  public:
1539 
1540  // optional bool reduce_memory_usage_in_interleave_mode = 141 [default = false];
1542  private:
1543  bool _internal_has_reduce_memory_usage_in_interleave_mode() const;
1544  public:
1548  private:
1549  bool _internal_reduce_memory_usage_in_interleave_mode() const;
1550  void _internal_set_reduce_memory_usage_in_interleave_mode(bool value);
1551  public:
1552 
1553  // optional bool use_lns_only = 101 [default = false];
1554  bool has_use_lns_only() const;
1555  private:
1556  bool _internal_has_use_lns_only() const;
1557  public:
1558  void clear_use_lns_only();
1559  bool use_lns_only() const;
1560  void set_use_lns_only(bool value);
1561  private:
1562  bool _internal_use_lns_only() const;
1563  void _internal_set_use_lns_only(bool value);
1564  public:
1565 
1566  // optional bool use_probing_search = 176 [default = false];
1567  bool has_use_probing_search() const;
1568  private:
1569  bool _internal_has_use_probing_search() const;
1570  public:
1571  void clear_use_probing_search();
1572  bool use_probing_search() const;
1573  void set_use_probing_search(bool value);
1574  private:
1575  bool _internal_use_probing_search() const;
1576  void _internal_set_use_probing_search(bool value);
1577  public:
1578 
1579  // optional bool optimize_with_core = 83 [default = false];
1580  bool has_optimize_with_core() const;
1581  private:
1582  bool _internal_has_optimize_with_core() const;
1583  public:
1584  void clear_optimize_with_core();
1585  bool optimize_with_core() const;
1586  void set_optimize_with_core(bool value);
1587  private:
1588  bool _internal_optimize_with_core() const;
1589  void _internal_set_optimize_with_core(bool value);
1590  public:
1591 
1592  // optional bool optimize_with_lb_tree_search = 188 [default = false];
1593  bool has_optimize_with_lb_tree_search() const;
1594  private:
1595  bool _internal_has_optimize_with_lb_tree_search() const;
1596  public:
1598  bool optimize_with_lb_tree_search() const;
1600  private:
1601  bool _internal_optimize_with_lb_tree_search() const;
1602  void _internal_set_optimize_with_lb_tree_search(bool value);
1603  public:
1604 
1605  // optional bool optimize_with_max_hs = 85 [default = false];
1606  bool has_optimize_with_max_hs() const;
1607  private:
1608  bool _internal_has_optimize_with_max_hs() const;
1609  public:
1611  bool optimize_with_max_hs() const;
1612  void set_optimize_with_max_hs(bool value);
1613  private:
1614  bool _internal_optimize_with_max_hs() const;
1615  void _internal_set_optimize_with_max_hs(bool value);
1616  public:
1617 
1618  // optional bool expand_alldiff_constraints = 170 [default = false];
1619  bool has_expand_alldiff_constraints() const;
1620  private:
1621  bool _internal_has_expand_alldiff_constraints() const;
1622  public:
1624  bool expand_alldiff_constraints() const;
1626  private:
1627  bool _internal_expand_alldiff_constraints() const;
1628  void _internal_set_expand_alldiff_constraints(bool value);
1629  public:
1630 
1631  // optional bool disable_constraint_expansion = 181 [default = false];
1632  bool has_disable_constraint_expansion() const;
1633  private:
1634  bool _internal_has_disable_constraint_expansion() const;
1635  public:
1637  bool disable_constraint_expansion() const;
1639  private:
1640  bool _internal_disable_constraint_expansion() const;
1641  void _internal_set_disable_constraint_expansion(bool value);
1642  public:
1643 
1644  // optional bool presolve_extract_integer_enforcement = 174 [default = false];
1646  private:
1647  bool _internal_has_presolve_extract_integer_enforcement() const;
1648  public:
1652  private:
1653  bool _internal_presolve_extract_integer_enforcement() const;
1654  void _internal_set_presolve_extract_integer_enforcement(bool value);
1655  public:
1656 
1657  // optional bool max_sat_reverse_assumption_order = 52 [default = false];
1659  private:
1660  bool _internal_has_max_sat_reverse_assumption_order() const;
1661  public:
1663  bool max_sat_reverse_assumption_order() const;
1665  private:
1666  bool _internal_max_sat_reverse_assumption_order() const;
1667  void _internal_set_max_sat_reverse_assumption_order(bool value);
1668  public:
1669 
1670  // optional int64 probing_period_at_root = 142 [default = 0];
1671  bool has_probing_period_at_root() const;
1672  private:
1673  bool _internal_has_probing_period_at_root() const;
1674  public:
1676  ::PROTOBUF_NAMESPACE_ID::int64 probing_period_at_root() const;
1677  void set_probing_period_at_root(::PROTOBUF_NAMESPACE_ID::int64 value);
1678  private:
1679  ::PROTOBUF_NAMESPACE_ID::int64 _internal_probing_period_at_root() const;
1680  void _internal_set_probing_period_at_root(::PROTOBUF_NAMESPACE_ID::int64 value);
1681  public:
1682 
1683  // optional bool permute_presolve_constraint_order = 179 [default = false];
1685  private:
1686  bool _internal_has_permute_presolve_constraint_order() const;
1687  public:
1689  bool permute_presolve_constraint_order() const;
1691  private:
1692  bool _internal_permute_presolve_constraint_order() const;
1693  void _internal_set_permute_presolve_constraint_order(bool value);
1694  public:
1695 
1696  // optional bool use_absl_random = 180 [default = false];
1697  bool has_use_absl_random() const;
1698  private:
1699  bool _internal_has_use_absl_random() const;
1700  public:
1701  void clear_use_absl_random();
1702  bool use_absl_random() const;
1703  void set_use_absl_random(bool value);
1704  private:
1705  bool _internal_use_absl_random() const;
1706  void _internal_set_use_absl_random(bool value);
1707  public:
1708 
1709  // optional bool log_search_progress = 41 [default = false];
1710  bool has_log_search_progress() const;
1711  private:
1712  bool _internal_has_log_search_progress() const;
1713  public:
1715  bool log_search_progress() const;
1716  void set_log_search_progress(bool value);
1717  private:
1718  bool _internal_log_search_progress() const;
1719  void _internal_set_log_search_progress(bool value);
1720  public:
1721 
1722  // optional bool log_to_response = 187 [default = false];
1723  bool has_log_to_response() const;
1724  private:
1725  bool _internal_has_log_to_response() const;
1726  public:
1727  void clear_log_to_response();
1728  bool log_to_response() const;
1729  void set_log_to_response(bool value);
1730  private:
1731  bool _internal_log_to_response() const;
1732  void _internal_set_log_to_response(bool value);
1733  public:
1734 
1735  // optional bool use_branching_in_lp = 139 [default = false];
1736  bool has_use_branching_in_lp() const;
1737  private:
1738  bool _internal_has_use_branching_in_lp() const;
1739  public:
1741  bool use_branching_in_lp() const;
1742  void set_use_branching_in_lp(bool value);
1743  private:
1744  bool _internal_use_branching_in_lp() const;
1745  void _internal_set_use_branching_in_lp(bool value);
1746  public:
1747 
1748  // optional bool use_combined_no_overlap = 133 [default = false];
1749  bool has_use_combined_no_overlap() const;
1750  private:
1751  bool _internal_has_use_combined_no_overlap() const;
1752  public:
1754  bool use_combined_no_overlap() const;
1756  private:
1757  bool _internal_use_combined_no_overlap() const;
1758  void _internal_set_use_combined_no_overlap(bool value);
1759  public:
1760 
1761  // optional bool polish_lp_solution = 175 [default = false];
1762  bool has_polish_lp_solution() const;
1763  private:
1764  bool _internal_has_polish_lp_solution() const;
1765  public:
1766  void clear_polish_lp_solution();
1767  bool polish_lp_solution() const;
1768  void set_polish_lp_solution(bool value);
1769  private:
1770  bool _internal_polish_lp_solution() const;
1771  void _internal_set_polish_lp_solution(bool value);
1772  public:
1773 
1774  // optional double absolute_gap_limit = 159 [default = 0];
1775  bool has_absolute_gap_limit() const;
1776  private:
1777  bool _internal_has_absolute_gap_limit() const;
1778  public:
1779  void clear_absolute_gap_limit();
1780  double absolute_gap_limit() const;
1781  void set_absolute_gap_limit(double value);
1782  private:
1783  double _internal_absolute_gap_limit() const;
1784  void _internal_set_absolute_gap_limit(double value);
1785  public:
1786 
1787  // optional double relative_gap_limit = 160 [default = 0];
1788  bool has_relative_gap_limit() const;
1789  private:
1790  bool _internal_has_relative_gap_limit() const;
1791  public:
1792  void clear_relative_gap_limit();
1793  double relative_gap_limit() const;
1794  void set_relative_gap_limit(double value);
1795  private:
1796  double _internal_relative_gap_limit() const;
1797  void _internal_set_relative_gap_limit(double value);
1798  public:
1799 
1800  // optional int32 cp_model_max_num_presolve_operations = 151 [default = 0];
1802  private:
1803  bool _internal_has_cp_model_max_num_presolve_operations() const;
1804  public:
1806  ::PROTOBUF_NAMESPACE_ID::int32 cp_model_max_num_presolve_operations() const;
1807  void set_cp_model_max_num_presolve_operations(::PROTOBUF_NAMESPACE_ID::int32 value);
1808  private:
1809  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cp_model_max_num_presolve_operations() const;
1810  void _internal_set_cp_model_max_num_presolve_operations(::PROTOBUF_NAMESPACE_ID::int32 value);
1811  public:
1812 
1813  // optional bool repair_hint = 167 [default = false];
1814  bool has_repair_hint() const;
1815  private:
1816  bool _internal_has_repair_hint() const;
1817  public:
1818  void clear_repair_hint();
1819  bool repair_hint() const;
1820  void set_repair_hint(bool value);
1821  private:
1822  bool _internal_repair_hint() const;
1823  void _internal_set_repair_hint(bool value);
1824  public:
1825 
1826  // optional bool fix_variables_to_their_hinted_value = 192 [default = false];
1828  private:
1829  bool _internal_has_fix_variables_to_their_hinted_value() const;
1830  public:
1834  private:
1835  bool _internal_fix_variables_to_their_hinted_value() const;
1836  void _internal_set_fix_variables_to_their_hinted_value(bool value);
1837  public:
1838 
1839  // optional bool exploit_best_solution = 130 [default = false];
1840  bool has_exploit_best_solution() const;
1841  private:
1842  bool _internal_has_exploit_best_solution() const;
1843  public:
1845  bool exploit_best_solution() const;
1846  void set_exploit_best_solution(bool value);
1847  private:
1848  bool _internal_exploit_best_solution() const;
1849  void _internal_set_exploit_best_solution(bool value);
1850  public:
1851 
1852  // optional bool exploit_relaxation_solution = 161 [default = false];
1853  bool has_exploit_relaxation_solution() const;
1854  private:
1855  bool _internal_has_exploit_relaxation_solution() const;
1856  public:
1858  bool exploit_relaxation_solution() const;
1860  private:
1861  bool _internal_exploit_relaxation_solution() const;
1862  void _internal_set_exploit_relaxation_solution(bool value);
1863  public:
1864 
1865  // optional int32 solution_pool_size = 193 [default = 3];
1866  bool has_solution_pool_size() const;
1867  private:
1868  bool _internal_has_solution_pool_size() const;
1869  public:
1870  void clear_solution_pool_size();
1871  ::PROTOBUF_NAMESPACE_ID::int32 solution_pool_size() const;
1872  void set_solution_pool_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1873  private:
1874  ::PROTOBUF_NAMESPACE_ID::int32 _internal_solution_pool_size() const;
1875  void _internal_set_solution_pool_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1876  public:
1877 
1878  // optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];
1879  bool has_initial_polarity() const;
1880  private:
1881  bool _internal_has_initial_polarity() const;
1882  public:
1883  void clear_initial_polarity();
1886  private:
1887  ::operations_research::sat::SatParameters_Polarity _internal_initial_polarity() const;
1888  void _internal_set_initial_polarity(::operations_research::sat::SatParameters_Polarity value);
1889  public:
1890 
1891  // optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];
1892  bool has_minimization_algorithm() const;
1893  private:
1894  bool _internal_has_minimization_algorithm() const;
1895  public:
1899  private:
1900  ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm _internal_minimization_algorithm() const;
1901  void _internal_set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value);
1902  public:
1903 
1904  // optional double variable_activity_decay = 15 [default = 0.8];
1905  bool has_variable_activity_decay() const;
1906  private:
1907  bool _internal_has_variable_activity_decay() const;
1908  public:
1910  double variable_activity_decay() const;
1911  void set_variable_activity_decay(double value);
1912  private:
1913  double _internal_variable_activity_decay() const;
1914  void _internal_set_variable_activity_decay(double value);
1915  public:
1916 
1917  // optional double max_variable_activity_value = 16 [default = 1e+100];
1918  bool has_max_variable_activity_value() const;
1919  private:
1920  bool _internal_has_max_variable_activity_value() const;
1921  public:
1923  double max_variable_activity_value() const;
1925  private:
1926  double _internal_max_variable_activity_value() const;
1927  void _internal_set_max_variable_activity_value(double value);
1928  public:
1929 
1930  // optional double clause_activity_decay = 17 [default = 0.999];
1931  bool has_clause_activity_decay() const;
1932  private:
1933  bool _internal_has_clause_activity_decay() const;
1934  public:
1936  double clause_activity_decay() const;
1937  void set_clause_activity_decay(double value);
1938  private:
1939  double _internal_clause_activity_decay() const;
1940  void _internal_set_clause_activity_decay(double value);
1941  public:
1942 
1943  // optional int32 clause_cleanup_period = 11 [default = 10000];
1944  bool has_clause_cleanup_period() const;
1945  private:
1946  bool _internal_has_clause_cleanup_period() const;
1947  public:
1949  ::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_period() const;
1950  void set_clause_cleanup_period(::PROTOBUF_NAMESPACE_ID::int32 value);
1951  private:
1952  ::PROTOBUF_NAMESPACE_ID::int32 _internal_clause_cleanup_period() const;
1953  void _internal_set_clause_cleanup_period(::PROTOBUF_NAMESPACE_ID::int32 value);
1954  public:
1955 
1956  // optional int32 glucose_decay_increment_period = 24 [default = 5000];
1958  private:
1959  bool _internal_has_glucose_decay_increment_period() const;
1960  public:
1962  ::PROTOBUF_NAMESPACE_ID::int32 glucose_decay_increment_period() const;
1963  void set_glucose_decay_increment_period(::PROTOBUF_NAMESPACE_ID::int32 value);
1964  private:
1965  ::PROTOBUF_NAMESPACE_ID::int32 _internal_glucose_decay_increment_period() const;
1966  void _internal_set_glucose_decay_increment_period(::PROTOBUF_NAMESPACE_ID::int32 value);
1967  public:
1968 
1969  // optional double max_clause_activity_value = 18 [default = 1e+20];
1970  bool has_max_clause_activity_value() const;
1971  private:
1972  bool _internal_has_max_clause_activity_value() const;
1973  public:
1975  double max_clause_activity_value() const;
1976  void set_max_clause_activity_value(double value);
1977  private:
1978  double _internal_max_clause_activity_value() const;
1979  void _internal_set_max_clause_activity_value(double value);
1980  public:
1981 
1982  // optional double glucose_max_decay = 22 [default = 0.95];
1983  bool has_glucose_max_decay() const;
1984  private:
1985  bool _internal_has_glucose_max_decay() const;
1986  public:
1987  void clear_glucose_max_decay();
1988  double glucose_max_decay() const;
1989  void set_glucose_max_decay(double value);
1990  private:
1991  double _internal_glucose_max_decay() const;
1992  void _internal_set_glucose_max_decay(double value);
1993  public:
1994 
1995  // optional double glucose_decay_increment = 23 [default = 0.01];
1996  bool has_glucose_decay_increment() const;
1997  private:
1998  bool _internal_has_glucose_decay_increment() const;
1999  public:
2001  double glucose_decay_increment() const;
2002  void set_glucose_decay_increment(double value);
2003  private:
2004  double _internal_glucose_decay_increment() const;
2005  void _internal_set_glucose_decay_increment(double value);
2006  public:
2007 
2008  // optional int32 restart_period = 30 [default = 50];
2009  bool has_restart_period() const;
2010  private:
2011  bool _internal_has_restart_period() const;
2012  public:
2013  void clear_restart_period();
2014  ::PROTOBUF_NAMESPACE_ID::int32 restart_period() const;
2015  void set_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value);
2016  private:
2017  ::PROTOBUF_NAMESPACE_ID::int32 _internal_restart_period() const;
2018  void _internal_set_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value);
2019  public:
2020 
2021  // optional int32 random_seed = 31 [default = 1];
2022  bool has_random_seed() const;
2023  private:
2024  bool _internal_has_random_seed() const;
2025  public:
2026  void clear_random_seed();
2027  ::PROTOBUF_NAMESPACE_ID::int32 random_seed() const;
2028  void set_random_seed(::PROTOBUF_NAMESPACE_ID::int32 value);
2029  private:
2030  ::PROTOBUF_NAMESPACE_ID::int32 _internal_random_seed() const;
2031  void _internal_set_random_seed(::PROTOBUF_NAMESPACE_ID::int32 value);
2032  public:
2033 
2034  // optional double max_time_in_seconds = 36 [default = inf];
2035  bool has_max_time_in_seconds() const;
2036  private:
2037  bool _internal_has_max_time_in_seconds() const;
2038  public:
2040  double max_time_in_seconds() const;
2041  void set_max_time_in_seconds(double value);
2042  private:
2043  double _internal_max_time_in_seconds() const;
2044  void _internal_set_max_time_in_seconds(double value);
2045  public:
2046 
2047  // optional int64 max_number_of_conflicts = 37 [default = 9223372036854775807];
2048  bool has_max_number_of_conflicts() const;
2049  private:
2050  bool _internal_has_max_number_of_conflicts() const;
2051  public:
2053  ::PROTOBUF_NAMESPACE_ID::int64 max_number_of_conflicts() const;
2054  void set_max_number_of_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
2055  private:
2056  ::PROTOBUF_NAMESPACE_ID::int64 _internal_max_number_of_conflicts() const;
2057  void _internal_set_max_number_of_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
2058  public:
2059 
2060  // optional int64 max_memory_in_mb = 40 [default = 10000];
2061  bool has_max_memory_in_mb() const;
2062  private:
2063  bool _internal_has_max_memory_in_mb() const;
2064  public:
2065  void clear_max_memory_in_mb();
2066  ::PROTOBUF_NAMESPACE_ID::int64 max_memory_in_mb() const;
2067  void set_max_memory_in_mb(::PROTOBUF_NAMESPACE_ID::int64 value);
2068  private:
2069  ::PROTOBUF_NAMESPACE_ID::int64 _internal_max_memory_in_mb() const;
2070  void _internal_set_max_memory_in_mb(::PROTOBUF_NAMESPACE_ID::int64 value);
2071  public:
2072 
2073  // optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FIRST];
2074  bool has_binary_minimization_algorithm() const;
2075  private:
2076  bool _internal_has_binary_minimization_algorithm() const;
2077  public:
2081  private:
2082  ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm _internal_binary_minimization_algorithm() const;
2083  void _internal_set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value);
2084  public:
2085 
2086  // optional int32 pb_cleanup_increment = 46 [default = 200];
2087  bool has_pb_cleanup_increment() const;
2088  private:
2089  bool _internal_has_pb_cleanup_increment() const;
2090  public:
2092  ::PROTOBUF_NAMESPACE_ID::int32 pb_cleanup_increment() const;
2093  void set_pb_cleanup_increment(::PROTOBUF_NAMESPACE_ID::int32 value);
2094  private:
2095  ::PROTOBUF_NAMESPACE_ID::int32 _internal_pb_cleanup_increment() const;
2096  void _internal_set_pb_cleanup_increment(::PROTOBUF_NAMESPACE_ID::int32 value);
2097  public:
2098 
2099  // optional double pb_cleanup_ratio = 47 [default = 0.5];
2100  bool has_pb_cleanup_ratio() const;
2101  private:
2102  bool _internal_has_pb_cleanup_ratio() const;
2103  public:
2104  void clear_pb_cleanup_ratio();
2105  double pb_cleanup_ratio() const;
2106  void set_pb_cleanup_ratio(double value);
2107  private:
2108  double _internal_pb_cleanup_ratio() const;
2109  void _internal_set_pb_cleanup_ratio(double value);
2110  public:
2111 
2112  // optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];
2113  bool has_max_sat_stratification() const;
2114  private:
2115  bool _internal_has_max_sat_stratification() const;
2116  public:
2120  private:
2121  ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm _internal_max_sat_stratification() const;
2122  void _internal_set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value);
2123  public:
2124 
2125  // optional int32 presolve_bve_threshold = 54 [default = 500];
2126  bool has_presolve_bve_threshold() const;
2127  private:
2128  bool _internal_has_presolve_bve_threshold() const;
2129  public:
2131  ::PROTOBUF_NAMESPACE_ID::int32 presolve_bve_threshold() const;
2132  void set_presolve_bve_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
2133  private:
2134  ::PROTOBUF_NAMESPACE_ID::int32 _internal_presolve_bve_threshold() const;
2135  void _internal_set_presolve_bve_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
2136  public:
2137 
2138  // optional double presolve_probing_deterministic_time_limit = 57 [default = 30];
2140  private:
2141  bool _internal_has_presolve_probing_deterministic_time_limit() const;
2142  public:
2146  private:
2147  double _internal_presolve_probing_deterministic_time_limit() const;
2148  void _internal_set_presolve_probing_deterministic_time_limit(double value);
2149  public:
2150 
2151  // optional int32 presolve_bve_clause_weight = 55 [default = 3];
2152  bool has_presolve_bve_clause_weight() const;
2153  private:
2154  bool _internal_has_presolve_bve_clause_weight() const;
2155  public:
2157  ::PROTOBUF_NAMESPACE_ID::int32 presolve_bve_clause_weight() const;
2158  void set_presolve_bve_clause_weight(::PROTOBUF_NAMESPACE_ID::int32 value);
2159  private:
2160  ::PROTOBUF_NAMESPACE_ID::int32 _internal_presolve_bve_clause_weight() const;
2161  void _internal_set_presolve_bve_clause_weight(::PROTOBUF_NAMESPACE_ID::int32 value);
2162  public:
2163 
2164  // optional int32 clause_cleanup_lbd_bound = 59 [default = 5];
2165  bool has_clause_cleanup_lbd_bound() const;
2166  private:
2167  bool _internal_has_clause_cleanup_lbd_bound() const;
2168  public:
2170  ::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_lbd_bound() const;
2171  void set_clause_cleanup_lbd_bound(::PROTOBUF_NAMESPACE_ID::int32 value);
2172  private:
2173  ::PROTOBUF_NAMESPACE_ID::int32 _internal_clause_cleanup_lbd_bound() const;
2174  void _internal_set_clause_cleanup_lbd_bound(::PROTOBUF_NAMESPACE_ID::int32 value);
2175  public:
2176 
2177  // optional double restart_dl_average_ratio = 63 [default = 1];
2178  bool has_restart_dl_average_ratio() const;
2179  private:
2180  bool _internal_has_restart_dl_average_ratio() const;
2181  public:
2183  double restart_dl_average_ratio() const;
2184  void set_restart_dl_average_ratio(double value);
2185  private:
2186  double _internal_restart_dl_average_ratio() const;
2187  void _internal_set_restart_dl_average_ratio(double value);
2188  public:
2189 
2190  // optional int32 restart_running_window_size = 62 [default = 50];
2191  bool has_restart_running_window_size() const;
2192  private:
2193  bool _internal_has_restart_running_window_size() const;
2194  public:
2196  ::PROTOBUF_NAMESPACE_ID::int32 restart_running_window_size() const;
2197  void set_restart_running_window_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2198  private:
2199  ::PROTOBUF_NAMESPACE_ID::int32 _internal_restart_running_window_size() const;
2200  void _internal_set_restart_running_window_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2201  public:
2202 
2203  // optional int32 blocking_restart_window_size = 65 [default = 5000];
2204  bool has_blocking_restart_window_size() const;
2205  private:
2206  bool _internal_has_blocking_restart_window_size() const;
2207  public:
2209  ::PROTOBUF_NAMESPACE_ID::int32 blocking_restart_window_size() const;
2210  void set_blocking_restart_window_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2211  private:
2212  ::PROTOBUF_NAMESPACE_ID::int32 _internal_blocking_restart_window_size() const;
2213  void _internal_set_blocking_restart_window_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2214  public:
2215 
2216  // optional double blocking_restart_multiplier = 66 [default = 1.4];
2217  bool has_blocking_restart_multiplier() const;
2218  private:
2219  bool _internal_has_blocking_restart_multiplier() const;
2220  public:
2222  double blocking_restart_multiplier() const;
2224  private:
2225  double _internal_blocking_restart_multiplier() const;
2226  void _internal_set_blocking_restart_multiplier(double value);
2227  public:
2228 
2229  // optional double max_deterministic_time = 67 [default = inf];
2230  bool has_max_deterministic_time() const;
2231  private:
2232  bool _internal_has_max_deterministic_time() const;
2233  public:
2235  double max_deterministic_time() const;
2236  void set_max_deterministic_time(double value);
2237  private:
2238  double _internal_max_deterministic_time() const;
2239  void _internal_set_max_deterministic_time(double value);
2240  public:
2241 
2242  // optional double restart_lbd_average_ratio = 71 [default = 1];
2243  bool has_restart_lbd_average_ratio() const;
2244  private:
2245  bool _internal_has_restart_lbd_average_ratio() const;
2246  public:
2248  double restart_lbd_average_ratio() const;
2249  void set_restart_lbd_average_ratio(double value);
2250  private:
2251  double _internal_restart_lbd_average_ratio() const;
2252  void _internal_set_restart_lbd_average_ratio(double value);
2253  public:
2254 
2255  // optional int32 presolve_bva_threshold = 73 [default = 1];
2256  bool has_presolve_bva_threshold() const;
2257  private:
2258  bool _internal_has_presolve_bva_threshold() const;
2259  public:
2261  ::PROTOBUF_NAMESPACE_ID::int32 presolve_bva_threshold() const;
2262  void set_presolve_bva_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
2263  private:
2264  ::PROTOBUF_NAMESPACE_ID::int32 _internal_presolve_bva_threshold() const;
2265  void _internal_set_presolve_bva_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
2266  public:
2267 
2268  // optional bool use_phase_saving = 44 [default = true];
2269  bool has_use_phase_saving() const;
2270  private:
2271  bool _internal_has_use_phase_saving() const;
2272  public:
2273  void clear_use_phase_saving();
2274  bool use_phase_saving() const;
2275  void set_use_phase_saving(bool value);
2276  private:
2277  bool _internal_use_phase_saving() const;
2278  void _internal_set_use_phase_saving(bool value);
2279  public:
2280 
2281  // optional bool subsumption_during_conflict_analysis = 56 [default = true];
2283  private:
2284  bool _internal_has_subsumption_during_conflict_analysis() const;
2285  public:
2289  private:
2290  bool _internal_subsumption_during_conflict_analysis() const;
2291  void _internal_set_subsumption_during_conflict_analysis(bool value);
2292  public:
2293 
2294  // optional bool treat_binary_clauses_separately = 33 [default = true];
2296  private:
2297  bool _internal_has_treat_binary_clauses_separately() const;
2298  public:
2300  bool treat_binary_clauses_separately() const;
2302  private:
2303  bool _internal_treat_binary_clauses_separately() const;
2304  void _internal_set_treat_binary_clauses_separately(bool value);
2305  public:
2306 
2307  // optional bool log_subsolver_statistics = 189 [default = true];
2308  bool has_log_subsolver_statistics() const;
2309  private:
2310  bool _internal_has_log_subsolver_statistics() const;
2311  public:
2313  bool log_subsolver_statistics() const;
2315  private:
2316  bool _internal_log_subsolver_statistics() const;
2317  void _internal_set_log_subsolver_statistics(bool value);
2318  public:
2319 
2320  // optional bool find_multiple_cores = 84 [default = true];
2321  bool has_find_multiple_cores() const;
2322  private:
2323  bool _internal_has_find_multiple_cores() const;
2324  public:
2326  bool find_multiple_cores() const;
2327  void set_find_multiple_cores(bool value);
2328  private:
2329  bool _internal_find_multiple_cores() const;
2330  void _internal_set_find_multiple_cores(bool value);
2331  public:
2332 
2333  // optional bool cover_optimization = 89 [default = true];
2334  bool has_cover_optimization() const;
2335  private:
2336  bool _internal_has_cover_optimization() const;
2337  public:
2338  void clear_cover_optimization();
2339  bool cover_optimization() const;
2340  void set_cover_optimization(bool value);
2341  private:
2342  bool _internal_cover_optimization() const;
2343  void _internal_set_cover_optimization(bool value);
2344  public:
2345 
2346  // optional bool use_precedences_in_disjunctive_constraint = 74 [default = true];
2348  private:
2349  bool _internal_has_use_precedences_in_disjunctive_constraint() const;
2350  public:
2354  private:
2355  bool _internal_use_precedences_in_disjunctive_constraint() const;
2356  void _internal_set_use_precedences_in_disjunctive_constraint(bool value);
2357  public:
2358 
2359  // optional bool use_disjunctive_constraint_in_cumulative_constraint = 80 [default = true];
2361  private:
2362  bool _internal_has_use_disjunctive_constraint_in_cumulative_constraint() const;
2363  public:
2367  private:
2368  bool _internal_use_disjunctive_constraint_in_cumulative_constraint() const;
2369  void _internal_set_use_disjunctive_constraint_in_cumulative_constraint(bool value);
2370  public:
2371 
2372  // optional int32 linearization_level = 90 [default = 1];
2373  bool has_linearization_level() const;
2374  private:
2375  bool _internal_has_linearization_level() const;
2376  public:
2378  ::PROTOBUF_NAMESPACE_ID::int32 linearization_level() const;
2379  void set_linearization_level(::PROTOBUF_NAMESPACE_ID::int32 value);
2380  private:
2381  ::PROTOBUF_NAMESPACE_ID::int32 _internal_linearization_level() const;
2382  void _internal_set_linearization_level(::PROTOBUF_NAMESPACE_ID::int32 value);
2383  public:
2384 
2385  // optional int32 max_num_cuts = 91 [default = 10000];
2386  bool has_max_num_cuts() const;
2387  private:
2388  bool _internal_has_max_num_cuts() const;
2389  public:
2390  void clear_max_num_cuts();
2391  ::PROTOBUF_NAMESPACE_ID::int32 max_num_cuts() const;
2392  void set_max_num_cuts(::PROTOBUF_NAMESPACE_ID::int32 value);
2393  private:
2394  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_num_cuts() const;
2395  void _internal_set_max_num_cuts(::PROTOBUF_NAMESPACE_ID::int32 value);
2396  public:
2397 
2398  // optional int32 minimize_with_propagation_restart_period = 96 [default = 10];
2400  private:
2401  bool _internal_has_minimize_with_propagation_restart_period() const;
2402  public:
2404  ::PROTOBUF_NAMESPACE_ID::int32 minimize_with_propagation_restart_period() const;
2405  void set_minimize_with_propagation_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value);
2406  private:
2407  ::PROTOBUF_NAMESPACE_ID::int32 _internal_minimize_with_propagation_restart_period() const;
2408  void _internal_set_minimize_with_propagation_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value);
2409  public:
2410 
2411  // optional int32 minimize_with_propagation_num_decisions = 97 [default = 1000];
2413  private:
2414  bool _internal_has_minimize_with_propagation_num_decisions() const;
2415  public:
2417  ::PROTOBUF_NAMESPACE_ID::int32 minimize_with_propagation_num_decisions() const;
2418  void set_minimize_with_propagation_num_decisions(::PROTOBUF_NAMESPACE_ID::int32 value);
2419  private:
2420  ::PROTOBUF_NAMESPACE_ID::int32 _internal_minimize_with_propagation_num_decisions() const;
2421  void _internal_set_minimize_with_propagation_num_decisions(::PROTOBUF_NAMESPACE_ID::int32 value);
2422  public:
2423 
2424  // optional bool log_to_stdout = 186 [default = true];
2425  bool has_log_to_stdout() const;
2426  private:
2427  bool _internal_has_log_to_stdout() const;
2428  public:
2429  void clear_log_to_stdout();
2430  bool log_to_stdout() const;
2431  void set_log_to_stdout(bool value);
2432  private:
2433  bool _internal_log_to_stdout() const;
2434  void _internal_set_log_to_stdout(bool value);
2435  public:
2436 
2437  // optional bool count_assumption_levels_in_lbd = 49 [default = true];
2439  private:
2440  bool _internal_has_count_assumption_levels_in_lbd() const;
2441  public:
2443  bool count_assumption_levels_in_lbd() const;
2445  private:
2446  bool _internal_count_assumption_levels_in_lbd() const;
2447  void _internal_set_count_assumption_levels_in_lbd(bool value);
2448  public:
2449 
2450  // optional bool presolve_blocked_clause = 88 [default = true];
2451  bool has_presolve_blocked_clause() const;
2452  private:
2453  bool _internal_has_presolve_blocked_clause() const;
2454  public:
2456  bool presolve_blocked_clause() const;
2458  private:
2459  bool _internal_presolve_blocked_clause() const;
2460  void _internal_set_presolve_blocked_clause(bool value);
2461  public:
2462 
2463  // optional bool presolve_use_bva = 72 [default = true];
2464  bool has_presolve_use_bva() const;
2465  private:
2466  bool _internal_has_presolve_use_bva() const;
2467  public:
2468  void clear_presolve_use_bva();
2469  bool presolve_use_bva() const;
2470  void set_presolve_use_bva(bool value);
2471  private:
2472  bool _internal_presolve_use_bva() const;
2473  void _internal_set_presolve_use_bva(bool value);
2474  public:
2475 
2476  // optional int32 binary_search_num_conflicts = 99 [default = -1];
2477  bool has_binary_search_num_conflicts() const;
2478  private:
2479  bool _internal_has_binary_search_num_conflicts() const;
2480  public:
2482  ::PROTOBUF_NAMESPACE_ID::int32 binary_search_num_conflicts() const;
2483  void set_binary_search_num_conflicts(::PROTOBUF_NAMESPACE_ID::int32 value);
2484  private:
2485  ::PROTOBUF_NAMESPACE_ID::int32 _internal_binary_search_num_conflicts() const;
2486  void _internal_set_binary_search_num_conflicts(::PROTOBUF_NAMESPACE_ID::int32 value);
2487  public:
2488 
2489  // optional bool expand_table_constraints = 158 [default = true];
2490  bool has_expand_table_constraints() const;
2491  private:
2492  bool _internal_has_expand_table_constraints() const;
2493  public:
2495  bool expand_table_constraints() const;
2497  private:
2498  bool _internal_expand_table_constraints() const;
2499  void _internal_set_expand_table_constraints(bool value);
2500  public:
2501 
2502  // optional bool expand_reservoir_constraints = 182 [default = true];
2503  bool has_expand_reservoir_constraints() const;
2504  private:
2505  bool _internal_has_expand_reservoir_constraints() const;
2506  public:
2508  bool expand_reservoir_constraints() const;
2510  private:
2511  bool _internal_expand_reservoir_constraints() const;
2512  void _internal_set_expand_reservoir_constraints(bool value);
2513  public:
2514 
2515  // optional bool use_optimization_hints = 35 [default = true];
2516  bool has_use_optimization_hints() const;
2517  private:
2518  bool _internal_has_use_optimization_hints() const;
2519  public:
2521  bool use_optimization_hints() const;
2522  void set_use_optimization_hints(bool value);
2523  private:
2524  bool _internal_use_optimization_hints() const;
2525  void _internal_set_use_optimization_hints(bool value);
2526  public:
2527 
2528  // optional bool minimize_core = 50 [default = true];
2529  bool has_minimize_core() const;
2530  private:
2531  bool _internal_has_minimize_core() const;
2532  public:
2533  void clear_minimize_core();
2534  bool minimize_core() const;
2535  void set_minimize_core(bool value);
2536  private:
2537  bool _internal_minimize_core() const;
2538  void _internal_set_minimize_core(bool value);
2539  public:
2540 
2541  // optional int32 boolean_encoding_level = 107 [default = 1];
2542  bool has_boolean_encoding_level() const;
2543  private:
2544  bool _internal_has_boolean_encoding_level() const;
2545  public:
2547  ::PROTOBUF_NAMESPACE_ID::int32 boolean_encoding_level() const;
2548  void set_boolean_encoding_level(::PROTOBUF_NAMESPACE_ID::int32 value);
2549  private:
2550  ::PROTOBUF_NAMESPACE_ID::int32 _internal_boolean_encoding_level() const;
2551  void _internal_set_boolean_encoding_level(::PROTOBUF_NAMESPACE_ID::int32 value);
2552  public:
2553 
2554  // optional int32 cp_model_probing_level = 110 [default = 2];
2555  bool has_cp_model_probing_level() const;
2556  private:
2557  bool _internal_has_cp_model_probing_level() const;
2558  public:
2560  ::PROTOBUF_NAMESPACE_ID::int32 cp_model_probing_level() const;
2561  void set_cp_model_probing_level(::PROTOBUF_NAMESPACE_ID::int32 value);
2562  private:
2563  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cp_model_probing_level() const;
2564  void _internal_set_cp_model_probing_level(::PROTOBUF_NAMESPACE_ID::int32 value);
2565  public:
2566 
2567  // optional bool exploit_objective = 131 [default = true];
2568  bool has_exploit_objective() const;
2569  private:
2570  bool _internal_has_exploit_objective() const;
2571  public:
2572  void clear_exploit_objective();
2573  bool exploit_objective() const;
2574  void set_exploit_objective(bool value);
2575  private:
2576  bool _internal_exploit_objective() const;
2577  void _internal_set_exploit_objective(bool value);
2578  public:
2579 
2580  // optional bool instantiate_all_variables = 106 [default = true];
2581  bool has_instantiate_all_variables() const;
2582  private:
2583  bool _internal_has_instantiate_all_variables() const;
2584  public:
2586  bool instantiate_all_variables() const;
2588  private:
2589  bool _internal_instantiate_all_variables() const;
2590  void _internal_set_instantiate_all_variables(bool value);
2591  public:
2592 
2593  // optional bool auto_detect_greater_than_at_least_one_of = 95 [default = true];
2595  private:
2596  bool _internal_has_auto_detect_greater_than_at_least_one_of() const;
2597  public:
2601  private:
2602  bool _internal_auto_detect_greater_than_at_least_one_of() const;
2603  void _internal_set_auto_detect_greater_than_at_least_one_of(bool value);
2604  public:
2605 
2606  // optional bool share_objective_bounds = 113 [default = true];
2607  bool has_share_objective_bounds() const;
2608  private:
2609  bool _internal_has_share_objective_bounds() const;
2610  public:
2612  bool share_objective_bounds() const;
2613  void set_share_objective_bounds(bool value);
2614  private:
2615  bool _internal_share_objective_bounds() const;
2616  void _internal_set_share_objective_bounds(bool value);
2617  public:
2618 
2619  // optional bool cp_model_presolve = 86 [default = true];
2620  bool has_cp_model_presolve() const;
2621  private:
2622  bool _internal_has_cp_model_presolve() const;
2623  public:
2624  void clear_cp_model_presolve();
2625  bool cp_model_presolve() const;
2626  void set_cp_model_presolve(bool value);
2627  private:
2628  bool _internal_cp_model_presolve() const;
2629  void _internal_set_cp_model_presolve(bool value);
2630  public:
2631 
2632  // optional bool cp_model_use_sat_presolve = 93 [default = true];
2633  bool has_cp_model_use_sat_presolve() const;
2634  private:
2635  bool _internal_has_cp_model_use_sat_presolve() const;
2636  public:
2638  bool cp_model_use_sat_presolve() const;
2640  private:
2641  bool _internal_cp_model_use_sat_presolve() const;
2642  void _internal_set_cp_model_use_sat_presolve(bool value);
2643  public:
2644 
2645  // optional bool expand_element_constraints = 140 [default = true];
2646  bool has_expand_element_constraints() const;
2647  private:
2648  bool _internal_has_expand_element_constraints() const;
2649  public:
2651  bool expand_element_constraints() const;
2653  private:
2654  bool _internal_expand_element_constraints() const;
2655  void _internal_set_expand_element_constraints(bool value);
2656  public:
2657 
2658  // optional bool expand_automaton_constraints = 143 [default = true];
2659  bool has_expand_automaton_constraints() const;
2660  private:
2661  bool _internal_has_expand_automaton_constraints() const;
2662  public:
2664  bool expand_automaton_constraints() const;
2666  private:
2667  bool _internal_expand_automaton_constraints() const;
2668  void _internal_set_expand_automaton_constraints(bool value);
2669  public:
2670 
2671  // optional double min_orthogonality_for_lp_constraints = 115 [default = 0.05];
2673  private:
2674  bool _internal_has_min_orthogonality_for_lp_constraints() const;
2675  public:
2677  double min_orthogonality_for_lp_constraints() const;
2679  private:
2680  double _internal_min_orthogonality_for_lp_constraints() const;
2681  void _internal_set_min_orthogonality_for_lp_constraints(double value);
2682  public:
2683 
2684  // optional bool add_lin_max_cuts = 152 [default = true];
2685  bool has_add_lin_max_cuts() const;
2686  private:
2687  bool _internal_has_add_lin_max_cuts() const;
2688  public:
2689  void clear_add_lin_max_cuts();
2690  bool add_lin_max_cuts() const;
2691  void set_add_lin_max_cuts(bool value);
2692  private:
2693  bool _internal_add_lin_max_cuts() const;
2694  void _internal_set_add_lin_max_cuts(bool value);
2695  public:
2696 
2697  // optional bool add_lp_constraints_lazily = 112 [default = true];
2698  bool has_add_lp_constraints_lazily() const;
2699  private:
2700  bool _internal_has_add_lp_constraints_lazily() const;
2701  public:
2703  bool add_lp_constraints_lazily() const;
2705  private:
2706  bool _internal_add_lp_constraints_lazily() const;
2707  void _internal_set_add_lp_constraints_lazily(bool value);
2708  public:
2709 
2710  // optional bool exploit_integer_lp_solution = 94 [default = true];
2711  bool has_exploit_integer_lp_solution() const;
2712  private:
2713  bool _internal_has_exploit_integer_lp_solution() const;
2714  public:
2716  bool exploit_integer_lp_solution() const;
2718  private:
2719  bool _internal_exploit_integer_lp_solution() const;
2720  void _internal_set_exploit_integer_lp_solution(bool value);
2721  public:
2722 
2723  // optional bool exploit_all_lp_solution = 116 [default = true];
2724  bool has_exploit_all_lp_solution() const;
2725  private:
2726  bool _internal_has_exploit_all_lp_solution() const;
2727  public:
2729  bool exploit_all_lp_solution() const;
2731  private:
2732  bool _internal_exploit_all_lp_solution() const;
2733  void _internal_set_exploit_all_lp_solution(bool value);
2734  public:
2735 
2736  // optional int32 max_integer_rounding_scaling = 119 [default = 600];
2737  bool has_max_integer_rounding_scaling() const;
2738  private:
2739  bool _internal_has_max_integer_rounding_scaling() const;
2740  public:
2742  ::PROTOBUF_NAMESPACE_ID::int32 max_integer_rounding_scaling() const;
2743  void set_max_integer_rounding_scaling(::PROTOBUF_NAMESPACE_ID::int32 value);
2744  private:
2745  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_integer_rounding_scaling() const;
2746  void _internal_set_max_integer_rounding_scaling(::PROTOBUF_NAMESPACE_ID::int32 value);
2747  public:
2748 
2749  // optional int32 max_consecutive_inactive_count = 121 [default = 100];
2751  private:
2752  bool _internal_has_max_consecutive_inactive_count() const;
2753  public:
2755  ::PROTOBUF_NAMESPACE_ID::int32 max_consecutive_inactive_count() const;
2756  void set_max_consecutive_inactive_count(::PROTOBUF_NAMESPACE_ID::int32 value);
2757  private:
2758  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_consecutive_inactive_count() const;
2759  void _internal_set_max_consecutive_inactive_count(::PROTOBUF_NAMESPACE_ID::int32 value);
2760  public:
2761 
2762  // optional int32 new_constraints_batch_size = 122 [default = 50];
2763  bool has_new_constraints_batch_size() const;
2764  private:
2765  bool _internal_has_new_constraints_batch_size() const;
2766  public:
2768  ::PROTOBUF_NAMESPACE_ID::int32 new_constraints_batch_size() const;
2769  void set_new_constraints_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2770  private:
2771  ::PROTOBUF_NAMESPACE_ID::int32 _internal_new_constraints_batch_size() const;
2772  void _internal_set_new_constraints_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2773  public:
2774 
2775  // optional int64 pseudo_cost_reliability_threshold = 123 [default = 100];
2777  private:
2778  bool _internal_has_pseudo_cost_reliability_threshold() const;
2779  public:
2781  ::PROTOBUF_NAMESPACE_ID::int64 pseudo_cost_reliability_threshold() const;
2782  void set_pseudo_cost_reliability_threshold(::PROTOBUF_NAMESPACE_ID::int64 value);
2783  private:
2784  ::PROTOBUF_NAMESPACE_ID::int64 _internal_pseudo_cost_reliability_threshold() const;
2785  void _internal_set_pseudo_cost_reliability_threshold(::PROTOBUF_NAMESPACE_ID::int64 value);
2786  public:
2787 
2788  // optional double mip_max_bound = 124 [default = 10000000];
2789  bool has_mip_max_bound() const;
2790  private:
2791  bool _internal_has_mip_max_bound() const;
2792  public:
2793  void clear_mip_max_bound();
2794  double mip_max_bound() const;
2795  void set_mip_max_bound(double value);
2796  private:
2797  double _internal_mip_max_bound() const;
2798  void _internal_set_mip_max_bound(double value);
2799  public:
2800 
2801  // optional bool use_optional_variables = 108 [default = true];
2802  bool has_use_optional_variables() const;
2803  private:
2804  bool _internal_has_use_optional_variables() const;
2805  public:
2807  bool use_optional_variables() const;
2808  void set_use_optional_variables(bool value);
2809  private:
2810  bool _internal_use_optional_variables() const;
2811  void _internal_set_use_optional_variables(bool value);
2812  public:
2813 
2814  // optional bool use_exact_lp_reason = 109 [default = true];
2815  bool has_use_exact_lp_reason() const;
2816  private:
2817  bool _internal_has_use_exact_lp_reason() const;
2818  public:
2820  bool use_exact_lp_reason() const;
2821  void set_use_exact_lp_reason(bool value);
2822  private:
2823  bool _internal_use_exact_lp_reason() const;
2824  void _internal_set_use_exact_lp_reason(bool value);
2825  public:
2826 
2827  // optional bool catch_sigint_signal = 135 [default = true];
2828  bool has_catch_sigint_signal() const;
2829  private:
2830  bool _internal_has_catch_sigint_signal() const;
2831  public:
2833  bool catch_sigint_signal() const;
2834  void set_catch_sigint_signal(bool value);
2835  private:
2836  bool _internal_catch_sigint_signal() const;
2837  void _internal_set_catch_sigint_signal(bool value);
2838  public:
2839 
2840  // optional bool use_implied_bounds = 144 [default = true];
2841  bool has_use_implied_bounds() const;
2842  private:
2843  bool _internal_has_use_implied_bounds() const;
2844  public:
2845  void clear_use_implied_bounds();
2846  bool use_implied_bounds() const;
2847  void set_use_implied_bounds(bool value);
2848  private:
2849  bool _internal_use_implied_bounds() const;
2850  void _internal_set_use_implied_bounds(bool value);
2851  public:
2852 
2853  // optional int32 mip_max_activity_exponent = 127 [default = 53];
2854  bool has_mip_max_activity_exponent() const;
2855  private:
2856  bool _internal_has_mip_max_activity_exponent() const;
2857  public:
2859  ::PROTOBUF_NAMESPACE_ID::int32 mip_max_activity_exponent() const;
2860  void set_mip_max_activity_exponent(::PROTOBUF_NAMESPACE_ID::int32 value);
2861  private:
2862  ::PROTOBUF_NAMESPACE_ID::int32 _internal_mip_max_activity_exponent() const;
2863  void _internal_set_mip_max_activity_exponent(::PROTOBUF_NAMESPACE_ID::int32 value);
2864  public:
2865 
2866  // optional double mip_var_scaling = 125 [default = 1];
2867  bool has_mip_var_scaling() const;
2868  private:
2869  bool _internal_has_mip_var_scaling() const;
2870  public:
2871  void clear_mip_var_scaling();
2872  double mip_var_scaling() const;
2873  void set_mip_var_scaling(double value);
2874  private:
2875  double _internal_mip_var_scaling() const;
2876  void _internal_set_mip_var_scaling(double value);
2877  public:
2878 
2879  // optional double mip_wanted_precision = 126 [default = 1e-06];
2880  bool has_mip_wanted_precision() const;
2881  private:
2882  bool _internal_has_mip_wanted_precision() const;
2883  public:
2885  double mip_wanted_precision() const;
2886  void set_mip_wanted_precision(double value);
2887  private:
2888  double _internal_mip_wanted_precision() const;
2889  void _internal_set_mip_wanted_precision(double value);
2890  public:
2891 
2892  // optional double mip_check_precision = 128 [default = 0.0001];
2893  bool has_mip_check_precision() const;
2894  private:
2895  bool _internal_has_mip_check_precision() const;
2896  public:
2898  double mip_check_precision() const;
2899  void set_mip_check_precision(double value);
2900  private:
2901  double _internal_mip_check_precision() const;
2902  void _internal_set_mip_check_precision(double value);
2903  public:
2904 
2905  // optional int32 interleave_batch_size = 134 [default = 1];
2906  bool has_interleave_batch_size() const;
2907  private:
2908  bool _internal_has_interleave_batch_size() const;
2909  public:
2911  ::PROTOBUF_NAMESPACE_ID::int32 interleave_batch_size() const;
2912  void set_interleave_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2913  private:
2914  ::PROTOBUF_NAMESPACE_ID::int32 _internal_interleave_batch_size() const;
2915  void _internal_set_interleave_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value);
2916  public:
2917 
2918  // optional int32 max_presolve_iterations = 138 [default = 3];
2919  bool has_max_presolve_iterations() const;
2920  private:
2921  bool _internal_has_max_presolve_iterations() const;
2922  public:
2924  ::PROTOBUF_NAMESPACE_ID::int32 max_presolve_iterations() const;
2925  void set_max_presolve_iterations(::PROTOBUF_NAMESPACE_ID::int32 value);
2926  private:
2927  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_presolve_iterations() const;
2928  void _internal_set_max_presolve_iterations(::PROTOBUF_NAMESPACE_ID::int32 value);
2929  public:
2930 
2931  // optional double merge_no_overlap_work_limit = 145 [default = 1000000000000];
2932  bool has_merge_no_overlap_work_limit() const;
2933  private:
2934  bool _internal_has_merge_no_overlap_work_limit() const;
2935  public:
2937  double merge_no_overlap_work_limit() const;
2939  private:
2940  double _internal_merge_no_overlap_work_limit() const;
2941  void _internal_set_merge_no_overlap_work_limit(double value);
2942  public:
2943 
2944  // optional bool add_cg_cuts = 117 [default = true];
2945  bool has_add_cg_cuts() const;
2946  private:
2947  bool _internal_has_add_cg_cuts() const;
2948  public:
2949  void clear_add_cg_cuts();
2950  bool add_cg_cuts() const;
2951  void set_add_cg_cuts(bool value);
2952  private:
2953  bool _internal_add_cg_cuts() const;
2954  void _internal_set_add_cg_cuts(bool value);
2955  public:
2956 
2957  // optional bool add_mir_cuts = 120 [default = true];
2958  bool has_add_mir_cuts() const;
2959  private:
2960  bool _internal_has_add_mir_cuts() const;
2961  public:
2962  void clear_add_mir_cuts();
2963  bool add_mir_cuts() const;
2964  void set_add_mir_cuts(bool value);
2965  private:
2966  bool _internal_add_mir_cuts() const;
2967  void _internal_set_add_mir_cuts(bool value);
2968  public:
2969 
2970  // optional bool add_zero_half_cuts = 169 [default = true];
2971  bool has_add_zero_half_cuts() const;
2972  private:
2973  bool _internal_has_add_zero_half_cuts() const;
2974  public:
2975  void clear_add_zero_half_cuts();
2976  bool add_zero_half_cuts() const;
2977  void set_add_zero_half_cuts(bool value);
2978  private:
2979  bool _internal_add_zero_half_cuts() const;
2980  void _internal_set_add_zero_half_cuts(bool value);
2981  public:
2982 
2983  // optional bool add_clique_cuts = 172 [default = true];
2984  bool has_add_clique_cuts() const;
2985  private:
2986  bool _internal_has_add_clique_cuts() const;
2987  public:
2988  void clear_add_clique_cuts();
2989  bool add_clique_cuts() const;
2990  void set_add_clique_cuts(bool value);
2991  private:
2992  bool _internal_add_clique_cuts() const;
2993  void _internal_set_add_clique_cuts(bool value);
2994  public:
2995 
2996  // optional int32 presolve_substitution_level = 147 [default = 1];
2997  bool has_presolve_substitution_level() const;
2998  private:
2999  bool _internal_has_presolve_substitution_level() const;
3000  public:
3002  ::PROTOBUF_NAMESPACE_ID::int32 presolve_substitution_level() const;
3003  void set_presolve_substitution_level(::PROTOBUF_NAMESPACE_ID::int32 value);
3004  private:
3005  ::PROTOBUF_NAMESPACE_ID::int32 _internal_presolve_substitution_level() const;
3006  void _internal_set_presolve_substitution_level(::PROTOBUF_NAMESPACE_ID::int32 value);
3007  public:
3008 
3009  // optional double merge_at_most_one_work_limit = 146 [default = 100000000];
3010  bool has_merge_at_most_one_work_limit() const;
3011  private:
3012  bool _internal_has_merge_at_most_one_work_limit() const;
3013  public:
3015  double merge_at_most_one_work_limit() const;
3017  private:
3018  double _internal_merge_at_most_one_work_limit() const;
3019  void _internal_set_merge_at_most_one_work_limit(double value);
3020  public:
3021 
3022  // optional bool share_level_zero_bounds = 114 [default = true];
3023  bool has_share_level_zero_bounds() const;
3024  private:
3025  bool _internal_has_share_level_zero_bounds() const;
3026  public:
3028  bool share_level_zero_bounds() const;
3030  private:
3031  bool _internal_share_level_zero_bounds() const;
3032  void _internal_set_share_level_zero_bounds(bool value);
3033  public:
3034 
3035  // optional bool lns_expand_intervals_in_constraint_graph = 184 [default = true];
3037  private:
3038  bool _internal_has_lns_expand_intervals_in_constraint_graph() const;
3039  public:
3043  private:
3044  bool _internal_lns_expand_intervals_in_constraint_graph() const;
3045  void _internal_set_lns_expand_intervals_in_constraint_graph(bool value);
3046  public:
3047 
3048  // optional bool use_rins_lns = 129 [default = true];
3049  bool has_use_rins_lns() const;
3050  private:
3051  bool _internal_has_use_rins_lns() const;
3052  public:
3053  void clear_use_rins_lns();
3054  bool use_rins_lns() const;
3055  void set_use_rins_lns(bool value);
3056  private:
3057  bool _internal_use_rins_lns() const;
3058  void _internal_set_use_rins_lns(bool value);
3059  public:
3060 
3061  // optional bool use_feasibility_pump = 164 [default = true];
3062  bool has_use_feasibility_pump() const;
3063  private:
3064  bool _internal_has_use_feasibility_pump() const;
3065  public:
3067  bool use_feasibility_pump() const;
3068  void set_use_feasibility_pump(bool value);
3069  private:
3070  bool _internal_use_feasibility_pump() const;
3071  void _internal_set_use_feasibility_pump(bool value);
3072  public:
3073 
3074  // optional int32 max_all_diff_cut_size = 148 [default = 7];
3075  bool has_max_all_diff_cut_size() const;
3076  private:
3077  bool _internal_has_max_all_diff_cut_size() const;
3078  public:
3080  ::PROTOBUF_NAMESPACE_ID::int32 max_all_diff_cut_size() const;
3081  void set_max_all_diff_cut_size(::PROTOBUF_NAMESPACE_ID::int32 value);
3082  private:
3083  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_all_diff_cut_size() const;
3084  void _internal_set_max_all_diff_cut_size(::PROTOBUF_NAMESPACE_ID::int32 value);
3085  public:
3086 
3087  // optional int32 hint_conflict_limit = 153 [default = 10];
3088  bool has_hint_conflict_limit() const;
3089  private:
3090  bool _internal_has_hint_conflict_limit() const;
3091  public:
3093  ::PROTOBUF_NAMESPACE_ID::int32 hint_conflict_limit() const;
3094  void set_hint_conflict_limit(::PROTOBUF_NAMESPACE_ID::int32 value);
3095  private:
3096  ::PROTOBUF_NAMESPACE_ID::int32 _internal_hint_conflict_limit() const;
3097  void _internal_set_hint_conflict_limit(::PROTOBUF_NAMESPACE_ID::int32 value);
3098  public:
3099 
3100  // optional int32 max_cut_rounds_at_level_zero = 154 [default = 1];
3101  bool has_max_cut_rounds_at_level_zero() const;
3102  private:
3103  bool _internal_has_max_cut_rounds_at_level_zero() const;
3104  public:
3106  ::PROTOBUF_NAMESPACE_ID::int32 max_cut_rounds_at_level_zero() const;
3107  void set_max_cut_rounds_at_level_zero(::PROTOBUF_NAMESPACE_ID::int32 value);
3108  private:
3109  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_cut_rounds_at_level_zero() const;
3110  void _internal_set_max_cut_rounds_at_level_zero(::PROTOBUF_NAMESPACE_ID::int32 value);
3111  public:
3112 
3113  // optional double cut_max_active_count_value = 155 [default = 10000000000];
3114  bool has_cut_max_active_count_value() const;
3115  private:
3116  bool _internal_has_cut_max_active_count_value() const;
3117  public:
3119  double cut_max_active_count_value() const;
3121  private:
3122  double _internal_cut_max_active_count_value() const;
3123  void _internal_set_cut_max_active_count_value(double value);
3124  public:
3125 
3126  // optional double cut_active_count_decay = 156 [default = 0.8];
3127  bool has_cut_active_count_decay() const;
3128  private:
3129  bool _internal_has_cut_active_count_decay() const;
3130  public:
3132  double cut_active_count_decay() const;
3133  void set_cut_active_count_decay(double value);
3134  private:
3135  double _internal_cut_active_count_decay() const;
3136  void _internal_set_cut_active_count_decay(double value);
3137  public:
3138 
3139  // optional int32 cut_cleanup_target = 157 [default = 1000];
3140  bool has_cut_cleanup_target() const;
3141  private:
3142  bool _internal_has_cut_cleanup_target() const;
3143  public:
3144  void clear_cut_cleanup_target();
3145  ::PROTOBUF_NAMESPACE_ID::int32 cut_cleanup_target() const;
3146  void set_cut_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value);
3147  private:
3148  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cut_cleanup_target() const;
3149  void _internal_set_cut_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value);
3150  public:
3151 
3152  // optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];
3153  bool has_fp_rounding() const;
3154  private:
3155  bool _internal_has_fp_rounding() const;
3156  public:
3157  void clear_fp_rounding();
3160  private:
3161  ::operations_research::sat::SatParameters_FPRoundingMethod _internal_fp_rounding() const;
3162  void _internal_set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value);
3163  public:
3164 
3165  // optional int32 polarity_rephase_increment = 168 [default = 1000];
3166  bool has_polarity_rephase_increment() const;
3167  private:
3168  bool _internal_has_polarity_rephase_increment() const;
3169  public:
3171  ::PROTOBUF_NAMESPACE_ID::int32 polarity_rephase_increment() const;
3172  void set_polarity_rephase_increment(::PROTOBUF_NAMESPACE_ID::int32 value);
3173  private:
3174  ::PROTOBUF_NAMESPACE_ID::int32 _internal_polarity_rephase_increment() const;
3175  void _internal_set_polarity_rephase_increment(::PROTOBUF_NAMESPACE_ID::int32 value);
3176  public:
3177 
3178  // optional bool convert_intervals = 177 [default = true];
3179  bool has_convert_intervals() const;
3180  private:
3181  bool _internal_has_convert_intervals() const;
3182  public:
3183  void clear_convert_intervals();
3184  bool convert_intervals() const;
3185  void set_convert_intervals(bool value);
3186  private:
3187  bool _internal_convert_intervals() const;
3188  void _internal_set_convert_intervals(bool value);
3189  public:
3190 
3191  // optional bool mip_automatically_scale_variables = 166 [default = true];
3193  private:
3194  bool _internal_has_mip_automatically_scale_variables() const;
3195  public:
3197  bool mip_automatically_scale_variables() const;
3199  private:
3200  bool _internal_mip_automatically_scale_variables() const;
3201  void _internal_set_mip_automatically_scale_variables(bool value);
3202  public:
3203 
3204  // optional int32 symmetry_level = 183 [default = 2];
3205  bool has_symmetry_level() const;
3206  private:
3207  bool _internal_has_symmetry_level() const;
3208  public:
3209  void clear_symmetry_level();
3210  ::PROTOBUF_NAMESPACE_ID::int32 symmetry_level() const;
3211  void set_symmetry_level(::PROTOBUF_NAMESPACE_ID::int32 value);
3212  private:
3213  ::PROTOBUF_NAMESPACE_ID::int32 _internal_symmetry_level() const;
3214  void _internal_set_symmetry_level(::PROTOBUF_NAMESPACE_ID::int32 value);
3215  public:
3216 
3217  // optional int32 max_domain_size_when_encoding_eq_neq_constraints = 191 [default = 16];
3219  private:
3220  bool _internal_has_max_domain_size_when_encoding_eq_neq_constraints() const;
3221  public:
3223  ::PROTOBUF_NAMESPACE_ID::int32 max_domain_size_when_encoding_eq_neq_constraints() const;
3224  void set_max_domain_size_when_encoding_eq_neq_constraints(::PROTOBUF_NAMESPACE_ID::int32 value);
3225  private:
3226  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_domain_size_when_encoding_eq_neq_constraints() const;
3227  void _internal_set_max_domain_size_when_encoding_eq_neq_constraints(::PROTOBUF_NAMESPACE_ID::int32 value);
3228  public:
3229 
3230  // optional double clause_cleanup_ratio = 190 [default = 0.5];
3231  bool has_clause_cleanup_ratio() const;
3232  private:
3233  bool _internal_has_clause_cleanup_ratio() const;
3234  public:
3236  double clause_cleanup_ratio() const;
3237  void set_clause_cleanup_ratio(double value);
3238  private:
3239  double _internal_clause_cleanup_ratio() const;
3240  void _internal_set_clause_cleanup_ratio(double value);
3241  public:
3242 
3243  // @@protoc_insertion_point(class_scope:operations_research.sat.SatParameters)
3244  private:
3245  class _Internal;
3246 
3247  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3248  typedef void InternalArenaConstructable_;
3249  typedef void DestructorSkippable_;
3250  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<6> _has_bits_;
3251  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3252  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> restart_algorithms_;
3253  static const ::PROTOBUF_NAMESPACE_ID::internal::LazyString _i_give_permission_to_break_this_code_default_default_restart_algorithms_;
3254  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr default_restart_algorithms_;
3255  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
3256  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr log_prefix_;
3257  int preferred_variable_order_;
3258  ::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_target_;
3259  double random_branches_ratio_;
3260  double random_polarity_ratio_;
3261  int max_sat_assumption_order_;
3262  int clause_cleanup_protection_;
3263  int clause_cleanup_ordering_;
3264  ::PROTOBUF_NAMESPACE_ID::int32 num_conflicts_before_strategy_changes_;
3265  double strategy_change_increase_ratio_;
3266  double initial_variables_activity_;
3267  int search_branching_;
3268  bool use_overload_checker_in_cumulative_constraint_;
3269  bool use_timetable_edge_finding_in_cumulative_constraint_;
3270  bool only_add_cuts_at_level_zero_;
3271  bool add_knapsack_cuts_;
3272  bool use_erwa_heuristic_;
3273  bool also_bump_variables_in_conflict_reasons_;
3274  bool use_blocking_restart_;
3275  bool permute_variable_randomly_;
3276  ::PROTOBUF_NAMESPACE_ID::int32 num_search_workers_;
3277  ::PROTOBUF_NAMESPACE_ID::int64 search_randomization_tolerance_;
3278  bool use_pb_resolution_;
3279  bool minimize_reduction_during_pb_resolution_;
3280  bool cp_model_postsolve_with_full_solver_;
3281  bool use_sat_inprocessing_;
3282  bool enumerate_all_solutions_;
3283  bool keep_all_feasible_solutions_in_presolve_;
3284  bool fill_tightened_domains_in_response_;
3285  bool stop_after_first_solution_;
3286  bool lns_focus_on_decision_variables_;
3287  bool use_relaxation_lns_;
3288  bool diversify_lns_params_;
3289  bool randomize_search_;
3290  bool stop_after_presolve_;
3291  bool interleave_search_;
3292  bool reduce_memory_usage_in_interleave_mode_;
3293  bool use_lns_only_;
3294  bool use_probing_search_;
3295  bool optimize_with_core_;
3296  bool optimize_with_lb_tree_search_;
3297  bool optimize_with_max_hs_;
3298  bool expand_alldiff_constraints_;
3299  bool disable_constraint_expansion_;
3300  bool presolve_extract_integer_enforcement_;
3301  bool max_sat_reverse_assumption_order_;
3302  ::PROTOBUF_NAMESPACE_ID::int64 probing_period_at_root_;
3303  bool permute_presolve_constraint_order_;
3304  bool use_absl_random_;
3305  bool log_search_progress_;
3306  bool log_to_response_;
3307  bool use_branching_in_lp_;
3308  bool use_combined_no_overlap_;
3309  bool polish_lp_solution_;
3310  double absolute_gap_limit_;
3311  double relative_gap_limit_;
3312  ::PROTOBUF_NAMESPACE_ID::int32 cp_model_max_num_presolve_operations_;
3313  bool repair_hint_;
3314  bool fix_variables_to_their_hinted_value_;
3315  bool exploit_best_solution_;
3316  bool exploit_relaxation_solution_;
3317  ::PROTOBUF_NAMESPACE_ID::int32 solution_pool_size_;
3318  int initial_polarity_;
3319  int minimization_algorithm_;
3320  double variable_activity_decay_;
3321  double max_variable_activity_value_;
3322  double clause_activity_decay_;
3323  ::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_period_;
3324  ::PROTOBUF_NAMESPACE_ID::int32 glucose_decay_increment_period_;
3325  double max_clause_activity_value_;
3326  double glucose_max_decay_;
3327  double glucose_decay_increment_;
3328  ::PROTOBUF_NAMESPACE_ID::int32 restart_period_;
3329  ::PROTOBUF_NAMESPACE_ID::int32 random_seed_;
3330  double max_time_in_seconds_;
3331  ::PROTOBUF_NAMESPACE_ID::int64 max_number_of_conflicts_;
3332  ::PROTOBUF_NAMESPACE_ID::int64 max_memory_in_mb_;
3333  int binary_minimization_algorithm_;
3334  ::PROTOBUF_NAMESPACE_ID::int32 pb_cleanup_increment_;
3335  double pb_cleanup_ratio_;
3336  int max_sat_stratification_;
3337  ::PROTOBUF_NAMESPACE_ID::int32 presolve_bve_threshold_;
3338  double presolve_probing_deterministic_time_limit_;
3339  ::PROTOBUF_NAMESPACE_ID::int32 presolve_bve_clause_weight_;
3340  ::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_lbd_bound_;
3341  double restart_dl_average_ratio_;
3342  ::PROTOBUF_NAMESPACE_ID::int32 restart_running_window_size_;
3343  ::PROTOBUF_NAMESPACE_ID::int32 blocking_restart_window_size_;
3344  double blocking_restart_multiplier_;
3345  double max_deterministic_time_;
3346  double restart_lbd_average_ratio_;
3347  ::PROTOBUF_NAMESPACE_ID::int32 presolve_bva_threshold_;
3348  bool use_phase_saving_;
3349  bool subsumption_during_conflict_analysis_;
3350  bool treat_binary_clauses_separately_;
3351  bool log_subsolver_statistics_;
3352  bool find_multiple_cores_;
3353  bool cover_optimization_;
3354  bool use_precedences_in_disjunctive_constraint_;
3355  bool use_disjunctive_constraint_in_cumulative_constraint_;
3356  ::PROTOBUF_NAMESPACE_ID::int32 linearization_level_;
3357  ::PROTOBUF_NAMESPACE_ID::int32 max_num_cuts_;
3358  ::PROTOBUF_NAMESPACE_ID::int32 minimize_with_propagation_restart_period_;
3359  ::PROTOBUF_NAMESPACE_ID::int32 minimize_with_propagation_num_decisions_;
3360  bool log_to_stdout_;
3361  bool count_assumption_levels_in_lbd_;
3362  bool presolve_blocked_clause_;
3363  bool presolve_use_bva_;
3364  ::PROTOBUF_NAMESPACE_ID::int32 binary_search_num_conflicts_;
3365  bool expand_table_constraints_;
3366  bool expand_reservoir_constraints_;
3367  bool use_optimization_hints_;
3368  bool minimize_core_;
3369  ::PROTOBUF_NAMESPACE_ID::int32 boolean_encoding_level_;
3370  ::PROTOBUF_NAMESPACE_ID::int32 cp_model_probing_level_;
3371  bool exploit_objective_;
3372  bool instantiate_all_variables_;
3373  bool auto_detect_greater_than_at_least_one_of_;
3374  bool share_objective_bounds_;
3375  bool cp_model_presolve_;
3376  bool cp_model_use_sat_presolve_;
3377  bool expand_element_constraints_;
3378  bool expand_automaton_constraints_;
3379  double min_orthogonality_for_lp_constraints_;
3380  bool add_lin_max_cuts_;
3381  bool add_lp_constraints_lazily_;
3382  bool exploit_integer_lp_solution_;
3383  bool exploit_all_lp_solution_;
3384  ::PROTOBUF_NAMESPACE_ID::int32 max_integer_rounding_scaling_;
3385  ::PROTOBUF_NAMESPACE_ID::int32 max_consecutive_inactive_count_;
3386  ::PROTOBUF_NAMESPACE_ID::int32 new_constraints_batch_size_;
3387  ::PROTOBUF_NAMESPACE_ID::int64 pseudo_cost_reliability_threshold_;
3388  double mip_max_bound_;
3389  bool use_optional_variables_;
3390  bool use_exact_lp_reason_;
3391  bool catch_sigint_signal_;
3392  bool use_implied_bounds_;
3393  ::PROTOBUF_NAMESPACE_ID::int32 mip_max_activity_exponent_;
3394  double mip_var_scaling_;
3395  double mip_wanted_precision_;
3396  double mip_check_precision_;
3397  ::PROTOBUF_NAMESPACE_ID::int32 interleave_batch_size_;
3398  ::PROTOBUF_NAMESPACE_ID::int32 max_presolve_iterations_;
3399  double merge_no_overlap_work_limit_;
3400  bool add_cg_cuts_;
3401  bool add_mir_cuts_;
3402  bool add_zero_half_cuts_;
3403  bool add_clique_cuts_;
3404  ::PROTOBUF_NAMESPACE_ID::int32 presolve_substitution_level_;
3405  double merge_at_most_one_work_limit_;
3406  bool share_level_zero_bounds_;
3407  bool lns_expand_intervals_in_constraint_graph_;
3408  bool use_rins_lns_;
3409  bool use_feasibility_pump_;
3410  ::PROTOBUF_NAMESPACE_ID::int32 max_all_diff_cut_size_;
3411  ::PROTOBUF_NAMESPACE_ID::int32 hint_conflict_limit_;
3412  ::PROTOBUF_NAMESPACE_ID::int32 max_cut_rounds_at_level_zero_;
3413  double cut_max_active_count_value_;
3414  double cut_active_count_decay_;
3415  ::PROTOBUF_NAMESPACE_ID::int32 cut_cleanup_target_;
3416  int fp_rounding_;
3417  ::PROTOBUF_NAMESPACE_ID::int32 polarity_rephase_increment_;
3418  bool convert_intervals_;
3419  bool mip_automatically_scale_variables_;
3420  ::PROTOBUF_NAMESPACE_ID::int32 symmetry_level_;
3421  ::PROTOBUF_NAMESPACE_ID::int32 max_domain_size_when_encoding_eq_neq_constraints_;
3422  double clause_cleanup_ratio_;
3423  friend struct ::TableStruct_ortools_2fsat_2fsat_5fparameters_2eproto;
3424 };
3425 // ===================================================================
3426 
3427 
3428 // ===================================================================
3429 
3430 #ifdef __GNUC__
3431  #pragma GCC diagnostic push
3432  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
3433 #endif // __GNUC__
3434 // SatParameters
3435 
3436 // optional string name = 171 [default = ""];
3437 inline bool SatParameters::_internal_has_name() const {
3438  bool value = (_has_bits_[0] & 0x00000002u) != 0;
3439  return value;
3440 }
3441 inline bool SatParameters::has_name() const {
3442  return _internal_has_name();
3443 }
3445  name_.ClearToEmpty();
3446  _has_bits_[0] &= ~0x00000002u;
3447 }
3448 inline const std::string& SatParameters::name() const {
3449  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.name)
3450  return _internal_name();
3451 }
3452 template <typename ArgT0, typename... ArgT>
3453 inline PROTOBUF_ALWAYS_INLINE
3454 void SatParameters::set_name(ArgT0&& arg0, ArgT... args) {
3455  _has_bits_[0] |= 0x00000002u;
3456  name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
3457  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.name)
3458 }
3459 inline std::string* SatParameters::mutable_name() {
3460  std::string* _s = _internal_mutable_name();
3461  // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.name)
3462  return _s;
3463 }
3464 inline const std::string& SatParameters::_internal_name() const {
3465  return name_.Get();
3466 }
3467 inline void SatParameters::_internal_set_name(const std::string& value) {
3468  _has_bits_[0] |= 0x00000002u;
3469  name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
3470 }
3471 inline std::string* SatParameters::_internal_mutable_name() {
3472  _has_bits_[0] |= 0x00000002u;
3473  return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
3474 }
3475 inline std::string* SatParameters::release_name() {
3476  // @@protoc_insertion_point(field_release:operations_research.sat.SatParameters.name)
3477  if (!_internal_has_name()) {
3478  return nullptr;
3479  }
3480  _has_bits_[0] &= ~0x00000002u;
3481  return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
3482 }
3483 inline void SatParameters::set_allocated_name(std::string* name) {
3484  if (name != nullptr) {
3485  _has_bits_[0] |= 0x00000002u;
3486  } else {
3487  _has_bits_[0] &= ~0x00000002u;
3488  }
3489  name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name,
3490  GetArenaForAllocation());
3491  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.SatParameters.name)
3492 }
3493 
3494 // optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];
3495 inline bool SatParameters::_internal_has_preferred_variable_order() const {
3496  bool value = (_has_bits_[0] & 0x00000008u) != 0;
3497  return value;
3498 }
3500  return _internal_has_preferred_variable_order();
3501 }
3503  preferred_variable_order_ = 0;
3504  _has_bits_[0] &= ~0x00000008u;
3505 }
3506 inline ::operations_research::sat::SatParameters_VariableOrder SatParameters::_internal_preferred_variable_order() const {
3507  return static_cast< ::operations_research::sat::SatParameters_VariableOrder >(preferred_variable_order_);
3508 }
3510  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.preferred_variable_order)
3511  return _internal_preferred_variable_order();
3512 }
3513 inline void SatParameters::_internal_set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value) {
3515  _has_bits_[0] |= 0x00000008u;
3516  preferred_variable_order_ = value;
3517 }
3519  _internal_set_preferred_variable_order(value);
3520  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.preferred_variable_order)
3521 }
3522 
3523 // optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];
3524 inline bool SatParameters::_internal_has_initial_polarity() const {
3525  bool value = (_has_bits_[2] & 0x00000001u) != 0;
3526  return value;
3527 }
3529  return _internal_has_initial_polarity();
3530 }
3532  initial_polarity_ = 1;
3533  _has_bits_[2] &= ~0x00000001u;
3534 }
3535 inline ::operations_research::sat::SatParameters_Polarity SatParameters::_internal_initial_polarity() const {
3536  return static_cast< ::operations_research::sat::SatParameters_Polarity >(initial_polarity_);
3537 }
3539  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.initial_polarity)
3540  return _internal_initial_polarity();
3541 }
3542 inline void SatParameters::_internal_set_initial_polarity(::operations_research::sat::SatParameters_Polarity value) {
3544  _has_bits_[2] |= 0x00000001u;
3545  initial_polarity_ = value;
3546 }
3548  _internal_set_initial_polarity(value);
3549  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.initial_polarity)
3550 }
3551 
3552 // optional bool use_phase_saving = 44 [default = true];
3553 inline bool SatParameters::_internal_has_use_phase_saving() const {
3554  bool value = (_has_bits_[2] & 0x40000000u) != 0;
3555  return value;
3556 }
3558  return _internal_has_use_phase_saving();
3559 }
3561  use_phase_saving_ = true;
3562  _has_bits_[2] &= ~0x40000000u;
3563 }
3564 inline bool SatParameters::_internal_use_phase_saving() const {
3565  return use_phase_saving_;
3566 }
3567 inline bool SatParameters::use_phase_saving() const {
3568  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_phase_saving)
3569  return _internal_use_phase_saving();
3570 }
3571 inline void SatParameters::_internal_set_use_phase_saving(bool value) {
3572  _has_bits_[2] |= 0x40000000u;
3573  use_phase_saving_ = value;
3574 }
3576  _internal_set_use_phase_saving(value);
3577  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_phase_saving)
3578 }
3579 
3580 // optional int32 polarity_rephase_increment = 168 [default = 1000];
3581 inline bool SatParameters::_internal_has_polarity_rephase_increment() const {
3582  bool value = (_has_bits_[5] & 0x00000008u) != 0;
3583  return value;
3584 }
3586  return _internal_has_polarity_rephase_increment();
3587 }
3589  polarity_rephase_increment_ = 1000;
3590  _has_bits_[5] &= ~0x00000008u;
3591 }
3592 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_polarity_rephase_increment() const {
3593  return polarity_rephase_increment_;
3594 }
3595 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::polarity_rephase_increment() const {
3596  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.polarity_rephase_increment)
3597  return _internal_polarity_rephase_increment();
3598 }
3599 inline void SatParameters::_internal_set_polarity_rephase_increment(::PROTOBUF_NAMESPACE_ID::int32 value) {
3600  _has_bits_[5] |= 0x00000008u;
3601  polarity_rephase_increment_ = value;
3602 }
3603 inline void SatParameters::set_polarity_rephase_increment(::PROTOBUF_NAMESPACE_ID::int32 value) {
3604  _internal_set_polarity_rephase_increment(value);
3605  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.polarity_rephase_increment)
3606 }
3607 
3608 // optional double random_polarity_ratio = 45 [default = 0];
3609 inline bool SatParameters::_internal_has_random_polarity_ratio() const {
3610  bool value = (_has_bits_[0] & 0x00000040u) != 0;
3611  return value;
3612 }
3614  return _internal_has_random_polarity_ratio();
3615 }
3617  random_polarity_ratio_ = 0;
3618  _has_bits_[0] &= ~0x00000040u;
3619 }
3620 inline double SatParameters::_internal_random_polarity_ratio() const {
3621  return random_polarity_ratio_;
3622 }
3624  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.random_polarity_ratio)
3625  return _internal_random_polarity_ratio();
3626 }
3627 inline void SatParameters::_internal_set_random_polarity_ratio(double value) {
3628  _has_bits_[0] |= 0x00000040u;
3629  random_polarity_ratio_ = value;
3630 }
3632  _internal_set_random_polarity_ratio(value);
3633  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.random_polarity_ratio)
3634 }
3635 
3636 // optional double random_branches_ratio = 32 [default = 0];
3637 inline bool SatParameters::_internal_has_random_branches_ratio() const {
3638  bool value = (_has_bits_[0] & 0x00000020u) != 0;
3639  return value;
3640 }
3642  return _internal_has_random_branches_ratio();
3643 }
3645  random_branches_ratio_ = 0;
3646  _has_bits_[0] &= ~0x00000020u;
3647 }
3648 inline double SatParameters::_internal_random_branches_ratio() const {
3649  return random_branches_ratio_;
3650 }
3652  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.random_branches_ratio)
3653  return _internal_random_branches_ratio();
3654 }
3655 inline void SatParameters::_internal_set_random_branches_ratio(double value) {
3656  _has_bits_[0] |= 0x00000020u;
3657  random_branches_ratio_ = value;
3658 }
3660  _internal_set_random_branches_ratio(value);
3661  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.random_branches_ratio)
3662 }
3663 
3664 // optional bool use_erwa_heuristic = 75 [default = false];
3665 inline bool SatParameters::_internal_has_use_erwa_heuristic() const {
3666  bool value = (_has_bits_[0] & 0x00040000u) != 0;
3667  return value;
3668 }
3670  return _internal_has_use_erwa_heuristic();
3671 }
3673  use_erwa_heuristic_ = false;
3674  _has_bits_[0] &= ~0x00040000u;
3675 }
3676 inline bool SatParameters::_internal_use_erwa_heuristic() const {
3677  return use_erwa_heuristic_;
3678 }
3680  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_erwa_heuristic)
3681  return _internal_use_erwa_heuristic();
3682 }
3683 inline void SatParameters::_internal_set_use_erwa_heuristic(bool value) {
3684  _has_bits_[0] |= 0x00040000u;
3685  use_erwa_heuristic_ = value;
3686 }
3688  _internal_set_use_erwa_heuristic(value);
3689  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_erwa_heuristic)
3690 }
3691 
3692 // optional double initial_variables_activity = 76 [default = 0];
3693 inline bool SatParameters::_internal_has_initial_variables_activity() const {
3694  bool value = (_has_bits_[0] & 0x00001000u) != 0;
3695  return value;
3696 }
3698  return _internal_has_initial_variables_activity();
3699 }
3701  initial_variables_activity_ = 0;
3702  _has_bits_[0] &= ~0x00001000u;
3703 }
3704 inline double SatParameters::_internal_initial_variables_activity() const {
3705  return initial_variables_activity_;
3706 }
3708  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.initial_variables_activity)
3709  return _internal_initial_variables_activity();
3710 }
3711 inline void SatParameters::_internal_set_initial_variables_activity(double value) {
3712  _has_bits_[0] |= 0x00001000u;
3713  initial_variables_activity_ = value;
3714 }
3716  _internal_set_initial_variables_activity(value);
3717  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.initial_variables_activity)
3718 }
3719 
3720 // optional bool also_bump_variables_in_conflict_reasons = 77 [default = false];
3721 inline bool SatParameters::_internal_has_also_bump_variables_in_conflict_reasons() const {
3722  bool value = (_has_bits_[0] & 0x00080000u) != 0;
3723  return value;
3724 }
3726  return _internal_has_also_bump_variables_in_conflict_reasons();
3727 }
3729  also_bump_variables_in_conflict_reasons_ = false;
3730  _has_bits_[0] &= ~0x00080000u;
3731 }
3732 inline bool SatParameters::_internal_also_bump_variables_in_conflict_reasons() const {
3733  return also_bump_variables_in_conflict_reasons_;
3734 }
3736  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.also_bump_variables_in_conflict_reasons)
3737  return _internal_also_bump_variables_in_conflict_reasons();
3738 }
3739 inline void SatParameters::_internal_set_also_bump_variables_in_conflict_reasons(bool value) {
3740  _has_bits_[0] |= 0x00080000u;
3741  also_bump_variables_in_conflict_reasons_ = value;
3742 }
3744  _internal_set_also_bump_variables_in_conflict_reasons(value);
3745  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.also_bump_variables_in_conflict_reasons)
3746 }
3747 
3748 // optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];
3749 inline bool SatParameters::_internal_has_minimization_algorithm() const {
3750  bool value = (_has_bits_[2] & 0x00000002u) != 0;
3751  return value;
3752 }
3754  return _internal_has_minimization_algorithm();
3755 }
3757  minimization_algorithm_ = 2;
3758  _has_bits_[2] &= ~0x00000002u;
3759 }
3760 inline ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm SatParameters::_internal_minimization_algorithm() const {
3761  return static_cast< ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm >(minimization_algorithm_);
3762 }
3764  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimization_algorithm)
3765  return _internal_minimization_algorithm();
3766 }
3767 inline void SatParameters::_internal_set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value) {
3769  _has_bits_[2] |= 0x00000002u;
3770  minimization_algorithm_ = value;
3771 }
3773  _internal_set_minimization_algorithm(value);
3774  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimization_algorithm)
3775 }
3776 
3777 // optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FIRST];
3778 inline bool SatParameters::_internal_has_binary_minimization_algorithm() const {
3779  bool value = (_has_bits_[2] & 0x00008000u) != 0;
3780  return value;
3781 }
3783  return _internal_has_binary_minimization_algorithm();
3784 }
3786  binary_minimization_algorithm_ = 1;
3787  _has_bits_[2] &= ~0x00008000u;
3788 }
3789 inline ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm SatParameters::_internal_binary_minimization_algorithm() const {
3790  return static_cast< ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm >(binary_minimization_algorithm_);
3791 }
3793  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.binary_minimization_algorithm)
3794  return _internal_binary_minimization_algorithm();
3795 }
3796 inline void SatParameters::_internal_set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value) {
3798  _has_bits_[2] |= 0x00008000u;
3799  binary_minimization_algorithm_ = value;
3800 }
3802  _internal_set_binary_minimization_algorithm(value);
3803  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.binary_minimization_algorithm)
3804 }
3805 
3806 // optional bool subsumption_during_conflict_analysis = 56 [default = true];
3807 inline bool SatParameters::_internal_has_subsumption_during_conflict_analysis() const {
3808  bool value = (_has_bits_[2] & 0x80000000u) != 0;
3809  return value;
3810 }
3812  return _internal_has_subsumption_during_conflict_analysis();
3813 }
3815  subsumption_during_conflict_analysis_ = true;
3816  _has_bits_[2] &= ~0x80000000u;
3817 }
3818 inline bool SatParameters::_internal_subsumption_during_conflict_analysis() const {
3819  return subsumption_during_conflict_analysis_;
3820 }
3822  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.subsumption_during_conflict_analysis)
3823  return _internal_subsumption_during_conflict_analysis();
3824 }
3825 inline void SatParameters::_internal_set_subsumption_during_conflict_analysis(bool value) {
3826  _has_bits_[2] |= 0x80000000u;
3827  subsumption_during_conflict_analysis_ = value;
3828 }
3830  _internal_set_subsumption_during_conflict_analysis(value);
3831  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.subsumption_during_conflict_analysis)
3832 }
3833 
3834 // optional int32 clause_cleanup_period = 11 [default = 10000];
3835 inline bool SatParameters::_internal_has_clause_cleanup_period() const {
3836  bool value = (_has_bits_[2] & 0x00000020u) != 0;
3837  return value;
3838 }
3840  return _internal_has_clause_cleanup_period();
3841 }
3843  clause_cleanup_period_ = 10000;
3844  _has_bits_[2] &= ~0x00000020u;
3845 }
3846 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_clause_cleanup_period() const {
3847  return clause_cleanup_period_;
3848 }
3849 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::clause_cleanup_period() const {
3850  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_period)
3851  return _internal_clause_cleanup_period();
3852 }
3853 inline void SatParameters::_internal_set_clause_cleanup_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
3854  _has_bits_[2] |= 0x00000020u;
3855  clause_cleanup_period_ = value;
3856 }
3857 inline void SatParameters::set_clause_cleanup_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
3858  _internal_set_clause_cleanup_period(value);
3859  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_period)
3860 }
3861 
3862 // optional int32 clause_cleanup_target = 13 [default = 0];
3863 inline bool SatParameters::_internal_has_clause_cleanup_target() const {
3864  bool value = (_has_bits_[0] & 0x00000010u) != 0;
3865  return value;
3866 }
3868  return _internal_has_clause_cleanup_target();
3869 }
3871  clause_cleanup_target_ = 0;
3872  _has_bits_[0] &= ~0x00000010u;
3873 }
3874 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_clause_cleanup_target() const {
3875  return clause_cleanup_target_;
3876 }
3877 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::clause_cleanup_target() const {
3878  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_target)
3879  return _internal_clause_cleanup_target();
3880 }
3881 inline void SatParameters::_internal_set_clause_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
3882  _has_bits_[0] |= 0x00000010u;
3883  clause_cleanup_target_ = value;
3884 }
3885 inline void SatParameters::set_clause_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
3886  _internal_set_clause_cleanup_target(value);
3887  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_target)
3888 }
3889 
3890 // optional double clause_cleanup_ratio = 190 [default = 0.5];
3891 inline bool SatParameters::_internal_has_clause_cleanup_ratio() const {
3892  bool value = (_has_bits_[5] & 0x00000100u) != 0;
3893  return value;
3894 }
3896  return _internal_has_clause_cleanup_ratio();
3897 }
3899  clause_cleanup_ratio_ = 0.5;
3900  _has_bits_[5] &= ~0x00000100u;
3901 }
3902 inline double SatParameters::_internal_clause_cleanup_ratio() const {
3903  return clause_cleanup_ratio_;
3904 }
3906  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_ratio)
3907  return _internal_clause_cleanup_ratio();
3908 }
3909 inline void SatParameters::_internal_set_clause_cleanup_ratio(double value) {
3910  _has_bits_[5] |= 0x00000100u;
3911  clause_cleanup_ratio_ = value;
3912 }
3914  _internal_set_clause_cleanup_ratio(value);
3915  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_ratio)
3916 }
3917 
3918 // optional .operations_research.sat.SatParameters.ClauseProtection clause_cleanup_protection = 58 [default = PROTECTION_NONE];
3919 inline bool SatParameters::_internal_has_clause_cleanup_protection() const {
3920  bool value = (_has_bits_[0] & 0x00000100u) != 0;
3921  return value;
3922 }
3924  return _internal_has_clause_cleanup_protection();
3925 }
3927  clause_cleanup_protection_ = 0;
3928  _has_bits_[0] &= ~0x00000100u;
3929 }
3930 inline ::operations_research::sat::SatParameters_ClauseProtection SatParameters::_internal_clause_cleanup_protection() const {
3931  return static_cast< ::operations_research::sat::SatParameters_ClauseProtection >(clause_cleanup_protection_);
3932 }
3934  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_protection)
3935  return _internal_clause_cleanup_protection();
3936 }
3937 inline void SatParameters::_internal_set_clause_cleanup_protection(::operations_research::sat::SatParameters_ClauseProtection value) {
3939  _has_bits_[0] |= 0x00000100u;
3940  clause_cleanup_protection_ = value;
3941 }
3943  _internal_set_clause_cleanup_protection(value);
3944  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_protection)
3945 }
3946 
3947 // optional int32 clause_cleanup_lbd_bound = 59 [default = 5];
3948 inline bool SatParameters::_internal_has_clause_cleanup_lbd_bound() const {
3949  bool value = (_has_bits_[2] & 0x00400000u) != 0;
3950  return value;
3951 }
3953  return _internal_has_clause_cleanup_lbd_bound();
3954 }
3956  clause_cleanup_lbd_bound_ = 5;
3957  _has_bits_[2] &= ~0x00400000u;
3958 }
3959 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_clause_cleanup_lbd_bound() const {
3960  return clause_cleanup_lbd_bound_;
3961 }
3962 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::clause_cleanup_lbd_bound() const {
3963  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_lbd_bound)
3964  return _internal_clause_cleanup_lbd_bound();
3965 }
3966 inline void SatParameters::_internal_set_clause_cleanup_lbd_bound(::PROTOBUF_NAMESPACE_ID::int32 value) {
3967  _has_bits_[2] |= 0x00400000u;
3968  clause_cleanup_lbd_bound_ = value;
3969 }
3970 inline void SatParameters::set_clause_cleanup_lbd_bound(::PROTOBUF_NAMESPACE_ID::int32 value) {
3971  _internal_set_clause_cleanup_lbd_bound(value);
3972  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_lbd_bound)
3973 }
3974 
3975 // optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];
3976 inline bool SatParameters::_internal_has_clause_cleanup_ordering() const {
3977  bool value = (_has_bits_[0] & 0x00000200u) != 0;
3978  return value;
3979 }
3981  return _internal_has_clause_cleanup_ordering();
3982 }
3984  clause_cleanup_ordering_ = 0;
3985  _has_bits_[0] &= ~0x00000200u;
3986 }
3987 inline ::operations_research::sat::SatParameters_ClauseOrdering SatParameters::_internal_clause_cleanup_ordering() const {
3988  return static_cast< ::operations_research::sat::SatParameters_ClauseOrdering >(clause_cleanup_ordering_);
3989 }
3991  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_ordering)
3992  return _internal_clause_cleanup_ordering();
3993 }
3994 inline void SatParameters::_internal_set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value) {
3996  _has_bits_[0] |= 0x00000200u;
3997  clause_cleanup_ordering_ = value;
3998 }
4000  _internal_set_clause_cleanup_ordering(value);
4001  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_ordering)
4002 }
4003 
4004 // optional int32 pb_cleanup_increment = 46 [default = 200];
4005 inline bool SatParameters::_internal_has_pb_cleanup_increment() const {
4006  bool value = (_has_bits_[2] & 0x00010000u) != 0;
4007  return value;
4008 }
4010  return _internal_has_pb_cleanup_increment();
4011 }
4013  pb_cleanup_increment_ = 200;
4014  _has_bits_[2] &= ~0x00010000u;
4015 }
4016 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_pb_cleanup_increment() const {
4017  return pb_cleanup_increment_;
4018 }
4019 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::pb_cleanup_increment() const {
4020  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.pb_cleanup_increment)
4021  return _internal_pb_cleanup_increment();
4022 }
4023 inline void SatParameters::_internal_set_pb_cleanup_increment(::PROTOBUF_NAMESPACE_ID::int32 value) {
4024  _has_bits_[2] |= 0x00010000u;
4025  pb_cleanup_increment_ = value;
4026 }
4027 inline void SatParameters::set_pb_cleanup_increment(::PROTOBUF_NAMESPACE_ID::int32 value) {
4028  _internal_set_pb_cleanup_increment(value);
4029  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.pb_cleanup_increment)
4030 }
4031 
4032 // optional double pb_cleanup_ratio = 47 [default = 0.5];
4033 inline bool SatParameters::_internal_has_pb_cleanup_ratio() const {
4034  bool value = (_has_bits_[2] & 0x00020000u) != 0;
4035  return value;
4036 }
4038  return _internal_has_pb_cleanup_ratio();
4039 }
4041  pb_cleanup_ratio_ = 0.5;
4042  _has_bits_[2] &= ~0x00020000u;
4043 }
4044 inline double SatParameters::_internal_pb_cleanup_ratio() const {
4045  return pb_cleanup_ratio_;
4046 }
4047 inline double SatParameters::pb_cleanup_ratio() const {
4048  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.pb_cleanup_ratio)
4049  return _internal_pb_cleanup_ratio();
4050 }
4051 inline void SatParameters::_internal_set_pb_cleanup_ratio(double value) {
4052  _has_bits_[2] |= 0x00020000u;
4053  pb_cleanup_ratio_ = value;
4054 }
4056  _internal_set_pb_cleanup_ratio(value);
4057  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.pb_cleanup_ratio)
4058 }
4059 
4060 // optional int32 minimize_with_propagation_restart_period = 96 [default = 10];
4061 inline bool SatParameters::_internal_has_minimize_with_propagation_restart_period() const {
4062  bool value = (_has_bits_[3] & 0x00000100u) != 0;
4063  return value;
4064 }
4066  return _internal_has_minimize_with_propagation_restart_period();
4067 }
4069  minimize_with_propagation_restart_period_ = 10;
4070  _has_bits_[3] &= ~0x00000100u;
4071 }
4072 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_minimize_with_propagation_restart_period() const {
4073  return minimize_with_propagation_restart_period_;
4074 }
4075 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::minimize_with_propagation_restart_period() const {
4076  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimize_with_propagation_restart_period)
4077  return _internal_minimize_with_propagation_restart_period();
4078 }
4079 inline void SatParameters::_internal_set_minimize_with_propagation_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
4080  _has_bits_[3] |= 0x00000100u;
4081  minimize_with_propagation_restart_period_ = value;
4082 }
4083 inline void SatParameters::set_minimize_with_propagation_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
4084  _internal_set_minimize_with_propagation_restart_period(value);
4085  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimize_with_propagation_restart_period)
4086 }
4087 
4088 // optional int32 minimize_with_propagation_num_decisions = 97 [default = 1000];
4089 inline bool SatParameters::_internal_has_minimize_with_propagation_num_decisions() const {
4090  bool value = (_has_bits_[3] & 0x00000200u) != 0;
4091  return value;
4092 }
4094  return _internal_has_minimize_with_propagation_num_decisions();
4095 }
4097  minimize_with_propagation_num_decisions_ = 1000;
4098  _has_bits_[3] &= ~0x00000200u;
4099 }
4100 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_minimize_with_propagation_num_decisions() const {
4101  return minimize_with_propagation_num_decisions_;
4102 }
4103 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::minimize_with_propagation_num_decisions() const {
4104  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimize_with_propagation_num_decisions)
4105  return _internal_minimize_with_propagation_num_decisions();
4106 }
4107 inline void SatParameters::_internal_set_minimize_with_propagation_num_decisions(::PROTOBUF_NAMESPACE_ID::int32 value) {
4108  _has_bits_[3] |= 0x00000200u;
4109  minimize_with_propagation_num_decisions_ = value;
4110 }
4111 inline void SatParameters::set_minimize_with_propagation_num_decisions(::PROTOBUF_NAMESPACE_ID::int32 value) {
4112  _internal_set_minimize_with_propagation_num_decisions(value);
4113  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimize_with_propagation_num_decisions)
4114 }
4115 
4116 // optional double variable_activity_decay = 15 [default = 0.8];
4117 inline bool SatParameters::_internal_has_variable_activity_decay() const {
4118  bool value = (_has_bits_[2] & 0x00000004u) != 0;
4119  return value;
4120 }
4122  return _internal_has_variable_activity_decay();
4123 }
4125  variable_activity_decay_ = 0.8;
4126  _has_bits_[2] &= ~0x00000004u;
4127 }
4128 inline double SatParameters::_internal_variable_activity_decay() const {
4129  return variable_activity_decay_;
4130 }
4132  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.variable_activity_decay)
4133  return _internal_variable_activity_decay();
4134 }
4135 inline void SatParameters::_internal_set_variable_activity_decay(double value) {
4136  _has_bits_[2] |= 0x00000004u;
4137  variable_activity_decay_ = value;
4138 }
4140  _internal_set_variable_activity_decay(value);
4141  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.variable_activity_decay)
4142 }
4143 
4144 // optional double max_variable_activity_value = 16 [default = 1e+100];
4145 inline bool SatParameters::_internal_has_max_variable_activity_value() const {
4146  bool value = (_has_bits_[2] & 0x00000008u) != 0;
4147  return value;
4148 }
4150  return _internal_has_max_variable_activity_value();
4151 }
4153  max_variable_activity_value_ = 1e+100;
4154  _has_bits_[2] &= ~0x00000008u;
4155 }
4156 inline double SatParameters::_internal_max_variable_activity_value() const {
4157  return max_variable_activity_value_;
4158 }
4160  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_variable_activity_value)
4161  return _internal_max_variable_activity_value();
4162 }
4163 inline void SatParameters::_internal_set_max_variable_activity_value(double value) {
4164  _has_bits_[2] |= 0x00000008u;
4165  max_variable_activity_value_ = value;
4166 }
4168  _internal_set_max_variable_activity_value(value);
4169  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_variable_activity_value)
4170 }
4171 
4172 // optional double glucose_max_decay = 22 [default = 0.95];
4173 inline bool SatParameters::_internal_has_glucose_max_decay() const {
4174  bool value = (_has_bits_[2] & 0x00000100u) != 0;
4175  return value;
4176 }
4178  return _internal_has_glucose_max_decay();
4179 }
4181  glucose_max_decay_ = 0.95;
4182  _has_bits_[2] &= ~0x00000100u;
4183 }
4184 inline double SatParameters::_internal_glucose_max_decay() const {
4185  return glucose_max_decay_;
4186 }
4187 inline double SatParameters::glucose_max_decay() const {
4188  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.glucose_max_decay)
4189  return _internal_glucose_max_decay();
4190 }
4191 inline void SatParameters::_internal_set_glucose_max_decay(double value) {
4192  _has_bits_[2] |= 0x00000100u;
4193  glucose_max_decay_ = value;
4194 }
4196  _internal_set_glucose_max_decay(value);
4197  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.glucose_max_decay)
4198 }
4199 
4200 // optional double glucose_decay_increment = 23 [default = 0.01];
4201 inline bool SatParameters::_internal_has_glucose_decay_increment() const {
4202  bool value = (_has_bits_[2] & 0x00000200u) != 0;
4203  return value;
4204 }
4206  return _internal_has_glucose_decay_increment();
4207 }
4209  glucose_decay_increment_ = 0.01;
4210  _has_bits_[2] &= ~0x00000200u;
4211 }
4212 inline double SatParameters::_internal_glucose_decay_increment() const {
4213  return glucose_decay_increment_;
4214 }
4216  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.glucose_decay_increment)
4217  return _internal_glucose_decay_increment();
4218 }
4219 inline void SatParameters::_internal_set_glucose_decay_increment(double value) {
4220  _has_bits_[2] |= 0x00000200u;
4221  glucose_decay_increment_ = value;
4222 }
4224  _internal_set_glucose_decay_increment(value);
4225  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.glucose_decay_increment)
4226 }
4227 
4228 // optional int32 glucose_decay_increment_period = 24 [default = 5000];
4229 inline bool SatParameters::_internal_has_glucose_decay_increment_period() const {
4230  bool value = (_has_bits_[2] & 0x00000040u) != 0;
4231  return value;
4232 }
4234  return _internal_has_glucose_decay_increment_period();
4235 }
4237  glucose_decay_increment_period_ = 5000;
4238  _has_bits_[2] &= ~0x00000040u;
4239 }
4240 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_glucose_decay_increment_period() const {
4241  return glucose_decay_increment_period_;
4242 }
4243 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::glucose_decay_increment_period() const {
4244  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.glucose_decay_increment_period)
4245  return _internal_glucose_decay_increment_period();
4246 }
4247 inline void SatParameters::_internal_set_glucose_decay_increment_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
4248  _has_bits_[2] |= 0x00000040u;
4249  glucose_decay_increment_period_ = value;
4250 }
4251 inline void SatParameters::set_glucose_decay_increment_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
4252  _internal_set_glucose_decay_increment_period(value);
4253  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.glucose_decay_increment_period)
4254 }
4255 
4256 // optional double clause_activity_decay = 17 [default = 0.999];
4257 inline bool SatParameters::_internal_has_clause_activity_decay() const {
4258  bool value = (_has_bits_[2] & 0x00000010u) != 0;
4259  return value;
4260 }
4262  return _internal_has_clause_activity_decay();
4263 }
4265  clause_activity_decay_ = 0.999;
4266  _has_bits_[2] &= ~0x00000010u;
4267 }
4268 inline double SatParameters::_internal_clause_activity_decay() const {
4269  return clause_activity_decay_;
4270 }
4272  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_activity_decay)
4273  return _internal_clause_activity_decay();
4274 }
4275 inline void SatParameters::_internal_set_clause_activity_decay(double value) {
4276  _has_bits_[2] |= 0x00000010u;
4277  clause_activity_decay_ = value;
4278 }
4280  _internal_set_clause_activity_decay(value);
4281  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_activity_decay)
4282 }
4283 
4284 // optional double max_clause_activity_value = 18 [default = 1e+20];
4285 inline bool SatParameters::_internal_has_max_clause_activity_value() const {
4286  bool value = (_has_bits_[2] & 0x00000080u) != 0;
4287  return value;
4288 }
4290  return _internal_has_max_clause_activity_value();
4291 }
4293  max_clause_activity_value_ = 1e+20;
4294  _has_bits_[2] &= ~0x00000080u;
4295 }
4296 inline double SatParameters::_internal_max_clause_activity_value() const {
4297  return max_clause_activity_value_;
4298 }
4300  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_clause_activity_value)
4301  return _internal_max_clause_activity_value();
4302 }
4303 inline void SatParameters::_internal_set_max_clause_activity_value(double value) {
4304  _has_bits_[2] |= 0x00000080u;
4305  max_clause_activity_value_ = value;
4306 }
4308  _internal_set_max_clause_activity_value(value);
4309  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_clause_activity_value)
4310 }
4311 
4312 // repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;
4313 inline int SatParameters::_internal_restart_algorithms_size() const {
4314  return restart_algorithms_.size();
4315 }
4317  return _internal_restart_algorithms_size();
4318 }
4320  restart_algorithms_.Clear();
4321 }
4322 inline ::operations_research::sat::SatParameters_RestartAlgorithm SatParameters::_internal_restart_algorithms(int index) const {
4323  return static_cast< ::operations_research::sat::SatParameters_RestartAlgorithm >(restart_algorithms_.Get(index));
4324 }
4326  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_algorithms)
4327  return _internal_restart_algorithms(index);
4328 }
4331  restart_algorithms_.Set(index, value);
4332  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_algorithms)
4333 }
4334 inline void SatParameters::_internal_add_restart_algorithms(::operations_research::sat::SatParameters_RestartAlgorithm value) {
4336  restart_algorithms_.Add(value);
4337 }
4339  _internal_add_restart_algorithms(value);
4340  // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.restart_algorithms)
4341 }
4342 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
4344  // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.restart_algorithms)
4345  return restart_algorithms_;
4346 }
4347 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4348 SatParameters::_internal_mutable_restart_algorithms() {
4349  return &restart_algorithms_;
4350 }
4351 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4353  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.restart_algorithms)
4354  return _internal_mutable_restart_algorithms();
4355 }
4356 
4357 // optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];
4358 inline bool SatParameters::_internal_has_default_restart_algorithms() const {
4359  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4360  return value;
4361 }
4363  return _internal_has_default_restart_algorithms();
4364 }
4366  default_restart_algorithms_.ClearToDefault(::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_, GetArenaForAllocation());
4367  _has_bits_[0] &= ~0x00000001u;
4368 }
4369 inline const std::string& SatParameters::default_restart_algorithms() const {
4370  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.default_restart_algorithms)
4371  if (default_restart_algorithms_.IsDefault(nullptr)) return _i_give_permission_to_break_this_code_default_default_restart_algorithms_.get();
4372  return _internal_default_restart_algorithms();
4373 }
4374 template <typename ArgT0, typename... ArgT>
4375 inline PROTOBUF_ALWAYS_INLINE
4376 void SatParameters::set_default_restart_algorithms(ArgT0&& arg0, ArgT... args) {
4377  _has_bits_[0] |= 0x00000001u;
4378  default_restart_algorithms_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::NonEmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
4379  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.default_restart_algorithms)
4380 }
4382  std::string* _s = _internal_mutable_default_restart_algorithms();
4383  // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.default_restart_algorithms)
4384  return _s;
4385 }
4386 inline const std::string& SatParameters::_internal_default_restart_algorithms() const {
4387  return default_restart_algorithms_.Get();
4388 }
4389 inline void SatParameters::_internal_set_default_restart_algorithms(const std::string& value) {
4390  _has_bits_[0] |= 0x00000001u;
4391  default_restart_algorithms_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::NonEmptyDefault{}, value, GetArenaForAllocation());
4392 }
4393 inline std::string* SatParameters::_internal_mutable_default_restart_algorithms() {
4394  _has_bits_[0] |= 0x00000001u;
4395  return default_restart_algorithms_.Mutable(::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_, GetArenaForAllocation());
4396 }
4398  // @@protoc_insertion_point(field_release:operations_research.sat.SatParameters.default_restart_algorithms)
4399  if (!_internal_has_default_restart_algorithms()) {
4400  return nullptr;
4401  }
4402  _has_bits_[0] &= ~0x00000001u;
4403  return default_restart_algorithms_.ReleaseNonDefault(nullptr, GetArenaForAllocation());
4404 }
4405 inline void SatParameters::set_allocated_default_restart_algorithms(std::string* default_restart_algorithms) {
4406  if (default_restart_algorithms != nullptr) {
4407  _has_bits_[0] |= 0x00000001u;
4408  } else {
4409  _has_bits_[0] &= ~0x00000001u;
4410  }
4411  default_restart_algorithms_.SetAllocated(nullptr, default_restart_algorithms,
4412  GetArenaForAllocation());
4413  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.SatParameters.default_restart_algorithms)
4414 }
4415 
4416 // optional int32 restart_period = 30 [default = 50];
4417 inline bool SatParameters::_internal_has_restart_period() const {
4418  bool value = (_has_bits_[2] & 0x00000400u) != 0;
4419  return value;
4420 }
4422  return _internal_has_restart_period();
4423 }
4425  restart_period_ = 50;
4426  _has_bits_[2] &= ~0x00000400u;
4427 }
4428 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_restart_period() const {
4429  return restart_period_;
4430 }
4431 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::restart_period() const {
4432  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_period)
4433  return _internal_restart_period();
4434 }
4435 inline void SatParameters::_internal_set_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
4436  _has_bits_[2] |= 0x00000400u;
4437  restart_period_ = value;
4438 }
4439 inline void SatParameters::set_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
4440  _internal_set_restart_period(value);
4441  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_period)
4442 }
4443 
4444 // optional int32 restart_running_window_size = 62 [default = 50];
4445 inline bool SatParameters::_internal_has_restart_running_window_size() const {
4446  bool value = (_has_bits_[2] & 0x01000000u) != 0;
4447  return value;
4448 }
4450  return _internal_has_restart_running_window_size();
4451 }
4453  restart_running_window_size_ = 50;
4454  _has_bits_[2] &= ~0x01000000u;
4455 }
4456 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_restart_running_window_size() const {
4457  return restart_running_window_size_;
4458 }
4459 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::restart_running_window_size() const {
4460  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_running_window_size)
4461  return _internal_restart_running_window_size();
4462 }
4463 inline void SatParameters::_internal_set_restart_running_window_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
4464  _has_bits_[2] |= 0x01000000u;
4465  restart_running_window_size_ = value;
4466 }
4467 inline void SatParameters::set_restart_running_window_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
4468  _internal_set_restart_running_window_size(value);
4469  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_running_window_size)
4470 }
4471 
4472 // optional double restart_dl_average_ratio = 63 [default = 1];
4473 inline bool SatParameters::_internal_has_restart_dl_average_ratio() const {
4474  bool value = (_has_bits_[2] & 0x00800000u) != 0;
4475  return value;
4476 }
4478  return _internal_has_restart_dl_average_ratio();
4479 }
4481  restart_dl_average_ratio_ = 1;
4482  _has_bits_[2] &= ~0x00800000u;
4483 }
4484 inline double SatParameters::_internal_restart_dl_average_ratio() const {
4485  return restart_dl_average_ratio_;
4486 }
4488  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_dl_average_ratio)
4489  return _internal_restart_dl_average_ratio();
4490 }
4491 inline void SatParameters::_internal_set_restart_dl_average_ratio(double value) {
4492  _has_bits_[2] |= 0x00800000u;
4493  restart_dl_average_ratio_ = value;
4494 }
4496  _internal_set_restart_dl_average_ratio(value);
4497  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_dl_average_ratio)
4498 }
4499 
4500 // optional double restart_lbd_average_ratio = 71 [default = 1];
4501 inline bool SatParameters::_internal_has_restart_lbd_average_ratio() const {
4502  bool value = (_has_bits_[2] & 0x10000000u) != 0;
4503  return value;
4504 }
4506  return _internal_has_restart_lbd_average_ratio();
4507 }
4509  restart_lbd_average_ratio_ = 1;
4510  _has_bits_[2] &= ~0x10000000u;
4511 }
4512 inline double SatParameters::_internal_restart_lbd_average_ratio() const {
4513  return restart_lbd_average_ratio_;
4514 }
4516  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_lbd_average_ratio)
4517  return _internal_restart_lbd_average_ratio();
4518 }
4519 inline void SatParameters::_internal_set_restart_lbd_average_ratio(double value) {
4520  _has_bits_[2] |= 0x10000000u;
4521  restart_lbd_average_ratio_ = value;
4522 }
4524  _internal_set_restart_lbd_average_ratio(value);
4525  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_lbd_average_ratio)
4526 }
4527 
4528 // optional bool use_blocking_restart = 64 [default = false];
4529 inline bool SatParameters::_internal_has_use_blocking_restart() const {
4530  bool value = (_has_bits_[0] & 0x00100000u) != 0;
4531  return value;
4532 }
4534  return _internal_has_use_blocking_restart();
4535 }
4537  use_blocking_restart_ = false;
4538  _has_bits_[0] &= ~0x00100000u;
4539 }
4540 inline bool SatParameters::_internal_use_blocking_restart() const {
4541  return use_blocking_restart_;
4542 }
4544  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_blocking_restart)
4545  return _internal_use_blocking_restart();
4546 }
4547 inline void SatParameters::_internal_set_use_blocking_restart(bool value) {
4548  _has_bits_[0] |= 0x00100000u;
4549  use_blocking_restart_ = value;
4550 }
4552  _internal_set_use_blocking_restart(value);
4553  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_blocking_restart)
4554 }
4555 
4556 // optional int32 blocking_restart_window_size = 65 [default = 5000];
4557 inline bool SatParameters::_internal_has_blocking_restart_window_size() const {
4558  bool value = (_has_bits_[2] & 0x02000000u) != 0;
4559  return value;
4560 }
4562  return _internal_has_blocking_restart_window_size();
4563 }
4565  blocking_restart_window_size_ = 5000;
4566  _has_bits_[2] &= ~0x02000000u;
4567 }
4568 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_blocking_restart_window_size() const {
4569  return blocking_restart_window_size_;
4570 }
4571 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::blocking_restart_window_size() const {
4572  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.blocking_restart_window_size)
4573  return _internal_blocking_restart_window_size();
4574 }
4575 inline void SatParameters::_internal_set_blocking_restart_window_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
4576  _has_bits_[2] |= 0x02000000u;
4577  blocking_restart_window_size_ = value;
4578 }
4579 inline void SatParameters::set_blocking_restart_window_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
4580  _internal_set_blocking_restart_window_size(value);
4581  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.blocking_restart_window_size)
4582 }
4583 
4584 // optional double blocking_restart_multiplier = 66 [default = 1.4];
4585 inline bool SatParameters::_internal_has_blocking_restart_multiplier() const {
4586  bool value = (_has_bits_[2] & 0x04000000u) != 0;
4587  return value;
4588 }
4590  return _internal_has_blocking_restart_multiplier();
4591 }
4593  blocking_restart_multiplier_ = 1.4;
4594  _has_bits_[2] &= ~0x04000000u;
4595 }
4596 inline double SatParameters::_internal_blocking_restart_multiplier() const {
4597  return blocking_restart_multiplier_;
4598 }
4600  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.blocking_restart_multiplier)
4601  return _internal_blocking_restart_multiplier();
4602 }
4603 inline void SatParameters::_internal_set_blocking_restart_multiplier(double value) {
4604  _has_bits_[2] |= 0x04000000u;
4605  blocking_restart_multiplier_ = value;
4606 }
4608  _internal_set_blocking_restart_multiplier(value);
4609  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.blocking_restart_multiplier)
4610 }
4611 
4612 // optional int32 num_conflicts_before_strategy_changes = 68 [default = 0];
4613 inline bool SatParameters::_internal_has_num_conflicts_before_strategy_changes() const {
4614  bool value = (_has_bits_[0] & 0x00000400u) != 0;
4615  return value;
4616 }
4618  return _internal_has_num_conflicts_before_strategy_changes();
4619 }
4621  num_conflicts_before_strategy_changes_ = 0;
4622  _has_bits_[0] &= ~0x00000400u;
4623 }
4624 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_num_conflicts_before_strategy_changes() const {
4625  return num_conflicts_before_strategy_changes_;
4626 }
4627 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::num_conflicts_before_strategy_changes() const {
4628  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_conflicts_before_strategy_changes)
4629  return _internal_num_conflicts_before_strategy_changes();
4630 }
4631 inline void SatParameters::_internal_set_num_conflicts_before_strategy_changes(::PROTOBUF_NAMESPACE_ID::int32 value) {
4632  _has_bits_[0] |= 0x00000400u;
4633  num_conflicts_before_strategy_changes_ = value;
4634 }
4635 inline void SatParameters::set_num_conflicts_before_strategy_changes(::PROTOBUF_NAMESPACE_ID::int32 value) {
4636  _internal_set_num_conflicts_before_strategy_changes(value);
4637  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_conflicts_before_strategy_changes)
4638 }
4639 
4640 // optional double strategy_change_increase_ratio = 69 [default = 0];
4641 inline bool SatParameters::_internal_has_strategy_change_increase_ratio() const {
4642  bool value = (_has_bits_[0] & 0x00000800u) != 0;
4643  return value;
4644 }
4646  return _internal_has_strategy_change_increase_ratio();
4647 }
4649  strategy_change_increase_ratio_ = 0;
4650  _has_bits_[0] &= ~0x00000800u;
4651 }
4652 inline double SatParameters::_internal_strategy_change_increase_ratio() const {
4653  return strategy_change_increase_ratio_;
4654 }
4656  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.strategy_change_increase_ratio)
4657  return _internal_strategy_change_increase_ratio();
4658 }
4659 inline void SatParameters::_internal_set_strategy_change_increase_ratio(double value) {
4660  _has_bits_[0] |= 0x00000800u;
4661  strategy_change_increase_ratio_ = value;
4662 }
4664  _internal_set_strategy_change_increase_ratio(value);
4665  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.strategy_change_increase_ratio)
4666 }
4667 
4668 // optional double max_time_in_seconds = 36 [default = inf];
4669 inline bool SatParameters::_internal_has_max_time_in_seconds() const {
4670  bool value = (_has_bits_[2] & 0x00001000u) != 0;
4671  return value;
4672 }
4674  return _internal_has_max_time_in_seconds();
4675 }
4677  max_time_in_seconds_ = std::numeric_limits<double>::infinity();
4678  _has_bits_[2] &= ~0x00001000u;
4679 }
4680 inline double SatParameters::_internal_max_time_in_seconds() const {
4681  return max_time_in_seconds_;
4682 }
4683 inline double SatParameters::max_time_in_seconds() const {
4684  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_time_in_seconds)
4685  return _internal_max_time_in_seconds();
4686 }
4687 inline void SatParameters::_internal_set_max_time_in_seconds(double value) {
4688  _has_bits_[2] |= 0x00001000u;
4689  max_time_in_seconds_ = value;
4690 }
4692  _internal_set_max_time_in_seconds(value);
4693  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_time_in_seconds)
4694 }
4695 
4696 // optional double max_deterministic_time = 67 [default = inf];
4697 inline bool SatParameters::_internal_has_max_deterministic_time() const {
4698  bool value = (_has_bits_[2] & 0x08000000u) != 0;
4699  return value;
4700 }
4702  return _internal_has_max_deterministic_time();
4703 }
4705  max_deterministic_time_ = std::numeric_limits<double>::infinity();
4706  _has_bits_[2] &= ~0x08000000u;
4707 }
4708 inline double SatParameters::_internal_max_deterministic_time() const {
4709  return max_deterministic_time_;
4710 }
4712  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_deterministic_time)
4713  return _internal_max_deterministic_time();
4714 }
4715 inline void SatParameters::_internal_set_max_deterministic_time(double value) {
4716  _has_bits_[2] |= 0x08000000u;
4717  max_deterministic_time_ = value;
4718 }
4720  _internal_set_max_deterministic_time(value);
4721  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_deterministic_time)
4722 }
4723 
4724 // optional int64 max_number_of_conflicts = 37 [default = 9223372036854775807];
4725 inline bool SatParameters::_internal_has_max_number_of_conflicts() const {
4726  bool value = (_has_bits_[2] & 0x00002000u) != 0;
4727  return value;
4728 }
4730  return _internal_has_max_number_of_conflicts();
4731 }
4733  max_number_of_conflicts_ = int64_t{9223372036854775807};
4734  _has_bits_[2] &= ~0x00002000u;
4735 }
4736 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::_internal_max_number_of_conflicts() const {
4737  return max_number_of_conflicts_;
4738 }
4739 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::max_number_of_conflicts() const {
4740  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_number_of_conflicts)
4741  return _internal_max_number_of_conflicts();
4742 }
4743 inline void SatParameters::_internal_set_max_number_of_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
4744  _has_bits_[2] |= 0x00002000u;
4745  max_number_of_conflicts_ = value;
4746 }
4747 inline void SatParameters::set_max_number_of_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
4748  _internal_set_max_number_of_conflicts(value);
4749  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_number_of_conflicts)
4750 }
4751 
4752 // optional int64 max_memory_in_mb = 40 [default = 10000];
4753 inline bool SatParameters::_internal_has_max_memory_in_mb() const {
4754  bool value = (_has_bits_[2] & 0x00004000u) != 0;
4755  return value;
4756 }
4758  return _internal_has_max_memory_in_mb();
4759 }
4761  max_memory_in_mb_ = int64_t{10000};
4762  _has_bits_[2] &= ~0x00004000u;
4763 }
4764 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::_internal_max_memory_in_mb() const {
4765  return max_memory_in_mb_;
4766 }
4767 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::max_memory_in_mb() const {
4768  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_memory_in_mb)
4769  return _internal_max_memory_in_mb();
4770 }
4771 inline void SatParameters::_internal_set_max_memory_in_mb(::PROTOBUF_NAMESPACE_ID::int64 value) {
4772  _has_bits_[2] |= 0x00004000u;
4773  max_memory_in_mb_ = value;
4774 }
4775 inline void SatParameters::set_max_memory_in_mb(::PROTOBUF_NAMESPACE_ID::int64 value) {
4776  _internal_set_max_memory_in_mb(value);
4777  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_memory_in_mb)
4778 }
4779 
4780 // optional double absolute_gap_limit = 159 [default = 0];
4781 inline bool SatParameters::_internal_has_absolute_gap_limit() const {
4782  bool value = (_has_bits_[1] & 0x01000000u) != 0;
4783  return value;
4784 }
4786  return _internal_has_absolute_gap_limit();
4787 }
4789  absolute_gap_limit_ = 0;
4790  _has_bits_[1] &= ~0x01000000u;
4791 }
4792 inline double SatParameters::_internal_absolute_gap_limit() const {
4793  return absolute_gap_limit_;
4794 }
4795 inline double SatParameters::absolute_gap_limit() const {
4796  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.absolute_gap_limit)
4797  return _internal_absolute_gap_limit();
4798 }
4799 inline void SatParameters::_internal_set_absolute_gap_limit(double value) {
4800  _has_bits_[1] |= 0x01000000u;
4801  absolute_gap_limit_ = value;
4802 }
4804  _internal_set_absolute_gap_limit(value);
4805  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.absolute_gap_limit)
4806 }
4807 
4808 // optional double relative_gap_limit = 160 [default = 0];
4809 inline bool SatParameters::_internal_has_relative_gap_limit() const {
4810  bool value = (_has_bits_[1] & 0x02000000u) != 0;
4811  return value;
4812 }
4814  return _internal_has_relative_gap_limit();
4815 }
4817  relative_gap_limit_ = 0;
4818  _has_bits_[1] &= ~0x02000000u;
4819 }
4820 inline double SatParameters::_internal_relative_gap_limit() const {
4821  return relative_gap_limit_;
4822 }
4823 inline double SatParameters::relative_gap_limit() const {
4824  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.relative_gap_limit)
4825  return _internal_relative_gap_limit();
4826 }
4827 inline void SatParameters::_internal_set_relative_gap_limit(double value) {
4828  _has_bits_[1] |= 0x02000000u;
4829  relative_gap_limit_ = value;
4830 }
4832  _internal_set_relative_gap_limit(value);
4833  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.relative_gap_limit)
4834 }
4835 
4836 // optional bool treat_binary_clauses_separately = 33 [default = true];
4837 inline bool SatParameters::_internal_has_treat_binary_clauses_separately() const {
4838  bool value = (_has_bits_[3] & 0x00000001u) != 0;
4839  return value;
4840 }
4842  return _internal_has_treat_binary_clauses_separately();
4843 }
4845  treat_binary_clauses_separately_ = true;
4846  _has_bits_[3] &= ~0x00000001u;
4847 }
4848 inline bool SatParameters::_internal_treat_binary_clauses_separately() const {
4849  return treat_binary_clauses_separately_;
4850 }
4852  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.treat_binary_clauses_separately)
4853  return _internal_treat_binary_clauses_separately();
4854 }
4855 inline void SatParameters::_internal_set_treat_binary_clauses_separately(bool value) {
4856  _has_bits_[3] |= 0x00000001u;
4857  treat_binary_clauses_separately_ = value;
4858 }
4860  _internal_set_treat_binary_clauses_separately(value);
4861  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.treat_binary_clauses_separately)
4862 }
4863 
4864 // optional int32 random_seed = 31 [default = 1];
4865 inline bool SatParameters::_internal_has_random_seed() const {
4866  bool value = (_has_bits_[2] & 0x00000800u) != 0;
4867  return value;
4868 }
4869 inline bool SatParameters::has_random_seed() const {
4870  return _internal_has_random_seed();
4871 }
4873  random_seed_ = 1;
4874  _has_bits_[2] &= ~0x00000800u;
4875 }
4876 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_random_seed() const {
4877  return random_seed_;
4878 }
4879 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::random_seed() const {
4880  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.random_seed)
4881  return _internal_random_seed();
4882 }
4883 inline void SatParameters::_internal_set_random_seed(::PROTOBUF_NAMESPACE_ID::int32 value) {
4884  _has_bits_[2] |= 0x00000800u;
4885  random_seed_ = value;
4886 }
4887 inline void SatParameters::set_random_seed(::PROTOBUF_NAMESPACE_ID::int32 value) {
4888  _internal_set_random_seed(value);
4889  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.random_seed)
4890 }
4891 
4892 // optional bool permute_variable_randomly = 178 [default = false];
4893 inline bool SatParameters::_internal_has_permute_variable_randomly() const {
4894  bool value = (_has_bits_[0] & 0x00200000u) != 0;
4895  return value;
4896 }
4898  return _internal_has_permute_variable_randomly();
4899 }
4901  permute_variable_randomly_ = false;
4902  _has_bits_[0] &= ~0x00200000u;
4903 }
4904 inline bool SatParameters::_internal_permute_variable_randomly() const {
4905  return permute_variable_randomly_;
4906 }
4908  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.permute_variable_randomly)
4909  return _internal_permute_variable_randomly();
4910 }
4911 inline void SatParameters::_internal_set_permute_variable_randomly(bool value) {
4912  _has_bits_[0] |= 0x00200000u;
4913  permute_variable_randomly_ = value;
4914 }
4916  _internal_set_permute_variable_randomly(value);
4917  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.permute_variable_randomly)
4918 }
4919 
4920 // optional bool permute_presolve_constraint_order = 179 [default = false];
4921 inline bool SatParameters::_internal_has_permute_presolve_constraint_order() const {
4922  bool value = (_has_bits_[1] & 0x00020000u) != 0;
4923  return value;
4924 }
4926  return _internal_has_permute_presolve_constraint_order();
4927 }
4929  permute_presolve_constraint_order_ = false;
4930  _has_bits_[1] &= ~0x00020000u;
4931 }
4932 inline bool SatParameters::_internal_permute_presolve_constraint_order() const {
4933  return permute_presolve_constraint_order_;
4934 }
4936  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.permute_presolve_constraint_order)
4937  return _internal_permute_presolve_constraint_order();
4938 }
4939 inline void SatParameters::_internal_set_permute_presolve_constraint_order(bool value) {
4940  _has_bits_[1] |= 0x00020000u;
4941  permute_presolve_constraint_order_ = value;
4942 }
4944  _internal_set_permute_presolve_constraint_order(value);
4945  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.permute_presolve_constraint_order)
4946 }
4947 
4948 // optional bool use_absl_random = 180 [default = false];
4949 inline bool SatParameters::_internal_has_use_absl_random() const {
4950  bool value = (_has_bits_[1] & 0x00040000u) != 0;
4951  return value;
4952 }
4954  return _internal_has_use_absl_random();
4955 }
4957  use_absl_random_ = false;
4958  _has_bits_[1] &= ~0x00040000u;
4959 }
4960 inline bool SatParameters::_internal_use_absl_random() const {
4961  return use_absl_random_;
4962 }
4963 inline bool SatParameters::use_absl_random() const {
4964  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_absl_random)
4965  return _internal_use_absl_random();
4966 }
4967 inline void SatParameters::_internal_set_use_absl_random(bool value) {
4968  _has_bits_[1] |= 0x00040000u;
4969  use_absl_random_ = value;
4970 }
4972  _internal_set_use_absl_random(value);
4973  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_absl_random)
4974 }
4975 
4976 // optional bool log_search_progress = 41 [default = false];
4977 inline bool SatParameters::_internal_has_log_search_progress() const {
4978  bool value = (_has_bits_[1] & 0x00080000u) != 0;
4979  return value;
4980 }
4982  return _internal_has_log_search_progress();
4983 }
4985  log_search_progress_ = false;
4986  _has_bits_[1] &= ~0x00080000u;
4987 }
4988 inline bool SatParameters::_internal_log_search_progress() const {
4989  return log_search_progress_;
4990 }
4992  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_search_progress)
4993  return _internal_log_search_progress();
4994 }
4995 inline void SatParameters::_internal_set_log_search_progress(bool value) {
4996  _has_bits_[1] |= 0x00080000u;
4997  log_search_progress_ = value;
4998 }
5000  _internal_set_log_search_progress(value);
5001  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_search_progress)
5002 }
5003 
5004 // optional bool log_subsolver_statistics = 189 [default = true];
5005 inline bool SatParameters::_internal_has_log_subsolver_statistics() const {
5006  bool value = (_has_bits_[3] & 0x00000002u) != 0;
5007  return value;
5008 }
5010  return _internal_has_log_subsolver_statistics();
5011 }
5013  log_subsolver_statistics_ = true;
5014  _has_bits_[3] &= ~0x00000002u;
5015 }
5016 inline bool SatParameters::_internal_log_subsolver_statistics() const {
5017  return log_subsolver_statistics_;
5018 }
5020  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_subsolver_statistics)
5021  return _internal_log_subsolver_statistics();
5022 }
5023 inline void SatParameters::_internal_set_log_subsolver_statistics(bool value) {
5024  _has_bits_[3] |= 0x00000002u;
5025  log_subsolver_statistics_ = value;
5026 }
5028  _internal_set_log_subsolver_statistics(value);
5029  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_subsolver_statistics)
5030 }
5031 
5032 // optional string log_prefix = 185 [default = ""];
5033 inline bool SatParameters::_internal_has_log_prefix() const {
5034  bool value = (_has_bits_[0] & 0x00000004u) != 0;
5035  return value;
5036 }
5037 inline bool SatParameters::has_log_prefix() const {
5038  return _internal_has_log_prefix();
5039 }
5041  log_prefix_.ClearToEmpty();
5042  _has_bits_[0] &= ~0x00000004u;
5043 }
5044 inline const std::string& SatParameters::log_prefix() const {
5045  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_prefix)
5046  return _internal_log_prefix();
5047 }
5048 template <typename ArgT0, typename... ArgT>
5049 inline PROTOBUF_ALWAYS_INLINE
5050 void SatParameters::set_log_prefix(ArgT0&& arg0, ArgT... args) {
5051  _has_bits_[0] |= 0x00000004u;
5052  log_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
5053  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_prefix)
5054 }
5055 inline std::string* SatParameters::mutable_log_prefix() {
5056  std::string* _s = _internal_mutable_log_prefix();
5057  // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.log_prefix)
5058  return _s;
5059 }
5060 inline const std::string& SatParameters::_internal_log_prefix() const {
5061  return log_prefix_.Get();
5062 }
5063 inline void SatParameters::_internal_set_log_prefix(const std::string& value) {
5064  _has_bits_[0] |= 0x00000004u;
5065  log_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
5066 }
5067 inline std::string* SatParameters::_internal_mutable_log_prefix() {
5068  _has_bits_[0] |= 0x00000004u;
5069  return log_prefix_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
5070 }
5071 inline std::string* SatParameters::release_log_prefix() {
5072  // @@protoc_insertion_point(field_release:operations_research.sat.SatParameters.log_prefix)
5073  if (!_internal_has_log_prefix()) {
5074  return nullptr;
5075  }
5076  _has_bits_[0] &= ~0x00000004u;
5077  return log_prefix_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
5078 }
5079 inline void SatParameters::set_allocated_log_prefix(std::string* log_prefix) {
5080  if (log_prefix != nullptr) {
5081  _has_bits_[0] |= 0x00000004u;
5082  } else {
5083  _has_bits_[0] &= ~0x00000004u;
5084  }
5085  log_prefix_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), log_prefix,
5086  GetArenaForAllocation());
5087  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.SatParameters.log_prefix)
5088 }
5089 
5090 // optional bool log_to_stdout = 186 [default = true];
5091 inline bool SatParameters::_internal_has_log_to_stdout() const {
5092  bool value = (_has_bits_[3] & 0x00000400u) != 0;
5093  return value;
5094 }
5096  return _internal_has_log_to_stdout();
5097 }
5099  log_to_stdout_ = true;
5100  _has_bits_[3] &= ~0x00000400u;
5101 }
5102 inline bool SatParameters::_internal_log_to_stdout() const {
5103  return log_to_stdout_;
5104 }
5105 inline bool SatParameters::log_to_stdout() const {
5106  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_to_stdout)
5107  return _internal_log_to_stdout();
5108 }
5109 inline void SatParameters::_internal_set_log_to_stdout(bool value) {
5110  _has_bits_[3] |= 0x00000400u;
5111  log_to_stdout_ = value;
5112 }
5114  _internal_set_log_to_stdout(value);
5115  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_to_stdout)
5116 }
5117 
5118 // optional bool log_to_response = 187 [default = false];
5119 inline bool SatParameters::_internal_has_log_to_response() const {
5120  bool value = (_has_bits_[1] & 0x00100000u) != 0;
5121  return value;
5122 }
5124  return _internal_has_log_to_response();
5125 }
5127  log_to_response_ = false;
5128  _has_bits_[1] &= ~0x00100000u;
5129 }
5130 inline bool SatParameters::_internal_log_to_response() const {
5131  return log_to_response_;
5132 }
5133 inline bool SatParameters::log_to_response() const {
5134  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_to_response)
5135  return _internal_log_to_response();
5136 }
5137 inline void SatParameters::_internal_set_log_to_response(bool value) {
5138  _has_bits_[1] |= 0x00100000u;
5139  log_to_response_ = value;
5140 }
5142  _internal_set_log_to_response(value);
5143  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_to_response)
5144 }
5145 
5146 // optional bool use_pb_resolution = 43 [default = false];
5147 inline bool SatParameters::_internal_has_use_pb_resolution() const {
5148  bool value = (_has_bits_[0] & 0x01000000u) != 0;
5149  return value;
5150 }
5152  return _internal_has_use_pb_resolution();
5153 }
5155  use_pb_resolution_ = false;
5156  _has_bits_[0] &= ~0x01000000u;
5157 }
5158 inline bool SatParameters::_internal_use_pb_resolution() const {
5159  return use_pb_resolution_;
5160 }
5162  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_pb_resolution)
5163  return _internal_use_pb_resolution();
5164 }
5165 inline void SatParameters::_internal_set_use_pb_resolution(bool value) {
5166  _has_bits_[0] |= 0x01000000u;
5167  use_pb_resolution_ = value;
5168 }
5170  _internal_set_use_pb_resolution(value);
5171  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_pb_resolution)
5172 }
5173 
5174 // optional bool minimize_reduction_during_pb_resolution = 48 [default = false];
5175 inline bool SatParameters::_internal_has_minimize_reduction_during_pb_resolution() const {
5176  bool value = (_has_bits_[0] & 0x02000000u) != 0;
5177  return value;
5178 }
5180  return _internal_has_minimize_reduction_during_pb_resolution();
5181 }
5183  minimize_reduction_during_pb_resolution_ = false;
5184  _has_bits_[0] &= ~0x02000000u;
5185 }
5186 inline bool SatParameters::_internal_minimize_reduction_during_pb_resolution() const {
5187  return minimize_reduction_during_pb_resolution_;
5188 }
5190  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimize_reduction_during_pb_resolution)
5191  return _internal_minimize_reduction_during_pb_resolution();
5192 }
5193 inline void SatParameters::_internal_set_minimize_reduction_during_pb_resolution(bool value) {
5194  _has_bits_[0] |= 0x02000000u;
5195  minimize_reduction_during_pb_resolution_ = value;
5196 }
5198  _internal_set_minimize_reduction_during_pb_resolution(value);
5199  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimize_reduction_during_pb_resolution)
5200 }
5201 
5202 // optional bool count_assumption_levels_in_lbd = 49 [default = true];
5203 inline bool SatParameters::_internal_has_count_assumption_levels_in_lbd() const {
5204  bool value = (_has_bits_[3] & 0x00000800u) != 0;
5205  return value;
5206 }
5208  return _internal_has_count_assumption_levels_in_lbd();
5209 }
5211  count_assumption_levels_in_lbd_ = true;
5212  _has_bits_[3] &= ~0x00000800u;
5213 }
5214 inline bool SatParameters::_internal_count_assumption_levels_in_lbd() const {
5215  return count_assumption_levels_in_lbd_;
5216 }
5218  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.count_assumption_levels_in_lbd)
5219  return _internal_count_assumption_levels_in_lbd();
5220 }
5221 inline void SatParameters::_internal_set_count_assumption_levels_in_lbd(bool value) {
5222  _has_bits_[3] |= 0x00000800u;
5223  count_assumption_levels_in_lbd_ = value;
5224 }
5226  _internal_set_count_assumption_levels_in_lbd(value);
5227  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.count_assumption_levels_in_lbd)
5228 }
5229 
5230 // optional int32 presolve_bve_threshold = 54 [default = 500];
5231 inline bool SatParameters::_internal_has_presolve_bve_threshold() const {
5232  bool value = (_has_bits_[2] & 0x00080000u) != 0;
5233  return value;
5234 }
5236  return _internal_has_presolve_bve_threshold();
5237 }
5239  presolve_bve_threshold_ = 500;
5240  _has_bits_[2] &= ~0x00080000u;
5241 }
5242 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_presolve_bve_threshold() const {
5243  return presolve_bve_threshold_;
5244 }
5245 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::presolve_bve_threshold() const {
5246  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_bve_threshold)
5247  return _internal_presolve_bve_threshold();
5248 }
5249 inline void SatParameters::_internal_set_presolve_bve_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
5250  _has_bits_[2] |= 0x00080000u;
5251  presolve_bve_threshold_ = value;
5252 }
5253 inline void SatParameters::set_presolve_bve_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
5254  _internal_set_presolve_bve_threshold(value);
5255  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_bve_threshold)
5256 }
5257 
5258 // optional int32 presolve_bve_clause_weight = 55 [default = 3];
5259 inline bool SatParameters::_internal_has_presolve_bve_clause_weight() const {
5260  bool value = (_has_bits_[2] & 0x00200000u) != 0;
5261  return value;
5262 }
5264  return _internal_has_presolve_bve_clause_weight();
5265 }
5267  presolve_bve_clause_weight_ = 3;
5268  _has_bits_[2] &= ~0x00200000u;
5269 }
5270 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_presolve_bve_clause_weight() const {
5271  return presolve_bve_clause_weight_;
5272 }
5273 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::presolve_bve_clause_weight() const {
5274  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_bve_clause_weight)
5275  return _internal_presolve_bve_clause_weight();
5276 }
5277 inline void SatParameters::_internal_set_presolve_bve_clause_weight(::PROTOBUF_NAMESPACE_ID::int32 value) {
5278  _has_bits_[2] |= 0x00200000u;
5279  presolve_bve_clause_weight_ = value;
5280 }
5281 inline void SatParameters::set_presolve_bve_clause_weight(::PROTOBUF_NAMESPACE_ID::int32 value) {
5282  _internal_set_presolve_bve_clause_weight(value);
5283  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_bve_clause_weight)
5284 }
5285 
5286 // optional double presolve_probing_deterministic_time_limit = 57 [default = 30];
5287 inline bool SatParameters::_internal_has_presolve_probing_deterministic_time_limit() const {
5288  bool value = (_has_bits_[2] & 0x00100000u) != 0;
5289  return value;
5290 }
5292  return _internal_has_presolve_probing_deterministic_time_limit();
5293 }
5295  presolve_probing_deterministic_time_limit_ = 30;
5296  _has_bits_[2] &= ~0x00100000u;
5297 }
5298 inline double SatParameters::_internal_presolve_probing_deterministic_time_limit() const {
5299  return presolve_probing_deterministic_time_limit_;
5300 }
5302  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_probing_deterministic_time_limit)
5303  return _internal_presolve_probing_deterministic_time_limit();
5304 }
5305 inline void SatParameters::_internal_set_presolve_probing_deterministic_time_limit(double value) {
5306  _has_bits_[2] |= 0x00100000u;
5307  presolve_probing_deterministic_time_limit_ = value;
5308 }
5310  _internal_set_presolve_probing_deterministic_time_limit(value);
5311  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_probing_deterministic_time_limit)
5312 }
5313 
5314 // optional bool presolve_blocked_clause = 88 [default = true];
5315 inline bool SatParameters::_internal_has_presolve_blocked_clause() const {
5316  bool value = (_has_bits_[3] & 0x00001000u) != 0;
5317  return value;
5318 }
5320  return _internal_has_presolve_blocked_clause();
5321 }
5323  presolve_blocked_clause_ = true;
5324  _has_bits_[3] &= ~0x00001000u;
5325 }
5326 inline bool SatParameters::_internal_presolve_blocked_clause() const {
5327  return presolve_blocked_clause_;
5328 }
5330  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_blocked_clause)
5331  return _internal_presolve_blocked_clause();
5332 }
5333 inline void SatParameters::_internal_set_presolve_blocked_clause(bool value) {
5334  _has_bits_[3] |= 0x00001000u;
5335  presolve_blocked_clause_ = value;
5336 }
5338  _internal_set_presolve_blocked_clause(value);
5339  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_blocked_clause)
5340 }
5341 
5342 // optional bool presolve_use_bva = 72 [default = true];
5343 inline bool SatParameters::_internal_has_presolve_use_bva() const {
5344  bool value = (_has_bits_[3] & 0x00002000u) != 0;
5345  return value;
5346 }
5348  return _internal_has_presolve_use_bva();
5349 }
5351  presolve_use_bva_ = true;
5352  _has_bits_[3] &= ~0x00002000u;
5353 }
5354 inline bool SatParameters::_internal_presolve_use_bva() const {
5355  return presolve_use_bva_;
5356 }
5357 inline bool SatParameters::presolve_use_bva() const {
5358  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_use_bva)
5359  return _internal_presolve_use_bva();
5360 }
5361 inline void SatParameters::_internal_set_presolve_use_bva(bool value) {
5362  _has_bits_[3] |= 0x00002000u;
5363  presolve_use_bva_ = value;
5364 }
5366  _internal_set_presolve_use_bva(value);
5367  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_use_bva)
5368 }
5369 
5370 // optional int32 presolve_bva_threshold = 73 [default = 1];
5371 inline bool SatParameters::_internal_has_presolve_bva_threshold() const {
5372  bool value = (_has_bits_[2] & 0x20000000u) != 0;
5373  return value;
5374 }
5376  return _internal_has_presolve_bva_threshold();
5377 }
5379  presolve_bva_threshold_ = 1;
5380  _has_bits_[2] &= ~0x20000000u;
5381 }
5382 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_presolve_bva_threshold() const {
5383  return presolve_bva_threshold_;
5384 }
5385 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::presolve_bva_threshold() const {
5386  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_bva_threshold)
5387  return _internal_presolve_bva_threshold();
5388 }
5389 inline void SatParameters::_internal_set_presolve_bva_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
5390  _has_bits_[2] |= 0x20000000u;
5391  presolve_bva_threshold_ = value;
5392 }
5393 inline void SatParameters::set_presolve_bva_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
5394  _internal_set_presolve_bva_threshold(value);
5395  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_bva_threshold)
5396 }
5397 
5398 // optional int32 max_presolve_iterations = 138 [default = 3];
5399 inline bool SatParameters::_internal_has_max_presolve_iterations() const {
5400  bool value = (_has_bits_[4] & 0x00010000u) != 0;
5401  return value;
5402 }
5404  return _internal_has_max_presolve_iterations();
5405 }
5407  max_presolve_iterations_ = 3;
5408  _has_bits_[4] &= ~0x00010000u;
5409 }
5410 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_presolve_iterations() const {
5411  return max_presolve_iterations_;
5412 }
5413 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_presolve_iterations() const {
5414  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_presolve_iterations)
5415  return _internal_max_presolve_iterations();
5416 }
5417 inline void SatParameters::_internal_set_max_presolve_iterations(::PROTOBUF_NAMESPACE_ID::int32 value) {
5418  _has_bits_[4] |= 0x00010000u;
5419  max_presolve_iterations_ = value;
5420 }
5421 inline void SatParameters::set_max_presolve_iterations(::PROTOBUF_NAMESPACE_ID::int32 value) {
5422  _internal_set_max_presolve_iterations(value);
5423  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_presolve_iterations)
5424 }
5425 
5426 // optional bool cp_model_presolve = 86 [default = true];
5427 inline bool SatParameters::_internal_has_cp_model_presolve() const {
5428  bool value = (_has_bits_[3] & 0x02000000u) != 0;
5429  return value;
5430 }
5432  return _internal_has_cp_model_presolve();
5433 }
5435  cp_model_presolve_ = true;
5436  _has_bits_[3] &= ~0x02000000u;
5437 }
5438 inline bool SatParameters::_internal_cp_model_presolve() const {
5439  return cp_model_presolve_;
5440 }
5442  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_presolve)
5443  return _internal_cp_model_presolve();
5444 }
5445 inline void SatParameters::_internal_set_cp_model_presolve(bool value) {
5446  _has_bits_[3] |= 0x02000000u;
5447  cp_model_presolve_ = value;
5448 }
5450  _internal_set_cp_model_presolve(value);
5451  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_presolve)
5452 }
5453 
5454 // optional bool cp_model_postsolve_with_full_solver = 162 [default = false];
5455 inline bool SatParameters::_internal_has_cp_model_postsolve_with_full_solver() const {
5456  bool value = (_has_bits_[0] & 0x04000000u) != 0;
5457  return value;
5458 }
5460  return _internal_has_cp_model_postsolve_with_full_solver();
5461 }
5463  cp_model_postsolve_with_full_solver_ = false;
5464  _has_bits_[0] &= ~0x04000000u;
5465 }
5466 inline bool SatParameters::_internal_cp_model_postsolve_with_full_solver() const {
5467  return cp_model_postsolve_with_full_solver_;
5468 }
5470  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_postsolve_with_full_solver)
5471  return _internal_cp_model_postsolve_with_full_solver();
5472 }
5473 inline void SatParameters::_internal_set_cp_model_postsolve_with_full_solver(bool value) {
5474  _has_bits_[0] |= 0x04000000u;
5475  cp_model_postsolve_with_full_solver_ = value;
5476 }
5478  _internal_set_cp_model_postsolve_with_full_solver(value);
5479  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_postsolve_with_full_solver)
5480 }
5481 
5482 // optional int32 cp_model_max_num_presolve_operations = 151 [default = 0];
5483 inline bool SatParameters::_internal_has_cp_model_max_num_presolve_operations() const {
5484  bool value = (_has_bits_[1] & 0x04000000u) != 0;
5485  return value;
5486 }
5488  return _internal_has_cp_model_max_num_presolve_operations();
5489 }
5491  cp_model_max_num_presolve_operations_ = 0;
5492  _has_bits_[1] &= ~0x04000000u;
5493 }
5494 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_cp_model_max_num_presolve_operations() const {
5495  return cp_model_max_num_presolve_operations_;
5496 }
5497 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::cp_model_max_num_presolve_operations() const {
5498  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_max_num_presolve_operations)
5499  return _internal_cp_model_max_num_presolve_operations();
5500 }
5501 inline void SatParameters::_internal_set_cp_model_max_num_presolve_operations(::PROTOBUF_NAMESPACE_ID::int32 value) {
5502  _has_bits_[1] |= 0x04000000u;
5503  cp_model_max_num_presolve_operations_ = value;
5504 }
5505 inline void SatParameters::set_cp_model_max_num_presolve_operations(::PROTOBUF_NAMESPACE_ID::int32 value) {
5506  _internal_set_cp_model_max_num_presolve_operations(value);
5507  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_max_num_presolve_operations)
5508 }
5509 
5510 // optional int32 cp_model_probing_level = 110 [default = 2];
5511 inline bool SatParameters::_internal_has_cp_model_probing_level() const {
5512  bool value = (_has_bits_[3] & 0x00100000u) != 0;
5513  return value;
5514 }
5516  return _internal_has_cp_model_probing_level();
5517 }
5519  cp_model_probing_level_ = 2;
5520  _has_bits_[3] &= ~0x00100000u;
5521 }
5522 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_cp_model_probing_level() const {
5523  return cp_model_probing_level_;
5524 }
5525 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::cp_model_probing_level() const {
5526  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_probing_level)
5527  return _internal_cp_model_probing_level();
5528 }
5529 inline void SatParameters::_internal_set_cp_model_probing_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
5530  _has_bits_[3] |= 0x00100000u;
5531  cp_model_probing_level_ = value;
5532 }
5533 inline void SatParameters::set_cp_model_probing_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
5534  _internal_set_cp_model_probing_level(value);
5535  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_probing_level)
5536 }
5537 
5538 // optional bool cp_model_use_sat_presolve = 93 [default = true];
5539 inline bool SatParameters::_internal_has_cp_model_use_sat_presolve() const {
5540  bool value = (_has_bits_[3] & 0x04000000u) != 0;
5541  return value;
5542 }
5544  return _internal_has_cp_model_use_sat_presolve();
5545 }
5547  cp_model_use_sat_presolve_ = true;
5548  _has_bits_[3] &= ~0x04000000u;
5549 }
5550 inline bool SatParameters::_internal_cp_model_use_sat_presolve() const {
5551  return cp_model_use_sat_presolve_;
5552 }
5554  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_use_sat_presolve)
5555  return _internal_cp_model_use_sat_presolve();
5556 }
5557 inline void SatParameters::_internal_set_cp_model_use_sat_presolve(bool value) {
5558  _has_bits_[3] |= 0x04000000u;
5559  cp_model_use_sat_presolve_ = value;
5560 }
5562  _internal_set_cp_model_use_sat_presolve(value);
5563  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_use_sat_presolve)
5564 }
5565 
5566 // optional bool use_sat_inprocessing = 163 [default = false];
5567 inline bool SatParameters::_internal_has_use_sat_inprocessing() const {
5568  bool value = (_has_bits_[0] & 0x08000000u) != 0;
5569  return value;
5570 }
5572  return _internal_has_use_sat_inprocessing();
5573 }
5575  use_sat_inprocessing_ = false;
5576  _has_bits_[0] &= ~0x08000000u;
5577 }
5578 inline bool SatParameters::_internal_use_sat_inprocessing() const {
5579  return use_sat_inprocessing_;
5580 }
5582  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_sat_inprocessing)
5583  return _internal_use_sat_inprocessing();
5584 }
5585 inline void SatParameters::_internal_set_use_sat_inprocessing(bool value) {
5586  _has_bits_[0] |= 0x08000000u;
5587  use_sat_inprocessing_ = value;
5588 }
5590  _internal_set_use_sat_inprocessing(value);
5591  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_sat_inprocessing)
5592 }
5593 
5594 // optional bool expand_element_constraints = 140 [default = true];
5595 inline bool SatParameters::_internal_has_expand_element_constraints() const {
5596  bool value = (_has_bits_[3] & 0x08000000u) != 0;
5597  return value;
5598 }
5600  return _internal_has_expand_element_constraints();
5601 }
5603  expand_element_constraints_ = true;
5604  _has_bits_[3] &= ~0x08000000u;
5605 }
5606 inline bool SatParameters::_internal_expand_element_constraints() const {
5607  return expand_element_constraints_;
5608 }
5610  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_element_constraints)
5611  return _internal_expand_element_constraints();
5612 }
5613 inline void SatParameters::_internal_set_expand_element_constraints(bool value) {
5614  _has_bits_[3] |= 0x08000000u;
5615  expand_element_constraints_ = value;
5616 }
5618  _internal_set_expand_element_constraints(value);
5619  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_element_constraints)
5620 }
5621 
5622 // optional bool expand_automaton_constraints = 143 [default = true];
5623 inline bool SatParameters::_internal_has_expand_automaton_constraints() const {
5624  bool value = (_has_bits_[3] & 0x10000000u) != 0;
5625  return value;
5626 }
5628  return _internal_has_expand_automaton_constraints();
5629 }
5631  expand_automaton_constraints_ = true;
5632  _has_bits_[3] &= ~0x10000000u;
5633 }
5634 inline bool SatParameters::_internal_expand_automaton_constraints() const {
5635  return expand_automaton_constraints_;
5636 }
5638  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_automaton_constraints)
5639  return _internal_expand_automaton_constraints();
5640 }
5641 inline void SatParameters::_internal_set_expand_automaton_constraints(bool value) {
5642  _has_bits_[3] |= 0x10000000u;
5643  expand_automaton_constraints_ = value;
5644 }
5646  _internal_set_expand_automaton_constraints(value);
5647  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_automaton_constraints)
5648 }
5649 
5650 // optional bool expand_table_constraints = 158 [default = true];
5651 inline bool SatParameters::_internal_has_expand_table_constraints() const {
5652  bool value = (_has_bits_[3] & 0x00008000u) != 0;
5653  return value;
5654 }
5656  return _internal_has_expand_table_constraints();
5657 }
5659  expand_table_constraints_ = true;
5660  _has_bits_[3] &= ~0x00008000u;
5661 }
5662 inline bool SatParameters::_internal_expand_table_constraints() const {
5663  return expand_table_constraints_;
5664 }
5666  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_table_constraints)
5667  return _internal_expand_table_constraints();
5668 }
5669 inline void SatParameters::_internal_set_expand_table_constraints(bool value) {
5670  _has_bits_[3] |= 0x00008000u;
5671  expand_table_constraints_ = value;
5672 }
5674  _internal_set_expand_table_constraints(value);
5675  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_table_constraints)
5676 }
5677 
5678 // optional bool expand_alldiff_constraints = 170 [default = false];
5679 inline bool SatParameters::_internal_has_expand_alldiff_constraints() const {
5680  bool value = (_has_bits_[1] & 0x00001000u) != 0;
5681  return value;
5682 }
5684  return _internal_has_expand_alldiff_constraints();
5685 }
5687  expand_alldiff_constraints_ = false;
5688  _has_bits_[1] &= ~0x00001000u;
5689 }
5690 inline bool SatParameters::_internal_expand_alldiff_constraints() const {
5691  return expand_alldiff_constraints_;
5692 }
5694  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_alldiff_constraints)
5695  return _internal_expand_alldiff_constraints();
5696 }
5697 inline void SatParameters::_internal_set_expand_alldiff_constraints(bool value) {
5698  _has_bits_[1] |= 0x00001000u;
5699  expand_alldiff_constraints_ = value;
5700 }
5702  _internal_set_expand_alldiff_constraints(value);
5703  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_alldiff_constraints)
5704 }
5705 
5706 // optional bool expand_reservoir_constraints = 182 [default = true];
5707 inline bool SatParameters::_internal_has_expand_reservoir_constraints() const {
5708  bool value = (_has_bits_[3] & 0x00010000u) != 0;
5709  return value;
5710 }
5712  return _internal_has_expand_reservoir_constraints();
5713 }
5715  expand_reservoir_constraints_ = true;
5716  _has_bits_[3] &= ~0x00010000u;
5717 }
5718 inline bool SatParameters::_internal_expand_reservoir_constraints() const {
5719  return expand_reservoir_constraints_;
5720 }
5722  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_reservoir_constraints)
5723  return _internal_expand_reservoir_constraints();
5724 }
5725 inline void SatParameters::_internal_set_expand_reservoir_constraints(bool value) {
5726  _has_bits_[3] |= 0x00010000u;
5727  expand_reservoir_constraints_ = value;
5728 }
5730  _internal_set_expand_reservoir_constraints(value);
5731  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_reservoir_constraints)
5732 }
5733 
5734 // optional bool disable_constraint_expansion = 181 [default = false];
5735 inline bool SatParameters::_internal_has_disable_constraint_expansion() const {
5736  bool value = (_has_bits_[1] & 0x00002000u) != 0;
5737  return value;
5738 }
5740  return _internal_has_disable_constraint_expansion();
5741 }
5743  disable_constraint_expansion_ = false;
5744  _has_bits_[1] &= ~0x00002000u;
5745 }
5746 inline bool SatParameters::_internal_disable_constraint_expansion() const {
5747  return disable_constraint_expansion_;
5748 }
5750  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.disable_constraint_expansion)
5751  return _internal_disable_constraint_expansion();
5752 }
5753 inline void SatParameters::_internal_set_disable_constraint_expansion(bool value) {
5754  _has_bits_[1] |= 0x00002000u;
5755  disable_constraint_expansion_ = value;
5756 }
5758  _internal_set_disable_constraint_expansion(value);
5759  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.disable_constraint_expansion)
5760 }
5761 
5762 // optional double merge_no_overlap_work_limit = 145 [default = 1000000000000];
5763 inline bool SatParameters::_internal_has_merge_no_overlap_work_limit() const {
5764  bool value = (_has_bits_[4] & 0x00020000u) != 0;
5765  return value;
5766 }
5768  return _internal_has_merge_no_overlap_work_limit();
5769 }
5771  merge_no_overlap_work_limit_ = 1000000000000;
5772  _has_bits_[4] &= ~0x00020000u;
5773 }
5774 inline double SatParameters::_internal_merge_no_overlap_work_limit() const {
5775  return merge_no_overlap_work_limit_;
5776 }
5778  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.merge_no_overlap_work_limit)
5779  return _internal_merge_no_overlap_work_limit();
5780 }
5781 inline void SatParameters::_internal_set_merge_no_overlap_work_limit(double value) {
5782  _has_bits_[4] |= 0x00020000u;
5783  merge_no_overlap_work_limit_ = value;
5784 }
5786  _internal_set_merge_no_overlap_work_limit(value);
5787  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.merge_no_overlap_work_limit)
5788 }
5789 
5790 // optional double merge_at_most_one_work_limit = 146 [default = 100000000];
5791 inline bool SatParameters::_internal_has_merge_at_most_one_work_limit() const {
5792  bool value = (_has_bits_[4] & 0x00800000u) != 0;
5793  return value;
5794 }
5796  return _internal_has_merge_at_most_one_work_limit();
5797 }
5799  merge_at_most_one_work_limit_ = 100000000;
5800  _has_bits_[4] &= ~0x00800000u;
5801 }
5802 inline double SatParameters::_internal_merge_at_most_one_work_limit() const {
5803  return merge_at_most_one_work_limit_;
5804 }
5806  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.merge_at_most_one_work_limit)
5807  return _internal_merge_at_most_one_work_limit();
5808 }
5809 inline void SatParameters::_internal_set_merge_at_most_one_work_limit(double value) {
5810  _has_bits_[4] |= 0x00800000u;
5811  merge_at_most_one_work_limit_ = value;
5812 }
5814  _internal_set_merge_at_most_one_work_limit(value);
5815  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.merge_at_most_one_work_limit)
5816 }
5817 
5818 // optional int32 presolve_substitution_level = 147 [default = 1];
5819 inline bool SatParameters::_internal_has_presolve_substitution_level() const {
5820  bool value = (_has_bits_[4] & 0x00400000u) != 0;
5821  return value;
5822 }
5824  return _internal_has_presolve_substitution_level();
5825 }
5827  presolve_substitution_level_ = 1;
5828  _has_bits_[4] &= ~0x00400000u;
5829 }
5830 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_presolve_substitution_level() const {
5831  return presolve_substitution_level_;
5832 }
5833 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::presolve_substitution_level() const {
5834  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_substitution_level)
5835  return _internal_presolve_substitution_level();
5836 }
5837 inline void SatParameters::_internal_set_presolve_substitution_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
5838  _has_bits_[4] |= 0x00400000u;
5839  presolve_substitution_level_ = value;
5840 }
5841 inline void SatParameters::set_presolve_substitution_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
5842  _internal_set_presolve_substitution_level(value);
5843  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_substitution_level)
5844 }
5845 
5846 // optional bool presolve_extract_integer_enforcement = 174 [default = false];
5847 inline bool SatParameters::_internal_has_presolve_extract_integer_enforcement() const {
5848  bool value = (_has_bits_[1] & 0x00004000u) != 0;
5849  return value;
5850 }
5852  return _internal_has_presolve_extract_integer_enforcement();
5853 }
5855  presolve_extract_integer_enforcement_ = false;
5856  _has_bits_[1] &= ~0x00004000u;
5857 }
5858 inline bool SatParameters::_internal_presolve_extract_integer_enforcement() const {
5859  return presolve_extract_integer_enforcement_;
5860 }
5862  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_extract_integer_enforcement)
5863  return _internal_presolve_extract_integer_enforcement();
5864 }
5865 inline void SatParameters::_internal_set_presolve_extract_integer_enforcement(bool value) {
5866  _has_bits_[1] |= 0x00004000u;
5867  presolve_extract_integer_enforcement_ = value;
5868 }
5870  _internal_set_presolve_extract_integer_enforcement(value);
5871  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_extract_integer_enforcement)
5872 }
5873 
5874 // optional bool use_optimization_hints = 35 [default = true];
5875 inline bool SatParameters::_internal_has_use_optimization_hints() const {
5876  bool value = (_has_bits_[3] & 0x00020000u) != 0;
5877  return value;
5878 }
5880  return _internal_has_use_optimization_hints();
5881 }
5883  use_optimization_hints_ = true;
5884  _has_bits_[3] &= ~0x00020000u;
5885 }
5886 inline bool SatParameters::_internal_use_optimization_hints() const {
5887  return use_optimization_hints_;
5888 }
5890  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_optimization_hints)
5891  return _internal_use_optimization_hints();
5892 }
5893 inline void SatParameters::_internal_set_use_optimization_hints(bool value) {
5894  _has_bits_[3] |= 0x00020000u;
5895  use_optimization_hints_ = value;
5896 }
5898  _internal_set_use_optimization_hints(value);
5899  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_optimization_hints)
5900 }
5901 
5902 // optional bool minimize_core = 50 [default = true];
5903 inline bool SatParameters::_internal_has_minimize_core() const {
5904  bool value = (_has_bits_[3] & 0x00040000u) != 0;
5905  return value;
5906 }
5908  return _internal_has_minimize_core();
5909 }
5911  minimize_core_ = true;
5912  _has_bits_[3] &= ~0x00040000u;
5913 }
5914 inline bool SatParameters::_internal_minimize_core() const {
5915  return minimize_core_;
5916 }
5917 inline bool SatParameters::minimize_core() const {
5918  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimize_core)
5919  return _internal_minimize_core();
5920 }
5921 inline void SatParameters::_internal_set_minimize_core(bool value) {
5922  _has_bits_[3] |= 0x00040000u;
5923  minimize_core_ = value;
5924 }
5926  _internal_set_minimize_core(value);
5927  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimize_core)
5928 }
5929 
5930 // optional bool find_multiple_cores = 84 [default = true];
5931 inline bool SatParameters::_internal_has_find_multiple_cores() const {
5932  bool value = (_has_bits_[3] & 0x00000004u) != 0;
5933  return value;
5934 }
5936  return _internal_has_find_multiple_cores();
5937 }
5939  find_multiple_cores_ = true;
5940  _has_bits_[3] &= ~0x00000004u;
5941 }
5942 inline bool SatParameters::_internal_find_multiple_cores() const {
5943  return find_multiple_cores_;
5944 }
5946  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.find_multiple_cores)
5947  return _internal_find_multiple_cores();
5948 }
5949 inline void SatParameters::_internal_set_find_multiple_cores(bool value) {
5950  _has_bits_[3] |= 0x00000004u;
5951  find_multiple_cores_ = value;
5952 }
5954  _internal_set_find_multiple_cores(value);
5955  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.find_multiple_cores)
5956 }
5957 
5958 // optional bool cover_optimization = 89 [default = true];
5959 inline bool SatParameters::_internal_has_cover_optimization() const {
5960  bool value = (_has_bits_[3] & 0x00000008u) != 0;
5961  return value;
5962 }
5964  return _internal_has_cover_optimization();
5965 }
5967  cover_optimization_ = true;
5968  _has_bits_[3] &= ~0x00000008u;
5969 }
5970 inline bool SatParameters::_internal_cover_optimization() const {
5971  return cover_optimization_;
5972 }
5974  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cover_optimization)
5975  return _internal_cover_optimization();
5976 }
5977 inline void SatParameters::_internal_set_cover_optimization(bool value) {
5978  _has_bits_[3] |= 0x00000008u;
5979  cover_optimization_ = value;
5980 }
5982  _internal_set_cover_optimization(value);
5983  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cover_optimization)
5984 }
5985 
5986 // optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];
5987 inline bool SatParameters::_internal_has_max_sat_assumption_order() const {
5988  bool value = (_has_bits_[0] & 0x00000080u) != 0;
5989  return value;
5990 }
5992  return _internal_has_max_sat_assumption_order();
5993 }
5995  max_sat_assumption_order_ = 0;
5996  _has_bits_[0] &= ~0x00000080u;
5997 }
5998 inline ::operations_research::sat::SatParameters_MaxSatAssumptionOrder SatParameters::_internal_max_sat_assumption_order() const {
5999  return static_cast< ::operations_research::sat::SatParameters_MaxSatAssumptionOrder >(max_sat_assumption_order_);
6000 }
6002  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_sat_assumption_order)
6003  return _internal_max_sat_assumption_order();
6004 }
6005 inline void SatParameters::_internal_set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value) {
6007  _has_bits_[0] |= 0x00000080u;
6008  max_sat_assumption_order_ = value;
6009 }
6011  _internal_set_max_sat_assumption_order(value);
6012  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_sat_assumption_order)
6013 }
6014 
6015 // optional bool max_sat_reverse_assumption_order = 52 [default = false];
6016 inline bool SatParameters::_internal_has_max_sat_reverse_assumption_order() const {
6017  bool value = (_has_bits_[1] & 0x00008000u) != 0;
6018  return value;
6019 }
6021  return _internal_has_max_sat_reverse_assumption_order();
6022 }
6024  max_sat_reverse_assumption_order_ = false;
6025  _has_bits_[1] &= ~0x00008000u;
6026 }
6027 inline bool SatParameters::_internal_max_sat_reverse_assumption_order() const {
6028  return max_sat_reverse_assumption_order_;
6029 }
6031  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_sat_reverse_assumption_order)
6032  return _internal_max_sat_reverse_assumption_order();
6033 }
6034 inline void SatParameters::_internal_set_max_sat_reverse_assumption_order(bool value) {
6035  _has_bits_[1] |= 0x00008000u;
6036  max_sat_reverse_assumption_order_ = value;
6037 }
6039  _internal_set_max_sat_reverse_assumption_order(value);
6040  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_sat_reverse_assumption_order)
6041 }
6042 
6043 // optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];
6044 inline bool SatParameters::_internal_has_max_sat_stratification() const {
6045  bool value = (_has_bits_[2] & 0x00040000u) != 0;
6046  return value;
6047 }
6049  return _internal_has_max_sat_stratification();
6050 }
6052  max_sat_stratification_ = 1;
6053  _has_bits_[2] &= ~0x00040000u;
6054 }
6055 inline ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm SatParameters::_internal_max_sat_stratification() const {
6056  return static_cast< ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm >(max_sat_stratification_);
6057 }
6059  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_sat_stratification)
6060  return _internal_max_sat_stratification();
6061 }
6062 inline void SatParameters::_internal_set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value) {
6064  _has_bits_[2] |= 0x00040000u;
6065  max_sat_stratification_ = value;
6066 }
6068  _internal_set_max_sat_stratification(value);
6069  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_sat_stratification)
6070 }
6071 
6072 // optional bool use_precedences_in_disjunctive_constraint = 74 [default = true];
6073 inline bool SatParameters::_internal_has_use_precedences_in_disjunctive_constraint() const {
6074  bool value = (_has_bits_[3] & 0x00000010u) != 0;
6075  return value;
6076 }
6078  return _internal_has_use_precedences_in_disjunctive_constraint();
6079 }
6081  use_precedences_in_disjunctive_constraint_ = true;
6082  _has_bits_[3] &= ~0x00000010u;
6083 }
6084 inline bool SatParameters::_internal_use_precedences_in_disjunctive_constraint() const {
6085  return use_precedences_in_disjunctive_constraint_;
6086 }
6088  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_precedences_in_disjunctive_constraint)
6089  return _internal_use_precedences_in_disjunctive_constraint();
6090 }
6091 inline void SatParameters::_internal_set_use_precedences_in_disjunctive_constraint(bool value) {
6092  _has_bits_[3] |= 0x00000010u;
6093  use_precedences_in_disjunctive_constraint_ = value;
6094 }
6096  _internal_set_use_precedences_in_disjunctive_constraint(value);
6097  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_precedences_in_disjunctive_constraint)
6098 }
6099 
6100 // optional bool use_overload_checker_in_cumulative_constraint = 78 [default = false];
6101 inline bool SatParameters::_internal_has_use_overload_checker_in_cumulative_constraint() const {
6102  bool value = (_has_bits_[0] & 0x00004000u) != 0;
6103  return value;
6104 }
6106  return _internal_has_use_overload_checker_in_cumulative_constraint();
6107 }
6109  use_overload_checker_in_cumulative_constraint_ = false;
6110  _has_bits_[0] &= ~0x00004000u;
6111 }
6112 inline bool SatParameters::_internal_use_overload_checker_in_cumulative_constraint() const {
6113  return use_overload_checker_in_cumulative_constraint_;
6114 }
6116  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_overload_checker_in_cumulative_constraint)
6117  return _internal_use_overload_checker_in_cumulative_constraint();
6118 }
6119 inline void SatParameters::_internal_set_use_overload_checker_in_cumulative_constraint(bool value) {
6120  _has_bits_[0] |= 0x00004000u;
6121  use_overload_checker_in_cumulative_constraint_ = value;
6122 }
6124  _internal_set_use_overload_checker_in_cumulative_constraint(value);
6125  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_overload_checker_in_cumulative_constraint)
6126 }
6127 
6128 // optional bool use_timetable_edge_finding_in_cumulative_constraint = 79 [default = false];
6129 inline bool SatParameters::_internal_has_use_timetable_edge_finding_in_cumulative_constraint() const {
6130  bool value = (_has_bits_[0] & 0x00008000u) != 0;
6131  return value;
6132 }
6134  return _internal_has_use_timetable_edge_finding_in_cumulative_constraint();
6135 }
6137  use_timetable_edge_finding_in_cumulative_constraint_ = false;
6138  _has_bits_[0] &= ~0x00008000u;
6139 }
6140 inline bool SatParameters::_internal_use_timetable_edge_finding_in_cumulative_constraint() const {
6141  return use_timetable_edge_finding_in_cumulative_constraint_;
6142 }
6144  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_timetable_edge_finding_in_cumulative_constraint)
6145  return _internal_use_timetable_edge_finding_in_cumulative_constraint();
6146 }
6147 inline void SatParameters::_internal_set_use_timetable_edge_finding_in_cumulative_constraint(bool value) {
6148  _has_bits_[0] |= 0x00008000u;
6149  use_timetable_edge_finding_in_cumulative_constraint_ = value;
6150 }
6152  _internal_set_use_timetable_edge_finding_in_cumulative_constraint(value);
6153  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_timetable_edge_finding_in_cumulative_constraint)
6154 }
6155 
6156 // optional bool use_disjunctive_constraint_in_cumulative_constraint = 80 [default = true];
6157 inline bool SatParameters::_internal_has_use_disjunctive_constraint_in_cumulative_constraint() const {
6158  bool value = (_has_bits_[3] & 0x00000020u) != 0;
6159  return value;
6160 }
6162  return _internal_has_use_disjunctive_constraint_in_cumulative_constraint();
6163 }
6165  use_disjunctive_constraint_in_cumulative_constraint_ = true;
6166  _has_bits_[3] &= ~0x00000020u;
6167 }
6168 inline bool SatParameters::_internal_use_disjunctive_constraint_in_cumulative_constraint() const {
6169  return use_disjunctive_constraint_in_cumulative_constraint_;
6170 }
6172  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_disjunctive_constraint_in_cumulative_constraint)
6173  return _internal_use_disjunctive_constraint_in_cumulative_constraint();
6174 }
6175 inline void SatParameters::_internal_set_use_disjunctive_constraint_in_cumulative_constraint(bool value) {
6176  _has_bits_[3] |= 0x00000020u;
6177  use_disjunctive_constraint_in_cumulative_constraint_ = value;
6178 }
6180  _internal_set_use_disjunctive_constraint_in_cumulative_constraint(value);
6181  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_disjunctive_constraint_in_cumulative_constraint)
6182 }
6183 
6184 // optional int32 linearization_level = 90 [default = 1];
6185 inline bool SatParameters::_internal_has_linearization_level() const {
6186  bool value = (_has_bits_[3] & 0x00000040u) != 0;
6187  return value;
6188 }
6190  return _internal_has_linearization_level();
6191 }
6193  linearization_level_ = 1;
6194  _has_bits_[3] &= ~0x00000040u;
6195 }
6196 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_linearization_level() const {
6197  return linearization_level_;
6198 }
6199 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::linearization_level() const {
6200  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.linearization_level)
6201  return _internal_linearization_level();
6202 }
6203 inline void SatParameters::_internal_set_linearization_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
6204  _has_bits_[3] |= 0x00000040u;
6205  linearization_level_ = value;
6206 }
6207 inline void SatParameters::set_linearization_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
6208  _internal_set_linearization_level(value);
6209  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.linearization_level)
6210 }
6211 
6212 // optional int32 boolean_encoding_level = 107 [default = 1];
6213 inline bool SatParameters::_internal_has_boolean_encoding_level() const {
6214  bool value = (_has_bits_[3] & 0x00080000u) != 0;
6215  return value;
6216 }
6218  return _internal_has_boolean_encoding_level();
6219 }
6221  boolean_encoding_level_ = 1;
6222  _has_bits_[3] &= ~0x00080000u;
6223 }
6224 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_boolean_encoding_level() const {
6225  return boolean_encoding_level_;
6226 }
6227 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::boolean_encoding_level() const {
6228  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.boolean_encoding_level)
6229  return _internal_boolean_encoding_level();
6230 }
6231 inline void SatParameters::_internal_set_boolean_encoding_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
6232  _has_bits_[3] |= 0x00080000u;
6233  boolean_encoding_level_ = value;
6234 }
6235 inline void SatParameters::set_boolean_encoding_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
6236  _internal_set_boolean_encoding_level(value);
6237  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.boolean_encoding_level)
6238 }
6239 
6240 // optional int32 max_domain_size_when_encoding_eq_neq_constraints = 191 [default = 16];
6241 inline bool SatParameters::_internal_has_max_domain_size_when_encoding_eq_neq_constraints() const {
6242  bool value = (_has_bits_[5] & 0x00000080u) != 0;
6243  return value;
6244 }
6246  return _internal_has_max_domain_size_when_encoding_eq_neq_constraints();
6247 }
6249  max_domain_size_when_encoding_eq_neq_constraints_ = 16;
6250  _has_bits_[5] &= ~0x00000080u;
6251 }
6252 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_domain_size_when_encoding_eq_neq_constraints() const {
6253  return max_domain_size_when_encoding_eq_neq_constraints_;
6254 }
6255 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_domain_size_when_encoding_eq_neq_constraints() const {
6256  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_domain_size_when_encoding_eq_neq_constraints)
6257  return _internal_max_domain_size_when_encoding_eq_neq_constraints();
6258 }
6259 inline void SatParameters::_internal_set_max_domain_size_when_encoding_eq_neq_constraints(::PROTOBUF_NAMESPACE_ID::int32 value) {
6260  _has_bits_[5] |= 0x00000080u;
6261  max_domain_size_when_encoding_eq_neq_constraints_ = value;
6262 }
6264  _internal_set_max_domain_size_when_encoding_eq_neq_constraints(value);
6265  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_domain_size_when_encoding_eq_neq_constraints)
6266 }
6267 
6268 // optional int32 max_num_cuts = 91 [default = 10000];
6269 inline bool SatParameters::_internal_has_max_num_cuts() const {
6270  bool value = (_has_bits_[3] & 0x00000080u) != 0;
6271  return value;
6272 }
6273 inline bool SatParameters::has_max_num_cuts() const {
6274  return _internal_has_max_num_cuts();
6275 }
6277  max_num_cuts_ = 10000;
6278  _has_bits_[3] &= ~0x00000080u;
6279 }
6280 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_num_cuts() const {
6281  return max_num_cuts_;
6282 }
6283 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_num_cuts() const {
6284  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_num_cuts)
6285  return _internal_max_num_cuts();
6286 }
6287 inline void SatParameters::_internal_set_max_num_cuts(::PROTOBUF_NAMESPACE_ID::int32 value) {
6288  _has_bits_[3] |= 0x00000080u;
6289  max_num_cuts_ = value;
6290 }
6291 inline void SatParameters::set_max_num_cuts(::PROTOBUF_NAMESPACE_ID::int32 value) {
6292  _internal_set_max_num_cuts(value);
6293  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_num_cuts)
6294 }
6295 
6296 // optional bool only_add_cuts_at_level_zero = 92 [default = false];
6297 inline bool SatParameters::_internal_has_only_add_cuts_at_level_zero() const {
6298  bool value = (_has_bits_[0] & 0x00010000u) != 0;
6299  return value;
6300 }
6302  return _internal_has_only_add_cuts_at_level_zero();
6303 }
6305  only_add_cuts_at_level_zero_ = false;
6306  _has_bits_[0] &= ~0x00010000u;
6307 }
6308 inline bool SatParameters::_internal_only_add_cuts_at_level_zero() const {
6309  return only_add_cuts_at_level_zero_;
6310 }
6312  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.only_add_cuts_at_level_zero)
6313  return _internal_only_add_cuts_at_level_zero();
6314 }
6315 inline void SatParameters::_internal_set_only_add_cuts_at_level_zero(bool value) {
6316  _has_bits_[0] |= 0x00010000u;
6317  only_add_cuts_at_level_zero_ = value;
6318 }
6320  _internal_set_only_add_cuts_at_level_zero(value);
6321  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.only_add_cuts_at_level_zero)
6322 }
6323 
6324 // optional bool add_knapsack_cuts = 111 [default = false];
6325 inline bool SatParameters::_internal_has_add_knapsack_cuts() const {
6326  bool value = (_has_bits_[0] & 0x00020000u) != 0;
6327  return value;
6328 }
6330  return _internal_has_add_knapsack_cuts();
6331 }
6333  add_knapsack_cuts_ = false;
6334  _has_bits_[0] &= ~0x00020000u;
6335 }
6336 inline bool SatParameters::_internal_add_knapsack_cuts() const {
6337  return add_knapsack_cuts_;
6338 }
6340  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_knapsack_cuts)
6341  return _internal_add_knapsack_cuts();
6342 }
6343 inline void SatParameters::_internal_set_add_knapsack_cuts(bool value) {
6344  _has_bits_[0] |= 0x00020000u;
6345  add_knapsack_cuts_ = value;
6346 }
6348  _internal_set_add_knapsack_cuts(value);
6349  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_knapsack_cuts)
6350 }
6351 
6352 // optional bool add_cg_cuts = 117 [default = true];
6353 inline bool SatParameters::_internal_has_add_cg_cuts() const {
6354  bool value = (_has_bits_[4] & 0x00040000u) != 0;
6355  return value;
6356 }
6357 inline bool SatParameters::has_add_cg_cuts() const {
6358  return _internal_has_add_cg_cuts();
6359 }
6361  add_cg_cuts_ = true;
6362  _has_bits_[4] &= ~0x00040000u;
6363 }
6364 inline bool SatParameters::_internal_add_cg_cuts() const {
6365  return add_cg_cuts_;
6366 }
6367 inline bool SatParameters::add_cg_cuts() const {
6368  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_cg_cuts)
6369  return _internal_add_cg_cuts();
6370 }
6371 inline void SatParameters::_internal_set_add_cg_cuts(bool value) {
6372  _has_bits_[4] |= 0x00040000u;
6373  add_cg_cuts_ = value;
6374 }
6376  _internal_set_add_cg_cuts(value);
6377  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_cg_cuts)
6378 }
6379 
6380 // optional bool add_mir_cuts = 120 [default = true];
6381 inline bool SatParameters::_internal_has_add_mir_cuts() const {
6382  bool value = (_has_bits_[4] & 0x00080000u) != 0;
6383  return value;
6384 }
6385 inline bool SatParameters::has_add_mir_cuts() const {
6386  return _internal_has_add_mir_cuts();
6387 }
6389  add_mir_cuts_ = true;
6390  _has_bits_[4] &= ~0x00080000u;
6391 }
6392 inline bool SatParameters::_internal_add_mir_cuts() const {
6393  return add_mir_cuts_;
6394 }
6395 inline bool SatParameters::add_mir_cuts() const {
6396  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_mir_cuts)
6397  return _internal_add_mir_cuts();
6398 }
6399 inline void SatParameters::_internal_set_add_mir_cuts(bool value) {
6400  _has_bits_[4] |= 0x00080000u;
6401  add_mir_cuts_ = value;
6402 }
6404  _internal_set_add_mir_cuts(value);
6405  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_mir_cuts)
6406 }
6407 
6408 // optional bool add_zero_half_cuts = 169 [default = true];
6409 inline bool SatParameters::_internal_has_add_zero_half_cuts() const {
6410  bool value = (_has_bits_[4] & 0x00100000u) != 0;
6411  return value;
6412 }
6414  return _internal_has_add_zero_half_cuts();
6415 }
6417  add_zero_half_cuts_ = true;
6418  _has_bits_[4] &= ~0x00100000u;
6419 }
6420 inline bool SatParameters::_internal_add_zero_half_cuts() const {
6421  return add_zero_half_cuts_;
6422 }
6424  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_zero_half_cuts)
6425  return _internal_add_zero_half_cuts();
6426 }
6427 inline void SatParameters::_internal_set_add_zero_half_cuts(bool value) {
6428  _has_bits_[4] |= 0x00100000u;
6429  add_zero_half_cuts_ = value;
6430 }
6432  _internal_set_add_zero_half_cuts(value);
6433  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_zero_half_cuts)
6434 }
6435 
6436 // optional bool add_clique_cuts = 172 [default = true];
6437 inline bool SatParameters::_internal_has_add_clique_cuts() const {
6438  bool value = (_has_bits_[4] & 0x00200000u) != 0;
6439  return value;
6440 }
6442  return _internal_has_add_clique_cuts();
6443 }
6445  add_clique_cuts_ = true;
6446  _has_bits_[4] &= ~0x00200000u;
6447 }
6448 inline bool SatParameters::_internal_add_clique_cuts() const {
6449  return add_clique_cuts_;
6450 }
6451 inline bool SatParameters::add_clique_cuts() const {
6452  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_clique_cuts)
6453  return _internal_add_clique_cuts();
6454 }
6455 inline void SatParameters::_internal_set_add_clique_cuts(bool value) {
6456  _has_bits_[4] |= 0x00200000u;
6457  add_clique_cuts_ = value;
6458 }
6460  _internal_set_add_clique_cuts(value);
6461  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_clique_cuts)
6462 }
6463 
6464 // optional int32 max_all_diff_cut_size = 148 [default = 7];
6465 inline bool SatParameters::_internal_has_max_all_diff_cut_size() const {
6466  bool value = (_has_bits_[4] & 0x10000000u) != 0;
6467  return value;
6468 }
6470  return _internal_has_max_all_diff_cut_size();
6471 }
6473  max_all_diff_cut_size_ = 7;
6474  _has_bits_[4] &= ~0x10000000u;
6475 }
6476 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_all_diff_cut_size() const {
6477  return max_all_diff_cut_size_;
6478 }
6479 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_all_diff_cut_size() const {
6480  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_all_diff_cut_size)
6481  return _internal_max_all_diff_cut_size();
6482 }
6483 inline void SatParameters::_internal_set_max_all_diff_cut_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6484  _has_bits_[4] |= 0x10000000u;
6485  max_all_diff_cut_size_ = value;
6486 }
6487 inline void SatParameters::set_max_all_diff_cut_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6488  _internal_set_max_all_diff_cut_size(value);
6489  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_all_diff_cut_size)
6490 }
6491 
6492 // optional bool add_lin_max_cuts = 152 [default = true];
6493 inline bool SatParameters::_internal_has_add_lin_max_cuts() const {
6494  bool value = (_has_bits_[3] & 0x40000000u) != 0;
6495  return value;
6496 }
6498  return _internal_has_add_lin_max_cuts();
6499 }
6501  add_lin_max_cuts_ = true;
6502  _has_bits_[3] &= ~0x40000000u;
6503 }
6504 inline bool SatParameters::_internal_add_lin_max_cuts() const {
6505  return add_lin_max_cuts_;
6506 }
6507 inline bool SatParameters::add_lin_max_cuts() const {
6508  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_lin_max_cuts)
6509  return _internal_add_lin_max_cuts();
6510 }
6511 inline void SatParameters::_internal_set_add_lin_max_cuts(bool value) {
6512  _has_bits_[3] |= 0x40000000u;
6513  add_lin_max_cuts_ = value;
6514 }
6516  _internal_set_add_lin_max_cuts(value);
6517  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_lin_max_cuts)
6518 }
6519 
6520 // optional int32 max_integer_rounding_scaling = 119 [default = 600];
6521 inline bool SatParameters::_internal_has_max_integer_rounding_scaling() const {
6522  bool value = (_has_bits_[4] & 0x00000004u) != 0;
6523  return value;
6524 }
6526  return _internal_has_max_integer_rounding_scaling();
6527 }
6529  max_integer_rounding_scaling_ = 600;
6530  _has_bits_[4] &= ~0x00000004u;
6531 }
6532 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_integer_rounding_scaling() const {
6533  return max_integer_rounding_scaling_;
6534 }
6535 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_integer_rounding_scaling() const {
6536  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_integer_rounding_scaling)
6537  return _internal_max_integer_rounding_scaling();
6538 }
6539 inline void SatParameters::_internal_set_max_integer_rounding_scaling(::PROTOBUF_NAMESPACE_ID::int32 value) {
6540  _has_bits_[4] |= 0x00000004u;
6541  max_integer_rounding_scaling_ = value;
6542 }
6543 inline void SatParameters::set_max_integer_rounding_scaling(::PROTOBUF_NAMESPACE_ID::int32 value) {
6544  _internal_set_max_integer_rounding_scaling(value);
6545  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_integer_rounding_scaling)
6546 }
6547 
6548 // optional bool add_lp_constraints_lazily = 112 [default = true];
6549 inline bool SatParameters::_internal_has_add_lp_constraints_lazily() const {
6550  bool value = (_has_bits_[3] & 0x80000000u) != 0;
6551  return value;
6552 }
6554  return _internal_has_add_lp_constraints_lazily();
6555 }
6557  add_lp_constraints_lazily_ = true;
6558  _has_bits_[3] &= ~0x80000000u;
6559 }
6560 inline bool SatParameters::_internal_add_lp_constraints_lazily() const {
6561  return add_lp_constraints_lazily_;
6562 }
6564  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_lp_constraints_lazily)
6565  return _internal_add_lp_constraints_lazily();
6566 }
6567 inline void SatParameters::_internal_set_add_lp_constraints_lazily(bool value) {
6568  _has_bits_[3] |= 0x80000000u;
6569  add_lp_constraints_lazily_ = value;
6570 }
6572  _internal_set_add_lp_constraints_lazily(value);
6573  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_lp_constraints_lazily)
6574 }
6575 
6576 // optional double min_orthogonality_for_lp_constraints = 115 [default = 0.05];
6577 inline bool SatParameters::_internal_has_min_orthogonality_for_lp_constraints() const {
6578  bool value = (_has_bits_[3] & 0x20000000u) != 0;
6579  return value;
6580 }
6582  return _internal_has_min_orthogonality_for_lp_constraints();
6583 }
6585  min_orthogonality_for_lp_constraints_ = 0.05;
6586  _has_bits_[3] &= ~0x20000000u;
6587 }
6588 inline double SatParameters::_internal_min_orthogonality_for_lp_constraints() const {
6589  return min_orthogonality_for_lp_constraints_;
6590 }
6592  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.min_orthogonality_for_lp_constraints)
6593  return _internal_min_orthogonality_for_lp_constraints();
6594 }
6595 inline void SatParameters::_internal_set_min_orthogonality_for_lp_constraints(double value) {
6596  _has_bits_[3] |= 0x20000000u;
6597  min_orthogonality_for_lp_constraints_ = value;
6598 }
6600  _internal_set_min_orthogonality_for_lp_constraints(value);
6601  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.min_orthogonality_for_lp_constraints)
6602 }
6603 
6604 // optional int32 max_cut_rounds_at_level_zero = 154 [default = 1];
6605 inline bool SatParameters::_internal_has_max_cut_rounds_at_level_zero() const {
6606  bool value = (_has_bits_[4] & 0x40000000u) != 0;
6607  return value;
6608 }
6610  return _internal_has_max_cut_rounds_at_level_zero();
6611 }
6613  max_cut_rounds_at_level_zero_ = 1;
6614  _has_bits_[4] &= ~0x40000000u;
6615 }
6616 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_cut_rounds_at_level_zero() const {
6617  return max_cut_rounds_at_level_zero_;
6618 }
6619 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_cut_rounds_at_level_zero() const {
6620  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_cut_rounds_at_level_zero)
6621  return _internal_max_cut_rounds_at_level_zero();
6622 }
6623 inline void SatParameters::_internal_set_max_cut_rounds_at_level_zero(::PROTOBUF_NAMESPACE_ID::int32 value) {
6624  _has_bits_[4] |= 0x40000000u;
6625  max_cut_rounds_at_level_zero_ = value;
6626 }
6627 inline void SatParameters::set_max_cut_rounds_at_level_zero(::PROTOBUF_NAMESPACE_ID::int32 value) {
6628  _internal_set_max_cut_rounds_at_level_zero(value);
6629  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_cut_rounds_at_level_zero)
6630 }
6631 
6632 // optional int32 max_consecutive_inactive_count = 121 [default = 100];
6633 inline bool SatParameters::_internal_has_max_consecutive_inactive_count() const {
6634  bool value = (_has_bits_[4] & 0x00000008u) != 0;
6635  return value;
6636 }
6638  return _internal_has_max_consecutive_inactive_count();
6639 }
6641  max_consecutive_inactive_count_ = 100;
6642  _has_bits_[4] &= ~0x00000008u;
6643 }
6644 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_max_consecutive_inactive_count() const {
6645  return max_consecutive_inactive_count_;
6646 }
6647 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::max_consecutive_inactive_count() const {
6648  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_consecutive_inactive_count)
6649  return _internal_max_consecutive_inactive_count();
6650 }
6651 inline void SatParameters::_internal_set_max_consecutive_inactive_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
6652  _has_bits_[4] |= 0x00000008u;
6653  max_consecutive_inactive_count_ = value;
6654 }
6655 inline void SatParameters::set_max_consecutive_inactive_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
6656  _internal_set_max_consecutive_inactive_count(value);
6657  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_consecutive_inactive_count)
6658 }
6659 
6660 // optional double cut_max_active_count_value = 155 [default = 10000000000];
6661 inline bool SatParameters::_internal_has_cut_max_active_count_value() const {
6662  bool value = (_has_bits_[4] & 0x80000000u) != 0;
6663  return value;
6664 }
6666  return _internal_has_cut_max_active_count_value();
6667 }
6669  cut_max_active_count_value_ = 10000000000;
6670  _has_bits_[4] &= ~0x80000000u;
6671 }
6672 inline double SatParameters::_internal_cut_max_active_count_value() const {
6673  return cut_max_active_count_value_;
6674 }
6676  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_max_active_count_value)
6677  return _internal_cut_max_active_count_value();
6678 }
6679 inline void SatParameters::_internal_set_cut_max_active_count_value(double value) {
6680  _has_bits_[4] |= 0x80000000u;
6681  cut_max_active_count_value_ = value;
6682 }
6684  _internal_set_cut_max_active_count_value(value);
6685  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_max_active_count_value)
6686 }
6687 
6688 // optional double cut_active_count_decay = 156 [default = 0.8];
6689 inline bool SatParameters::_internal_has_cut_active_count_decay() const {
6690  bool value = (_has_bits_[5] & 0x00000001u) != 0;
6691  return value;
6692 }
6694  return _internal_has_cut_active_count_decay();
6695 }
6697  cut_active_count_decay_ = 0.8;
6698  _has_bits_[5] &= ~0x00000001u;
6699 }
6700 inline double SatParameters::_internal_cut_active_count_decay() const {
6701  return cut_active_count_decay_;
6702 }
6704  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_active_count_decay)
6705  return _internal_cut_active_count_decay();
6706 }
6707 inline void SatParameters::_internal_set_cut_active_count_decay(double value) {
6708  _has_bits_[5] |= 0x00000001u;
6709  cut_active_count_decay_ = value;
6710 }
6712  _internal_set_cut_active_count_decay(value);
6713  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_active_count_decay)
6714 }
6715 
6716 // optional int32 cut_cleanup_target = 157 [default = 1000];
6717 inline bool SatParameters::_internal_has_cut_cleanup_target() const {
6718  bool value = (_has_bits_[5] & 0x00000002u) != 0;
6719  return value;
6720 }
6722  return _internal_has_cut_cleanup_target();
6723 }
6725  cut_cleanup_target_ = 1000;
6726  _has_bits_[5] &= ~0x00000002u;
6727 }
6728 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_cut_cleanup_target() const {
6729  return cut_cleanup_target_;
6730 }
6731 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::cut_cleanup_target() const {
6732  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_cleanup_target)
6733  return _internal_cut_cleanup_target();
6734 }
6735 inline void SatParameters::_internal_set_cut_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
6736  _has_bits_[5] |= 0x00000002u;
6737  cut_cleanup_target_ = value;
6738 }
6739 inline void SatParameters::set_cut_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
6740  _internal_set_cut_cleanup_target(value);
6741  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_cleanup_target)
6742 }
6743 
6744 // optional int32 new_constraints_batch_size = 122 [default = 50];
6745 inline bool SatParameters::_internal_has_new_constraints_batch_size() const {
6746  bool value = (_has_bits_[4] & 0x00000010u) != 0;
6747  return value;
6748 }
6750  return _internal_has_new_constraints_batch_size();
6751 }
6753  new_constraints_batch_size_ = 50;
6754  _has_bits_[4] &= ~0x00000010u;
6755 }
6756 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_new_constraints_batch_size() const {
6757  return new_constraints_batch_size_;
6758 }
6759 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::new_constraints_batch_size() const {
6760  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.new_constraints_batch_size)
6761  return _internal_new_constraints_batch_size();
6762 }
6763 inline void SatParameters::_internal_set_new_constraints_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6764  _has_bits_[4] |= 0x00000010u;
6765  new_constraints_batch_size_ = value;
6766 }
6767 inline void SatParameters::set_new_constraints_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6768  _internal_set_new_constraints_batch_size(value);
6769  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.new_constraints_batch_size)
6770 }
6771 
6772 // optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];
6773 inline bool SatParameters::_internal_has_search_branching() const {
6774  bool value = (_has_bits_[0] & 0x00002000u) != 0;
6775  return value;
6776 }
6778  return _internal_has_search_branching();
6779 }
6781  search_branching_ = 0;
6782  _has_bits_[0] &= ~0x00002000u;
6783 }
6784 inline ::operations_research::sat::SatParameters_SearchBranching SatParameters::_internal_search_branching() const {
6785  return static_cast< ::operations_research::sat::SatParameters_SearchBranching >(search_branching_);
6786 }
6788  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.search_branching)
6789  return _internal_search_branching();
6790 }
6791 inline void SatParameters::_internal_set_search_branching(::operations_research::sat::SatParameters_SearchBranching value) {
6793  _has_bits_[0] |= 0x00002000u;
6794  search_branching_ = value;
6795 }
6797  _internal_set_search_branching(value);
6798  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.search_branching)
6799 }
6800 
6801 // optional int32 hint_conflict_limit = 153 [default = 10];
6802 inline bool SatParameters::_internal_has_hint_conflict_limit() const {
6803  bool value = (_has_bits_[4] & 0x20000000u) != 0;
6804  return value;
6805 }
6807  return _internal_has_hint_conflict_limit();
6808 }
6810  hint_conflict_limit_ = 10;
6811  _has_bits_[4] &= ~0x20000000u;
6812 }
6813 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_hint_conflict_limit() const {
6814  return hint_conflict_limit_;
6815 }
6816 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::hint_conflict_limit() const {
6817  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.hint_conflict_limit)
6818  return _internal_hint_conflict_limit();
6819 }
6820 inline void SatParameters::_internal_set_hint_conflict_limit(::PROTOBUF_NAMESPACE_ID::int32 value) {
6821  _has_bits_[4] |= 0x20000000u;
6822  hint_conflict_limit_ = value;
6823 }
6824 inline void SatParameters::set_hint_conflict_limit(::PROTOBUF_NAMESPACE_ID::int32 value) {
6825  _internal_set_hint_conflict_limit(value);
6826  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.hint_conflict_limit)
6827 }
6828 
6829 // optional bool repair_hint = 167 [default = false];
6830 inline bool SatParameters::_internal_has_repair_hint() const {
6831  bool value = (_has_bits_[1] & 0x08000000u) != 0;
6832  return value;
6833 }
6834 inline bool SatParameters::has_repair_hint() const {
6835  return _internal_has_repair_hint();
6836 }
6838  repair_hint_ = false;
6839  _has_bits_[1] &= ~0x08000000u;
6840 }
6841 inline bool SatParameters::_internal_repair_hint() const {
6842  return repair_hint_;
6843 }
6844 inline bool SatParameters::repair_hint() const {
6845  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.repair_hint)
6846  return _internal_repair_hint();
6847 }
6848 inline void SatParameters::_internal_set_repair_hint(bool value) {
6849  _has_bits_[1] |= 0x08000000u;
6850  repair_hint_ = value;
6851 }
6853  _internal_set_repair_hint(value);
6854  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.repair_hint)
6855 }
6856 
6857 // optional bool fix_variables_to_their_hinted_value = 192 [default = false];
6858 inline bool SatParameters::_internal_has_fix_variables_to_their_hinted_value() const {
6859  bool value = (_has_bits_[1] & 0x10000000u) != 0;
6860  return value;
6861 }
6863  return _internal_has_fix_variables_to_their_hinted_value();
6864 }
6866  fix_variables_to_their_hinted_value_ = false;
6867  _has_bits_[1] &= ~0x10000000u;
6868 }
6869 inline bool SatParameters::_internal_fix_variables_to_their_hinted_value() const {
6870  return fix_variables_to_their_hinted_value_;
6871 }
6873  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fix_variables_to_their_hinted_value)
6874  return _internal_fix_variables_to_their_hinted_value();
6875 }
6876 inline void SatParameters::_internal_set_fix_variables_to_their_hinted_value(bool value) {
6877  _has_bits_[1] |= 0x10000000u;
6878  fix_variables_to_their_hinted_value_ = value;
6879 }
6881  _internal_set_fix_variables_to_their_hinted_value(value);
6882  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fix_variables_to_their_hinted_value)
6883 }
6884 
6885 // optional bool exploit_integer_lp_solution = 94 [default = true];
6886 inline bool SatParameters::_internal_has_exploit_integer_lp_solution() const {
6887  bool value = (_has_bits_[4] & 0x00000001u) != 0;
6888  return value;
6889 }
6891  return _internal_has_exploit_integer_lp_solution();
6892 }
6894  exploit_integer_lp_solution_ = true;
6895  _has_bits_[4] &= ~0x00000001u;
6896 }
6897 inline bool SatParameters::_internal_exploit_integer_lp_solution() const {
6898  return exploit_integer_lp_solution_;
6899 }
6901  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_integer_lp_solution)
6902  return _internal_exploit_integer_lp_solution();
6903 }
6904 inline void SatParameters::_internal_set_exploit_integer_lp_solution(bool value) {
6905  _has_bits_[4] |= 0x00000001u;
6906  exploit_integer_lp_solution_ = value;
6907 }
6909  _internal_set_exploit_integer_lp_solution(value);
6910  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_integer_lp_solution)
6911 }
6912 
6913 // optional bool exploit_all_lp_solution = 116 [default = true];
6914 inline bool SatParameters::_internal_has_exploit_all_lp_solution() const {
6915  bool value = (_has_bits_[4] & 0x00000002u) != 0;
6916  return value;
6917 }
6919  return _internal_has_exploit_all_lp_solution();
6920 }
6922  exploit_all_lp_solution_ = true;
6923  _has_bits_[4] &= ~0x00000002u;
6924 }
6925 inline bool SatParameters::_internal_exploit_all_lp_solution() const {
6926  return exploit_all_lp_solution_;
6927 }
6929  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_all_lp_solution)
6930  return _internal_exploit_all_lp_solution();
6931 }
6932 inline void SatParameters::_internal_set_exploit_all_lp_solution(bool value) {
6933  _has_bits_[4] |= 0x00000002u;
6934  exploit_all_lp_solution_ = value;
6935 }
6937  _internal_set_exploit_all_lp_solution(value);
6938  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_all_lp_solution)
6939 }
6940 
6941 // optional bool exploit_best_solution = 130 [default = false];
6942 inline bool SatParameters::_internal_has_exploit_best_solution() const {
6943  bool value = (_has_bits_[1] & 0x20000000u) != 0;
6944  return value;
6945 }
6947  return _internal_has_exploit_best_solution();
6948 }
6950  exploit_best_solution_ = false;
6951  _has_bits_[1] &= ~0x20000000u;
6952 }
6953 inline bool SatParameters::_internal_exploit_best_solution() const {
6954  return exploit_best_solution_;
6955 }
6957  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_best_solution)
6958  return _internal_exploit_best_solution();
6959 }
6960 inline void SatParameters::_internal_set_exploit_best_solution(bool value) {
6961  _has_bits_[1] |= 0x20000000u;
6962  exploit_best_solution_ = value;
6963 }
6965  _internal_set_exploit_best_solution(value);
6966  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_best_solution)
6967 }
6968 
6969 // optional bool exploit_relaxation_solution = 161 [default = false];
6970 inline bool SatParameters::_internal_has_exploit_relaxation_solution() const {
6971  bool value = (_has_bits_[1] & 0x40000000u) != 0;
6972  return value;
6973 }
6975  return _internal_has_exploit_relaxation_solution();
6976 }
6978  exploit_relaxation_solution_ = false;
6979  _has_bits_[1] &= ~0x40000000u;
6980 }
6981 inline bool SatParameters::_internal_exploit_relaxation_solution() const {
6982  return exploit_relaxation_solution_;
6983 }
6985  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_relaxation_solution)
6986  return _internal_exploit_relaxation_solution();
6987 }
6988 inline void SatParameters::_internal_set_exploit_relaxation_solution(bool value) {
6989  _has_bits_[1] |= 0x40000000u;
6990  exploit_relaxation_solution_ = value;
6991 }
6993  _internal_set_exploit_relaxation_solution(value);
6994  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_relaxation_solution)
6995 }
6996 
6997 // optional bool exploit_objective = 131 [default = true];
6998 inline bool SatParameters::_internal_has_exploit_objective() const {
6999  bool value = (_has_bits_[3] & 0x00200000u) != 0;
7000  return value;
7001 }
7003  return _internal_has_exploit_objective();
7004 }
7006  exploit_objective_ = true;
7007  _has_bits_[3] &= ~0x00200000u;
7008 }
7009 inline bool SatParameters::_internal_exploit_objective() const {
7010  return exploit_objective_;
7011 }
7013  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_objective)
7014  return _internal_exploit_objective();
7015 }
7016 inline void SatParameters::_internal_set_exploit_objective(bool value) {
7017  _has_bits_[3] |= 0x00200000u;
7018  exploit_objective_ = value;
7019 }
7021  _internal_set_exploit_objective(value);
7022  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_objective)
7023 }
7024 
7025 // optional int64 probing_period_at_root = 142 [default = 0];
7026 inline bool SatParameters::_internal_has_probing_period_at_root() const {
7027  bool value = (_has_bits_[1] & 0x00010000u) != 0;
7028  return value;
7029 }
7031  return _internal_has_probing_period_at_root();
7032 }
7034  probing_period_at_root_ = int64_t{0};
7035  _has_bits_[1] &= ~0x00010000u;
7036 }
7037 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::_internal_probing_period_at_root() const {
7038  return probing_period_at_root_;
7039 }
7040 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::probing_period_at_root() const {
7041  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.probing_period_at_root)
7042  return _internal_probing_period_at_root();
7043 }
7044 inline void SatParameters::_internal_set_probing_period_at_root(::PROTOBUF_NAMESPACE_ID::int64 value) {
7045  _has_bits_[1] |= 0x00010000u;
7046  probing_period_at_root_ = value;
7047 }
7048 inline void SatParameters::set_probing_period_at_root(::PROTOBUF_NAMESPACE_ID::int64 value) {
7049  _internal_set_probing_period_at_root(value);
7050  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.probing_period_at_root)
7051 }
7052 
7053 // optional bool use_probing_search = 176 [default = false];
7054 inline bool SatParameters::_internal_has_use_probing_search() const {
7055  bool value = (_has_bits_[1] & 0x00000100u) != 0;
7056  return value;
7057 }
7059  return _internal_has_use_probing_search();
7060 }
7062  use_probing_search_ = false;
7063  _has_bits_[1] &= ~0x00000100u;
7064 }
7065 inline bool SatParameters::_internal_use_probing_search() const {
7066  return use_probing_search_;
7067 }
7069  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_probing_search)
7070  return _internal_use_probing_search();
7071 }
7072 inline void SatParameters::_internal_set_use_probing_search(bool value) {
7073  _has_bits_[1] |= 0x00000100u;
7074  use_probing_search_ = value;
7075 }
7077  _internal_set_use_probing_search(value);
7078  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_probing_search)
7079 }
7080 
7081 // optional int64 pseudo_cost_reliability_threshold = 123 [default = 100];
7082 inline bool SatParameters::_internal_has_pseudo_cost_reliability_threshold() const {
7083  bool value = (_has_bits_[4] & 0x00000020u) != 0;
7084  return value;
7085 }
7087  return _internal_has_pseudo_cost_reliability_threshold();
7088 }
7090  pseudo_cost_reliability_threshold_ = int64_t{100};
7091  _has_bits_[4] &= ~0x00000020u;
7092 }
7093 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::_internal_pseudo_cost_reliability_threshold() const {
7094  return pseudo_cost_reliability_threshold_;
7095 }
7096 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::pseudo_cost_reliability_threshold() const {
7097  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.pseudo_cost_reliability_threshold)
7098  return _internal_pseudo_cost_reliability_threshold();
7099 }
7100 inline void SatParameters::_internal_set_pseudo_cost_reliability_threshold(::PROTOBUF_NAMESPACE_ID::int64 value) {
7101  _has_bits_[4] |= 0x00000020u;
7102  pseudo_cost_reliability_threshold_ = value;
7103 }
7104 inline void SatParameters::set_pseudo_cost_reliability_threshold(::PROTOBUF_NAMESPACE_ID::int64 value) {
7105  _internal_set_pseudo_cost_reliability_threshold(value);
7106  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.pseudo_cost_reliability_threshold)
7107 }
7108 
7109 // optional bool optimize_with_core = 83 [default = false];
7110 inline bool SatParameters::_internal_has_optimize_with_core() const {
7111  bool value = (_has_bits_[1] & 0x00000200u) != 0;
7112  return value;
7113 }
7115  return _internal_has_optimize_with_core();
7116 }
7118  optimize_with_core_ = false;
7119  _has_bits_[1] &= ~0x00000200u;
7120 }
7121 inline bool SatParameters::_internal_optimize_with_core() const {
7122  return optimize_with_core_;
7123 }
7125  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.optimize_with_core)
7126  return _internal_optimize_with_core();
7127 }
7128 inline void SatParameters::_internal_set_optimize_with_core(bool value) {
7129  _has_bits_[1] |= 0x00000200u;
7130  optimize_with_core_ = value;
7131 }
7133  _internal_set_optimize_with_core(value);
7134  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.optimize_with_core)
7135 }
7136 
7137 // optional bool optimize_with_lb_tree_search = 188 [default = false];
7138 inline bool SatParameters::_internal_has_optimize_with_lb_tree_search() const {
7139  bool value = (_has_bits_[1] & 0x00000400u) != 0;
7140  return value;
7141 }
7143  return _internal_has_optimize_with_lb_tree_search();
7144 }
7146  optimize_with_lb_tree_search_ = false;
7147  _has_bits_[1] &= ~0x00000400u;
7148 }
7149 inline bool SatParameters::_internal_optimize_with_lb_tree_search() const {
7150  return optimize_with_lb_tree_search_;
7151 }
7153  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.optimize_with_lb_tree_search)
7154  return _internal_optimize_with_lb_tree_search();
7155 }
7156 inline void SatParameters::_internal_set_optimize_with_lb_tree_search(bool value) {
7157  _has_bits_[1] |= 0x00000400u;
7158  optimize_with_lb_tree_search_ = value;
7159 }
7161  _internal_set_optimize_with_lb_tree_search(value);
7162  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.optimize_with_lb_tree_search)
7163 }
7164 
7165 // optional int32 binary_search_num_conflicts = 99 [default = -1];
7166 inline bool SatParameters::_internal_has_binary_search_num_conflicts() const {
7167  bool value = (_has_bits_[3] & 0x00004000u) != 0;
7168  return value;
7169 }
7171  return _internal_has_binary_search_num_conflicts();
7172 }
7174  binary_search_num_conflicts_ = -1;
7175  _has_bits_[3] &= ~0x00004000u;
7176 }
7177 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_binary_search_num_conflicts() const {
7178  return binary_search_num_conflicts_;
7179 }
7180 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::binary_search_num_conflicts() const {
7181  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.binary_search_num_conflicts)
7182  return _internal_binary_search_num_conflicts();
7183 }
7184 inline void SatParameters::_internal_set_binary_search_num_conflicts(::PROTOBUF_NAMESPACE_ID::int32 value) {
7185  _has_bits_[3] |= 0x00004000u;
7186  binary_search_num_conflicts_ = value;
7187 }
7188 inline void SatParameters::set_binary_search_num_conflicts(::PROTOBUF_NAMESPACE_ID::int32 value) {
7189  _internal_set_binary_search_num_conflicts(value);
7190  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.binary_search_num_conflicts)
7191 }
7192 
7193 // optional bool optimize_with_max_hs = 85 [default = false];
7194 inline bool SatParameters::_internal_has_optimize_with_max_hs() const {
7195  bool value = (_has_bits_[1] & 0x00000800u) != 0;
7196  return value;
7197 }
7199  return _internal_has_optimize_with_max_hs();
7200 }
7202  optimize_with_max_hs_ = false;
7203  _has_bits_[1] &= ~0x00000800u;
7204 }
7205 inline bool SatParameters::_internal_optimize_with_max_hs() const {
7206  return optimize_with_max_hs_;
7207 }
7209  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.optimize_with_max_hs)
7210  return _internal_optimize_with_max_hs();
7211 }
7212 inline void SatParameters::_internal_set_optimize_with_max_hs(bool value) {
7213  _has_bits_[1] |= 0x00000800u;
7214  optimize_with_max_hs_ = value;
7215 }
7217  _internal_set_optimize_with_max_hs(value);
7218  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.optimize_with_max_hs)
7219 }
7220 
7221 // optional bool enumerate_all_solutions = 87 [default = false];
7222 inline bool SatParameters::_internal_has_enumerate_all_solutions() const {
7223  bool value = (_has_bits_[0] & 0x10000000u) != 0;
7224  return value;
7225 }
7227  return _internal_has_enumerate_all_solutions();
7228 }
7230  enumerate_all_solutions_ = false;
7231  _has_bits_[0] &= ~0x10000000u;
7232 }
7233 inline bool SatParameters::_internal_enumerate_all_solutions() const {
7234  return enumerate_all_solutions_;
7235 }
7237  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.enumerate_all_solutions)
7238  return _internal_enumerate_all_solutions();
7239 }
7240 inline void SatParameters::_internal_set_enumerate_all_solutions(bool value) {
7241  _has_bits_[0] |= 0x10000000u;
7242  enumerate_all_solutions_ = value;
7243 }
7245  _internal_set_enumerate_all_solutions(value);
7246  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.enumerate_all_solutions)
7247 }
7248 
7249 // optional bool keep_all_feasible_solutions_in_presolve = 173 [default = false];
7250 inline bool SatParameters::_internal_has_keep_all_feasible_solutions_in_presolve() const {
7251  bool value = (_has_bits_[0] & 0x20000000u) != 0;
7252  return value;
7253 }
7255  return _internal_has_keep_all_feasible_solutions_in_presolve();
7256 }
7258  keep_all_feasible_solutions_in_presolve_ = false;
7259  _has_bits_[0] &= ~0x20000000u;
7260 }
7261 inline bool SatParameters::_internal_keep_all_feasible_solutions_in_presolve() const {
7262  return keep_all_feasible_solutions_in_presolve_;
7263 }
7265  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.keep_all_feasible_solutions_in_presolve)
7266  return _internal_keep_all_feasible_solutions_in_presolve();
7267 }
7268 inline void SatParameters::_internal_set_keep_all_feasible_solutions_in_presolve(bool value) {
7269  _has_bits_[0] |= 0x20000000u;
7270  keep_all_feasible_solutions_in_presolve_ = value;
7271 }
7273  _internal_set_keep_all_feasible_solutions_in_presolve(value);
7274  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.keep_all_feasible_solutions_in_presolve)
7275 }
7276 
7277 // optional bool fill_tightened_domains_in_response = 132 [default = false];
7278 inline bool SatParameters::_internal_has_fill_tightened_domains_in_response() const {
7279  bool value = (_has_bits_[0] & 0x40000000u) != 0;
7280  return value;
7281 }
7283  return _internal_has_fill_tightened_domains_in_response();
7284 }
7286  fill_tightened_domains_in_response_ = false;
7287  _has_bits_[0] &= ~0x40000000u;
7288 }
7289 inline bool SatParameters::_internal_fill_tightened_domains_in_response() const {
7290  return fill_tightened_domains_in_response_;
7291 }
7293  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fill_tightened_domains_in_response)
7294  return _internal_fill_tightened_domains_in_response();
7295 }
7296 inline void SatParameters::_internal_set_fill_tightened_domains_in_response(bool value) {
7297  _has_bits_[0] |= 0x40000000u;
7298  fill_tightened_domains_in_response_ = value;
7299 }
7301  _internal_set_fill_tightened_domains_in_response(value);
7302  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fill_tightened_domains_in_response)
7303 }
7304 
7305 // optional bool instantiate_all_variables = 106 [default = true];
7306 inline bool SatParameters::_internal_has_instantiate_all_variables() const {
7307  bool value = (_has_bits_[3] & 0x00400000u) != 0;
7308  return value;
7309 }
7311  return _internal_has_instantiate_all_variables();
7312 }
7314  instantiate_all_variables_ = true;
7315  _has_bits_[3] &= ~0x00400000u;
7316 }
7317 inline bool SatParameters::_internal_instantiate_all_variables() const {
7318  return instantiate_all_variables_;
7319 }
7321  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.instantiate_all_variables)
7322  return _internal_instantiate_all_variables();
7323 }
7324 inline void SatParameters::_internal_set_instantiate_all_variables(bool value) {
7325  _has_bits_[3] |= 0x00400000u;
7326  instantiate_all_variables_ = value;
7327 }
7329  _internal_set_instantiate_all_variables(value);
7330  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.instantiate_all_variables)
7331 }
7332 
7333 // optional bool auto_detect_greater_than_at_least_one_of = 95 [default = true];
7334 inline bool SatParameters::_internal_has_auto_detect_greater_than_at_least_one_of() const {
7335  bool value = (_has_bits_[3] & 0x00800000u) != 0;
7336  return value;
7337 }
7339  return _internal_has_auto_detect_greater_than_at_least_one_of();
7340 }
7342  auto_detect_greater_than_at_least_one_of_ = true;
7343  _has_bits_[3] &= ~0x00800000u;
7344 }
7345 inline bool SatParameters::_internal_auto_detect_greater_than_at_least_one_of() const {
7346  return auto_detect_greater_than_at_least_one_of_;
7347 }
7349  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.auto_detect_greater_than_at_least_one_of)
7350  return _internal_auto_detect_greater_than_at_least_one_of();
7351 }
7352 inline void SatParameters::_internal_set_auto_detect_greater_than_at_least_one_of(bool value) {
7353  _has_bits_[3] |= 0x00800000u;
7354  auto_detect_greater_than_at_least_one_of_ = value;
7355 }
7357  _internal_set_auto_detect_greater_than_at_least_one_of(value);
7358  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.auto_detect_greater_than_at_least_one_of)
7359 }
7360 
7361 // optional bool stop_after_first_solution = 98 [default = false];
7362 inline bool SatParameters::_internal_has_stop_after_first_solution() const {
7363  bool value = (_has_bits_[0] & 0x80000000u) != 0;
7364  return value;
7365 }
7367  return _internal_has_stop_after_first_solution();
7368 }
7370  stop_after_first_solution_ = false;
7371  _has_bits_[0] &= ~0x80000000u;
7372 }
7373 inline bool SatParameters::_internal_stop_after_first_solution() const {
7374  return stop_after_first_solution_;
7375 }
7377  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.stop_after_first_solution)
7378  return _internal_stop_after_first_solution();
7379 }
7380 inline void SatParameters::_internal_set_stop_after_first_solution(bool value) {
7381  _has_bits_[0] |= 0x80000000u;
7382  stop_after_first_solution_ = value;
7383 }
7385  _internal_set_stop_after_first_solution(value);
7386  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.stop_after_first_solution)
7387 }
7388 
7389 // optional bool stop_after_presolve = 149 [default = false];
7390 inline bool SatParameters::_internal_has_stop_after_presolve() const {
7391  bool value = (_has_bits_[1] & 0x00000010u) != 0;
7392  return value;
7393 }
7395  return _internal_has_stop_after_presolve();
7396 }
7398  stop_after_presolve_ = false;
7399  _has_bits_[1] &= ~0x00000010u;
7400 }
7401 inline bool SatParameters::_internal_stop_after_presolve() const {
7402  return stop_after_presolve_;
7403 }
7405  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.stop_after_presolve)
7406  return _internal_stop_after_presolve();
7407 }
7408 inline void SatParameters::_internal_set_stop_after_presolve(bool value) {
7409  _has_bits_[1] |= 0x00000010u;
7410  stop_after_presolve_ = value;
7411 }
7413  _internal_set_stop_after_presolve(value);
7414  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.stop_after_presolve)
7415 }
7416 
7417 // optional int32 num_search_workers = 100 [default = 0];
7418 inline bool SatParameters::_internal_has_num_search_workers() const {
7419  bool value = (_has_bits_[0] & 0x00400000u) != 0;
7420  return value;
7421 }
7423  return _internal_has_num_search_workers();
7424 }
7426  num_search_workers_ = 0;
7427  _has_bits_[0] &= ~0x00400000u;
7428 }
7429 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_num_search_workers() const {
7430  return num_search_workers_;
7431 }
7432 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::num_search_workers() const {
7433  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_search_workers)
7434  return _internal_num_search_workers();
7435 }
7436 inline void SatParameters::_internal_set_num_search_workers(::PROTOBUF_NAMESPACE_ID::int32 value) {
7437  _has_bits_[0] |= 0x00400000u;
7438  num_search_workers_ = value;
7439 }
7440 inline void SatParameters::set_num_search_workers(::PROTOBUF_NAMESPACE_ID::int32 value) {
7441  _internal_set_num_search_workers(value);
7442  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_search_workers)
7443 }
7444 
7445 // optional bool interleave_search = 136 [default = false];
7446 inline bool SatParameters::_internal_has_interleave_search() const {
7447  bool value = (_has_bits_[1] & 0x00000020u) != 0;
7448  return value;
7449 }
7451  return _internal_has_interleave_search();
7452 }
7454  interleave_search_ = false;
7455  _has_bits_[1] &= ~0x00000020u;
7456 }
7457 inline bool SatParameters::_internal_interleave_search() const {
7458  return interleave_search_;
7459 }
7461  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.interleave_search)
7462  return _internal_interleave_search();
7463 }
7464 inline void SatParameters::_internal_set_interleave_search(bool value) {
7465  _has_bits_[1] |= 0x00000020u;
7466  interleave_search_ = value;
7467 }
7469  _internal_set_interleave_search(value);
7470  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.interleave_search)
7471 }
7472 
7473 // optional int32 interleave_batch_size = 134 [default = 1];
7474 inline bool SatParameters::_internal_has_interleave_batch_size() const {
7475  bool value = (_has_bits_[4] & 0x00008000u) != 0;
7476  return value;
7477 }
7479  return _internal_has_interleave_batch_size();
7480 }
7482  interleave_batch_size_ = 1;
7483  _has_bits_[4] &= ~0x00008000u;
7484 }
7485 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_interleave_batch_size() const {
7486  return interleave_batch_size_;
7487 }
7488 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::interleave_batch_size() const {
7489  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.interleave_batch_size)
7490  return _internal_interleave_batch_size();
7491 }
7492 inline void SatParameters::_internal_set_interleave_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
7493  _has_bits_[4] |= 0x00008000u;
7494  interleave_batch_size_ = value;
7495 }
7496 inline void SatParameters::set_interleave_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
7497  _internal_set_interleave_batch_size(value);
7498  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.interleave_batch_size)
7499 }
7500 
7501 // optional bool reduce_memory_usage_in_interleave_mode = 141 [default = false];
7502 inline bool SatParameters::_internal_has_reduce_memory_usage_in_interleave_mode() const {
7503  bool value = (_has_bits_[1] & 0x00000040u) != 0;
7504  return value;
7505 }
7507  return _internal_has_reduce_memory_usage_in_interleave_mode();
7508 }
7510  reduce_memory_usage_in_interleave_mode_ = false;
7511  _has_bits_[1] &= ~0x00000040u;
7512 }
7513 inline bool SatParameters::_internal_reduce_memory_usage_in_interleave_mode() const {
7514  return reduce_memory_usage_in_interleave_mode_;
7515 }
7517  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.reduce_memory_usage_in_interleave_mode)
7518  return _internal_reduce_memory_usage_in_interleave_mode();
7519 }
7520 inline void SatParameters::_internal_set_reduce_memory_usage_in_interleave_mode(bool value) {
7521  _has_bits_[1] |= 0x00000040u;
7522  reduce_memory_usage_in_interleave_mode_ = value;
7523 }
7525  _internal_set_reduce_memory_usage_in_interleave_mode(value);
7526  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.reduce_memory_usage_in_interleave_mode)
7527 }
7528 
7529 // optional bool share_objective_bounds = 113 [default = true];
7530 inline bool SatParameters::_internal_has_share_objective_bounds() const {
7531  bool value = (_has_bits_[3] & 0x01000000u) != 0;
7532  return value;
7533 }
7535  return _internal_has_share_objective_bounds();
7536 }
7538  share_objective_bounds_ = true;
7539  _has_bits_[3] &= ~0x01000000u;
7540 }
7541 inline bool SatParameters::_internal_share_objective_bounds() const {
7542  return share_objective_bounds_;
7543 }
7545  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_objective_bounds)
7546  return _internal_share_objective_bounds();
7547 }
7548 inline void SatParameters::_internal_set_share_objective_bounds(bool value) {
7549  _has_bits_[3] |= 0x01000000u;
7550  share_objective_bounds_ = value;
7551 }
7553  _internal_set_share_objective_bounds(value);
7554  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_objective_bounds)
7555 }
7556 
7557 // optional bool share_level_zero_bounds = 114 [default = true];
7558 inline bool SatParameters::_internal_has_share_level_zero_bounds() const {
7559  bool value = (_has_bits_[4] & 0x01000000u) != 0;
7560  return value;
7561 }
7563  return _internal_has_share_level_zero_bounds();
7564 }
7566  share_level_zero_bounds_ = true;
7567  _has_bits_[4] &= ~0x01000000u;
7568 }
7569 inline bool SatParameters::_internal_share_level_zero_bounds() const {
7570  return share_level_zero_bounds_;
7571 }
7573  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_level_zero_bounds)
7574  return _internal_share_level_zero_bounds();
7575 }
7576 inline void SatParameters::_internal_set_share_level_zero_bounds(bool value) {
7577  _has_bits_[4] |= 0x01000000u;
7578  share_level_zero_bounds_ = value;
7579 }
7581  _internal_set_share_level_zero_bounds(value);
7582  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_level_zero_bounds)
7583 }
7584 
7585 // optional bool use_lns_only = 101 [default = false];
7586 inline bool SatParameters::_internal_has_use_lns_only() const {
7587  bool value = (_has_bits_[1] & 0x00000080u) != 0;
7588  return value;
7589 }
7590 inline bool SatParameters::has_use_lns_only() const {
7591  return _internal_has_use_lns_only();
7592 }
7594  use_lns_only_ = false;
7595  _has_bits_[1] &= ~0x00000080u;
7596 }
7597 inline bool SatParameters::_internal_use_lns_only() const {
7598  return use_lns_only_;
7599 }
7600 inline bool SatParameters::use_lns_only() const {
7601  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_lns_only)
7602  return _internal_use_lns_only();
7603 }
7604 inline void SatParameters::_internal_set_use_lns_only(bool value) {
7605  _has_bits_[1] |= 0x00000080u;
7606  use_lns_only_ = value;
7607 }
7609  _internal_set_use_lns_only(value);
7610  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_lns_only)
7611 }
7612 
7613 // optional bool lns_focus_on_decision_variables = 105 [default = false];
7614 inline bool SatParameters::_internal_has_lns_focus_on_decision_variables() const {
7615  bool value = (_has_bits_[1] & 0x00000001u) != 0;
7616  return value;
7617 }
7619  return _internal_has_lns_focus_on_decision_variables();
7620 }
7622  lns_focus_on_decision_variables_ = false;
7623  _has_bits_[1] &= ~0x00000001u;
7624 }
7625 inline bool SatParameters::_internal_lns_focus_on_decision_variables() const {
7626  return lns_focus_on_decision_variables_;
7627 }
7629  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lns_focus_on_decision_variables)
7630  return _internal_lns_focus_on_decision_variables();
7631 }
7632 inline void SatParameters::_internal_set_lns_focus_on_decision_variables(bool value) {
7633  _has_bits_[1] |= 0x00000001u;
7634  lns_focus_on_decision_variables_ = value;
7635 }
7637  _internal_set_lns_focus_on_decision_variables(value);
7638  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lns_focus_on_decision_variables)
7639 }
7640 
7641 // optional bool lns_expand_intervals_in_constraint_graph = 184 [default = true];
7642 inline bool SatParameters::_internal_has_lns_expand_intervals_in_constraint_graph() const {
7643  bool value = (_has_bits_[4] & 0x02000000u) != 0;
7644  return value;
7645 }
7647  return _internal_has_lns_expand_intervals_in_constraint_graph();
7648 }
7650  lns_expand_intervals_in_constraint_graph_ = true;
7651  _has_bits_[4] &= ~0x02000000u;
7652 }
7653 inline bool SatParameters::_internal_lns_expand_intervals_in_constraint_graph() const {
7654  return lns_expand_intervals_in_constraint_graph_;
7655 }
7657  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lns_expand_intervals_in_constraint_graph)
7658  return _internal_lns_expand_intervals_in_constraint_graph();
7659 }
7660 inline void SatParameters::_internal_set_lns_expand_intervals_in_constraint_graph(bool value) {
7661  _has_bits_[4] |= 0x02000000u;
7662  lns_expand_intervals_in_constraint_graph_ = value;
7663 }
7665  _internal_set_lns_expand_intervals_in_constraint_graph(value);
7666  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lns_expand_intervals_in_constraint_graph)
7667 }
7668 
7669 // optional int32 solution_pool_size = 193 [default = 3];
7670 inline bool SatParameters::_internal_has_solution_pool_size() const {
7671  bool value = (_has_bits_[1] & 0x80000000u) != 0;
7672  return value;
7673 }
7675  return _internal_has_solution_pool_size();
7676 }
7678  solution_pool_size_ = 3;
7679  _has_bits_[1] &= ~0x80000000u;
7680 }
7681 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_solution_pool_size() const {
7682  return solution_pool_size_;
7683 }
7684 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::solution_pool_size() const {
7685  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.solution_pool_size)
7686  return _internal_solution_pool_size();
7687 }
7688 inline void SatParameters::_internal_set_solution_pool_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
7689  _has_bits_[1] |= 0x80000000u;
7690  solution_pool_size_ = value;
7691 }
7692 inline void SatParameters::set_solution_pool_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
7693  _internal_set_solution_pool_size(value);
7694  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.solution_pool_size)
7695 }
7696 
7697 // optional bool use_rins_lns = 129 [default = true];
7698 inline bool SatParameters::_internal_has_use_rins_lns() const {
7699  bool value = (_has_bits_[4] & 0x04000000u) != 0;
7700  return value;
7701 }
7702 inline bool SatParameters::has_use_rins_lns() const {
7703  return _internal_has_use_rins_lns();
7704 }
7706  use_rins_lns_ = true;
7707  _has_bits_[4] &= ~0x04000000u;
7708 }
7709 inline bool SatParameters::_internal_use_rins_lns() const {
7710  return use_rins_lns_;
7711 }
7712 inline bool SatParameters::use_rins_lns() const {
7713  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_rins_lns)
7714  return _internal_use_rins_lns();
7715 }
7716 inline void SatParameters::_internal_set_use_rins_lns(bool value) {
7717  _has_bits_[4] |= 0x04000000u;
7718  use_rins_lns_ = value;
7719 }
7721  _internal_set_use_rins_lns(value);
7722  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_rins_lns)
7723 }
7724 
7725 // optional bool use_feasibility_pump = 164 [default = true];
7726 inline bool SatParameters::_internal_has_use_feasibility_pump() const {
7727  bool value = (_has_bits_[4] & 0x08000000u) != 0;
7728  return value;
7729 }
7731  return _internal_has_use_feasibility_pump();
7732 }
7734  use_feasibility_pump_ = true;
7735  _has_bits_[4] &= ~0x08000000u;
7736 }
7737 inline bool SatParameters::_internal_use_feasibility_pump() const {
7738  return use_feasibility_pump_;
7739 }
7741  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_feasibility_pump)
7742  return _internal_use_feasibility_pump();
7743 }
7744 inline void SatParameters::_internal_set_use_feasibility_pump(bool value) {
7745  _has_bits_[4] |= 0x08000000u;
7746  use_feasibility_pump_ = value;
7747 }
7749  _internal_set_use_feasibility_pump(value);
7750  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_feasibility_pump)
7751 }
7752 
7753 // optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];
7754 inline bool SatParameters::_internal_has_fp_rounding() const {
7755  bool value = (_has_bits_[5] & 0x00000004u) != 0;
7756  return value;
7757 }
7758 inline bool SatParameters::has_fp_rounding() const {
7759  return _internal_has_fp_rounding();
7760 }
7762  fp_rounding_ = 2;
7763  _has_bits_[5] &= ~0x00000004u;
7764 }
7765 inline ::operations_research::sat::SatParameters_FPRoundingMethod SatParameters::_internal_fp_rounding() const {
7766  return static_cast< ::operations_research::sat::SatParameters_FPRoundingMethod >(fp_rounding_);
7767 }
7769  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fp_rounding)
7770  return _internal_fp_rounding();
7771 }
7772 inline void SatParameters::_internal_set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value) {
7774  _has_bits_[5] |= 0x00000004u;
7775  fp_rounding_ = value;
7776 }
7778  _internal_set_fp_rounding(value);
7779  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fp_rounding)
7780 }
7781 
7782 // optional bool use_relaxation_lns = 150 [default = false];
7783 inline bool SatParameters::_internal_has_use_relaxation_lns() const {
7784  bool value = (_has_bits_[1] & 0x00000002u) != 0;
7785  return value;
7786 }
7788  return _internal_has_use_relaxation_lns();
7789 }
7791  use_relaxation_lns_ = false;
7792  _has_bits_[1] &= ~0x00000002u;
7793 }
7794 inline bool SatParameters::_internal_use_relaxation_lns() const {
7795  return use_relaxation_lns_;
7796 }
7798  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_relaxation_lns)
7799  return _internal_use_relaxation_lns();
7800 }
7801 inline void SatParameters::_internal_set_use_relaxation_lns(bool value) {
7802  _has_bits_[1] |= 0x00000002u;
7803  use_relaxation_lns_ = value;
7804 }
7806  _internal_set_use_relaxation_lns(value);
7807  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_relaxation_lns)
7808 }
7809 
7810 // optional bool diversify_lns_params = 137 [default = false];
7811 inline bool SatParameters::_internal_has_diversify_lns_params() const {
7812  bool value = (_has_bits_[1] & 0x00000004u) != 0;
7813  return value;
7814 }
7816  return _internal_has_diversify_lns_params();
7817 }
7819  diversify_lns_params_ = false;
7820  _has_bits_[1] &= ~0x00000004u;
7821 }
7822 inline bool SatParameters::_internal_diversify_lns_params() const {
7823  return diversify_lns_params_;
7824 }
7826  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.diversify_lns_params)
7827  return _internal_diversify_lns_params();
7828 }
7829 inline void SatParameters::_internal_set_diversify_lns_params(bool value) {
7830  _has_bits_[1] |= 0x00000004u;
7831  diversify_lns_params_ = value;
7832 }
7834  _internal_set_diversify_lns_params(value);
7835  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.diversify_lns_params)
7836 }
7837 
7838 // optional bool randomize_search = 103 [default = false];
7839 inline bool SatParameters::_internal_has_randomize_search() const {
7840  bool value = (_has_bits_[1] & 0x00000008u) != 0;
7841  return value;
7842 }
7844  return _internal_has_randomize_search();
7845 }
7847  randomize_search_ = false;
7848  _has_bits_[1] &= ~0x00000008u;
7849 }
7850 inline bool SatParameters::_internal_randomize_search() const {
7851  return randomize_search_;
7852 }
7853 inline bool SatParameters::randomize_search() const {
7854  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.randomize_search)
7855  return _internal_randomize_search();
7856 }
7857 inline void SatParameters::_internal_set_randomize_search(bool value) {
7858  _has_bits_[1] |= 0x00000008u;
7859  randomize_search_ = value;
7860 }
7862  _internal_set_randomize_search(value);
7863  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.randomize_search)
7864 }
7865 
7866 // optional int64 search_randomization_tolerance = 104 [default = 0];
7867 inline bool SatParameters::_internal_has_search_randomization_tolerance() const {
7868  bool value = (_has_bits_[0] & 0x00800000u) != 0;
7869  return value;
7870 }
7872  return _internal_has_search_randomization_tolerance();
7873 }
7875  search_randomization_tolerance_ = int64_t{0};
7876  _has_bits_[0] &= ~0x00800000u;
7877 }
7878 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::_internal_search_randomization_tolerance() const {
7879  return search_randomization_tolerance_;
7880 }
7881 inline ::PROTOBUF_NAMESPACE_ID::int64 SatParameters::search_randomization_tolerance() const {
7882  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.search_randomization_tolerance)
7883  return _internal_search_randomization_tolerance();
7884 }
7885 inline void SatParameters::_internal_set_search_randomization_tolerance(::PROTOBUF_NAMESPACE_ID::int64 value) {
7886  _has_bits_[0] |= 0x00800000u;
7887  search_randomization_tolerance_ = value;
7888 }
7889 inline void SatParameters::set_search_randomization_tolerance(::PROTOBUF_NAMESPACE_ID::int64 value) {
7890  _internal_set_search_randomization_tolerance(value);
7891  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.search_randomization_tolerance)
7892 }
7893 
7894 // optional bool use_optional_variables = 108 [default = true];
7895 inline bool SatParameters::_internal_has_use_optional_variables() const {
7896  bool value = (_has_bits_[4] & 0x00000080u) != 0;
7897  return value;
7898 }
7900  return _internal_has_use_optional_variables();
7901 }
7903  use_optional_variables_ = true;
7904  _has_bits_[4] &= ~0x00000080u;
7905 }
7906 inline bool SatParameters::_internal_use_optional_variables() const {
7907  return use_optional_variables_;
7908 }
7910  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_optional_variables)
7911  return _internal_use_optional_variables();
7912 }
7913 inline void SatParameters::_internal_set_use_optional_variables(bool value) {
7914  _has_bits_[4] |= 0x00000080u;
7915  use_optional_variables_ = value;
7916 }
7918  _internal_set_use_optional_variables(value);
7919  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_optional_variables)
7920 }
7921 
7922 // optional bool use_exact_lp_reason = 109 [default = true];
7923 inline bool SatParameters::_internal_has_use_exact_lp_reason() const {
7924  bool value = (_has_bits_[4] & 0x00000100u) != 0;
7925  return value;
7926 }
7928  return _internal_has_use_exact_lp_reason();
7929 }
7931  use_exact_lp_reason_ = true;
7932  _has_bits_[4] &= ~0x00000100u;
7933 }
7934 inline bool SatParameters::_internal_use_exact_lp_reason() const {
7935  return use_exact_lp_reason_;
7936 }
7938  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_exact_lp_reason)
7939  return _internal_use_exact_lp_reason();
7940 }
7941 inline void SatParameters::_internal_set_use_exact_lp_reason(bool value) {
7942  _has_bits_[4] |= 0x00000100u;
7943  use_exact_lp_reason_ = value;
7944 }
7946  _internal_set_use_exact_lp_reason(value);
7947  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_exact_lp_reason)
7948 }
7949 
7950 // optional bool use_branching_in_lp = 139 [default = false];
7951 inline bool SatParameters::_internal_has_use_branching_in_lp() const {
7952  bool value = (_has_bits_[1] & 0x00200000u) != 0;
7953  return value;
7954 }
7956  return _internal_has_use_branching_in_lp();
7957 }
7959  use_branching_in_lp_ = false;
7960  _has_bits_[1] &= ~0x00200000u;
7961 }
7962 inline bool SatParameters::_internal_use_branching_in_lp() const {
7963  return use_branching_in_lp_;
7964 }
7966  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_branching_in_lp)
7967  return _internal_use_branching_in_lp();
7968 }
7969 inline void SatParameters::_internal_set_use_branching_in_lp(bool value) {
7970  _has_bits_[1] |= 0x00200000u;
7971  use_branching_in_lp_ = value;
7972 }
7974  _internal_set_use_branching_in_lp(value);
7975  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_branching_in_lp)
7976 }
7977 
7978 // optional bool use_combined_no_overlap = 133 [default = false];
7979 inline bool SatParameters::_internal_has_use_combined_no_overlap() const {
7980  bool value = (_has_bits_[1] & 0x00400000u) != 0;
7981  return value;
7982 }
7984  return _internal_has_use_combined_no_overlap();
7985 }
7987  use_combined_no_overlap_ = false;
7988  _has_bits_[1] &= ~0x00400000u;
7989 }
7990 inline bool SatParameters::_internal_use_combined_no_overlap() const {
7991  return use_combined_no_overlap_;
7992 }
7994  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_combined_no_overlap)
7995  return _internal_use_combined_no_overlap();
7996 }
7997 inline void SatParameters::_internal_set_use_combined_no_overlap(bool value) {
7998  _has_bits_[1] |= 0x00400000u;
7999  use_combined_no_overlap_ = value;
8000 }
8002  _internal_set_use_combined_no_overlap(value);
8003  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_combined_no_overlap)
8004 }
8005 
8006 // optional bool catch_sigint_signal = 135 [default = true];
8007 inline bool SatParameters::_internal_has_catch_sigint_signal() const {
8008  bool value = (_has_bits_[4] & 0x00000200u) != 0;
8009  return value;
8010 }
8012  return _internal_has_catch_sigint_signal();
8013 }
8015  catch_sigint_signal_ = true;
8016  _has_bits_[4] &= ~0x00000200u;
8017 }
8018 inline bool SatParameters::_internal_catch_sigint_signal() const {
8019  return catch_sigint_signal_;
8020 }
8022  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.catch_sigint_signal)
8023  return _internal_catch_sigint_signal();
8024 }
8025 inline void SatParameters::_internal_set_catch_sigint_signal(bool value) {
8026  _has_bits_[4] |= 0x00000200u;
8027  catch_sigint_signal_ = value;
8028 }
8030  _internal_set_catch_sigint_signal(value);
8031  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.catch_sigint_signal)
8032 }
8033 
8034 // optional bool use_implied_bounds = 144 [default = true];
8035 inline bool SatParameters::_internal_has_use_implied_bounds() const {
8036  bool value = (_has_bits_[4] & 0x00000400u) != 0;
8037  return value;
8038 }
8040  return _internal_has_use_implied_bounds();
8041 }
8043  use_implied_bounds_ = true;
8044  _has_bits_[4] &= ~0x00000400u;
8045 }
8046 inline bool SatParameters::_internal_use_implied_bounds() const {
8047  return use_implied_bounds_;
8048 }
8050  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_implied_bounds)
8051  return _internal_use_implied_bounds();
8052 }
8053 inline void SatParameters::_internal_set_use_implied_bounds(bool value) {
8054  _has_bits_[4] |= 0x00000400u;
8055  use_implied_bounds_ = value;
8056 }
8058  _internal_set_use_implied_bounds(value);
8059  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_implied_bounds)
8060 }
8061 
8062 // optional bool polish_lp_solution = 175 [default = false];
8063 inline bool SatParameters::_internal_has_polish_lp_solution() const {
8064  bool value = (_has_bits_[1] & 0x00800000u) != 0;
8065  return value;
8066 }
8068  return _internal_has_polish_lp_solution();
8069 }
8071  polish_lp_solution_ = false;
8072  _has_bits_[1] &= ~0x00800000u;
8073 }
8074 inline bool SatParameters::_internal_polish_lp_solution() const {
8075  return polish_lp_solution_;
8076 }
8078  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.polish_lp_solution)
8079  return _internal_polish_lp_solution();
8080 }
8081 inline void SatParameters::_internal_set_polish_lp_solution(bool value) {
8082  _has_bits_[1] |= 0x00800000u;
8083  polish_lp_solution_ = value;
8084 }
8086  _internal_set_polish_lp_solution(value);
8087  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.polish_lp_solution)
8088 }
8089 
8090 // optional bool convert_intervals = 177 [default = true];
8091 inline bool SatParameters::_internal_has_convert_intervals() const {
8092  bool value = (_has_bits_[5] & 0x00000010u) != 0;
8093  return value;
8094 }
8096  return _internal_has_convert_intervals();
8097 }
8099  convert_intervals_ = true;
8100  _has_bits_[5] &= ~0x00000010u;
8101 }
8102 inline bool SatParameters::_internal_convert_intervals() const {
8103  return convert_intervals_;
8104 }
8106  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.convert_intervals)
8107  return _internal_convert_intervals();
8108 }
8109 inline void SatParameters::_internal_set_convert_intervals(bool value) {
8110  _has_bits_[5] |= 0x00000010u;
8111  convert_intervals_ = value;
8112 }
8114  _internal_set_convert_intervals(value);
8115  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.convert_intervals)
8116 }
8117 
8118 // optional int32 symmetry_level = 183 [default = 2];
8119 inline bool SatParameters::_internal_has_symmetry_level() const {
8120  bool value = (_has_bits_[5] & 0x00000040u) != 0;
8121  return value;
8122 }
8124  return _internal_has_symmetry_level();
8125 }
8127  symmetry_level_ = 2;
8128  _has_bits_[5] &= ~0x00000040u;
8129 }
8130 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_symmetry_level() const {
8131  return symmetry_level_;
8132 }
8133 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::symmetry_level() const {
8134  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.symmetry_level)
8135  return _internal_symmetry_level();
8136 }
8137 inline void SatParameters::_internal_set_symmetry_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
8138  _has_bits_[5] |= 0x00000040u;
8139  symmetry_level_ = value;
8140 }
8141 inline void SatParameters::set_symmetry_level(::PROTOBUF_NAMESPACE_ID::int32 value) {
8142  _internal_set_symmetry_level(value);
8143  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.symmetry_level)
8144 }
8145 
8146 // optional double mip_max_bound = 124 [default = 10000000];
8147 inline bool SatParameters::_internal_has_mip_max_bound() const {
8148  bool value = (_has_bits_[4] & 0x00000040u) != 0;
8149  return value;
8150 }
8152  return _internal_has_mip_max_bound();
8153 }
8155  mip_max_bound_ = 10000000;
8156  _has_bits_[4] &= ~0x00000040u;
8157 }
8158 inline double SatParameters::_internal_mip_max_bound() const {
8159  return mip_max_bound_;
8160 }
8161 inline double SatParameters::mip_max_bound() const {
8162  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_max_bound)
8163  return _internal_mip_max_bound();
8164 }
8165 inline void SatParameters::_internal_set_mip_max_bound(double value) {
8166  _has_bits_[4] |= 0x00000040u;
8167  mip_max_bound_ = value;
8168 }
8170  _internal_set_mip_max_bound(value);
8171  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_max_bound)
8172 }
8173 
8174 // optional double mip_var_scaling = 125 [default = 1];
8175 inline bool SatParameters::_internal_has_mip_var_scaling() const {
8176  bool value = (_has_bits_[4] & 0x00001000u) != 0;
8177  return value;
8178 }
8180  return _internal_has_mip_var_scaling();
8181 }
8183  mip_var_scaling_ = 1;
8184  _has_bits_[4] &= ~0x00001000u;
8185 }
8186 inline double SatParameters::_internal_mip_var_scaling() const {
8187  return mip_var_scaling_;
8188 }
8189 inline double SatParameters::mip_var_scaling() const {
8190  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_var_scaling)
8191  return _internal_mip_var_scaling();
8192 }
8193 inline void SatParameters::_internal_set_mip_var_scaling(double value) {
8194  _has_bits_[4] |= 0x00001000u;
8195  mip_var_scaling_ = value;
8196 }
8198  _internal_set_mip_var_scaling(value);
8199  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_var_scaling)
8200 }
8201 
8202 // optional bool mip_automatically_scale_variables = 166 [default = true];
8203 inline bool SatParameters::_internal_has_mip_automatically_scale_variables() const {
8204  bool value = (_has_bits_[5] & 0x00000020u) != 0;
8205  return value;
8206 }
8208  return _internal_has_mip_automatically_scale_variables();
8209 }
8211  mip_automatically_scale_variables_ = true;
8212  _has_bits_[5] &= ~0x00000020u;
8213 }
8214 inline bool SatParameters::_internal_mip_automatically_scale_variables() const {
8215  return mip_automatically_scale_variables_;
8216 }
8218  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_automatically_scale_variables)
8219  return _internal_mip_automatically_scale_variables();
8220 }
8221 inline void SatParameters::_internal_set_mip_automatically_scale_variables(bool value) {
8222  _has_bits_[5] |= 0x00000020u;
8223  mip_automatically_scale_variables_ = value;
8224 }
8226  _internal_set_mip_automatically_scale_variables(value);
8227  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_automatically_scale_variables)
8228 }
8229 
8230 // optional double mip_wanted_precision = 126 [default = 1e-06];
8231 inline bool SatParameters::_internal_has_mip_wanted_precision() const {
8232  bool value = (_has_bits_[4] & 0x00002000u) != 0;
8233  return value;
8234 }
8236  return _internal_has_mip_wanted_precision();
8237 }
8239  mip_wanted_precision_ = 1e-06;
8240  _has_bits_[4] &= ~0x00002000u;
8241 }
8242 inline double SatParameters::_internal_mip_wanted_precision() const {
8243  return mip_wanted_precision_;
8244 }
8246  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_wanted_precision)
8247  return _internal_mip_wanted_precision();
8248 }
8249 inline void SatParameters::_internal_set_mip_wanted_precision(double value) {
8250  _has_bits_[4] |= 0x00002000u;
8251  mip_wanted_precision_ = value;
8252 }
8254  _internal_set_mip_wanted_precision(value);
8255  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_wanted_precision)
8256 }
8257 
8258 // optional int32 mip_max_activity_exponent = 127 [default = 53];
8259 inline bool SatParameters::_internal_has_mip_max_activity_exponent() const {
8260  bool value = (_has_bits_[4] & 0x00000800u) != 0;
8261  return value;
8262 }
8264  return _internal_has_mip_max_activity_exponent();
8265 }
8267  mip_max_activity_exponent_ = 53;
8268  _has_bits_[4] &= ~0x00000800u;
8269 }
8270 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::_internal_mip_max_activity_exponent() const {
8271  return mip_max_activity_exponent_;
8272 }
8273 inline ::PROTOBUF_NAMESPACE_ID::int32 SatParameters::mip_max_activity_exponent() const {
8274  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_max_activity_exponent)
8275  return _internal_mip_max_activity_exponent();
8276 }
8277 inline void SatParameters::_internal_set_mip_max_activity_exponent(::PROTOBUF_NAMESPACE_ID::int32 value) {
8278  _has_bits_[4] |= 0x00000800u;
8279  mip_max_activity_exponent_ = value;
8280 }
8281 inline void SatParameters::set_mip_max_activity_exponent(::PROTOBUF_NAMESPACE_ID::int32 value) {
8282  _internal_set_mip_max_activity_exponent(value);
8283  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_max_activity_exponent)
8284 }
8285 
8286 // optional double mip_check_precision = 128 [default = 0.0001];
8287 inline bool SatParameters::_internal_has_mip_check_precision() const {
8288  bool value = (_has_bits_[4] & 0x00004000u) != 0;
8289  return value;
8290 }
8292  return _internal_has_mip_check_precision();
8293 }
8295  mip_check_precision_ = 0.0001;
8296  _has_bits_[4] &= ~0x00004000u;
8297 }
8298 inline double SatParameters::_internal_mip_check_precision() const {
8299  return mip_check_precision_;
8300 }
8301 inline double SatParameters::mip_check_precision() const {
8302  // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_check_precision)
8303  return _internal_mip_check_precision();
8304 }
8305 inline void SatParameters::_internal_set_mip_check_precision(double value) {
8306  _has_bits_[4] |= 0x00004000u;
8307  mip_check_precision_ = value;
8308 }
8310  _internal_set_mip_check_precision(value);
8311  // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_check_precision)
8312 }
8313 
8314 #ifdef __GNUC__
8315  #pragma GCC diagnostic pop
8316 #endif // __GNUC__
8317 
8318 // @@protoc_insertion_point(namespace_scope)
8319 
8320 } // namespace sat
8321 } // namespace operations_research
8322 
8323 PROTOBUF_NAMESPACE_OPEN
8324 
8325 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_VariableOrder> : ::std::true_type {};
8326 template <>
8327 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_VariableOrder>() {
8329 }
8330 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_Polarity> : ::std::true_type {};
8331 template <>
8332 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_Polarity>() {
8334 }
8335 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm> : ::std::true_type {};
8336 template <>
8337 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm>() {
8339 }
8340 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm> : ::std::true_type {};
8341 template <>
8342 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm>() {
8344 }
8345 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_ClauseProtection> : ::std::true_type {};
8346 template <>
8347 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_ClauseProtection>() {
8349 }
8350 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_ClauseOrdering> : ::std::true_type {};
8351 template <>
8352 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_ClauseOrdering>() {
8354 }
8355 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_RestartAlgorithm> : ::std::true_type {};
8356 template <>
8357 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_RestartAlgorithm>() {
8359 }
8360 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_MaxSatAssumptionOrder> : ::std::true_type {};
8361 template <>
8362 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_MaxSatAssumptionOrder>() {
8364 }
8365 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm> : ::std::true_type {};
8366 template <>
8367 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm>() {
8369 }
8370 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_SearchBranching> : ::std::true_type {};
8371 template <>
8372 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_SearchBranching>() {
8374 }
8375 template <> struct is_proto_enum< ::operations_research::sat::SatParameters_FPRoundingMethod> : ::std::true_type {};
8376 template <>
8377 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_FPRoundingMethod>() {
8379 }
8380 
8381 PROTOBUF_NAMESPACE_CLOSE
8382 
8383 // @@protoc_insertion_point(global_scope)
8384 
8385 #include <google/protobuf/port_undef.inc>
8386 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fsat_5fparameters_2eproto
constexpr int SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_ARRAYSIZE
static const std::string & ClauseProtection_Name(T enum_t_value)
void set_use_disjunctive_constraint_in_cumulative_constraint(bool value)
void set_minimize_with_propagation_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr Polarity POLARITY_FALSE
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
static constexpr BinaryMinizationAlgorithm EXPERIMENTAL_BINARY_MINIMIZATION
bool SatParameters_VariableOrder_IsValid(int value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_MaxSatStratificationAlgorithm_descriptor()
::PROTOBUF_NAMESPACE_ID::int32 random_seed() const
void set_allocated_log_prefix(std::string *log_prefix)
::PROTOBUF_NAMESPACE_ID::int32 blocking_restart_window_size() const
void MergeFrom(const SatParameters &from)
static constexpr MaxSatAssumptionOrder MaxSatAssumptionOrder_MAX
static constexpr RestartAlgorithm FIXED_RESTART
::PROTOBUF_NAMESPACE_ID::int32 linearization_level() const
static constexpr RestartAlgorithm RestartAlgorithm_MAX
bool SatParameters_ClauseProtection_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_ClauseProtection *value)
::operations_research::sat::SatParameters_Polarity initial_polarity() const
bool SatParameters_Polarity_IsValid(int value)
static const std::string & BinaryMinizationAlgorithm_Name(T enum_t_value)
static constexpr RestartAlgorithm LBD_MOVING_AVERAGE_RESTART
static const std::string & Polarity_Name(T enum_t_value)
const std::string & default_restart_algorithms() const
static constexpr SearchBranching LP_SEARCH
constexpr int SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_ARRAYSIZE
void set_blocking_restart_window_size(::PROTOBUF_NAMESPACE_ID::int32 value)
constexpr SatParameters_ConflictMinimizationAlgorithm SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_MAX
SatParameters_SearchBranching SearchBranching
::PROTOBUF_NAMESPACE_ID::int32 polarity_rephase_increment() const
static constexpr ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm_MIN
constexpr SatParameters_RestartAlgorithm SatParameters_RestartAlgorithm_RestartAlgorithm_MIN
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_MaxSatAssumptionOrder_descriptor()
PROTOBUF_MUST_USE_RESULT std::string * release_log_prefix()
constexpr SatParameters_SearchBranching SatParameters_SearchBranching_SearchBranching_MAX
static bool BinaryMinizationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BinaryMinizationAlgorithm *value)
constexpr SatParameters_ClauseProtection SatParameters_ClauseProtection_ClauseProtection_MAX
void set_clause_cleanup_period(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_mip_max_activity_exponent(::PROTOBUF_NAMESPACE_ID::int32 value)
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void set_binary_search_num_conflicts(::PROTOBUF_NAMESPACE_ID::int32 value)
const std::string & SatParameters_ClauseOrdering_Name(T enum_t_value)
::operations_research::sat::SatParameters_MaxSatAssumptionOrder max_sat_assumption_order() const
static constexpr ConflictMinimizationAlgorithm NONE
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_ConflictMinimizationAlgorithm_descriptor()
void set_log_prefix(ArgT0 &&arg0, ArgT... args)
::PROTOBUF_NAMESPACE_ID::int32 max_presolve_iterations() const
void set_linearization_level(::PROTOBUF_NAMESPACE_ID::int32 value)
static bool ClauseProtection_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ClauseProtection *value)
const std::string & SatParameters_ClauseProtection_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::int32 pb_cleanup_increment() const
constexpr SatParameters_BinaryMinizationAlgorithm SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_MIN
::PROTOBUF_NAMESPACE_ID::int32 interleave_batch_size() const
PROTOBUF_MUST_USE_RESULT std::string * release_default_restart_algorithms()
void set_max_number_of_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value)
static constexpr ClauseProtection ClauseProtection_MIN
static constexpr MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm_MAX
const std::string name
::PROTOBUF_NAMESPACE_ID::int32 minimize_with_propagation_num_decisions() const
::PROTOBUF_NAMESPACE_ID::int32 restart_period() const
void set_keep_all_feasible_solutions_in_presolve(bool value)
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_FIRST
void set_num_conflicts_before_strategy_changes(::PROTOBUF_NAMESPACE_ID::int32 value)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void set_clause_cleanup_lbd_bound(::PROTOBUF_NAMESPACE_ID::int32 value)
const std::string & SatParameters_BinaryMinizationAlgorithm_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::int64 probing_period_at_root() const
static constexpr BinaryMinizationAlgorithm BinaryMinizationAlgorithm_MAX
static bool SearchBranching_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SearchBranching *value)
::PROTOBUF_NAMESPACE_ID::int32 max_consecutive_inactive_count() const
bool SatParameters_ClauseOrdering_IsValid(int value)
constexpr int SatParameters_FPRoundingMethod_FPRoundingMethod_ARRAYSIZE
bool SatParameters_ClauseProtection_IsValid(int value)
constexpr SatParameters_Polarity SatParameters_Polarity_Polarity_MIN
static constexpr int ConflictMinimizationAlgorithm_ARRAYSIZE
::PROTOBUF_NAMESPACE_ID::int32 cp_model_max_num_presolve_operations() const
static constexpr RestartAlgorithm RestartAlgorithm_MIN
SatParameters_MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm
void set_restart_running_window_size(::PROTOBUF_NAMESPACE_ID::int32 value)
bool has_use_disjunctive_constraint_in_cumulative_constraint() const
static constexpr ClauseProtection PROTECTION_NONE
static const std::string & MaxSatStratificationAlgorithm_Name(T enum_t_value)
constexpr int SatParameters_ClauseProtection_ClauseProtection_ARRAYSIZE
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * ConflictMinimizationAlgorithm_descriptor()
void set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value)
static const std::string & VariableOrder_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::int32 glucose_decay_increment_period() const
::operations_research::sat::SatParameters_SearchBranching search_branching() const
static constexpr ClauseProtection PROTECTION_ALWAYS
void set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value)
void set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value)
void set_max_cut_rounds_at_level_zero(::PROTOBUF_NAMESPACE_ID::int32 value)
SatParameters & operator=(SatParameters &&from) noexcept
::PROTOBUF_NAMESPACE_ID::int32 solution_pool_size() const
void set_cp_model_probing_level(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 restart_running_window_size() const
SatParameters & operator=(const SatParameters &from)
bool SatParameters_ConflictMinimizationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_ConflictMinimizationAlgorithm *value)
static bool ClauseProtection_IsValid(int value)
static constexpr VariableOrder IN_REVERSE_ORDER
constexpr int SatParameters_ClauseOrdering_ClauseOrdering_ARRAYSIZE
static constexpr MaxSatAssumptionOrder ORDER_ASSUMPTION_BY_DEPTH
static constexpr SearchBranching PORTFOLIO_SEARCH
constexpr SatParameters_BinaryMinizationAlgorithm SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_MAX
void set_hint_conflict_limit(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_auto_detect_greater_than_at_least_one_of(bool value)
void set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value)
constexpr SatParameters_VariableOrder SatParameters_VariableOrder_VariableOrder_MAX
void set_presolve_substitution_level(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr Polarity POLARITY_RANDOM
::PROTOBUF_NAMESPACE_ID::int64 pseudo_cost_reliability_threshold() const
static constexpr ClauseOrdering CLAUSE_LBD
void CopyFrom(const SatParameters &from)
bool SatParameters_RestartAlgorithm_IsValid(int value)
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_restart_algorithms()
constexpr int SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_ARRAYSIZE
int64_t b
constexpr SatParameters_FPRoundingMethod SatParameters_FPRoundingMethod_FPRoundingMethod_MIN
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_FPRoundingMethod_descriptor()
void set_pseudo_cost_reliability_threshold(::PROTOBUF_NAMESPACE_ID::int64 value)
static constexpr SearchBranching PSEUDO_COST_SEARCH
void set_max_presolve_iterations(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_period() const
static constexpr SearchBranching PORTFOLIO_WITH_QUICK_RESTART_SEARCH
void set_name(ArgT0 &&arg0, ArgT... args)
SatParameters_ClauseOrdering ClauseOrdering
::PROTOBUF_NAMESPACE_ID::int64 search_randomization_tolerance() const
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_SearchBranching_descriptor()
void set_boolean_encoding_level(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_lns_expand_intervals_in_constraint_graph(bool value)
static constexpr FPRoundingMethod LOCK_BASED
::PROTOBUF_NAMESPACE_ID::int32 max_num_cuts() const
static bool MaxSatAssumptionOrder_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MaxSatAssumptionOrder *value)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MaxSatAssumptionOrder_descriptor()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * ClauseProtection_descriptor()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
::operations_research::sat::SatParameters_VariableOrder preferred_variable_order() const
void set_interleave_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value)
::operations_research::sat::SatParameters_FPRoundingMethod fp_rounding() const
void set_restart_period(::PROTOBUF_NAMESPACE_ID::int32 value)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * FPRoundingMethod_descriptor()
void set_minimize_reduction_during_pb_resolution(bool value)
constexpr SatParameters_ConflictMinimizationAlgorithm SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_MIN
void set_presolve_bve_threshold(::PROTOBUF_NAMESPACE_ID::int32 value)
constexpr SatParameters_MaxSatStratificationAlgorithm SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_MAX
static constexpr RestartAlgorithm DL_MOVING_AVERAGE_RESTART
static constexpr ClauseOrdering CLAUSE_ACTIVITY
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fsat_5fparameters_2eproto
void UnsafeArenaSwap(SatParameters *other)
const std::string & SatParameters_ConflictMinimizationAlgorithm_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::int32 boolean_encoding_level() const
static constexpr MaxSatAssumptionOrder ORDER_ASSUMPTION_BY_WEIGHT
::PROTOBUF_NAMESPACE_ID::int32 hint_conflict_limit() const
bool SatParameters_BinaryMinizationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_BinaryMinizationAlgorithm *value)
::PROTOBUF_NAMESPACE_ID::int32 presolve_bva_threshold() const
static const std::string & ConflictMinimizationAlgorithm_Name(T enum_t_value)
void set_minimize_with_propagation_num_decisions(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_search_randomization_tolerance(::PROTOBUF_NAMESPACE_ID::int64 value)
constexpr SatParameters_ClauseOrdering SatParameters_ClauseOrdering_ClauseOrdering_MAX
static constexpr MaxSatAssumptionOrder DEFAULT_ASSUMPTION_ORDER
PROTOBUF_MUST_USE_RESULT std::string * release_name()
static constexpr ClauseOrdering ClauseOrdering_MAX
SatParameters * New() const final
constexpr SatParameters_MaxSatAssumptionOrder SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_MAX
void set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value)
static constexpr RestartAlgorithm LUBY_RESTART
static constexpr FPRoundingMethod NEAREST_INTEGER
::PROTOBUF_NAMESPACE_ID::int32 max_cut_rounds_at_level_zero() const
bool SatParameters_MaxSatStratificationAlgorithm_IsValid(int value)
const std::string & SatParameters_VariableOrder_Name(T enum_t_value)
static bool ConflictMinimizationAlgorithm_IsValid(int value)
void set_max_memory_in_mb(::PROTOBUF_NAMESPACE_ID::int64 value)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & restart_algorithms() const
const std::string & SatParameters_FPRoundingMethod_Name(T enum_t_value)
static constexpr FPRoundingMethod FPRoundingMethod_MAX
SatParameters_BinaryMinizationAlgorithm BinaryMinizationAlgorithm
void set_symmetry_level(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 max_all_diff_cut_size() const
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MaxSatStratificationAlgorithm_descriptor()
const std::string & SatParameters_MaxSatStratificationAlgorithm_Name(T enum_t_value)
void set_polarity_rephase_increment(::PROTOBUF_NAMESPACE_ID::int32 value)
static bool BinaryMinizationAlgorithm_IsValid(int value)
bool SatParameters_MaxSatAssumptionOrder_IsValid(int value)
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * RestartAlgorithm_descriptor()
constexpr int SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_ARRAYSIZE
static constexpr VariableOrder IN_ORDER
static bool ClauseOrdering_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ClauseOrdering *value)
static constexpr ConflictMinimizationAlgorithm SIMPLE
constexpr SatParameters_ClauseOrdering SatParameters_ClauseOrdering_ClauseOrdering_MIN
static constexpr VariableOrder VariableOrder_MIN
void set_presolve_bve_clause_weight(::PROTOBUF_NAMESPACE_ID::int32 value)
bool SatParameters_MaxSatAssumptionOrder_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_MaxSatAssumptionOrder *value)
int index
Definition: pack.cc:509
constexpr SatParameters_FPRoundingMethod SatParameters_FPRoundingMethod_FPRoundingMethod_MAX
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_WITH_REACHABILITY
SatParameters(SatParameters &&from) noexcept
static constexpr MaxSatAssumptionOrder MaxSatAssumptionOrder_MIN
::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_lbd_bound() const
constexpr SatParameters_MaxSatStratificationAlgorithm SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_MIN
static constexpr ClauseProtection PROTECTION_LBD
static constexpr VariableOrder VariableOrder_MAX
bool SatParameters_BinaryMinizationAlgorithm_IsValid(int value)
bool SatParameters_FPRoundingMethod_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_FPRoundingMethod *value)
constexpr SatParameters_MaxSatAssumptionOrder SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_MIN
static constexpr SearchBranching SearchBranching_MIN
bool SatParameters_ClauseOrdering_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_ClauseOrdering *value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::int64 max_memory_in_mb() const
void set_probing_period_at_root(::PROTOBUF_NAMESPACE_ID::int64 value)
constexpr int SatParameters_SearchBranching_SearchBranching_ARRAYSIZE
void set_num_search_workers(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr int BinaryMinizationAlgorithm_ARRAYSIZE
void set_restart_algorithms(int index, ::operations_research::sat::SatParameters_RestartAlgorithm value)
static const std::string & ClauseOrdering_Name(T enum_t_value)
static bool RestartAlgorithm_IsValid(int value)
static constexpr SearchBranching AUTOMATIC_SEARCH
void set_initial_polarity(::operations_research::sat::SatParameters_Polarity value)
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_FIRST_WITH_TRANSITIVE_REDUCTION
SatParameters_ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm
static constexpr SearchBranching SearchBranching_MAX
static bool MaxSatStratificationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MaxSatStratificationAlgorithm *value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_ClauseProtection_descriptor()
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_NONE
static constexpr MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm_MIN
bool SatParameters_SearchBranching_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_SearchBranching *value)
void set_new_constraints_batch_size(::PROTOBUF_NAMESPACE_ID::int32 value)
::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm minimization_algorithm() const
const std::string & SatParameters_SearchBranching_Name(T enum_t_value)
constexpr int SatParameters_RestartAlgorithm_RestartAlgorithm_ARRAYSIZE
::PROTOBUF_NAMESPACE_ID::int32 presolve_bve_threshold() const
::PROTOBUF_NAMESPACE_ID::int32 cp_model_probing_level() const
const std::string & SatParameters_RestartAlgorithm_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::int32 cut_cleanup_target() const
bool has_use_timetable_edge_finding_in_cumulative_constraint() const
void set_allocated_default_restart_algorithms(std::string *default_restart_algorithms)
void set_pb_cleanup_increment(::PROTOBUF_NAMESPACE_ID::int32 value)
bool SatParameters_MaxSatStratificationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_MaxSatStratificationAlgorithm *value)
static constexpr ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm_MAX
void set_max_all_diff_cut_size(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr FPRoundingMethod PROPAGATION_ASSISTED
constexpr SatParameters_RestartAlgorithm SatParameters_RestartAlgorithm_RestartAlgorithm_MAX
static bool MaxSatStratificationAlgorithm_IsValid(int value)
static constexpr SearchBranching HINT_SEARCH
void set_max_consecutive_inactive_count(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr int MaxSatAssumptionOrder_ARRAYSIZE
static constexpr BinaryMinizationAlgorithm BinaryMinizationAlgorithm_MIN
static const SatParameters & default_instance()
void set_min_orthogonality_for_lp_constraints(double value)
static bool FPRoundingMethod_IsValid(int value)
static constexpr RestartAlgorithm NO_RESTART
::PROTOBUF_NAMESPACE_ID::int32 presolve_bve_clause_weight() const
static bool VariableOrder_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, VariableOrder *value)
::PROTOBUF_NAMESPACE_ID::int32 binary_search_num_conflicts() const
bool SatParameters_VariableOrder_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_VariableOrder *value)
static constexpr FPRoundingMethod FPRoundingMethod_MIN
bool SatParameters_FPRoundingMethod_IsValid(int value)
void set_use_timetable_edge_finding_in_cumulative_constraint(bool value)
static bool MaxSatAssumptionOrder_IsValid(int value)
void set_max_domain_size_when_encoding_eq_neq_constraints(::PROTOBUF_NAMESPACE_ID::int32 value)
::operations_research::sat::SatParameters_BinaryMinizationAlgorithm binary_minimization_algorithm() const
void set_default_restart_algorithms(ArgT0 &&arg0, ArgT... args)
void set_cp_model_max_num_presolve_operations(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 minimize_with_propagation_restart_period() const
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * Polarity_descriptor()
constexpr SatParameters_Polarity SatParameters_Polarity_Polarity_MAX
static constexpr FPRoundingMethod ACTIVE_LOCK_BASED
const std::string & SatParameters_MaxSatAssumptionOrder_Name(T enum_t_value)
void set_use_overload_checker_in_cumulative_constraint(bool value)
static const std::string & MaxSatAssumptionOrder_Name(T enum_t_value)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * BinaryMinizationAlgorithm_descriptor()
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_VariableOrder_descriptor()
bool SatParameters_SearchBranching_IsValid(int value)
SatParameters_RestartAlgorithm RestartAlgorithm
static constexpr BinaryMinizationAlgorithm NO_BINARY_MINIMIZATION
static const SatParameters * internal_default_instance()
static bool Polarity_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Polarity *value)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SearchBranching_descriptor()
::PROTOBUF_NAMESPACE_ID::int32 num_search_workers() const
void set_cut_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value)
const std::string & SatParameters_Polarity_Name(T enum_t_value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_RestartAlgorithm_descriptor()
const std::string & log_prefix() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::PROTOBUF_NAMESPACE_ID::int64 max_number_of_conflicts() const
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_BinaryMinizationAlgorithm_descriptor()
void set_solution_pool_size(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr SearchBranching FIXED_SEARCH
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * VariableOrder_descriptor()
::PROTOBUF_NAMESPACE_ID::int32 new_constraints_batch_size() const
Collection of objects used to extend the Constraint Solver library.
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_Polarity_descriptor()
void add_restart_algorithms(::operations_research::sat::SatParameters_RestartAlgorithm value)
constexpr int SatParameters_Polarity_Polarity_ARRAYSIZE
void set_max_integer_rounding_scaling(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_presolve_bva_threshold(::PROTOBUF_NAMESPACE_ID::int32 value)
static const std::string & SearchBranching_Name(T enum_t_value)
static constexpr Polarity POLARITY_REVERSE_WEIGHTED_SIGN
::operations_research::sat::SatParameters_ClauseOrdering clause_cleanup_ordering() const
static constexpr VariableOrder IN_RANDOM_ORDER
friend void swap(SatParameters &a, SatParameters &b)
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries [] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
::operations_research::sat::SatParameters_ClauseProtection clause_cleanup_protection() const
bool SatParameters_ConflictMinimizationAlgorithm_IsValid(int value)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * ClauseOrdering_descriptor()
static bool ConflictMinimizationAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ConflictMinimizationAlgorithm *value)
static const std::string & RestartAlgorithm_Name(T enum_t_value)
static constexpr ClauseOrdering ClauseOrdering_MIN
SatParameters_FPRoundingMethod FPRoundingMethod
::PROTOBUF_NAMESPACE_ID::int32 max_domain_size_when_encoding_eq_neq_constraints() const
bool SatParameters_Polarity_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_Polarity *value)
void set_search_branching(::operations_research::sat::SatParameters_SearchBranching value)
static bool FPRoundingMethod_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FPRoundingMethod *value)
void set_clause_cleanup_protection(::operations_research::sat::SatParameters_ClauseProtection value)
static constexpr Polarity POLARITY_WEIGHTED_SIGN
static constexpr ClauseProtection ClauseProtection_MAX
void set_presolve_probing_deterministic_time_limit(double value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT SatParametersDefaultTypeInternal _SatParameters_default_instance_
::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm max_sat_stratification() const
void set_random_seed(::PROTOBUF_NAMESPACE_ID::int32 value)
constexpr SatParameters_SearchBranching SatParameters_SearchBranching_SearchBranching_MIN
SatParameters_ClauseProtection ClauseProtection
constexpr SatParameters_VariableOrder SatParameters_VariableOrder_VariableOrder_MIN
void set_max_num_cuts(::PROTOBUF_NAMESPACE_ID::int32 value)
::PROTOBUF_NAMESPACE_ID::int32 mip_max_activity_exponent() const
::PROTOBUF_NAMESPACE_ID::int32 symmetry_level() const
::PROTOBUF_NAMESPACE_ID::int32 clause_cleanup_target() const
static const std::string & FPRoundingMethod_Name(T enum_t_value)
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_DESCENT
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SatParameters_ClauseOrdering_descriptor()
bool SatParameters_RestartAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SatParameters_RestartAlgorithm *value)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static bool RestartAlgorithm_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RestartAlgorithm *value)
int64_t value
void set_glucose_decay_increment_period(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_also_bump_variables_in_conflict_reasons(bool value)
static constexpr ConflictMinimizationAlgorithm EXPERIMENTAL
void set_clause_cleanup_target(::PROTOBUF_NAMESPACE_ID::int32 value)
SatParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
constexpr int SatParameters_VariableOrder_VariableOrder_ARRAYSIZE
::PROTOBUF_NAMESPACE_ID::int32 num_conflicts_before_strategy_changes() const
static constexpr int MaxSatStratificationAlgorithm_ARRAYSIZE
constexpr SatParameters_ClauseProtection SatParameters_ClauseProtection_ClauseProtection_MIN
static constexpr ConflictMinimizationAlgorithm RECURSIVE
void set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value)
::PROTOBUF_NAMESPACE_ID::int32 max_integer_rounding_scaling() const
void set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value)
int64_t a
static bool SearchBranching_IsValid(int value)
void set_use_precedences_in_disjunctive_constraint(bool value)
::PROTOBUF_NAMESPACE_ID::int32 presolve_substitution_level() const
SatParameters_MaxSatAssumptionOrder MaxSatAssumptionOrder
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_ASCENT