Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
sat_parameters.pb.h
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// NO CHECKED-IN PROTOBUF GENCODE
3// source: ortools/sat/sat_parameters.proto
4// Protobuf C++ Version: 6.33.1
5
6#ifndef ortools_2fsat_2fsat_5fparameters_2eproto_2epb_2eh
7#define ortools_2fsat_2fsat_5fparameters_2eproto_2epb_2eh
8
9#include <limits>
10#include <string>
11#include <type_traits>
12#include <utility>
13
14#include "google/protobuf/runtime_version.h"
15#if PROTOBUF_VERSION != 6033001
16#error "Protobuf C++ gencode is built with an incompatible version of"
17#error "Protobuf C++ headers/runtime. See"
18#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
19#endif
20#include "google/protobuf/io/coded_stream.h"
21#include "google/protobuf/arena.h"
22#include "google/protobuf/arenastring.h"
23#include "google/protobuf/generated_message_tctable_decl.h"
24#include "google/protobuf/generated_message_util.h"
25#include "google/protobuf/metadata_lite.h"
26#include "google/protobuf/generated_message_reflection.h"
27#include "google/protobuf/message.h"
28#include "google/protobuf/message_lite.h"
29#include "google/protobuf/repeated_field.h" // IWYU pragma: export
30#include "google/protobuf/extension_set.h" // IWYU pragma: export
31#include "google/protobuf/generated_enum_reflection.h"
32#include "google/protobuf/unknown_field_set.h"
33// @@protoc_insertion_point(includes)
34
35// Must be included last.
36#include "google/protobuf/port_def.inc"
37
38#define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fsat_5fparameters_2eproto OR_PROTO_DLL
39
40namespace google {
41namespace protobuf {
42namespace internal {
43template <typename T>
44::absl::string_view GetAnyMessageName();
45} // namespace internal
46} // namespace protobuf
47} // namespace google
48
49// Internal implementation detail -- do not use these members.
51 static const ::uint32_t offsets[];
52};
53extern "C" {
54OR_PROTO_DLL extern const ::google::protobuf::internal::DescriptorTable descriptor_table_ortools_2fsat_2fsat_5fparameters_2eproto;
55} // extern "C"
56namespace operations_research {
57namespace sat {
59OR_PROTO_DLL extern const uint32_t SatParameters_BinaryMinizationAlgorithm_internal_data_[];
61OR_PROTO_DLL extern const uint32_t SatParameters_ClauseOrdering_internal_data_[];
63OR_PROTO_DLL extern const uint32_t SatParameters_ConflictMinimizationAlgorithm_internal_data_[];
65OR_PROTO_DLL extern const uint32_t SatParameters_FPRoundingMethod_internal_data_[];
67OR_PROTO_DLL extern const uint32_t SatParameters_MaxSatAssumptionOrder_internal_data_[];
69OR_PROTO_DLL extern const uint32_t SatParameters_MaxSatStratificationAlgorithm_internal_data_[];
70enum SatParameters_Polarity : int;
71OR_PROTO_DLL extern const uint32_t SatParameters_Polarity_internal_data_[];
73OR_PROTO_DLL extern const uint32_t SatParameters_RestartAlgorithm_internal_data_[];
75OR_PROTO_DLL extern const uint32_t SatParameters_SearchBranching_internal_data_[];
77OR_PROTO_DLL extern const uint32_t SatParameters_SharedTreeSplitStrategy_internal_data_[];
79OR_PROTO_DLL extern const uint32_t SatParameters_VariableOrder_internal_data_[];
80class SatParameters;
83OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SatParameters_class_data_;
84} // namespace sat
85} // namespace operations_research
86namespace google {
87namespace protobuf {
88template <>
89internal::EnumTraitsT<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm_internal_data_>
90 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm>;
91template <>
92internal::EnumTraitsT<::operations_research::sat::SatParameters_ClauseOrdering_internal_data_>
93 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_ClauseOrdering>;
94template <>
95internal::EnumTraitsT<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm_internal_data_>
96 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm>;
97template <>
98internal::EnumTraitsT<::operations_research::sat::SatParameters_FPRoundingMethod_internal_data_>
99 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_FPRoundingMethod>;
100template <>
101internal::EnumTraitsT<::operations_research::sat::SatParameters_MaxSatAssumptionOrder_internal_data_>
102 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_MaxSatAssumptionOrder>;
103template <>
104internal::EnumTraitsT<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm_internal_data_>
105 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm>;
106template <>
107internal::EnumTraitsT<::operations_research::sat::SatParameters_Polarity_internal_data_>
108 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_Polarity>;
109template <>
110internal::EnumTraitsT<::operations_research::sat::SatParameters_RestartAlgorithm_internal_data_>
111 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_RestartAlgorithm>;
112template <>
113internal::EnumTraitsT<::operations_research::sat::SatParameters_SearchBranching_internal_data_>
114 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_SearchBranching>;
115template <>
116internal::EnumTraitsT<::operations_research::sat::SatParameters_SharedTreeSplitStrategy_internal_data_>
117 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_SharedTreeSplitStrategy>;
118template <>
119internal::EnumTraitsT<::operations_research::sat::SatParameters_VariableOrder_internal_data_>
120 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_VariableOrder>;
121} // namespace protobuf
122} // namespace google
123
124namespace operations_research {
125namespace sat {
131
132OR_PROTO_DLL extern const uint32_t SatParameters_VariableOrder_internal_data_[];
134 static_cast<SatParameters_VariableOrder>(0);
136 static_cast<SatParameters_VariableOrder>(2);
138 return 0 <= value && value <= 2;
139}
141OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_VariableOrder_descriptor();
142template <typename T>
143const ::std::string& SatParameters_VariableOrder_Name(T value) {
144 static_assert(::std::is_same<T, SatParameters_VariableOrder>::value ||
145 ::std::is_integral<T>::value,
146 "Incorrect type passed to VariableOrder_Name().");
148}
149template <>
151 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_VariableOrder_descriptor, 0, 2>(
152 static_cast<int>(value));
153}
155 ::absl::string_view name, SatParameters_VariableOrder* PROTOBUF_NONNULL value) {
156 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_VariableOrder>(SatParameters_VariableOrder_descriptor(), name,
157 value);
158}
164
165OR_PROTO_DLL extern const uint32_t SatParameters_Polarity_internal_data_[];
167 static_cast<SatParameters_Polarity>(0);
169 static_cast<SatParameters_Polarity>(2);
170inline bool SatParameters_Polarity_IsValid(int value) {
171 return 0 <= value && value <= 2;
172}
173inline constexpr int SatParameters_Polarity_Polarity_ARRAYSIZE = 2 + 1;
174OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_Polarity_descriptor();
175template <typename T>
176const ::std::string& SatParameters_Polarity_Name(T value) {
177 static_assert(::std::is_same<T, SatParameters_Polarity>::value ||
178 ::std::is_integral<T>::value,
179 "Incorrect type passed to Polarity_Name().");
180 return SatParameters_Polarity_Name(static_cast<SatParameters_Polarity>(value));
181}
182template <>
183inline const ::std::string& SatParameters_Polarity_Name(SatParameters_Polarity value) {
184 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_Polarity_descriptor, 0, 2>(
185 static_cast<int>(value));
186}
188 ::absl::string_view name, SatParameters_Polarity* PROTOBUF_NONNULL value) {
189 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_Polarity>(SatParameters_Polarity_descriptor(), name,
190 value);
191}
197
198OR_PROTO_DLL extern const uint32_t SatParameters_ConflictMinimizationAlgorithm_internal_data_[];
204 return 0 <= value && value <= 2;
205}
207OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_ConflictMinimizationAlgorithm_descriptor();
208template <typename T>
210 static_assert(::std::is_same<T, SatParameters_ConflictMinimizationAlgorithm>::value ||
211 ::std::is_integral<T>::value,
212 "Incorrect type passed to ConflictMinimizationAlgorithm_Name().");
214}
215template <>
217 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_ConflictMinimizationAlgorithm_descriptor, 0, 2>(
218 static_cast<int>(value));
219}
221 ::absl::string_view name, SatParameters_ConflictMinimizationAlgorithm* PROTOBUF_NONNULL value) {
222 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_ConflictMinimizationAlgorithm>(SatParameters_ConflictMinimizationAlgorithm_descriptor(), name,
223 value);
224}
230
231OR_PROTO_DLL extern const uint32_t SatParameters_BinaryMinizationAlgorithm_internal_data_[];
237 return 0 <= value && value <= 5 && ((35u >> value) & 1) != 0;
238}
240OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_BinaryMinizationAlgorithm_descriptor();
241template <typename T>
242const ::std::string& SatParameters_BinaryMinizationAlgorithm_Name(T value) {
243 static_assert(::std::is_same<T, SatParameters_BinaryMinizationAlgorithm>::value ||
244 ::std::is_integral<T>::value,
245 "Incorrect type passed to BinaryMinizationAlgorithm_Name().");
247}
248template <>
250 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_BinaryMinizationAlgorithm_descriptor, 0, 5>(
251 static_cast<int>(value));
252}
254 ::absl::string_view name, SatParameters_BinaryMinizationAlgorithm* PROTOBUF_NONNULL value) {
255 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_BinaryMinizationAlgorithm>(SatParameters_BinaryMinizationAlgorithm_descriptor(), name,
256 value);
257}
262
263OR_PROTO_DLL extern const uint32_t SatParameters_ClauseOrdering_internal_data_[];
265 static_cast<SatParameters_ClauseOrdering>(0);
267 static_cast<SatParameters_ClauseOrdering>(1);
269 return 0 <= value && value <= 1;
270}
272OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_ClauseOrdering_descriptor();
273template <typename T>
274const ::std::string& SatParameters_ClauseOrdering_Name(T value) {
275 static_assert(::std::is_same<T, SatParameters_ClauseOrdering>::value ||
276 ::std::is_integral<T>::value,
277 "Incorrect type passed to ClauseOrdering_Name().");
279}
280template <>
282 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_ClauseOrdering_descriptor, 0, 1>(
283 static_cast<int>(value));
284}
286 ::absl::string_view name, SatParameters_ClauseOrdering* PROTOBUF_NONNULL value) {
287 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_ClauseOrdering>(SatParameters_ClauseOrdering_descriptor(), name,
288 value);
289}
297
298OR_PROTO_DLL extern const uint32_t SatParameters_RestartAlgorithm_internal_data_[];
300 static_cast<SatParameters_RestartAlgorithm>(0);
302 static_cast<SatParameters_RestartAlgorithm>(4);
304 return 0 <= value && value <= 4;
305}
307OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_RestartAlgorithm_descriptor();
308template <typename T>
309const ::std::string& SatParameters_RestartAlgorithm_Name(T value) {
310 static_assert(::std::is_same<T, SatParameters_RestartAlgorithm>::value ||
311 ::std::is_integral<T>::value,
312 "Incorrect type passed to RestartAlgorithm_Name().");
314}
315template <>
317 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_RestartAlgorithm_descriptor, 0, 4>(
318 static_cast<int>(value));
319}
321 ::absl::string_view name, SatParameters_RestartAlgorithm* PROTOBUF_NONNULL value) {
322 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_RestartAlgorithm>(SatParameters_RestartAlgorithm_descriptor(), name,
323 value);
324}
330
331OR_PROTO_DLL extern const uint32_t SatParameters_MaxSatAssumptionOrder_internal_data_[];
337 return 0 <= value && value <= 2;
338}
340OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_MaxSatAssumptionOrder_descriptor();
341template <typename T>
342const ::std::string& SatParameters_MaxSatAssumptionOrder_Name(T value) {
343 static_assert(::std::is_same<T, SatParameters_MaxSatAssumptionOrder>::value ||
344 ::std::is_integral<T>::value,
345 "Incorrect type passed to MaxSatAssumptionOrder_Name().");
347}
348template <>
350 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_MaxSatAssumptionOrder_descriptor, 0, 2>(
351 static_cast<int>(value));
352}
354 ::absl::string_view name, SatParameters_MaxSatAssumptionOrder* PROTOBUF_NONNULL value) {
355 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_MaxSatAssumptionOrder>(SatParameters_MaxSatAssumptionOrder_descriptor(), name,
356 value);
357}
363
364OR_PROTO_DLL extern const uint32_t SatParameters_MaxSatStratificationAlgorithm_internal_data_[];
370 return 0 <= value && value <= 2;
371}
373OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_MaxSatStratificationAlgorithm_descriptor();
374template <typename T>
376 static_assert(::std::is_same<T, SatParameters_MaxSatStratificationAlgorithm>::value ||
377 ::std::is_integral<T>::value,
378 "Incorrect type passed to MaxSatStratificationAlgorithm_Name().");
380}
381template <>
383 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_MaxSatStratificationAlgorithm_descriptor, 0, 2>(
384 static_cast<int>(value));
385}
387 ::absl::string_view name, SatParameters_MaxSatStratificationAlgorithm* PROTOBUF_NONNULL value) {
388 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_MaxSatStratificationAlgorithm>(SatParameters_MaxSatStratificationAlgorithm_descriptor(), name,
389 value);
390}
402
403OR_PROTO_DLL extern const uint32_t SatParameters_SearchBranching_internal_data_[];
405 static_cast<SatParameters_SearchBranching>(0);
407 static_cast<SatParameters_SearchBranching>(8);
409 return 0 <= value && value <= 8;
410}
412OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_SearchBranching_descriptor();
413template <typename T>
414const ::std::string& SatParameters_SearchBranching_Name(T value) {
415 static_assert(::std::is_same<T, SatParameters_SearchBranching>::value ||
416 ::std::is_integral<T>::value,
417 "Incorrect type passed to SearchBranching_Name().");
419}
420template <>
422 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_SearchBranching_descriptor, 0, 8>(
423 static_cast<int>(value));
424}
426 ::absl::string_view name, SatParameters_SearchBranching* PROTOBUF_NONNULL value) {
427 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_SearchBranching>(SatParameters_SearchBranching_descriptor(), name,
428 value);
429}
437
438OR_PROTO_DLL extern const uint32_t SatParameters_SharedTreeSplitStrategy_internal_data_[];
444 return 0 <= value && value <= 4;
445}
447OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_SharedTreeSplitStrategy_descriptor();
448template <typename T>
449const ::std::string& SatParameters_SharedTreeSplitStrategy_Name(T value) {
450 static_assert(::std::is_same<T, SatParameters_SharedTreeSplitStrategy>::value ||
451 ::std::is_integral<T>::value,
452 "Incorrect type passed to SharedTreeSplitStrategy_Name().");
454}
455template <>
457 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_SharedTreeSplitStrategy_descriptor, 0, 4>(
458 static_cast<int>(value));
459}
461 ::absl::string_view name, SatParameters_SharedTreeSplitStrategy* PROTOBUF_NONNULL value) {
462 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_SharedTreeSplitStrategy>(SatParameters_SharedTreeSplitStrategy_descriptor(), name,
463 value);
464}
471
472OR_PROTO_DLL extern const uint32_t SatParameters_FPRoundingMethod_internal_data_[];
474 static_cast<SatParameters_FPRoundingMethod>(0);
476 static_cast<SatParameters_FPRoundingMethod>(3);
478 return 0 <= value && value <= 3;
479}
481OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SatParameters_FPRoundingMethod_descriptor();
482template <typename T>
483const ::std::string& SatParameters_FPRoundingMethod_Name(T value) {
484 static_assert(::std::is_same<T, SatParameters_FPRoundingMethod>::value ||
485 ::std::is_integral<T>::value,
486 "Incorrect type passed to FPRoundingMethod_Name().");
488}
489template <>
491 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_FPRoundingMethod_descriptor, 0, 3>(
492 static_cast<int>(value));
493}
495 ::absl::string_view name, SatParameters_FPRoundingMethod* PROTOBUF_NONNULL value) {
496 return ::google::protobuf::internal::ParseNamedEnum<SatParameters_FPRoundingMethod>(SatParameters_FPRoundingMethod_descriptor(), name,
497 value);
498}
499
500// ===================================================================
501
502
503// -------------------------------------------------------------------
504
505class OR_PROTO_DLL SatParameters final : public ::google::protobuf::Message
506/* @@protoc_insertion_point(class_definition:operations_research.sat.SatParameters) */ {
507 public:
508 inline SatParameters() : SatParameters(nullptr) {}
509 ~SatParameters() PROTOBUF_FINAL;
511#if defined(PROTOBUF_CUSTOM_VTABLE)
512 void operator delete(SatParameters* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
513 SharedDtor(*msg);
514 ::google::protobuf::internal::SizedDelete(msg, sizeof(SatParameters));
515 }
516#endif
517
518 template <typename = void>
519 explicit PROTOBUF_CONSTEXPR SatParameters(::google::protobuf::internal::ConstantInitialized);
520
521 inline SatParameters(const SatParameters& from) : SatParameters(nullptr, from) {}
522 inline SatParameters(SatParameters&& from) noexcept
523 : SatParameters(nullptr, ::std::move(from)) {}
524 inline SatParameters& operator=(const SatParameters& from) {
525 CopyFrom(from);
526 return *this;
527 }
528 inline SatParameters& operator=(SatParameters&& from) noexcept {
529 if (this == &from) return *this;
530 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
531 InternalSwap(&from);
532 } else {
533 CopyFrom(from);
534 }
535 return *this;
536 }
537
538 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
539 ABSL_ATTRIBUTE_LIFETIME_BOUND {
540 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
541 }
542 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
543 ABSL_ATTRIBUTE_LIFETIME_BOUND {
544 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
545 }
546
547 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
548 return GetDescriptor();
550 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
551 return default_instance().GetMetadata().descriptor;
553 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
554 return default_instance().GetMetadata().reflection;
556 static const SatParameters& default_instance() {
557 return *reinterpret_cast<const SatParameters*>(
559 }
560 static constexpr int kIndexInFileMessages = 0;
561 friend void swap(SatParameters& a, SatParameters& b) { a.Swap(&b); }
562 inline void Swap(SatParameters* PROTOBUF_NONNULL other) {
563 if (other == this) return;
564 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
565 InternalSwap(other);
566 } else {
567 ::google::protobuf::internal::GenericSwap(this, other);
568 }
569 }
570 void UnsafeArenaSwap(SatParameters* PROTOBUF_NONNULL other) {
571 if (other == this) return;
572 ABSL_DCHECK(GetArena() == other->GetArena());
573 InternalSwap(other);
574 }
575
576 // implements Message ----------------------------------------------
577
578 SatParameters* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
579 return ::google::protobuf::Message::DefaultConstruct<SatParameters>(arena);
581 using ::google::protobuf::Message::CopyFrom;
582 void CopyFrom(const SatParameters& from);
583 using ::google::protobuf::Message::MergeFrom;
584 void MergeFrom(const SatParameters& from) { SatParameters::MergeImpl(*this, from); }
585
586 private:
587 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
588 const ::google::protobuf::MessageLite& from_msg);
589
590 public:
591 bool IsInitialized() const {
592 return true;
594 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
595 #if defined(PROTOBUF_CUSTOM_VTABLE)
596 private:
597 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
598 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
599 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
600 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
601
602 public:
603 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
604 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
605 ::uint8_t* PROTOBUF_NONNULL target,
606 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
607 return _InternalSerialize(*this, target, stream);
608 }
609 #else // PROTOBUF_CUSTOM_VTABLE
610 ::size_t ByteSizeLong() const final;
611 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
612 ::uint8_t* PROTOBUF_NONNULL target,
613 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
614 #endif // PROTOBUF_CUSTOM_VTABLE
615 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
616
617 private:
618 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
619 static void SharedDtor(MessageLite& self);
620 void InternalSwap(SatParameters* PROTOBUF_NONNULL other);
621 private:
622 template <typename T>
623 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
624 static ::absl::string_view FullMessageName() { return "operations_research.sat.SatParameters"; }
625
626 explicit SatParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
627 SatParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SatParameters& from);
629 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SatParameters&& from) noexcept
630 : SatParameters(arena) {
631 *this = ::std::move(from);
632 }
633 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
634 static void* PROTOBUF_NONNULL PlacementNew_(
635 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
636 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
637 static constexpr auto InternalNewImpl_();
638
639 public:
640 static constexpr auto InternalGenerateClassData_();
641
642 ::google::protobuf::Metadata GetMetadata() const;
643 // nested types ----------------------------------------------------
644 using VariableOrder = SatParameters_VariableOrder;
645 static constexpr VariableOrder IN_ORDER = SatParameters_VariableOrder_IN_ORDER;
648 static inline bool VariableOrder_IsValid(int value) {
651 static constexpr VariableOrder VariableOrder_MIN = SatParameters_VariableOrder_VariableOrder_MIN;
652 static constexpr VariableOrder VariableOrder_MAX = SatParameters_VariableOrder_VariableOrder_MAX;
654 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL VariableOrder_descriptor() {
657 template <typename T>
658 static inline const ::std::string& VariableOrder_Name(T value) {
661 static inline bool VariableOrder_Parse(
662 ::absl::string_view name, VariableOrder* PROTOBUF_NONNULL value) {
664 }
665 using Polarity = SatParameters_Polarity;
666 static constexpr Polarity POLARITY_TRUE = SatParameters_Polarity_POLARITY_TRUE;
669 static inline bool Polarity_IsValid(int value) {
672 static constexpr Polarity Polarity_MIN = SatParameters_Polarity_Polarity_MIN;
673 static constexpr Polarity Polarity_MAX = SatParameters_Polarity_Polarity_MAX;
675 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL Polarity_descriptor() {
678 template <typename T>
679 static inline const ::std::string& Polarity_Name(T value) {
680 return SatParameters_Polarity_Name(value);
682 static inline bool Polarity_Parse(
683 ::absl::string_view name, Polarity* PROTOBUF_NONNULL value) {
685 }
686 using ConflictMinimizationAlgorithm = SatParameters_ConflictMinimizationAlgorithm;
687 static constexpr ConflictMinimizationAlgorithm NONE = SatParameters_ConflictMinimizationAlgorithm_NONE;
690 static inline bool ConflictMinimizationAlgorithm_IsValid(int value) {
693 static constexpr ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm_MIN = SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_MIN;
694 static constexpr ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm_MAX = SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_MAX;
696 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL ConflictMinimizationAlgorithm_descriptor() {
699 template <typename T>
700 static inline const ::std::string& ConflictMinimizationAlgorithm_Name(T value) {
703 static inline bool ConflictMinimizationAlgorithm_Parse(
704 ::absl::string_view name, ConflictMinimizationAlgorithm* PROTOBUF_NONNULL value) {
706 }
707 using BinaryMinizationAlgorithm = SatParameters_BinaryMinizationAlgorithm;
708 static constexpr BinaryMinizationAlgorithm NO_BINARY_MINIMIZATION = SatParameters_BinaryMinizationAlgorithm_NO_BINARY_MINIMIZATION;
711 static inline bool BinaryMinizationAlgorithm_IsValid(int value) {
714 static constexpr BinaryMinizationAlgorithm BinaryMinizationAlgorithm_MIN = SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_MIN;
715 static constexpr BinaryMinizationAlgorithm BinaryMinizationAlgorithm_MAX = SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_MAX;
717 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL BinaryMinizationAlgorithm_descriptor() {
720 template <typename T>
721 static inline const ::std::string& BinaryMinizationAlgorithm_Name(T value) {
724 static inline bool BinaryMinizationAlgorithm_Parse(
725 ::absl::string_view name, BinaryMinizationAlgorithm* PROTOBUF_NONNULL value) {
727 }
728 using ClauseOrdering = SatParameters_ClauseOrdering;
729 static constexpr ClauseOrdering CLAUSE_ACTIVITY = SatParameters_ClauseOrdering_CLAUSE_ACTIVITY;
731 static inline bool ClauseOrdering_IsValid(int value) {
734 static constexpr ClauseOrdering ClauseOrdering_MIN = SatParameters_ClauseOrdering_ClauseOrdering_MIN;
735 static constexpr ClauseOrdering ClauseOrdering_MAX = SatParameters_ClauseOrdering_ClauseOrdering_MAX;
737 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL ClauseOrdering_descriptor() {
740 template <typename T>
741 static inline const ::std::string& ClauseOrdering_Name(T value) {
744 static inline bool ClauseOrdering_Parse(
745 ::absl::string_view name, ClauseOrdering* PROTOBUF_NONNULL value) {
747 }
748 using RestartAlgorithm = SatParameters_RestartAlgorithm;
749 static constexpr RestartAlgorithm NO_RESTART = SatParameters_RestartAlgorithm_NO_RESTART;
754 static inline bool RestartAlgorithm_IsValid(int value) {
757 static constexpr RestartAlgorithm RestartAlgorithm_MIN = SatParameters_RestartAlgorithm_RestartAlgorithm_MIN;
758 static constexpr RestartAlgorithm RestartAlgorithm_MAX = SatParameters_RestartAlgorithm_RestartAlgorithm_MAX;
760 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL RestartAlgorithm_descriptor() {
763 template <typename T>
764 static inline const ::std::string& RestartAlgorithm_Name(T value) {
767 static inline bool RestartAlgorithm_Parse(
768 ::absl::string_view name, RestartAlgorithm* PROTOBUF_NONNULL value) {
770 }
771 using MaxSatAssumptionOrder = SatParameters_MaxSatAssumptionOrder;
772 static constexpr MaxSatAssumptionOrder DEFAULT_ASSUMPTION_ORDER = SatParameters_MaxSatAssumptionOrder_DEFAULT_ASSUMPTION_ORDER;
775 static inline bool MaxSatAssumptionOrder_IsValid(int value) {
778 static constexpr MaxSatAssumptionOrder MaxSatAssumptionOrder_MIN = SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_MIN;
779 static constexpr MaxSatAssumptionOrder MaxSatAssumptionOrder_MAX = SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_MAX;
781 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL MaxSatAssumptionOrder_descriptor() {
784 template <typename T>
785 static inline const ::std::string& MaxSatAssumptionOrder_Name(T value) {
788 static inline bool MaxSatAssumptionOrder_Parse(
789 ::absl::string_view name, MaxSatAssumptionOrder* PROTOBUF_NONNULL value) {
791 }
792 using MaxSatStratificationAlgorithm = SatParameters_MaxSatStratificationAlgorithm;
793 static constexpr MaxSatStratificationAlgorithm STRATIFICATION_NONE = SatParameters_MaxSatStratificationAlgorithm_STRATIFICATION_NONE;
796 static inline bool MaxSatStratificationAlgorithm_IsValid(int value) {
799 static constexpr MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm_MIN = SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_MIN;
800 static constexpr MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm_MAX = SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_MAX;
802 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL MaxSatStratificationAlgorithm_descriptor() {
805 template <typename T>
806 static inline const ::std::string& MaxSatStratificationAlgorithm_Name(T value) {
809 static inline bool MaxSatStratificationAlgorithm_Parse(
810 ::absl::string_view name, MaxSatStratificationAlgorithm* PROTOBUF_NONNULL value) {
812 }
813 using SearchBranching = SatParameters_SearchBranching;
814 static constexpr SearchBranching AUTOMATIC_SEARCH = SatParameters_SearchBranching_AUTOMATIC_SEARCH;
823 static inline bool SearchBranching_IsValid(int value) {
826 static constexpr SearchBranching SearchBranching_MIN = SatParameters_SearchBranching_SearchBranching_MIN;
827 static constexpr SearchBranching SearchBranching_MAX = SatParameters_SearchBranching_SearchBranching_MAX;
829 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SearchBranching_descriptor() {
832 template <typename T>
833 static inline const ::std::string& SearchBranching_Name(T value) {
836 static inline bool SearchBranching_Parse(
837 ::absl::string_view name, SearchBranching* PROTOBUF_NONNULL value) {
839 }
840 using SharedTreeSplitStrategy = SatParameters_SharedTreeSplitStrategy;
841 static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_AUTO = SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_AUTO;
846 static inline bool SharedTreeSplitStrategy_IsValid(int value) {
849 static constexpr SharedTreeSplitStrategy SharedTreeSplitStrategy_MIN = SatParameters_SharedTreeSplitStrategy_SharedTreeSplitStrategy_MIN;
850 static constexpr SharedTreeSplitStrategy SharedTreeSplitStrategy_MAX = SatParameters_SharedTreeSplitStrategy_SharedTreeSplitStrategy_MAX;
852 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SharedTreeSplitStrategy_descriptor() {
855 template <typename T>
856 static inline const ::std::string& SharedTreeSplitStrategy_Name(T value) {
859 static inline bool SharedTreeSplitStrategy_Parse(
860 ::absl::string_view name, SharedTreeSplitStrategy* PROTOBUF_NONNULL value) {
862 }
863 using FPRoundingMethod = SatParameters_FPRoundingMethod;
864 static constexpr FPRoundingMethod NEAREST_INTEGER = SatParameters_FPRoundingMethod_NEAREST_INTEGER;
868 static inline bool FPRoundingMethod_IsValid(int value) {
871 static constexpr FPRoundingMethod FPRoundingMethod_MIN = SatParameters_FPRoundingMethod_FPRoundingMethod_MIN;
872 static constexpr FPRoundingMethod FPRoundingMethod_MAX = SatParameters_FPRoundingMethod_FPRoundingMethod_MAX;
874 static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL FPRoundingMethod_descriptor() {
877 template <typename T>
878 static inline const ::std::string& FPRoundingMethod_Name(T value) {
881 static inline bool FPRoundingMethod_Parse(
882 ::absl::string_view name, FPRoundingMethod* PROTOBUF_NONNULL value) {
884 }
885
886 // accessors -------------------------------------------------------
887 enum : int {
888 kPreferredVariableOrderFieldNumber = 1,
889 kClauseCleanupTargetFieldNumber = 13,
1192 // optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];
1193 bool has_preferred_variable_order() const;
1197
1198 private:
1199 ::operations_research::sat::SatParameters_VariableOrder _internal_preferred_variable_order() const;
1200 void _internal_set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value);
1201
1202 public:
1203 // optional int32 clause_cleanup_target = 13 [default = 0];
1204 bool has_clause_cleanup_target() const;
1206 ::int32_t clause_cleanup_target() const;
1207 void set_clause_cleanup_target(::int32_t value);
1208
1209 private:
1210 ::int32_t _internal_clause_cleanup_target() const;
1211 void _internal_set_clause_cleanup_target(::int32_t value);
1212
1213 public:
1214 // optional double random_polarity_ratio = 45 [default = 0];
1215 bool has_random_polarity_ratio() const;
1217 double random_polarity_ratio() const;
1218 void set_random_polarity_ratio(double value);
1219
1220 private:
1221 double _internal_random_polarity_ratio() const;
1222 void _internal_set_random_polarity_ratio(double value);
1223
1224 public:
1225 // optional bool log_search_progress = 41 [default = false];
1226 bool has_log_search_progress() const;
1228 bool log_search_progress() const;
1229 void set_log_search_progress(bool value);
1230
1231 private:
1232 bool _internal_log_search_progress() const;
1233 void _internal_set_log_search_progress(bool value);
1234
1235 public:
1236 // optional bool use_pb_resolution = 43 [default = false];
1237 bool has_use_pb_resolution() const;
1239 bool use_pb_resolution() const;
1240 void set_use_pb_resolution(bool value);
1241
1242 private:
1243 bool _internal_use_pb_resolution() const;
1244 void _internal_set_use_pb_resolution(bool value);
1245
1246 public:
1247 // optional bool use_optimization_hints = 35 [default = true];
1248 bool has_use_optimization_hints() const;
1250 bool use_optimization_hints() const;
1251 void set_use_optimization_hints(bool value);
1252
1253 private:
1254 bool _internal_use_optimization_hints() const;
1255 void _internal_set_use_optimization_hints(bool value);
1256
1257 public:
1258 // optional bool use_phase_saving = 44 [default = true];
1259 bool has_use_phase_saving() const;
1260 void clear_use_phase_saving() ;
1261 bool use_phase_saving() const;
1262 void set_use_phase_saving(bool value);
1263
1264 private:
1265 bool _internal_use_phase_saving() const;
1266 void _internal_set_use_phase_saving(bool value);
1267
1268 public:
1269 // optional bool use_precedences_in_disjunctive_constraint = 74 [default = true];
1274
1275 private:
1276 bool _internal_use_precedences_in_disjunctive_constraint() const;
1277 void _internal_set_use_precedences_in_disjunctive_constraint(bool value);
1278
1279 public:
1280 // optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];
1281 bool has_initial_polarity() const;
1282 void clear_initial_polarity() ;
1285
1286 private:
1287 ::operations_research::sat::SatParameters_Polarity _internal_initial_polarity() const;
1288 void _internal_set_initial_polarity(::operations_research::sat::SatParameters_Polarity value);
1289
1290 public:
1291 // optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];
1292 bool has_minimization_algorithm() const;
1296
1297 private:
1298 ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm _internal_minimization_algorithm() const;
1299 void _internal_set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value);
1300
1301 public:
1302 // optional double variable_activity_decay = 15 [default = 0.8];
1303 bool has_variable_activity_decay() const;
1305 double variable_activity_decay() const;
1306 void set_variable_activity_decay(double value);
1307
1308 private:
1309 double _internal_variable_activity_decay() const;
1310 void _internal_set_variable_activity_decay(double value);
1311
1312 public:
1313 // optional double max_variable_activity_value = 16 [default = 1e+100];
1316 double max_variable_activity_value() const;
1317 void set_max_variable_activity_value(double value);
1318
1319 private:
1320 double _internal_max_variable_activity_value() const;
1321 void _internal_set_max_variable_activity_value(double value);
1322
1323 public:
1324 // optional double clause_activity_decay = 17 [default = 0.999];
1325 bool has_clause_activity_decay() const;
1327 double clause_activity_decay() const;
1328 void set_clause_activity_decay(double value);
1329
1330 private:
1331 double _internal_clause_activity_decay() const;
1332 void _internal_set_clause_activity_decay(double value);
1333
1334 public:
1335 // optional int32 clause_cleanup_period = 11 [default = 10000];
1336 bool has_clause_cleanup_period() const;
1338 ::int32_t clause_cleanup_period() const;
1339 void set_clause_cleanup_period(::int32_t value);
1340
1341 private:
1342 ::int32_t _internal_clause_cleanup_period() const;
1343 void _internal_set_clause_cleanup_period(::int32_t value);
1344
1345 public:
1346 // optional int32 glucose_decay_increment_period = 24 [default = 5000];
1349 ::int32_t glucose_decay_increment_period() const;
1350 void set_glucose_decay_increment_period(::int32_t value);
1351
1352 private:
1353 ::int32_t _internal_glucose_decay_increment_period() const;
1354 void _internal_set_glucose_decay_increment_period(::int32_t value);
1355
1356 public:
1357 // optional double max_clause_activity_value = 18 [default = 1e+20];
1358 bool has_max_clause_activity_value() const;
1360 double max_clause_activity_value() const;
1361 void set_max_clause_activity_value(double value);
1362
1363 private:
1364 double _internal_max_clause_activity_value() const;
1365 void _internal_set_max_clause_activity_value(double value);
1366
1367 public:
1368 // optional double glucose_max_decay = 22 [default = 0.95];
1369 bool has_glucose_max_decay() const;
1371 double glucose_max_decay() const;
1372 void set_glucose_max_decay(double value);
1373
1374 private:
1375 double _internal_glucose_max_decay() const;
1376 void _internal_set_glucose_max_decay(double value);
1377
1378 public:
1379 // optional double glucose_decay_increment = 23 [default = 0.01];
1380 bool has_glucose_decay_increment() const;
1382 double glucose_decay_increment() const;
1383 void set_glucose_decay_increment(double value);
1384
1385 private:
1386 double _internal_glucose_decay_increment() const;
1387 void _internal_set_glucose_decay_increment(double value);
1388
1389 public:
1390 // optional int32 restart_period = 30 [default = 50];
1391 bool has_restart_period() const;
1392 void clear_restart_period() ;
1393 ::int32_t restart_period() const;
1394 void set_restart_period(::int32_t value);
1395
1396 private:
1397 ::int32_t _internal_restart_period() const;
1398 void _internal_set_restart_period(::int32_t value);
1399
1400 public:
1401 // optional int32 random_seed = 31 [default = 1];
1402 bool has_random_seed() const;
1403 void clear_random_seed() ;
1404 ::int32_t random_seed() const;
1405 void set_random_seed(::int32_t value);
1406
1407 private:
1408 ::int32_t _internal_random_seed() const;
1409 void _internal_set_random_seed(::int32_t value);
1410
1411 public:
1412 // optional double max_time_in_seconds = 36 [default = inf];
1413 bool has_max_time_in_seconds() const;
1415 double max_time_in_seconds() const;
1416 void set_max_time_in_seconds(double value);
1417
1418 private:
1419 double _internal_max_time_in_seconds() const;
1420 void _internal_set_max_time_in_seconds(double value);
1421
1422 public:
1423 // optional int64 max_number_of_conflicts = 37 [default = 9223372036854775807];
1424 bool has_max_number_of_conflicts() const;
1426 ::int64_t max_number_of_conflicts() const;
1427 void set_max_number_of_conflicts(::int64_t value);
1428
1429 private:
1430 ::int64_t _internal_max_number_of_conflicts() const;
1431 void _internal_set_max_number_of_conflicts(::int64_t value);
1432
1433 public:
1434 // repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;
1435 int restart_algorithms_size() const;
1436 private:
1437 int _internal_restart_algorithms_size() const;
1438
1439 public:
1441 public:
1445 const ::google::protobuf::RepeatedField<int>& restart_algorithms() const;
1446 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL mutable_restart_algorithms();
1447
1448 private:
1449 const ::google::protobuf::RepeatedField<int>& _internal_restart_algorithms() const;
1450 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL _internal_mutable_restart_algorithms();
1451
1452 public:
1453 // repeated string subsolvers = 207;
1454 int subsolvers_size() const;
1455 private:
1456 int _internal_subsolvers_size() const;
1457
1458 public:
1459 void clear_subsolvers() ;
1460 const ::std::string& subsolvers(int index) const;
1461 ::std::string* PROTOBUF_NONNULL mutable_subsolvers(int index);
1462 template <typename Arg_ = const ::std::string&, typename... Args_>
1463 void set_subsolvers(int index, Arg_&& value, Args_... args);
1464 ::std::string* PROTOBUF_NONNULL add_subsolvers();
1465 template <typename Arg_ = const ::std::string&, typename... Args_>
1466 void add_subsolvers(Arg_&& value, Args_... args);
1467 const ::google::protobuf::RepeatedPtrField<::std::string>& subsolvers() const;
1468 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL mutable_subsolvers();
1469
1470 private:
1471 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_subsolvers() const;
1472 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_subsolvers();
1473
1474 public:
1475 // repeated string ignore_subsolvers = 209;
1476 int ignore_subsolvers_size() const;
1477 private:
1478 int _internal_ignore_subsolvers_size() const;
1479
1480 public:
1482 const ::std::string& ignore_subsolvers(int index) const;
1483 ::std::string* PROTOBUF_NONNULL mutable_ignore_subsolvers(int index);
1484 template <typename Arg_ = const ::std::string&, typename... Args_>
1485 void set_ignore_subsolvers(int index, Arg_&& value, Args_... args);
1486 ::std::string* PROTOBUF_NONNULL add_ignore_subsolvers();
1487 template <typename Arg_ = const ::std::string&, typename... Args_>
1488 void add_ignore_subsolvers(Arg_&& value, Args_... args);
1489 const ::google::protobuf::RepeatedPtrField<::std::string>& ignore_subsolvers() const;
1490 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL mutable_ignore_subsolvers();
1491
1492 private:
1493 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_ignore_subsolvers() const;
1494 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_ignore_subsolvers();
1495
1496 public:
1497 // repeated .operations_research.sat.SatParameters subsolver_params = 210;
1498 int subsolver_params_size() const;
1499 private:
1500 int _internal_subsolver_params_size() const;
1501
1502 public:
1503 void clear_subsolver_params() ;
1505 ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>* PROTOBUF_NONNULL mutable_subsolver_params();
1506
1507 private:
1508 const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>& _internal_subsolver_params() const;
1509 ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>* PROTOBUF_NONNULL _internal_mutable_subsolver_params();
1510 public:
1511 const ::operations_research::sat::SatParameters& subsolver_params(int index) const;
1513 const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>& subsolver_params() const;
1514 // repeated string extra_subsolvers = 219;
1515 int extra_subsolvers_size() const;
1516 private:
1517 int _internal_extra_subsolvers_size() const;
1518
1519 public:
1520 void clear_extra_subsolvers() ;
1521 const ::std::string& extra_subsolvers(int index) const;
1522 ::std::string* PROTOBUF_NONNULL mutable_extra_subsolvers(int index);
1523 template <typename Arg_ = const ::std::string&, typename... Args_>
1524 void set_extra_subsolvers(int index, Arg_&& value, Args_... args);
1525 ::std::string* PROTOBUF_NONNULL add_extra_subsolvers();
1526 template <typename Arg_ = const ::std::string&, typename... Args_>
1527 void add_extra_subsolvers(Arg_&& value, Args_... args);
1528 const ::google::protobuf::RepeatedPtrField<::std::string>& extra_subsolvers() const;
1529 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL mutable_extra_subsolvers();
1530
1531 private:
1532 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_extra_subsolvers() const;
1533 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_extra_subsolvers();
1534
1535 public:
1536 // repeated string filter_subsolvers = 293;
1537 int filter_subsolvers_size() const;
1538 private:
1539 int _internal_filter_subsolvers_size() const;
1540
1541 public:
1543 const ::std::string& filter_subsolvers(int index) const;
1544 ::std::string* PROTOBUF_NONNULL mutable_filter_subsolvers(int index);
1545 template <typename Arg_ = const ::std::string&, typename... Args_>
1546 void set_filter_subsolvers(int index, Arg_&& value, Args_... args);
1547 ::std::string* PROTOBUF_NONNULL add_filter_subsolvers();
1548 template <typename Arg_ = const ::std::string&, typename... Args_>
1549 void add_filter_subsolvers(Arg_&& value, Args_... args);
1550 const ::google::protobuf::RepeatedPtrField<::std::string>& filter_subsolvers() const;
1551 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL mutable_filter_subsolvers();
1552
1553 private:
1554 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_filter_subsolvers() const;
1555 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_filter_subsolvers();
1556
1557 public:
1558 // optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];
1559 bool has_default_restart_algorithms() const;
1561 const ::std::string& default_restart_algorithms() const;
1562 template <typename Arg_ = const ::std::string&, typename... Args_>
1563 void set_default_restart_algorithms(Arg_&& arg, Args_... args);
1564 ::std::string* PROTOBUF_NONNULL mutable_default_restart_algorithms();
1565 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_default_restart_algorithms();
1566 void set_allocated_default_restart_algorithms(::std::string* PROTOBUF_NULLABLE value);
1567
1568 private:
1569 const ::std::string& _internal_default_restart_algorithms() const;
1570 PROTOBUF_ALWAYS_INLINE void _internal_set_default_restart_algorithms(const ::std::string& value);
1571 ::std::string* PROTOBUF_NONNULL _internal_mutable_default_restart_algorithms();
1572
1573 public:
1574 // optional string name = 171 [default = ""];
1575 bool has_name() const;
1576 void clear_name() ;
1577 const ::std::string& name() const;
1578 template <typename Arg_ = const ::std::string&, typename... Args_>
1579 void set_name(Arg_&& arg, Args_... args);
1580 ::std::string* PROTOBUF_NONNULL mutable_name();
1581 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
1582 void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);
1583
1584 private:
1585 const ::std::string& _internal_name() const;
1586 PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
1587 ::std::string* PROTOBUF_NONNULL _internal_mutable_name();
1588
1589 public:
1590 // optional string log_prefix = 185 [default = ""];
1591 bool has_log_prefix() const;
1592 void clear_log_prefix() ;
1593 const ::std::string& log_prefix() const;
1594 template <typename Arg_ = const ::std::string&, typename... Args_>
1595 void set_log_prefix(Arg_&& arg, Args_... args);
1596 ::std::string* PROTOBUF_NONNULL mutable_log_prefix();
1597 [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_log_prefix();
1598 void set_allocated_log_prefix(::std::string* PROTOBUF_NULLABLE value);
1599
1600 private:
1601 const ::std::string& _internal_log_prefix() const;
1602 PROTOBUF_ALWAYS_INLINE void _internal_set_log_prefix(const ::std::string& value);
1603 ::std::string* PROTOBUF_NONNULL _internal_mutable_log_prefix();
1604
1605 public:
1606 // optional double random_branches_ratio = 32 [default = 0];
1607 bool has_random_branches_ratio() const;
1609 double random_branches_ratio() const;
1610 void set_random_branches_ratio(double value);
1611
1612 private:
1613 double _internal_random_branches_ratio() const;
1614 void _internal_set_random_branches_ratio(double value);
1615
1616 public:
1617 // optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];
1618 bool has_max_sat_assumption_order() const;
1622
1623 private:
1624 ::operations_research::sat::SatParameters_MaxSatAssumptionOrder _internal_max_sat_assumption_order() const;
1625 void _internal_set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value);
1626
1627 public:
1628 // optional bool minimize_reduction_during_pb_resolution = 48 [default = false];
1633
1634 private:
1635 bool _internal_minimize_reduction_during_pb_resolution() const;
1636 void _internal_set_minimize_reduction_during_pb_resolution(bool value);
1637
1638 public:
1639 // optional bool max_sat_reverse_assumption_order = 52 [default = false];
1643 void set_max_sat_reverse_assumption_order(bool value);
1644
1645 private:
1646 bool _internal_max_sat_reverse_assumption_order() const;
1647 void _internal_set_max_sat_reverse_assumption_order(bool value);
1648
1649 public:
1650 // optional bool use_blocking_restart = 64 [default = false];
1651 bool has_use_blocking_restart() const;
1653 bool use_blocking_restart() const;
1654 void set_use_blocking_restart(bool value);
1655
1656 private:
1657 bool _internal_use_blocking_restart() const;
1658 void _internal_set_use_blocking_restart(bool value);
1659
1660 public:
1661 // optional bool use_erwa_heuristic = 75 [default = false];
1662 bool has_use_erwa_heuristic() const;
1664 bool use_erwa_heuristic() const;
1665 void set_use_erwa_heuristic(bool value);
1666
1667 private:
1668 bool _internal_use_erwa_heuristic() const;
1669 void _internal_set_use_erwa_heuristic(bool value);
1670
1671 public:
1672 // optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];
1673 bool has_clause_cleanup_ordering() const;
1677
1678 private:
1679 ::operations_research::sat::SatParameters_ClauseOrdering _internal_clause_cleanup_ordering() const;
1680 void _internal_set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value);
1681
1682 public:
1683 // optional int32 num_conflicts_before_strategy_changes = 68 [default = 0];
1686 ::int32_t num_conflicts_before_strategy_changes() const;
1687 void set_num_conflicts_before_strategy_changes(::int32_t value);
1688
1689 private:
1690 ::int32_t _internal_num_conflicts_before_strategy_changes() const;
1691 void _internal_set_num_conflicts_before_strategy_changes(::int32_t value);
1692
1693 public:
1694 // optional double strategy_change_increase_ratio = 69 [default = 0];
1697 double strategy_change_increase_ratio() const;
1698 void set_strategy_change_increase_ratio(double value);
1699
1700 private:
1701 double _internal_strategy_change_increase_ratio() const;
1702 void _internal_set_strategy_change_increase_ratio(double value);
1703
1704 public:
1705 // optional double initial_variables_activity = 76 [default = 0];
1706 bool has_initial_variables_activity() const;
1708 double initial_variables_activity() const;
1709 void set_initial_variables_activity(double value);
1710
1711 private:
1712 double _internal_initial_variables_activity() const;
1713 void _internal_set_initial_variables_activity(double value);
1714
1715 public:
1716 // optional bool also_bump_variables_in_conflict_reasons = 77 [default = false];
1721
1722 private:
1723 bool _internal_also_bump_variables_in_conflict_reasons() const;
1724 void _internal_set_also_bump_variables_in_conflict_reasons(bool value);
1725
1726 public:
1727 // optional bool use_overload_checker_in_cumulative = 78 [default = false];
1732
1733 private:
1734 bool _internal_use_overload_checker_in_cumulative() const;
1735 void _internal_set_use_overload_checker_in_cumulative(bool value);
1736
1737 public:
1738 // optional bool use_timetable_edge_finding_in_cumulative = 79 [default = false];
1743
1744 private:
1745 bool _internal_use_timetable_edge_finding_in_cumulative() const;
1746 void _internal_set_use_timetable_edge_finding_in_cumulative(bool value);
1747
1748 public:
1749 // optional bool optimize_with_core = 83 [default = false];
1750 bool has_optimize_with_core() const;
1752 bool optimize_with_core() const;
1753 void set_optimize_with_core(bool value);
1754
1755 private:
1756 bool _internal_optimize_with_core() const;
1757 void _internal_set_optimize_with_core(bool value);
1758
1759 public:
1760 // optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];
1761 bool has_search_branching() const;
1762 void clear_search_branching() ;
1765
1766 private:
1767 ::operations_research::sat::SatParameters_SearchBranching _internal_search_branching() const;
1768 void _internal_set_search_branching(::operations_research::sat::SatParameters_SearchBranching value);
1769
1770 public:
1771 // optional bool optimize_with_max_hs = 85 [default = false];
1772 bool has_optimize_with_max_hs() const;
1774 bool optimize_with_max_hs() const;
1775 void set_optimize_with_max_hs(bool value);
1776
1777 private:
1778 bool _internal_optimize_with_max_hs() const;
1779 void _internal_set_optimize_with_max_hs(bool value);
1780
1781 public:
1782 // optional bool enumerate_all_solutions = 87 [default = false];
1783 bool has_enumerate_all_solutions() const;
1785 bool enumerate_all_solutions() const;
1786 void set_enumerate_all_solutions(bool value);
1787
1788 private:
1789 bool _internal_enumerate_all_solutions() const;
1790 void _internal_set_enumerate_all_solutions(bool value);
1791
1792 public:
1793 // optional bool only_add_cuts_at_level_zero = 92 [default = false];
1796 bool only_add_cuts_at_level_zero() const;
1797 void set_only_add_cuts_at_level_zero(bool value);
1798
1799 private:
1800 bool _internal_only_add_cuts_at_level_zero() const;
1801 void _internal_set_only_add_cuts_at_level_zero(bool value);
1802
1803 public:
1804 // optional bool stop_after_first_solution = 98 [default = false];
1805 bool has_stop_after_first_solution() const;
1807 bool stop_after_first_solution() const;
1808 void set_stop_after_first_solution(bool value);
1809
1810 private:
1811 bool _internal_stop_after_first_solution() const;
1812 void _internal_set_stop_after_first_solution(bool value);
1813
1814 public:
1815 // optional int32 num_search_workers = 100 [default = 0];
1816 bool has_num_search_workers() const;
1818 ::int32_t num_search_workers() const;
1819 void set_num_search_workers(::int32_t value);
1820
1821 private:
1822 ::int32_t _internal_num_search_workers() const;
1823 void _internal_set_num_search_workers(::int32_t value);
1824
1825 public:
1826 // optional int64 search_random_variable_pool_size = 104 [default = 0];
1829 ::int64_t search_random_variable_pool_size() const;
1830 void set_search_random_variable_pool_size(::int64_t value);
1831
1832 private:
1833 ::int64_t _internal_search_random_variable_pool_size() const;
1834 void _internal_set_search_random_variable_pool_size(::int64_t value);
1835
1836 public:
1837 // optional bool use_lns_only = 101 [default = false];
1838 bool has_use_lns_only() const;
1839 void clear_use_lns_only() ;
1840 bool use_lns_only() const;
1841 void set_use_lns_only(bool value);
1842
1843 private:
1844 bool _internal_use_lns_only() const;
1845 void _internal_set_use_lns_only(bool value);
1846
1847 public:
1848 // optional bool randomize_search = 103 [default = false];
1849 bool has_randomize_search() const;
1850 void clear_randomize_search() ;
1851 bool randomize_search() const;
1852 void set_randomize_search(bool value);
1853
1854 private:
1855 bool _internal_randomize_search() const;
1856 void _internal_set_randomize_search(bool value);
1857
1858 public:
1859 // optional bool use_optional_variables = 108 [default = false];
1860 bool has_use_optional_variables() const;
1862 bool use_optional_variables() const;
1863 void set_use_optional_variables(bool value);
1864
1865 private:
1866 bool _internal_use_optional_variables() const;
1867 void _internal_set_use_optional_variables(bool value);
1868
1869 public:
1870 // optional bool exploit_best_solution = 130 [default = false];
1871 bool has_exploit_best_solution() const;
1873 bool exploit_best_solution() const;
1874 void set_exploit_best_solution(bool value);
1875
1876 private:
1877 bool _internal_exploit_best_solution() const;
1878 void _internal_set_exploit_best_solution(bool value);
1879
1880 public:
1881 // optional int32 interleave_batch_size = 134 [default = 0];
1882 bool has_interleave_batch_size() const;
1884 ::int32_t interleave_batch_size() const;
1885 void set_interleave_batch_size(::int32_t value);
1886
1887 private:
1888 ::int32_t _internal_interleave_batch_size() const;
1889 void _internal_set_interleave_batch_size(::int32_t value);
1890
1891 public:
1892 // optional bool fill_tightened_domains_in_response = 132 [default = false];
1897
1898 private:
1899 bool _internal_fill_tightened_domains_in_response() const;
1900 void _internal_set_fill_tightened_domains_in_response(bool value);
1901
1902 public:
1903 // optional bool use_combined_no_overlap = 133 [default = false];
1904 bool has_use_combined_no_overlap() const;
1906 bool use_combined_no_overlap() const;
1907 void set_use_combined_no_overlap(bool value);
1908
1909 private:
1910 bool _internal_use_combined_no_overlap() const;
1911 void _internal_set_use_combined_no_overlap(bool value);
1912
1913 public:
1914 // optional bool interleave_search = 136 [default = false];
1915 bool has_interleave_search() const;
1917 bool interleave_search() const;
1918 void set_interleave_search(bool value);
1919
1920 private:
1921 bool _internal_interleave_search() const;
1922 void _internal_set_interleave_search(bool value);
1923
1924 public:
1925 // optional bool diversify_lns_params = 137 [default = false];
1926 bool has_diversify_lns_params() const;
1928 bool diversify_lns_params() const;
1929 void set_diversify_lns_params(bool value);
1930
1931 private:
1932 bool _internal_diversify_lns_params() const;
1933 void _internal_set_diversify_lns_params(bool value);
1934
1935 public:
1936 // optional int32 debug_max_num_presolve_operations = 151 [default = 0];
1939 ::int32_t debug_max_num_presolve_operations() const;
1940 void set_debug_max_num_presolve_operations(::int32_t value);
1941
1942 private:
1943 ::int32_t _internal_debug_max_num_presolve_operations() const;
1944 void _internal_set_debug_max_num_presolve_operations(::int32_t value);
1945
1946 public:
1947 // optional double relative_gap_limit = 160 [default = 0];
1948 bool has_relative_gap_limit() const;
1950 double relative_gap_limit() const;
1951 void set_relative_gap_limit(double value);
1952
1953 private:
1954 double _internal_relative_gap_limit() const;
1955 void _internal_set_relative_gap_limit(double value);
1956
1957 public:
1958 // optional bool stop_after_presolve = 149 [default = false];
1959 bool has_stop_after_presolve() const;
1961 bool stop_after_presolve() const;
1962 void set_stop_after_presolve(bool value);
1963
1964 private:
1965 bool _internal_stop_after_presolve() const;
1966 void _internal_set_stop_after_presolve(bool value);
1967
1968 public:
1969 // optional bool exploit_relaxation_solution = 161 [default = false];
1972 bool exploit_relaxation_solution() const;
1973 void set_exploit_relaxation_solution(bool value);
1974
1975 private:
1976 bool _internal_exploit_relaxation_solution() const;
1977 void _internal_set_exploit_relaxation_solution(bool value);
1978
1979 public:
1980 // optional bool debug_postsolve_with_full_solver = 162 [default = false];
1984 void set_debug_postsolve_with_full_solver(bool value);
1985
1986 private:
1987 bool _internal_debug_postsolve_with_full_solver() const;
1988 void _internal_set_debug_postsolve_with_full_solver(bool value);
1989
1990 public:
1991 // optional bool repair_hint = 167 [default = false];
1992 bool has_repair_hint() const;
1993 void clear_repair_hint() ;
1994 bool repair_hint() const;
1995 void set_repair_hint(bool value);
1996
1997 private:
1998 bool _internal_repair_hint() const;
1999 void _internal_set_repair_hint(bool value);
2000
2001 public:
2002 // optional bool expand_alldiff_constraints = 170 [default = false];
2003 bool has_expand_alldiff_constraints() const;
2005 bool expand_alldiff_constraints() const;
2006 void set_expand_alldiff_constraints(bool value);
2007
2008 private:
2009 bool _internal_expand_alldiff_constraints() const;
2010 void _internal_set_expand_alldiff_constraints(bool value);
2011
2012 public:
2013 // optional bool keep_all_feasible_solutions_in_presolve = 173 [default = false];
2018
2019 private:
2020 bool _internal_keep_all_feasible_solutions_in_presolve() const;
2021 void _internal_set_keep_all_feasible_solutions_in_presolve(bool value);
2022
2023 public:
2024 // optional bool presolve_extract_integer_enforcement = 174 [default = false];
2029
2030 private:
2031 bool _internal_presolve_extract_integer_enforcement() const;
2032 void _internal_set_presolve_extract_integer_enforcement(bool value);
2033
2034 public:
2035 // optional bool polish_lp_solution = 175 [default = false];
2036 bool has_polish_lp_solution() const;
2038 bool polish_lp_solution() const;
2039 void set_polish_lp_solution(bool value);
2040
2041 private:
2042 bool _internal_polish_lp_solution() const;
2043 void _internal_set_polish_lp_solution(bool value);
2044
2045 public:
2046 // optional bool use_probing_search = 176 [default = false];
2047 bool has_use_probing_search() const;
2049 bool use_probing_search() const;
2050 void set_use_probing_search(bool value);
2051
2052 private:
2053 bool _internal_use_probing_search() const;
2054 void _internal_set_use_probing_search(bool value);
2055
2056 public:
2057 // optional bool permute_variable_randomly = 178 [default = false];
2058 bool has_permute_variable_randomly() const;
2060 bool permute_variable_randomly() const;
2061 void set_permute_variable_randomly(bool value);
2062
2063 private:
2064 bool _internal_permute_variable_randomly() const;
2065 void _internal_set_permute_variable_randomly(bool value);
2066
2067 public:
2068 // optional bool permute_presolve_constraint_order = 179 [default = false];
2073
2074 private:
2075 bool _internal_permute_presolve_constraint_order() const;
2076 void _internal_set_permute_presolve_constraint_order(bool value);
2077
2078 public:
2079 // optional bool use_absl_random = 180 [default = false];
2080 bool has_use_absl_random() const;
2081 void clear_use_absl_random() ;
2082 bool use_absl_random() const;
2083 void set_use_absl_random(bool value);
2084
2085 private:
2086 bool _internal_use_absl_random() const;
2087 void _internal_set_use_absl_random(bool value);
2088
2089 public:
2090 // optional bool disable_constraint_expansion = 181 [default = false];
2093 bool disable_constraint_expansion() const;
2094 void set_disable_constraint_expansion(bool value);
2095
2096 private:
2097 bool _internal_disable_constraint_expansion() const;
2098 void _internal_set_disable_constraint_expansion(bool value);
2099
2100 public:
2101 // optional bool log_to_response = 187 [default = false];
2102 bool has_log_to_response() const;
2103 void clear_log_to_response() ;
2104 bool log_to_response() const;
2105 void set_log_to_response(bool value);
2106
2107 private:
2108 bool _internal_log_to_response() const;
2109 void _internal_set_log_to_response(bool value);
2110
2111 public:
2112 // optional bool optimize_with_lb_tree_search = 188 [default = false];
2115 bool optimize_with_lb_tree_search() const;
2116 void set_optimize_with_lb_tree_search(bool value);
2117
2118 private:
2119 bool _internal_optimize_with_lb_tree_search() const;
2120 void _internal_set_optimize_with_lb_tree_search(bool value);
2121
2122 public:
2123 // optional bool log_subsolver_statistics = 189 [default = false];
2124 bool has_log_subsolver_statistics() const;
2126 bool log_subsolver_statistics() const;
2127 void set_log_subsolver_statistics(bool value);
2128
2129 private:
2130 bool _internal_log_subsolver_statistics() const;
2131 void _internal_set_log_subsolver_statistics(bool value);
2132
2133 public:
2134 // optional bool fix_variables_to_their_hinted_value = 192 [default = false];
2139
2140 private:
2141 bool _internal_fix_variables_to_their_hinted_value() const;
2142 void _internal_set_fix_variables_to_their_hinted_value(bool value);
2143
2144 public:
2145 // optional bool fill_additional_solutions_in_response = 194 [default = false];
2150
2151 private:
2152 bool _internal_fill_additional_solutions_in_response() const;
2153 void _internal_set_fill_additional_solutions_in_response(bool value);
2154
2155 public:
2156 // optional bool debug_crash_on_bad_hint = 195 [default = false];
2157 bool has_debug_crash_on_bad_hint() const;
2159 bool debug_crash_on_bad_hint() const;
2160 void set_debug_crash_on_bad_hint(bool value);
2161
2162 private:
2163 bool _internal_debug_crash_on_bad_hint() const;
2164 void _internal_set_debug_crash_on_bad_hint(bool value);
2165
2166 public:
2167 // optional bool add_objective_cut = 197 [default = false];
2168 bool has_add_objective_cut() const;
2170 bool add_objective_cut() const;
2171 void set_add_objective_cut(bool value);
2172
2173 private:
2174 bool _internal_add_objective_cut() const;
2175 void _internal_set_add_objective_cut(bool value);
2176
2177 public:
2178 // optional int32 num_workers = 206 [default = 0];
2179 bool has_num_workers() const;
2180 void clear_num_workers() ;
2181 ::int32_t num_workers() const;
2182 void set_num_workers(::int32_t value);
2183
2184 private:
2185 ::int32_t _internal_num_workers() const;
2186 void _internal_set_num_workers(::int32_t value);
2187
2188 public:
2189 // optional bool use_timetabling_in_no_overlap_2d = 200 [default = false];
2193 void set_use_timetabling_in_no_overlap_2d(bool value);
2194
2195 private:
2196 bool _internal_use_timetabling_in_no_overlap_2d() const;
2197 void _internal_set_use_timetabling_in_no_overlap_2d(bool value);
2198
2199 public:
2200 // optional bool use_energetic_reasoning_in_no_overlap_2d = 213 [default = false];
2205
2206 private:
2207 bool _internal_use_energetic_reasoning_in_no_overlap_2d() const;
2208 void _internal_set_use_energetic_reasoning_in_no_overlap_2d(bool value);
2209
2210 public:
2211 // optional bool use_hard_precedences_in_cumulative = 215 [default = false];
2216
2217 private:
2218 bool _internal_use_hard_precedences_in_cumulative() const;
2219 void _internal_set_use_hard_precedences_in_cumulative(bool value);
2220
2221 public:
2222 // optional bool detect_table_with_cost = 216 [default = false];
2223 bool has_detect_table_with_cost() const;
2225 bool detect_table_with_cost() const;
2226 void set_detect_table_with_cost(bool value);
2227
2228 private:
2229 bool _internal_detect_table_with_cost() const;
2230 void _internal_set_detect_table_with_cost(bool value);
2231
2232 public:
2233 // optional bool exploit_all_precedences = 220 [default = false];
2234 bool has_exploit_all_precedences() const;
2236 bool exploit_all_precedences() const;
2237 void set_exploit_all_precedences(bool value);
2238
2239 private:
2240 bool _internal_exploit_all_precedences() const;
2241 void _internal_set_exploit_all_precedences(bool value);
2242
2243 public:
2244 // optional bool only_solve_ip = 222 [default = false];
2245 bool has_only_solve_ip() const;
2246 void clear_only_solve_ip() ;
2247 bool only_solve_ip() const;
2248 void set_only_solve_ip(bool value);
2249
2250 private:
2251 bool _internal_only_solve_ip() const;
2252 void _internal_set_only_solve_ip(bool value);
2253
2254 public:
2255 // optional bool encode_complex_linear_constraint_with_integer = 223 [default = false];
2260
2261 private:
2262 bool _internal_encode_complex_linear_constraint_with_integer() const;
2263 void _internal_set_encode_complex_linear_constraint_with_integer(bool value);
2264
2265 public:
2266 // optional bool mip_scale_large_domain = 225 [default = false];
2267 bool has_mip_scale_large_domain() const;
2269 bool mip_scale_large_domain() const;
2270 void set_mip_scale_large_domain(bool value);
2271
2272 private:
2273 bool _internal_mip_scale_large_domain() const;
2274 void _internal_set_mip_scale_large_domain(bool value);
2275
2276 public:
2277 // optional bool use_objective_lb_search = 228 [default = false];
2278 bool has_use_objective_lb_search() const;
2280 bool use_objective_lb_search() const;
2281 void set_use_objective_lb_search(bool value);
2282
2283 private:
2284 bool _internal_use_objective_lb_search() const;
2285 void _internal_set_use_objective_lb_search(bool value);
2286
2287 public:
2288 // optional bool use_strong_propagation_in_disjunctive = 230 [default = false];
2293
2294 private:
2295 bool _internal_use_strong_propagation_in_disjunctive() const;
2296 void _internal_set_use_strong_propagation_in_disjunctive(bool value);
2297
2298 public:
2299 // optional bool use_shared_tree_search = 236 [default = false];
2300 bool has_use_shared_tree_search() const;
2302 bool use_shared_tree_search() const;
2303 void set_use_shared_tree_search(bool value);
2304
2305 private:
2306 bool _internal_use_shared_tree_search() const;
2307 void _internal_set_use_shared_tree_search(bool value);
2308
2309 public:
2310 // optional bool use_ls_only = 240 [default = false];
2311 bool has_use_ls_only() const;
2312 void clear_use_ls_only() ;
2313 bool use_ls_only() const;
2314 void set_use_ls_only(bool value);
2315
2316 private:
2317 bool _internal_use_ls_only() const;
2318 void _internal_set_use_ls_only(bool value);
2319
2320 public:
2321 // optional .operations_research.sat.SatParameters.SharedTreeSplitStrategy shared_tree_split_strategy = 239 [default = SPLIT_STRATEGY_AUTO];
2322 bool has_shared_tree_split_strategy() const;
2326
2327 private:
2328 ::operations_research::sat::SatParameters_SharedTreeSplitStrategy _internal_shared_tree_split_strategy() const;
2329 void _internal_set_shared_tree_split_strategy(::operations_research::sat::SatParameters_SharedTreeSplitStrategy value);
2330
2331 public:
2332 // optional int32 num_violation_ls = 244 [default = 0];
2333 bool has_num_violation_ls() const;
2334 void clear_num_violation_ls() ;
2335 ::int32_t num_violation_ls() const;
2336 void set_num_violation_ls(::int32_t value);
2337
2338 private:
2339 ::int32_t _internal_num_violation_ls() const;
2340 void _internal_set_num_violation_ls(::int32_t value);
2341
2342 public:
2343 // optional bool stop_after_root_propagation = 252 [default = false];
2346 bool stop_after_root_propagation() const;
2347 void set_stop_after_root_propagation(bool value);
2348
2349 private:
2350 bool _internal_stop_after_root_propagation() const;
2351 void _internal_set_stop_after_root_propagation(bool value);
2352
2353 public:
2354 // optional bool use_objective_shaving_search = 253 [default = false];
2357 bool use_objective_shaving_search() const;
2358 void set_use_objective_shaving_search(bool value);
2359
2360 private:
2361 bool _internal_use_objective_shaving_search() const;
2362 void _internal_set_use_objective_shaving_search(bool value);
2363
2364 public:
2365 // optional bool push_all_tasks_toward_start = 262 [default = false];
2368 bool push_all_tasks_toward_start() const;
2369 void set_push_all_tasks_toward_start(bool value);
2370
2371 private:
2372 bool _internal_push_all_tasks_toward_start() const;
2373 void _internal_set_push_all_tasks_toward_start(bool value);
2374
2375 public:
2376 // optional bool use_dynamic_precedence_in_disjunctive = 263 [default = false];
2381
2382 private:
2383 bool _internal_use_dynamic_precedence_in_disjunctive() const;
2384 void _internal_set_use_dynamic_precedence_in_disjunctive(bool value);
2385
2386 public:
2387 // optional bool use_dynamic_precedence_in_cumulative = 268 [default = false];
2392
2393 private:
2394 bool _internal_use_dynamic_precedence_in_cumulative() const;
2395 void _internal_set_use_dynamic_precedence_in_cumulative(bool value);
2396
2397 public:
2398 // optional bool use_area_energetic_reasoning_in_no_overlap_2d = 271 [default = false];
2403
2404 private:
2405 bool _internal_use_area_energetic_reasoning_in_no_overlap_2d() const;
2406 void _internal_set_use_area_energetic_reasoning_in_no_overlap_2d(bool value);
2407
2408 public:
2409 // optional bool detect_linearized_product = 277 [default = false];
2410 bool has_detect_linearized_product() const;
2412 bool detect_linearized_product() const;
2413 void set_detect_linearized_product(bool value);
2414
2415 private:
2416 bool _internal_detect_linearized_product() const;
2417 void _internal_set_detect_linearized_product(bool value);
2418
2419 public:
2420 // optional bool mip_treat_high_magnitude_bounds_as_infinity = 278 [default = false];
2425
2426 private:
2427 bool _internal_mip_treat_high_magnitude_bounds_as_infinity() const;
2428 void _internal_set_mip_treat_high_magnitude_bounds_as_infinity(bool value);
2429
2430 public:
2431 // optional int32 max_lin_max_size_for_expansion = 280 [default = 0];
2434 ::int32_t max_lin_max_size_for_expansion() const;
2435 void set_max_lin_max_size_for_expansion(::int32_t value);
2436
2437 private:
2438 ::int32_t _internal_max_lin_max_size_for_expansion() const;
2439 void _internal_set_max_lin_max_size_for_expansion(::int32_t value);
2440
2441 public:
2442 // optional bool save_lp_basis_in_lb_tree_search = 284 [default = false];
2446 void set_save_lp_basis_in_lb_tree_search(bool value);
2447
2448 private:
2449 bool _internal_save_lp_basis_in_lb_tree_search() const;
2450 void _internal_set_save_lp_basis_in_lb_tree_search(bool value);
2451
2452 public:
2453 // optional bool use_conservative_scale_overload_checker = 286 [default = false];
2458
2459 private:
2460 bool _internal_use_conservative_scale_overload_checker() const;
2461 void _internal_set_use_conservative_scale_overload_checker(bool value);
2462
2463 public:
2464 // optional bool encode_cumulative_as_reservoir = 287 [default = false];
2467 bool encode_cumulative_as_reservoir() const;
2468 void set_encode_cumulative_as_reservoir(bool value);
2469
2470 private:
2471 bool _internal_encode_cumulative_as_reservoir() const;
2472 void _internal_set_encode_cumulative_as_reservoir(bool value);
2473
2474 public:
2475 // optional bool expand_reservoir_using_circuit = 288 [default = false];
2478 bool expand_reservoir_using_circuit() const;
2479 void set_expand_reservoir_using_circuit(bool value);
2480
2481 private:
2482 bool _internal_expand_reservoir_using_circuit() const;
2483 void _internal_set_expand_reservoir_using_circuit(bool value);
2484
2485 public:
2486 // optional int32 max_num_deterministic_batches = 291 [default = 0];
2489 ::int32_t max_num_deterministic_batches() const;
2490 void set_max_num_deterministic_batches(::int32_t value);
2491
2492 private:
2493 ::int32_t _internal_max_num_deterministic_batches() const;
2494 void _internal_set_max_num_deterministic_batches(::int32_t value);
2495
2496 public:
2497 // optional int32 num_full_subsolvers = 294 [default = 0];
2498 bool has_num_full_subsolvers() const;
2500 ::int32_t num_full_subsolvers() const;
2501 void set_num_full_subsolvers(::int32_t value);
2502
2503 private:
2504 ::int32_t _internal_num_full_subsolvers() const;
2505 void _internal_set_num_full_subsolvers(::int32_t value);
2506
2507 public:
2508 // optional bool inprocessing_minimization_use_all_orderings = 298 [default = false];
2513
2514 private:
2515 bool _internal_inprocessing_minimization_use_all_orderings() const;
2516 void _internal_set_inprocessing_minimization_use_all_orderings(bool value);
2517
2518 public:
2519 // optional bool use_try_edge_reasoning_in_no_overlap_2d = 299 [default = false];
2524
2525 private:
2526 bool _internal_use_try_edge_reasoning_in_no_overlap_2d() const;
2527 void _internal_set_use_try_edge_reasoning_in_no_overlap_2d(bool value);
2528
2529 public:
2530 // optional bool use_symmetry_in_lp = 301 [default = false];
2531 bool has_use_symmetry_in_lp() const;
2533 bool use_symmetry_in_lp() const;
2534 void set_use_symmetry_in_lp(bool value);
2535
2536 private:
2537 bool _internal_use_symmetry_in_lp() const;
2538 void _internal_set_use_symmetry_in_lp(bool value);
2539
2540 public:
2541 // optional bool keep_symmetry_in_presolve = 303 [default = false];
2542 bool has_keep_symmetry_in_presolve() const;
2544 bool keep_symmetry_in_presolve() const;
2545 void set_keep_symmetry_in_presolve(bool value);
2546
2547 private:
2548 bool _internal_keep_symmetry_in_presolve() const;
2549 void _internal_set_keep_symmetry_in_presolve(bool value);
2550
2551 public:
2552 // optional int32 routing_cut_subset_size_for_binary_relation_bound = 312 [default = 0];
2557
2558 private:
2559 ::int32_t _internal_routing_cut_subset_size_for_binary_relation_bound() const;
2560 void _internal_set_routing_cut_subset_size_for_binary_relation_bound(::int32_t value);
2561
2562 public:
2563 // optional bool debug_crash_if_presolve_breaks_hint = 306 [default = false];
2568
2569 private:
2570 bool _internal_debug_crash_if_presolve_breaks_hint() const;
2571 void _internal_set_debug_crash_if_presolve_breaks_hint(bool value);
2572
2573 public:
2574 // optional bool polarity_exploit_ls_hints = 309 [default = false];
2575 bool has_polarity_exploit_ls_hints() const;
2577 bool polarity_exploit_ls_hints() const;
2578 void set_polarity_exploit_ls_hints(bool value);
2579
2580 private:
2581 bool _internal_polarity_exploit_ls_hints() const;
2582 void _internal_set_polarity_exploit_ls_hints(bool value);
2583
2584 public:
2585 // optional bool use_all_different_for_circuit = 311 [default = false];
2588 bool use_all_different_for_circuit() const;
2589 void set_use_all_different_for_circuit(bool value);
2590
2591 private:
2592 bool _internal_use_all_different_for_circuit() const;
2593 void _internal_set_use_all_different_for_circuit(bool value);
2594
2595 public:
2596 // optional bool filter_sat_postsolve_clauses = 324 [default = false];
2599 bool filter_sat_postsolve_clauses() const;
2600 void set_filter_sat_postsolve_clauses(bool value);
2601
2602 private:
2603 bool _internal_filter_sat_postsolve_clauses() const;
2604 void _internal_set_filter_sat_postsolve_clauses(bool value);
2605
2606 public:
2607 // optional int32 routing_cut_subset_size_for_tight_binary_relation_bound = 313 [default = 0];
2612
2613 private:
2614 ::int32_t _internal_routing_cut_subset_size_for_tight_binary_relation_bound() const;
2615 void _internal_set_routing_cut_subset_size_for_tight_binary_relation_bound(::int32_t value);
2616
2617 public:
2618 // optional int32 maximum_regions_to_split_in_disconnected_no_overlap_2d = 315 [default = 0];
2623
2624 private:
2625 ::int32_t _internal_maximum_regions_to_split_in_disconnected_no_overlap_2d() const;
2626 void _internal_set_maximum_regions_to_split_in_disconnected_no_overlap_2d(::int32_t value);
2627
2628 public:
2629 // optional bool share_linear2_bounds = 326 [default = false];
2630 bool has_share_linear2_bounds() const;
2632 bool share_linear2_bounds() const;
2633 void set_share_linear2_bounds(bool value);
2634
2635 private:
2636 bool _internal_share_linear2_bounds() const;
2637 void _internal_set_share_linear2_bounds(bool value);
2638
2639 public:
2640 // optional bool use_chronological_backtracking = 330 [default = false];
2643 bool use_chronological_backtracking() const;
2644 void set_use_chronological_backtracking(bool value);
2645
2646 private:
2647 bool _internal_use_chronological_backtracking() const;
2648 void _internal_set_use_chronological_backtracking(bool value);
2649
2650 public:
2651 // optional bool load_at_most_ones_in_sat_presolve = 335 [default = false];
2656
2657 private:
2658 bool _internal_load_at_most_ones_in_sat_presolve() const;
2659 void _internal_set_load_at_most_ones_in_sat_presolve(bool value);
2660
2661 public:
2662 // optional bool use_new_integer_conflict_resolution = 336 [default = false];
2667
2668 private:
2669 bool _internal_use_new_integer_conflict_resolution() const;
2670 void _internal_set_use_new_integer_conflict_resolution(bool value);
2671
2672 public:
2673 // optional int32 clause_cleanup_period_increment = 337 [default = 0];
2676 ::int32_t clause_cleanup_period_increment() const;
2677 void set_clause_cleanup_period_increment(::int32_t value);
2678
2679 private:
2680 ::int32_t _internal_clause_cleanup_period_increment() const;
2681 void _internal_set_clause_cleanup_period_increment(::int32_t value);
2682
2683 public:
2684 // optional bool debug_crash_if_lrat_check_fails = 339 [default = false];
2688 void set_debug_crash_if_lrat_check_fails(bool value);
2689
2690 private:
2691 bool _internal_debug_crash_if_lrat_check_fails() const;
2692 void _internal_set_debug_crash_if_lrat_check_fails(bool value);
2693
2694 public:
2695 // optional bool check_lrat_proof = 344 [default = false];
2696 bool has_check_lrat_proof() const;
2697 void clear_check_lrat_proof() ;
2698 bool check_lrat_proof() const;
2699 void set_check_lrat_proof(bool value);
2700
2701 private:
2702 bool _internal_check_lrat_proof() const;
2703 void _internal_set_check_lrat_proof(bool value);
2704
2705 public:
2706 // optional bool output_lrat_proof = 345 [default = false];
2707 bool has_output_lrat_proof() const;
2709 bool output_lrat_proof() const;
2710 void set_output_lrat_proof(bool value);
2711
2712 private:
2713 bool _internal_output_lrat_proof() const;
2714 void _internal_set_output_lrat_proof(bool value);
2715
2716 public:
2717 // optional bool check_drat_proof = 346 [default = false];
2718 bool has_check_drat_proof() const;
2719 void clear_check_drat_proof() ;
2720 bool check_drat_proof() const;
2721 void set_check_drat_proof(bool value);
2722
2723 private:
2724 bool _internal_check_drat_proof() const;
2725 void _internal_set_check_drat_proof(bool value);
2726
2727 public:
2728 // optional int32 clause_cleanup_lbd_tier1 = 349 [default = 0];
2729 bool has_clause_cleanup_lbd_tier1() const;
2731 ::int32_t clause_cleanup_lbd_tier1() const;
2732 void set_clause_cleanup_lbd_tier1(::int32_t value);
2733
2734 private:
2735 ::int32_t _internal_clause_cleanup_lbd_tier1() const;
2736 void _internal_set_clause_cleanup_lbd_tier1(::int32_t value);
2737
2738 public:
2739 // optional int32 clause_cleanup_lbd_tier2 = 350 [default = 0];
2740 bool has_clause_cleanup_lbd_tier2() const;
2742 ::int32_t clause_cleanup_lbd_tier2() const;
2743 void set_clause_cleanup_lbd_tier2(::int32_t value);
2744
2745 private:
2746 ::int32_t _internal_clause_cleanup_lbd_tier2() const;
2747 void _internal_set_clause_cleanup_lbd_tier2(::int32_t value);
2748
2749 public:
2750 // optional bool output_drat_proof = 347 [default = false];
2751 bool has_output_drat_proof() const;
2753 bool output_drat_proof() const;
2754 void set_output_drat_proof(bool value);
2755
2756 private:
2757 bool _internal_output_drat_proof() const;
2758 void _internal_set_output_drat_proof(bool value);
2759
2760 public:
2761 // optional bool check_merged_lrat_proof = 352 [default = false];
2762 bool has_check_merged_lrat_proof() const;
2764 bool check_merged_lrat_proof() const;
2765 void set_check_merged_lrat_proof(bool value);
2766
2767 private:
2768 bool _internal_check_merged_lrat_proof() const;
2769 void _internal_set_check_merged_lrat_proof(bool value);
2770
2771 public:
2772 // optional bool inprocessing_use_sat_sweeping = 354 [default = false];
2775 bool inprocessing_use_sat_sweeping() const;
2776 void set_inprocessing_use_sat_sweeping(bool value);
2777
2778 private:
2779 bool _internal_inprocessing_use_sat_sweeping() const;
2780 void _internal_set_inprocessing_use_sat_sweeping(bool value);
2781
2782 public:
2783 // optional int64 max_memory_in_mb = 40 [default = 10000];
2784 bool has_max_memory_in_mb() const;
2785 void clear_max_memory_in_mb() ;
2786 ::int64_t max_memory_in_mb() const;
2787 void set_max_memory_in_mb(::int64_t value);
2788
2789 private:
2790 ::int64_t _internal_max_memory_in_mb() const;
2791 void _internal_set_max_memory_in_mb(::int64_t value);
2792
2793 public:
2794 // optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FROM_UIP_AND_DECISIONS];
2799
2800 private:
2801 ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm _internal_binary_minimization_algorithm() const;
2802 void _internal_set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value);
2803
2804 public:
2805 // optional int32 pb_cleanup_increment = 46 [default = 200];
2806 bool has_pb_cleanup_increment() const;
2808 ::int32_t pb_cleanup_increment() const;
2809 void set_pb_cleanup_increment(::int32_t value);
2810
2811 private:
2812 ::int32_t _internal_pb_cleanup_increment() const;
2813 void _internal_set_pb_cleanup_increment(::int32_t value);
2814
2815 public:
2816 // optional double pb_cleanup_ratio = 47 [default = 0.5];
2817 bool has_pb_cleanup_ratio() const;
2818 void clear_pb_cleanup_ratio() ;
2819 double pb_cleanup_ratio() const;
2820 void set_pb_cleanup_ratio(double value);
2821
2822 private:
2823 double _internal_pb_cleanup_ratio() const;
2824 void _internal_set_pb_cleanup_ratio(double value);
2825
2826 public:
2827 // optional int32 core_minimization_level = 50 [default = 2];
2828 bool has_core_minimization_level() const;
2830 ::int32_t core_minimization_level() const;
2831 void set_core_minimization_level(::int32_t value);
2832
2833 private:
2834 ::int32_t _internal_core_minimization_level() const;
2835 void _internal_set_core_minimization_level(::int32_t value);
2836
2837 public:
2838 // optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];
2839 bool has_max_sat_stratification() const;
2843
2844 private:
2845 ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm _internal_max_sat_stratification() const;
2846 void _internal_set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value);
2847
2848 public:
2849 // optional int32 presolve_bve_threshold = 54 [default = 500];
2850 bool has_presolve_bve_threshold() const;
2852 ::int32_t presolve_bve_threshold() const;
2853 void set_presolve_bve_threshold(::int32_t value);
2854
2855 private:
2856 ::int32_t _internal_presolve_bve_threshold() const;
2857 void _internal_set_presolve_bve_threshold(::int32_t value);
2858
2859 public:
2860 // optional int32 presolve_bve_clause_weight = 55 [default = 3];
2861 bool has_presolve_bve_clause_weight() const;
2863 ::int32_t presolve_bve_clause_weight() const;
2864 void set_presolve_bve_clause_weight(::int32_t value);
2865
2866 private:
2867 ::int32_t _internal_presolve_bve_clause_weight() const;
2868 void _internal_set_presolve_bve_clause_weight(::int32_t value);
2869
2870 public:
2871 // optional double presolve_probing_deterministic_time_limit = 57 [default = 30];
2876
2877 private:
2878 double _internal_presolve_probing_deterministic_time_limit() const;
2879 void _internal_set_presolve_probing_deterministic_time_limit(double value);
2880
2881 public:
2882 // optional int32 clause_cleanup_lbd_bound = 59 [default = 5];
2883 bool has_clause_cleanup_lbd_bound() const;
2885 ::int32_t clause_cleanup_lbd_bound() const;
2886 void set_clause_cleanup_lbd_bound(::int32_t value);
2887
2888 private:
2889 ::int32_t _internal_clause_cleanup_lbd_bound() const;
2890 void _internal_set_clause_cleanup_lbd_bound(::int32_t value);
2891
2892 public:
2893 // optional int32 restart_running_window_size = 62 [default = 50];
2896 ::int32_t restart_running_window_size() const;
2897 void set_restart_running_window_size(::int32_t value);
2898
2899 private:
2900 ::int32_t _internal_restart_running_window_size() const;
2901 void _internal_set_restart_running_window_size(::int32_t value);
2902
2903 public:
2904 // optional double restart_dl_average_ratio = 63 [default = 1];
2905 bool has_restart_dl_average_ratio() const;
2907 double restart_dl_average_ratio() const;
2908 void set_restart_dl_average_ratio(double value);
2909
2910 private:
2911 double _internal_restart_dl_average_ratio() const;
2912 void _internal_set_restart_dl_average_ratio(double value);
2913
2914 public:
2915 // optional bool count_assumption_levels_in_lbd = 49 [default = true];
2918 bool count_assumption_levels_in_lbd() const;
2919 void set_count_assumption_levels_in_lbd(bool value);
2920
2921 private:
2922 bool _internal_count_assumption_levels_in_lbd() const;
2923 void _internal_set_count_assumption_levels_in_lbd(bool value);
2924
2925 public:
2926 // optional bool subsumption_during_conflict_analysis = 56 [default = true];
2931
2932 private:
2933 bool _internal_subsumption_during_conflict_analysis() const;
2934 void _internal_set_subsumption_during_conflict_analysis(bool value);
2935
2936 public:
2937 // optional bool presolve_use_bva = 72 [default = true];
2938 bool has_presolve_use_bva() const;
2939 void clear_presolve_use_bva() ;
2940 bool presolve_use_bva() const;
2941 void set_presolve_use_bva(bool value);
2942
2943 private:
2944 bool _internal_presolve_use_bva() const;
2945 void _internal_set_presolve_use_bva(bool value);
2946
2947 public:
2948 // optional bool use_disjunctive_constraint_in_cumulative = 80 [default = true];
2953
2954 private:
2955 bool _internal_use_disjunctive_constraint_in_cumulative() const;
2956 void _internal_set_use_disjunctive_constraint_in_cumulative(bool value);
2957
2958 public:
2959 // optional int32 blocking_restart_window_size = 65 [default = 5000];
2962 ::int32_t blocking_restart_window_size() const;
2963 void set_blocking_restart_window_size(::int32_t value);
2964
2965 private:
2966 ::int32_t _internal_blocking_restart_window_size() const;
2967 void _internal_set_blocking_restart_window_size(::int32_t value);
2968
2969 public:
2970 // optional double blocking_restart_multiplier = 66 [default = 1.4];
2973 double blocking_restart_multiplier() const;
2974 void set_blocking_restart_multiplier(double value);
2975
2976 private:
2977 double _internal_blocking_restart_multiplier() const;
2978 void _internal_set_blocking_restart_multiplier(double value);
2979
2980 public:
2981 // optional double max_deterministic_time = 67 [default = inf];
2982 bool has_max_deterministic_time() const;
2984 double max_deterministic_time() const;
2985 void set_max_deterministic_time(double value);
2986
2987 private:
2988 double _internal_max_deterministic_time() const;
2989 void _internal_set_max_deterministic_time(double value);
2990
2991 public:
2992 // optional double restart_lbd_average_ratio = 71 [default = 1];
2993 bool has_restart_lbd_average_ratio() const;
2995 double restart_lbd_average_ratio() const;
2996 void set_restart_lbd_average_ratio(double value);
2997
2998 private:
2999 double _internal_restart_lbd_average_ratio() const;
3000 void _internal_set_restart_lbd_average_ratio(double value);
3001
3002 public:
3003 // optional int32 presolve_bva_threshold = 73 [default = 1];
3004 bool has_presolve_bva_threshold() const;
3006 ::int32_t presolve_bva_threshold() const;
3007 void set_presolve_bva_threshold(::int32_t value);
3008
3009 private:
3010 ::int32_t _internal_presolve_bva_threshold() const;
3011 void _internal_set_presolve_bva_threshold(::int32_t value);
3012
3013 public:
3014 // optional bool find_multiple_cores = 84 [default = true];
3015 bool has_find_multiple_cores() const;
3017 bool find_multiple_cores() const;
3018 void set_find_multiple_cores(bool value);
3019
3020 private:
3021 bool _internal_find_multiple_cores() const;
3022 void _internal_set_find_multiple_cores(bool value);
3023
3024 public:
3025 // optional bool cp_model_presolve = 86 [default = true];
3026 bool has_cp_model_presolve() const;
3028 bool cp_model_presolve() const;
3029 void set_cp_model_presolve(bool value);
3030
3031 private:
3032 bool _internal_cp_model_presolve() const;
3033 void _internal_set_cp_model_presolve(bool value);
3034
3035 public:
3036 // optional bool presolve_blocked_clause = 88 [default = true];
3037 bool has_presolve_blocked_clause() const;
3039 bool presolve_blocked_clause() const;
3040 void set_presolve_blocked_clause(bool value);
3041
3042 private:
3043 bool _internal_presolve_blocked_clause() const;
3044 void _internal_set_presolve_blocked_clause(bool value);
3045
3046 public:
3047 // optional bool cover_optimization = 89 [default = true];
3048 bool has_cover_optimization() const;
3050 bool cover_optimization() const;
3051 void set_cover_optimization(bool value);
3052
3053 private:
3054 bool _internal_cover_optimization() const;
3055 void _internal_set_cover_optimization(bool value);
3056
3057 public:
3058 // optional int32 linearization_level = 90 [default = 1];
3059 bool has_linearization_level() const;
3061 ::int32_t linearization_level() const;
3062 void set_linearization_level(::int32_t value);
3063
3064 private:
3065 ::int32_t _internal_linearization_level() const;
3066 void _internal_set_linearization_level(::int32_t value);
3067
3068 public:
3069 // optional int32 max_num_cuts = 91 [default = 10000];
3070 bool has_max_num_cuts() const;
3071 void clear_max_num_cuts() ;
3072 ::int32_t max_num_cuts() const;
3073 void set_max_num_cuts(::int32_t value);
3074
3075 private:
3076 ::int32_t _internal_max_num_cuts() const;
3077 void _internal_set_max_num_cuts(::int32_t value);
3078
3079 public:
3080 // optional bool cp_model_use_sat_presolve = 93 [default = true];
3081 bool has_cp_model_use_sat_presolve() const;
3083 bool cp_model_use_sat_presolve() const;
3084 void set_cp_model_use_sat_presolve(bool value);
3085
3086 private:
3087 bool _internal_cp_model_use_sat_presolve() const;
3088 void _internal_set_cp_model_use_sat_presolve(bool value);
3089
3090 public:
3091 // optional bool exploit_integer_lp_solution = 94 [default = true];
3094 bool exploit_integer_lp_solution() const;
3095 void set_exploit_integer_lp_solution(bool value);
3096
3097 private:
3098 bool _internal_exploit_integer_lp_solution() const;
3099 void _internal_set_exploit_integer_lp_solution(bool value);
3100
3101 public:
3102 // optional bool auto_detect_greater_than_at_least_one_of = 95 [default = true];
3107
3108 private:
3109 bool _internal_auto_detect_greater_than_at_least_one_of() const;
3110 void _internal_set_auto_detect_greater_than_at_least_one_of(bool value);
3111
3112 public:
3113 // optional bool instantiate_all_variables = 106 [default = true];
3114 bool has_instantiate_all_variables() const;
3116 bool instantiate_all_variables() const;
3117 void set_instantiate_all_variables(bool value);
3118
3119 private:
3120 bool _internal_instantiate_all_variables() const;
3121 void _internal_set_instantiate_all_variables(bool value);
3122
3123 public:
3124 // optional int32 binary_search_num_conflicts = 99 [default = -1];
3127 ::int32_t binary_search_num_conflicts() const;
3128 void set_binary_search_num_conflicts(::int32_t value);
3129
3130 private:
3131 ::int32_t _internal_binary_search_num_conflicts() const;
3132 void _internal_set_binary_search_num_conflicts(::int32_t value);
3133
3134 public:
3135 // optional int32 boolean_encoding_level = 107 [default = 1];
3136 bool has_boolean_encoding_level() const;
3138 ::int32_t boolean_encoding_level() const;
3139 void set_boolean_encoding_level(::int32_t value);
3140
3141 private:
3142 ::int32_t _internal_boolean_encoding_level() const;
3143 void _internal_set_boolean_encoding_level(::int32_t value);
3144
3145 public:
3146 // optional int32 cp_model_probing_level = 110 [default = 2];
3147 bool has_cp_model_probing_level() const;
3149 ::int32_t cp_model_probing_level() const;
3150 void set_cp_model_probing_level(::int32_t value);
3151
3152 private:
3153 ::int32_t _internal_cp_model_probing_level() const;
3154 void _internal_set_cp_model_probing_level(::int32_t value);
3155
3156 public:
3157 // optional bool use_exact_lp_reason = 109 [default = true];
3158 bool has_use_exact_lp_reason() const;
3160 bool use_exact_lp_reason() const;
3161 void set_use_exact_lp_reason(bool value);
3162
3163 private:
3164 bool _internal_use_exact_lp_reason() const;
3165 void _internal_set_use_exact_lp_reason(bool value);
3166
3167 public:
3168 // optional bool add_lp_constraints_lazily = 112 [default = true];
3169 bool has_add_lp_constraints_lazily() const;
3171 bool add_lp_constraints_lazily() const;
3172 void set_add_lp_constraints_lazily(bool value);
3173
3174 private:
3175 bool _internal_add_lp_constraints_lazily() const;
3176 void _internal_set_add_lp_constraints_lazily(bool value);
3177
3178 public:
3179 // optional bool share_objective_bounds = 113 [default = true];
3180 bool has_share_objective_bounds() const;
3182 bool share_objective_bounds() const;
3183 void set_share_objective_bounds(bool value);
3184
3185 private:
3186 bool _internal_share_objective_bounds() const;
3187 void _internal_set_share_objective_bounds(bool value);
3188
3189 public:
3190 // optional bool share_level_zero_bounds = 114 [default = true];
3191 bool has_share_level_zero_bounds() const;
3193 bool share_level_zero_bounds() const;
3194 void set_share_level_zero_bounds(bool value);
3195
3196 private:
3197 bool _internal_share_level_zero_bounds() const;
3198 void _internal_set_share_level_zero_bounds(bool value);
3199
3200 public:
3201 // optional int32 max_integer_rounding_scaling = 119 [default = 600];
3204 ::int32_t max_integer_rounding_scaling() const;
3205 void set_max_integer_rounding_scaling(::int32_t value);
3206
3207 private:
3208 ::int32_t _internal_max_integer_rounding_scaling() const;
3209 void _internal_set_max_integer_rounding_scaling(::int32_t value);
3210
3211 public:
3212 // optional double min_orthogonality_for_lp_constraints = 115 [default = 0.05];
3217
3218 private:
3219 double _internal_min_orthogonality_for_lp_constraints() const;
3220 void _internal_set_min_orthogonality_for_lp_constraints(double value);
3221
3222 public:
3223 // optional bool exploit_all_lp_solution = 116 [default = true];
3224 bool has_exploit_all_lp_solution() const;
3226 bool exploit_all_lp_solution() const;
3227 void set_exploit_all_lp_solution(bool value);
3228
3229 private:
3230 bool _internal_exploit_all_lp_solution() const;
3231 void _internal_set_exploit_all_lp_solution(bool value);
3232
3233 public:
3234 // optional bool add_cg_cuts = 117 [default = true];
3235 bool has_add_cg_cuts() const;
3236 void clear_add_cg_cuts() ;
3237 bool add_cg_cuts() const;
3238 void set_add_cg_cuts(bool value);
3239
3240 private:
3241 bool _internal_add_cg_cuts() const;
3242 void _internal_set_add_cg_cuts(bool value);
3243
3244 public:
3245 // optional bool add_mir_cuts = 120 [default = true];
3246 bool has_add_mir_cuts() const;
3247 void clear_add_mir_cuts() ;
3248 bool add_mir_cuts() const;
3249 void set_add_mir_cuts(bool value);
3250
3251 private:
3252 bool _internal_add_mir_cuts() const;
3253 void _internal_set_add_mir_cuts(bool value);
3254
3255 public:
3256 // optional bool use_rins_lns = 129 [default = true];
3257 bool has_use_rins_lns() const;
3258 void clear_use_rins_lns() ;
3259 bool use_rins_lns() const;
3260 void set_use_rins_lns(bool value);
3261
3262 private:
3263 bool _internal_use_rins_lns() const;
3264 void _internal_set_use_rins_lns(bool value);
3265
3266 public:
3267 // optional int32 max_consecutive_inactive_count = 121 [default = 100];
3270 ::int32_t max_consecutive_inactive_count() const;
3271 void set_max_consecutive_inactive_count(::int32_t value);
3272
3273 private:
3274 ::int32_t _internal_max_consecutive_inactive_count() const;
3275 void _internal_set_max_consecutive_inactive_count(::int32_t value);
3276
3277 public:
3278 // optional int64 pseudo_cost_reliability_threshold = 123 [default = 100];
3281 ::int64_t pseudo_cost_reliability_threshold() const;
3282 void set_pseudo_cost_reliability_threshold(::int64_t value);
3283
3284 private:
3285 ::int64_t _internal_pseudo_cost_reliability_threshold() const;
3286 void _internal_set_pseudo_cost_reliability_threshold(::int64_t value);
3287
3288 public:
3289 // optional double mip_max_bound = 124 [default = 10000000];
3290 bool has_mip_max_bound() const;
3291 void clear_mip_max_bound() ;
3292 double mip_max_bound() const;
3293 void set_mip_max_bound(double value);
3294
3295 private:
3296 double _internal_mip_max_bound() const;
3297 void _internal_set_mip_max_bound(double value);
3298
3299 public:
3300 // optional int32 new_constraints_batch_size = 122 [default = 50];
3301 bool has_new_constraints_batch_size() const;
3303 ::int32_t new_constraints_batch_size() const;
3304 void set_new_constraints_batch_size(::int32_t value);
3305
3306 private:
3307 ::int32_t _internal_new_constraints_batch_size() const;
3308 void _internal_set_new_constraints_batch_size(::int32_t value);
3309
3310 public:
3311 // optional int32 mip_max_activity_exponent = 127 [default = 53];
3312 bool has_mip_max_activity_exponent() const;
3314 ::int32_t mip_max_activity_exponent() const;
3315 void set_mip_max_activity_exponent(::int32_t value);
3316
3317 private:
3318 ::int32_t _internal_mip_max_activity_exponent() const;
3319 void _internal_set_mip_max_activity_exponent(::int32_t value);
3320
3321 public:
3322 // optional double mip_var_scaling = 125 [default = 1];
3323 bool has_mip_var_scaling() const;
3324 void clear_mip_var_scaling() ;
3325 double mip_var_scaling() const;
3326 void set_mip_var_scaling(double value);
3327
3328 private:
3329 double _internal_mip_var_scaling() const;
3330 void _internal_set_mip_var_scaling(double value);
3331
3332 public:
3333 // optional double mip_wanted_precision = 126 [default = 1e-06];
3334 bool has_mip_wanted_precision() const;
3336 double mip_wanted_precision() const;
3337 void set_mip_wanted_precision(double value);
3338
3339 private:
3340 double _internal_mip_wanted_precision() const;
3341 void _internal_set_mip_wanted_precision(double value);
3342
3343 public:
3344 // optional double mip_check_precision = 128 [default = 0.0001];
3345 bool has_mip_check_precision() const;
3347 double mip_check_precision() const;
3348 void set_mip_check_precision(double value);
3349
3350 private:
3351 double _internal_mip_check_precision() const;
3352 void _internal_set_mip_check_precision(double value);
3353
3354 public:
3355 // optional int32 max_presolve_iterations = 138 [default = 3];
3356 bool has_max_presolve_iterations() const;
3358 ::int32_t max_presolve_iterations() const;
3359 void set_max_presolve_iterations(::int32_t value);
3360
3361 private:
3362 ::int32_t _internal_max_presolve_iterations() const;
3363 void _internal_set_max_presolve_iterations(::int32_t value);
3364
3365 public:
3366 // optional bool exploit_objective = 131 [default = true];
3367 bool has_exploit_objective() const;
3369 bool exploit_objective() const;
3370 void set_exploit_objective(bool value);
3371
3372 private:
3373 bool _internal_exploit_objective() const;
3374 void _internal_set_exploit_objective(bool value);
3375
3376 public:
3377 // optional bool catch_sigint_signal = 135 [default = true];
3378 bool has_catch_sigint_signal() const;
3380 bool catch_sigint_signal() const;
3381 void set_catch_sigint_signal(bool value);
3382
3383 private:
3384 bool _internal_catch_sigint_signal() const;
3385 void _internal_set_catch_sigint_signal(bool value);
3386
3387 public:
3388 // optional bool use_implied_bounds = 144 [default = true];
3389 bool has_use_implied_bounds() const;
3391 bool use_implied_bounds() const;
3392 void set_use_implied_bounds(bool value);
3393
3394 private:
3395 bool _internal_use_implied_bounds() const;
3396 void _internal_set_use_implied_bounds(bool value);
3397
3398 public:
3399 // optional bool add_lin_max_cuts = 152 [default = true];
3400 bool has_add_lin_max_cuts() const;
3401 void clear_add_lin_max_cuts() ;
3402 bool add_lin_max_cuts() const;
3403 void set_add_lin_max_cuts(bool value);
3404
3405 private:
3406 bool _internal_add_lin_max_cuts() const;
3407 void _internal_set_add_lin_max_cuts(bool value);
3408
3409 public:
3410 // optional double merge_no_overlap_work_limit = 145 [default = 1000000000000];
3413 double merge_no_overlap_work_limit() const;
3414 void set_merge_no_overlap_work_limit(double value);
3415
3416 private:
3417 double _internal_merge_no_overlap_work_limit() const;
3418 void _internal_set_merge_no_overlap_work_limit(double value);
3419
3420 public:
3421 // optional double merge_at_most_one_work_limit = 146 [default = 100000000];
3424 double merge_at_most_one_work_limit() const;
3425 void set_merge_at_most_one_work_limit(double value);
3426
3427 private:
3428 double _internal_merge_at_most_one_work_limit() const;
3429 void _internal_set_merge_at_most_one_work_limit(double value);
3430
3431 public:
3432 // optional int32 presolve_substitution_level = 147 [default = 1];
3435 ::int32_t presolve_substitution_level() const;
3436 void set_presolve_substitution_level(::int32_t value);
3437
3438 private:
3439 ::int32_t _internal_presolve_substitution_level() const;
3440 void _internal_set_presolve_substitution_level(::int32_t value);
3441
3442 public:
3443 // optional int32 max_all_diff_cut_size = 148 [default = 64];
3444 bool has_max_all_diff_cut_size() const;
3446 ::int32_t max_all_diff_cut_size() const;
3447 void set_max_all_diff_cut_size(::int32_t value);
3448
3449 private:
3450 ::int32_t _internal_max_all_diff_cut_size() const;
3451 void _internal_set_max_all_diff_cut_size(::int32_t value);
3452
3453 public:
3454 // optional int32 hint_conflict_limit = 153 [default = 10];
3455 bool has_hint_conflict_limit() const;
3457 ::int32_t hint_conflict_limit() const;
3458 void set_hint_conflict_limit(::int32_t value);
3459
3460 private:
3461 ::int32_t _internal_hint_conflict_limit() const;
3462 void _internal_set_hint_conflict_limit(::int32_t value);
3463
3464 public:
3465 // optional int32 max_cut_rounds_at_level_zero = 154 [default = 1];
3468 ::int32_t max_cut_rounds_at_level_zero() const;
3469 void set_max_cut_rounds_at_level_zero(::int32_t value);
3470
3471 private:
3472 ::int32_t _internal_max_cut_rounds_at_level_zero() const;
3473 void _internal_set_max_cut_rounds_at_level_zero(::int32_t value);
3474
3475 public:
3476 // optional double cut_max_active_count_value = 155 [default = 10000000000];
3477 bool has_cut_max_active_count_value() const;
3479 double cut_max_active_count_value() const;
3480 void set_cut_max_active_count_value(double value);
3481
3482 private:
3483 double _internal_cut_max_active_count_value() const;
3484 void _internal_set_cut_max_active_count_value(double value);
3485
3486 public:
3487 // optional double cut_active_count_decay = 156 [default = 0.8];
3488 bool has_cut_active_count_decay() const;
3490 double cut_active_count_decay() const;
3491 void set_cut_active_count_decay(double value);
3492
3493 private:
3494 double _internal_cut_active_count_decay() const;
3495 void _internal_set_cut_active_count_decay(double value);
3496
3497 public:
3498 // optional double absolute_gap_limit = 159 [default = 0.0001];
3499 bool has_absolute_gap_limit() const;
3501 double absolute_gap_limit() const;
3502 void set_absolute_gap_limit(double value);
3503
3504 private:
3505 double _internal_absolute_gap_limit() const;
3506 void _internal_set_absolute_gap_limit(double value);
3507
3508 public:
3509 // optional int32 cut_cleanup_target = 157 [default = 1000];
3510 bool has_cut_cleanup_target() const;
3512 ::int32_t cut_cleanup_target() const;
3513 void set_cut_cleanup_target(::int32_t value);
3514
3515 private:
3516 ::int32_t _internal_cut_cleanup_target() const;
3517 void _internal_set_cut_cleanup_target(::int32_t value);
3518
3519 public:
3520 // optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];
3521 bool has_fp_rounding() const;
3522 void clear_fp_rounding() ;
3525
3526 private:
3528 void _internal_set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value);
3529
3530 public:
3531 // optional bool use_sat_inprocessing = 163 [default = true];
3532 bool has_use_sat_inprocessing() const;
3534 bool use_sat_inprocessing() const;
3535 void set_use_sat_inprocessing(bool value);
3536
3537 private:
3538 bool _internal_use_sat_inprocessing() const;
3539 void _internal_set_use_sat_inprocessing(bool value);
3540
3541 public:
3542 // optional bool use_feasibility_pump = 164 [default = true];
3543 bool has_use_feasibility_pump() const;
3545 bool use_feasibility_pump() const;
3546 void set_use_feasibility_pump(bool value);
3547
3548 private:
3549 bool _internal_use_feasibility_pump() const;
3550 void _internal_set_use_feasibility_pump(bool value);
3551
3552 public:
3553 // optional bool mip_automatically_scale_variables = 166 [default = true];
3558
3559 private:
3560 bool _internal_mip_automatically_scale_variables() const;
3561 void _internal_set_mip_automatically_scale_variables(bool value);
3562
3563 public:
3564 // optional bool add_zero_half_cuts = 169 [default = true];
3565 bool has_add_zero_half_cuts() const;
3567 bool add_zero_half_cuts() const;
3568 void set_add_zero_half_cuts(bool value);
3569
3570 private:
3571 bool _internal_add_zero_half_cuts() const;
3572 void _internal_set_add_zero_half_cuts(bool value);
3573
3574 public:
3575 // optional int32 polarity_rephase_increment = 168 [default = 1000];
3576 bool has_polarity_rephase_increment() const;
3578 ::int32_t polarity_rephase_increment() const;
3579 void set_polarity_rephase_increment(::int32_t value);
3580
3581 private:
3582 ::int32_t _internal_polarity_rephase_increment() const;
3583 void _internal_set_polarity_rephase_increment(::int32_t value);
3584
3585 public:
3586 // optional bool add_clique_cuts = 172 [default = true];
3587 bool has_add_clique_cuts() const;
3588 void clear_add_clique_cuts() ;
3589 bool add_clique_cuts() const;
3590 void set_add_clique_cuts(bool value);
3591
3592 private:
3593 bool _internal_add_clique_cuts() const;
3594 void _internal_set_add_clique_cuts(bool value);
3595
3596 public:
3597 // optional bool convert_intervals = 177 [default = true];
3598 bool has_convert_intervals() const;
3600 bool convert_intervals() const;
3601 void set_convert_intervals(bool value);
3602
3603 private:
3604 bool _internal_convert_intervals() const;
3605 void _internal_set_convert_intervals(bool value);
3606
3607 public:
3608 // optional bool expand_reservoir_constraints = 182 [default = true];
3611 bool expand_reservoir_constraints() const;
3612 void set_expand_reservoir_constraints(bool value);
3613
3614 private:
3615 bool _internal_expand_reservoir_constraints() const;
3616 void _internal_set_expand_reservoir_constraints(bool value);
3617
3618 public:
3619 // optional bool log_to_stdout = 186 [default = true];
3620 bool has_log_to_stdout() const;
3621 void clear_log_to_stdout() ;
3622 bool log_to_stdout() const;
3623 void set_log_to_stdout(bool value);
3624
3625 private:
3626 bool _internal_log_to_stdout() const;
3627 void _internal_set_log_to_stdout(bool value);
3628
3629 public:
3630 // optional int32 symmetry_level = 183 [default = 2];
3631 bool has_symmetry_level() const;
3632 void clear_symmetry_level() ;
3633 ::int32_t symmetry_level() const;
3634 void set_symmetry_level(::int32_t value);
3635
3636 private:
3637 ::int32_t _internal_symmetry_level() const;
3638 void _internal_set_symmetry_level(::int32_t value);
3639
3640 public:
3641 // optional double clause_cleanup_ratio = 190 [default = 0.5];
3642 bool has_clause_cleanup_ratio() const;
3644 double clause_cleanup_ratio() const;
3645 void set_clause_cleanup_ratio(double value);
3646
3647 private:
3648 double _internal_clause_cleanup_ratio() const;
3649 void _internal_set_clause_cleanup_ratio(double value);
3650
3651 public:
3652 // optional int32 max_domain_size_when_encoding_eq_neq_constraints = 191 [default = 16];
3657
3658 private:
3659 ::int32_t _internal_max_domain_size_when_encoding_eq_neq_constraints() const;
3660 void _internal_set_max_domain_size_when_encoding_eq_neq_constraints(::int32_t value);
3661
3662 public:
3663 // optional int32 solution_pool_size = 193 [default = 3];
3664 bool has_solution_pool_size() const;
3666 ::int32_t solution_pool_size() const;
3667 void set_solution_pool_size(::int32_t value);
3668
3669 private:
3670 ::int32_t _internal_solution_pool_size() const;
3671 void _internal_set_solution_pool_size(::int32_t value);
3672
3673 public:
3674 // optional double mip_max_valid_magnitude = 199 [default = 1e+20];
3675 bool has_mip_max_valid_magnitude() const;
3677 double mip_max_valid_magnitude() const;
3678 void set_mip_max_valid_magnitude(double value);
3679
3680 private:
3681 double _internal_mip_max_valid_magnitude() const;
3682 void _internal_set_mip_max_valid_magnitude(double value);
3683
3684 public:
3685 // optional int64 presolve_inclusion_work_limit = 201 [default = 100000000];
3688 ::int64_t presolve_inclusion_work_limit() const;
3689 void set_presolve_inclusion_work_limit(::int64_t value);
3690
3691 private:
3692 ::int64_t _internal_presolve_inclusion_work_limit() const;
3693 void _internal_set_presolve_inclusion_work_limit(::int64_t value);
3694
3695 public:
3696 // optional int32 cut_level = 196 [default = 1];
3697 bool has_cut_level() const;
3698 void clear_cut_level() ;
3699 ::int32_t cut_level() const;
3700 void set_cut_level(::int32_t value);
3701
3702 private:
3703 ::int32_t _internal_cut_level() const;
3704 void _internal_set_cut_level(::int32_t value);
3705
3706 public:
3707 // optional bool mip_compute_true_objective_bound = 198 [default = true];
3711 void set_mip_compute_true_objective_bound(bool value);
3712
3713 private:
3714 bool _internal_mip_compute_true_objective_bound() const;
3715 void _internal_set_mip_compute_true_objective_bound(bool value);
3716
3717 public:
3718 // optional bool ignore_names = 202 [default = true];
3719 bool has_ignore_names() const;
3720 void clear_ignore_names() ;
3721 bool ignore_names() const;
3722 void set_ignore_names(bool value);
3723
3724 private:
3725 bool _internal_ignore_names() const;
3726 void _internal_set_ignore_names(bool value);
3727
3728 public:
3729 // optional bool share_binary_clauses = 203 [default = true];
3730 bool has_share_binary_clauses() const;
3732 bool share_binary_clauses() const;
3733 void set_share_binary_clauses(bool value);
3734
3735 private:
3736 bool _internal_share_binary_clauses() const;
3737 void _internal_set_share_binary_clauses(bool value);
3738
3739 public:
3740 // optional bool use_dual_scheduling_heuristics = 214 [default = true];
3743 bool use_dual_scheduling_heuristics() const;
3744 void set_use_dual_scheduling_heuristics(bool value);
3745
3746 private:
3747 bool _internal_use_dual_scheduling_heuristics() const;
3748 void _internal_set_use_dual_scheduling_heuristics(bool value);
3749
3750 public:
3751 // optional double shaving_deterministic_time_in_probing_search = 204 [default = 0.001];
3756
3757 private:
3758 double _internal_shaving_deterministic_time_in_probing_search() const;
3759 void _internal_set_shaving_deterministic_time_in_probing_search(double value);
3760
3761 public:
3762 // optional double shaving_search_deterministic_time = 205 [default = 0.1];
3765 double shaving_search_deterministic_time() const;
3766 void set_shaving_search_deterministic_time(double value);
3767
3768 private:
3769 double _internal_shaving_search_deterministic_time() const;
3770 void _internal_set_shaving_search_deterministic_time(double value);
3771
3772 public:
3773 // optional double propagation_loop_detection_factor = 221 [default = 10];
3776 double propagation_loop_detection_factor() const;
3777 void set_propagation_loop_detection_factor(double value);
3778
3779 private:
3780 double _internal_propagation_loop_detection_factor() const;
3781 void _internal_set_propagation_loop_detection_factor(double value);
3782
3783 public:
3784 // optional int32 table_compression_level = 217 [default = 2];
3785 bool has_table_compression_level() const;
3787 ::int32_t table_compression_level() const;
3788 void set_table_compression_level(::int32_t value);
3789
3790 private:
3791 ::int32_t _internal_table_compression_level() const;
3792 void _internal_set_table_compression_level(::int32_t value);
3793
3794 public:
3795 // optional int32 root_lp_iterations = 227 [default = 2000];
3796 bool has_root_lp_iterations() const;
3798 ::int32_t root_lp_iterations() const;
3799 void set_root_lp_iterations(::int32_t value);
3800
3801 private:
3802 ::int32_t _internal_root_lp_iterations() const;
3803 void _internal_set_root_lp_iterations(::int32_t value);
3804
3805 public:
3806 // optional double probing_deterministic_time_limit = 226 [default = 1];
3809 double probing_deterministic_time_limit() const;
3810 void set_probing_deterministic_time_limit(double value);
3811
3812 private:
3813 double _internal_probing_deterministic_time_limit() const;
3814 void _internal_set_probing_deterministic_time_limit(double value);
3815
3816 public:
3817 // optional double mip_drop_tolerance = 232 [default = 1e-16];
3818 bool has_mip_drop_tolerance() const;
3820 double mip_drop_tolerance() const;
3821 void set_mip_drop_tolerance(double value);
3822
3823 private:
3824 double _internal_mip_drop_tolerance() const;
3825 void _internal_set_mip_drop_tolerance(double value);
3826
3827 public:
3828 // optional int32 max_size_to_create_precedence_literals_in_disjunctive = 229 [default = 60];
3833
3834 private:
3835 ::int32_t _internal_max_size_to_create_precedence_literals_in_disjunctive() const;
3836 void _internal_set_max_size_to_create_precedence_literals_in_disjunctive(::int32_t value);
3837
3838 public:
3839 // optional int32 shared_tree_num_workers = 235 [default = -1];
3840 bool has_shared_tree_num_workers() const;
3842 ::int32_t shared_tree_num_workers() const;
3843 void set_shared_tree_num_workers(::int32_t value);
3844
3845 private:
3846 ::int32_t _internal_shared_tree_num_workers() const;
3847 void _internal_set_shared_tree_num_workers(::int32_t value);
3848
3849 public:
3850 // optional bool new_linear_propagation = 224 [default = true];
3851 bool has_new_linear_propagation() const;
3853 bool new_linear_propagation() const;
3854 void set_new_linear_propagation(bool value);
3855
3856 private:
3857 bool _internal_new_linear_propagation() const;
3858 void _internal_set_new_linear_propagation(bool value);
3859
3860 public:
3861 // optional bool infer_all_diffs = 233 [default = true];
3862 bool has_infer_all_diffs() const;
3863 void clear_infer_all_diffs() ;
3864 bool infer_all_diffs() const;
3865 void set_infer_all_diffs(bool value);
3866
3867 private:
3868 bool _internal_infer_all_diffs() const;
3869 void _internal_set_infer_all_diffs(bool value);
3870
3871 public:
3872 // optional bool find_big_linear_overlap = 234 [default = true];
3873 bool has_find_big_linear_overlap() const;
3875 bool find_big_linear_overlap() const;
3876 void set_find_big_linear_overlap(bool value);
3877
3878 private:
3879 bool _internal_find_big_linear_overlap() const;
3880 void _internal_set_find_big_linear_overlap(bool value);
3881
3882 public:
3883 // optional bool feasibility_jump_enable_restarts = 250 [default = true];
3887 void set_feasibility_jump_enable_restarts(bool value);
3888
3889 private:
3890 bool _internal_feasibility_jump_enable_restarts() const;
3891 void _internal_set_feasibility_jump_enable_restarts(bool value);
3892
3893 public:
3894 // optional int32 shared_tree_max_nodes_per_worker = 238 [default = 10000];
3897 ::int32_t shared_tree_max_nodes_per_worker() const;
3898 void set_shared_tree_max_nodes_per_worker(::int32_t value);
3899
3900 private:
3901 ::int32_t _internal_shared_tree_max_nodes_per_worker() const;
3902 void _internal_set_shared_tree_max_nodes_per_worker(::int32_t value);
3903
3904 public:
3905 // optional double feasibility_jump_decay = 242 [default = 0.95];
3906 bool has_feasibility_jump_decay() const;
3908 double feasibility_jump_decay() const;
3909 void set_feasibility_jump_decay(double value);
3910
3911 private:
3912 double _internal_feasibility_jump_decay() const;
3913 void _internal_set_feasibility_jump_decay(double value);
3914
3915 public:
3916 // optional double feasibility_jump_var_randomization_probability = 247 [default = 0.05];
3921
3922 private:
3923 double _internal_feasibility_jump_var_randomization_probability() const;
3924 void _internal_set_feasibility_jump_var_randomization_probability(double value);
3925
3926 public:
3927 // optional double feasibility_jump_var_perburbation_range_ratio = 248 [default = 0.2];
3932
3933 private:
3934 double _internal_feasibility_jump_var_perburbation_range_ratio() const;
3935 void _internal_set_feasibility_jump_var_perburbation_range_ratio(double value);
3936
3937 public:
3938 // optional int32 violation_ls_perturbation_period = 249 [default = 100];
3941 ::int32_t violation_ls_perturbation_period() const;
3942 void set_violation_ls_perturbation_period(::int32_t value);
3943
3944 private:
3945 ::int32_t _internal_violation_ls_perturbation_period() const;
3946 void _internal_set_violation_ls_perturbation_period(::int32_t value);
3947
3948 public:
3949 // optional int32 linear_split_size = 256 [default = 100];
3950 bool has_linear_split_size() const;
3952 ::int32_t linear_split_size() const;
3953 void set_linear_split_size(::int32_t value);
3954
3955 private:
3956 ::int32_t _internal_linear_split_size() const;
3957 void _internal_set_linear_split_size(::int32_t value);
3958
3959 public:
3960 // optional int32 feasibility_jump_linearization_level = 257 [default = 2];
3963 ::int32_t feasibility_jump_linearization_level() const;
3964 void set_feasibility_jump_linearization_level(::int32_t value);
3965
3966 private:
3967 ::int32_t _internal_feasibility_jump_linearization_level() const;
3968 void _internal_set_feasibility_jump_linearization_level(::int32_t value);
3969
3970 public:
3971 // optional int32 feasibility_jump_restart_factor = 258 [default = 1];
3974 ::int32_t feasibility_jump_restart_factor() const;
3975 void set_feasibility_jump_restart_factor(::int32_t value);
3976
3977 private:
3978 ::int32_t _internal_feasibility_jump_restart_factor() const;
3979 void _internal_set_feasibility_jump_restart_factor(::int32_t value);
3980
3981 public:
3982 // optional double violation_ls_compound_move_probability = 259 [default = 0.5];
3987
3988 private:
3989 double _internal_violation_ls_compound_move_probability() const;
3990 void _internal_set_violation_ls_compound_move_probability(double value);
3991
3992 public:
3993 // optional int32 max_num_intervals_for_timetable_edge_finding = 260 [default = 100];
3998
3999 private:
4000 ::int32_t _internal_max_num_intervals_for_timetable_edge_finding() const;
4001 void _internal_set_max_num_intervals_for_timetable_edge_finding(::int32_t value);
4002
4003 public:
4004 // optional int32 mip_presolve_level = 261 [default = 2];
4005 bool has_mip_presolve_level() const;
4007 ::int32_t mip_presolve_level() const;
4008 void set_mip_presolve_level(::int32_t value);
4009
4010 private:
4011 ::int32_t _internal_mip_presolve_level() const;
4012 void _internal_set_mip_presolve_level(::int32_t value);
4013
4014 public:
4015 // optional double lp_primal_tolerance = 266 [default = 1e-07];
4016 bool has_lp_primal_tolerance() const;
4018 double lp_primal_tolerance() const;
4019 void set_lp_primal_tolerance(double value);
4020
4021 private:
4022 double _internal_lp_primal_tolerance() const;
4023 void _internal_set_lp_primal_tolerance(double value);
4024
4025 public:
4026 // optional int32 feasibility_jump_max_expanded_constraint_size = 264 [default = 500];
4031
4032 private:
4033 ::int32_t _internal_feasibility_jump_max_expanded_constraint_size() const;
4034 void _internal_set_feasibility_jump_max_expanded_constraint_size(::int32_t value);
4035
4036 public:
4037 // optional bool use_lb_relax_lns = 255 [default = true];
4038 bool has_use_lb_relax_lns() const;
4039 void clear_use_lb_relax_lns() ;
4040 bool use_lb_relax_lns() const;
4041 void set_use_lb_relax_lns(bool value);
4042
4043 private:
4044 bool _internal_use_lb_relax_lns() const;
4045 void _internal_set_use_lb_relax_lns(bool value);
4046
4047 public:
4048 // optional bool use_feasibility_jump = 265 [default = true];
4049 bool has_use_feasibility_jump() const;
4051 bool use_feasibility_jump() const;
4052 void set_use_feasibility_jump(bool value);
4053
4054 private:
4055 bool _internal_use_feasibility_jump() const;
4056 void _internal_set_use_feasibility_jump(bool value);
4057
4058 public:
4059 // optional bool use_extended_probing = 269 [default = true];
4060 bool has_use_extended_probing() const;
4062 bool use_extended_probing() const;
4063 void set_use_extended_probing(bool value);
4064
4065 private:
4066 bool _internal_use_extended_probing() const;
4067 void _internal_set_use_extended_probing(bool value);
4068
4069 public:
4070 // optional bool add_rlt_cuts = 279 [default = true];
4071 bool has_add_rlt_cuts() const;
4072 void clear_add_rlt_cuts() ;
4073 bool add_rlt_cuts() const;
4074 void set_add_rlt_cuts(bool value);
4075
4076 private:
4077 bool _internal_add_rlt_cuts() const;
4078 void _internal_set_add_rlt_cuts(bool value);
4079
4080 public:
4081 // optional double lp_dual_tolerance = 267 [default = 1e-07];
4082 bool has_lp_dual_tolerance() const;
4084 double lp_dual_tolerance() const;
4085 void set_lp_dual_tolerance(double value);
4086
4087 private:
4088 double _internal_lp_dual_tolerance() const;
4089 void _internal_set_lp_dual_tolerance(double value);
4090
4091 public:
4092 // optional int32 at_most_one_max_expansion_size = 270 [default = 3];
4095 ::int32_t at_most_one_max_expansion_size() const;
4096 void set_at_most_one_max_expansion_size(::int32_t value);
4097
4098 private:
4099 ::int32_t _internal_at_most_one_max_expansion_size() const;
4100 void _internal_set_at_most_one_max_expansion_size(::int32_t value);
4101
4102 public:
4103 // optional int32 probing_num_combinations_limit = 272 [default = 20000];
4106 ::int32_t probing_num_combinations_limit() const;
4107 void set_probing_num_combinations_limit(::int32_t value);
4108
4109 private:
4110 ::int32_t _internal_probing_num_combinations_limit() const;
4111 void _internal_set_probing_num_combinations_limit(::int32_t value);
4112
4113 public:
4114 // optional double inprocessing_dtime_ratio = 273 [default = 0.2];
4115 bool has_inprocessing_dtime_ratio() const;
4117 double inprocessing_dtime_ratio() const;
4118 void set_inprocessing_dtime_ratio(double value);
4119
4120 private:
4121 double _internal_inprocessing_dtime_ratio() const;
4122 void _internal_set_inprocessing_dtime_ratio(double value);
4123
4124 public:
4125 // optional double inprocessing_probing_dtime = 274 [default = 1];
4126 bool has_inprocessing_probing_dtime() const;
4128 double inprocessing_probing_dtime() const;
4129 void set_inprocessing_probing_dtime(double value);
4130
4131 private:
4132 double _internal_inprocessing_probing_dtime() const;
4133 void _internal_set_inprocessing_probing_dtime(double value);
4134
4135 public:
4136 // optional double inprocessing_minimization_dtime = 275 [default = 1];
4139 double inprocessing_minimization_dtime() const;
4140 void set_inprocessing_minimization_dtime(double value);
4141
4142 private:
4143 double _internal_inprocessing_minimization_dtime() const;
4144 void _internal_set_inprocessing_minimization_dtime(double value);
4145
4146 public:
4147 // optional int32 max_pairs_pairwise_reasoning_in_no_overlap_2d = 276 [default = 1250];
4152
4153 private:
4154 ::int32_t _internal_max_pairs_pairwise_reasoning_in_no_overlap_2d() const;
4155 void _internal_set_max_pairs_pairwise_reasoning_in_no_overlap_2d(::int32_t value);
4156
4157 public:
4158 // optional int32 shared_tree_worker_min_restarts_per_subtree = 282 [default = 1];
4163
4164 private:
4165 ::int32_t _internal_shared_tree_worker_min_restarts_per_subtree() const;
4166 void _internal_set_shared_tree_worker_min_restarts_per_subtree(::int32_t value);
4167
4168 public:
4169 // optional double shared_tree_open_leaves_per_worker = 281 [default = 2];
4173 void set_shared_tree_open_leaves_per_worker(double value);
4174
4175 private:
4176 double _internal_shared_tree_open_leaves_per_worker() const;
4177 void _internal_set_shared_tree_open_leaves_per_worker(double value);
4178
4179 public:
4180 // optional int32 variables_shaving_level = 289 [default = -1];
4181 bool has_variables_shaving_level() const;
4183 ::int32_t variables_shaving_level() const;
4184 void set_variables_shaving_level(::int32_t value);
4185
4186 private:
4187 ::int32_t _internal_variables_shaving_level() const;
4188 void _internal_set_variables_shaving_level(::int32_t value);
4189
4190 public:
4191 // optional bool use_lns = 283 [default = true];
4192 bool has_use_lns() const;
4193 void clear_use_lns() ;
4194 bool use_lns() const;
4195 void set_use_lns(bool value);
4196
4197 private:
4198 bool _internal_use_lns() const;
4199 void _internal_set_use_lns(bool value);
4200
4201 public:
4202 // optional bool share_glue_clauses = 285 [default = true];
4203 bool has_share_glue_clauses() const;
4205 bool share_glue_clauses() const;
4206 void set_share_glue_clauses(bool value);
4207
4208 private:
4209 bool _internal_share_glue_clauses() const;
4210 void _internal_set_share_glue_clauses(bool value);
4211
4212 public:
4213 // optional bool shared_tree_worker_enable_trail_sharing = 295 [default = true];
4218
4219 private:
4220 bool _internal_shared_tree_worker_enable_trail_sharing() const;
4221 void _internal_set_shared_tree_worker_enable_trail_sharing(bool value);
4222
4223 public:
4224 // optional bool inprocessing_minimization_use_conflict_analysis = 297 [default = true];
4229
4230 private:
4231 bool _internal_inprocessing_minimization_use_conflict_analysis() const;
4232 void _internal_set_inprocessing_minimization_use_conflict_analysis(bool value);
4233
4234 public:
4235 // optional int64 shaving_search_threshold = 290 [default = 64];
4236 bool has_shaving_search_threshold() const;
4238 ::int64_t shaving_search_threshold() const;
4239 void set_shaving_search_threshold(::int64_t value);
4240
4241 private:
4242 ::int64_t _internal_shaving_search_threshold() const;
4243 void _internal_set_shaving_search_threshold(::int64_t value);
4244
4245 public:
4246 // optional double feasibility_jump_batch_dtime = 292 [default = 0.1];
4249 double feasibility_jump_batch_dtime() const;
4250 void set_feasibility_jump_batch_dtime(double value);
4251
4252 private:
4253 double _internal_feasibility_jump_batch_dtime() const;
4254 void _internal_set_feasibility_jump_batch_dtime(double value);
4255
4256 public:
4257 // optional int32 lb_relax_num_workers_threshold = 296 [default = 16];
4260 ::int32_t lb_relax_num_workers_threshold() const;
4261 void set_lb_relax_num_workers_threshold(::int32_t value);
4262
4263 private:
4264 ::int32_t _internal_lb_relax_num_workers_threshold() const;
4265 void _internal_set_lb_relax_num_workers_threshold(::int32_t value);
4266
4267 public:
4268 // optional int32 shared_tree_balance_tolerance = 305 [default = 1];
4271 ::int32_t shared_tree_balance_tolerance() const;
4272 void set_shared_tree_balance_tolerance(::int32_t value);
4273
4274 private:
4275 ::int32_t _internal_shared_tree_balance_tolerance() const;
4276 void _internal_set_shared_tree_balance_tolerance(::int32_t value);
4277
4278 public:
4279 // optional double symmetry_detection_deterministic_time_limit = 302 [default = 1];
4284
4285 private:
4286 double _internal_symmetry_detection_deterministic_time_limit() const;
4287 void _internal_set_symmetry_detection_deterministic_time_limit(double value);
4288
4289 public:
4290 // optional double lns_initial_difficulty = 307 [default = 0.5];
4291 bool has_lns_initial_difficulty() const;
4293 double lns_initial_difficulty() const;
4294 void set_lns_initial_difficulty(double value);
4295
4296 private:
4297 double _internal_lns_initial_difficulty() const;
4298 void _internal_set_lns_initial_difficulty(double value);
4299
4300 public:
4301 // optional double lns_initial_deterministic_limit = 308 [default = 0.1];
4304 double lns_initial_deterministic_limit() const;
4305 void set_lns_initial_deterministic_limit(double value);
4306
4307 private:
4308 double _internal_lns_initial_deterministic_limit() const;
4309 void _internal_set_lns_initial_deterministic_limit(double value);
4310
4311 public:
4312 // optional bool minimize_shared_clauses = 300 [default = true];
4313 bool has_minimize_shared_clauses() const;
4315 bool minimize_shared_clauses() const;
4316 void set_minimize_shared_clauses(bool value);
4317
4318 private:
4319 bool _internal_minimize_shared_clauses() const;
4320 void _internal_set_minimize_shared_clauses(bool value);
4321
4322 public:
4323 // optional bool shared_tree_worker_enable_phase_sharing = 304 [default = true];
4328
4329 private:
4330 bool _internal_shared_tree_worker_enable_phase_sharing() const;
4331 void _internal_set_shared_tree_worker_enable_phase_sharing(bool value);
4332
4333 public:
4334 // optional bool remove_fixed_variables_early = 310 [default = true];
4337 bool remove_fixed_variables_early() const;
4338 void set_remove_fixed_variables_early(bool value);
4339
4340 private:
4341 bool _internal_remove_fixed_variables_early() const;
4342 void _internal_set_remove_fixed_variables_early(bool value);
4343
4344 public:
4345 // optional bool use_linear3_for_no_overlap_2d_precedences = 323 [default = true];
4350
4351 private:
4352 bool _internal_use_linear3_for_no_overlap_2d_precedences() const;
4353 void _internal_set_use_linear3_for_no_overlap_2d_precedences(bool value);
4354
4355 public:
4356 // optional int32 routing_cut_subset_size_for_exact_binary_relation_bound = 316 [default = 8];
4361
4362 private:
4363 ::int32_t _internal_routing_cut_subset_size_for_exact_binary_relation_bound() const;
4364 void _internal_set_routing_cut_subset_size_for_exact_binary_relation_bound(::int32_t value);
4365
4366 public:
4367 // optional double routing_cut_dp_effort = 314 [default = 10000000];
4368 bool has_routing_cut_dp_effort() const;
4370 double routing_cut_dp_effort() const;
4371 void set_routing_cut_dp_effort(double value);
4372
4373 private:
4374 double _internal_routing_cut_dp_effort() const;
4375 void _internal_set_routing_cut_dp_effort(double value);
4376
4377 public:
4378 // optional int32 routing_cut_max_infeasible_path_length = 317 [default = 6];
4382 void set_routing_cut_max_infeasible_path_length(::int32_t value);
4383
4384 private:
4385 ::int32_t _internal_routing_cut_max_infeasible_path_length() const;
4386 void _internal_set_routing_cut_max_infeasible_path_length(::int32_t value);
4387
4388 public:
4389 // optional int32 routing_cut_subset_size_for_shortest_paths_bound = 318 [default = 8];
4394
4395 private:
4396 ::int32_t _internal_routing_cut_subset_size_for_shortest_paths_bound() const;
4397 void _internal_set_routing_cut_subset_size_for_shortest_paths_bound(::int32_t value);
4398
4399 public:
4400 // optional int32 max_alldiff_domain_size = 320 [default = 256];
4401 bool has_max_alldiff_domain_size() const;
4403 ::int32_t max_alldiff_domain_size() const;
4404 void set_max_alldiff_domain_size(::int32_t value);
4405
4406 private:
4407 ::int32_t _internal_max_alldiff_domain_size() const;
4408 void _internal_set_max_alldiff_domain_size(::int32_t value);
4409
4410 public:
4411 // optional int32 no_overlap_2d_boolean_relations_limit = 321 [default = 10];
4414 ::int32_t no_overlap_2d_boolean_relations_limit() const;
4415 void set_no_overlap_2d_boolean_relations_limit(::int32_t value);
4416
4417 private:
4418 ::int32_t _internal_no_overlap_2d_boolean_relations_limit() const;
4419 void _internal_set_no_overlap_2d_boolean_relations_limit(::int32_t value);
4420
4421 public:
4422 // optional double share_glue_clauses_dtime = 322 [default = 1];
4423 bool has_share_glue_clauses_dtime() const;
4425 double share_glue_clauses_dtime() const;
4426 void set_share_glue_clauses_dtime(double value);
4427
4428 private:
4429 double _internal_share_glue_clauses_dtime() const;
4430 void _internal_set_share_glue_clauses_dtime(double value);
4431
4432 public:
4433 // optional int32 alternative_pool_size = 325 [default = 1];
4434 bool has_alternative_pool_size() const;
4436 ::int32_t alternative_pool_size() const;
4437 void set_alternative_pool_size(::int32_t value);
4438
4439 private:
4440 ::int32_t _internal_alternative_pool_size() const;
4441 void _internal_set_alternative_pool_size(::int32_t value);
4442
4443 public:
4444 // optional int32 transitive_precedences_work_limit = 327 [default = 1000000];
4447 ::int32_t transitive_precedences_work_limit() const;
4448 void set_transitive_precedences_work_limit(::int32_t value);
4449
4450 private:
4451 ::int32_t _internal_transitive_precedences_work_limit() const;
4452 void _internal_set_transitive_precedences_work_limit(::int32_t value);
4453
4454 public:
4455 // optional double shared_tree_split_min_dtime = 328 [default = 0.1];
4458 double shared_tree_split_min_dtime() const;
4459 void set_shared_tree_split_min_dtime(double value);
4460
4461 private:
4462 double _internal_shared_tree_split_min_dtime() const;
4463 void _internal_set_shared_tree_split_min_dtime(double value);
4464
4465 public:
4466 // optional int32 solution_pool_diversity_limit = 329 [default = 10];
4469 ::int32_t solution_pool_diversity_limit() const;
4470 void set_solution_pool_diversity_limit(::int32_t value);
4471
4472 private:
4473 ::int32_t _internal_solution_pool_diversity_limit() const;
4474 void _internal_set_solution_pool_diversity_limit(::int32_t value);
4475
4476 public:
4477 // optional int32 max_backjump_levels = 331 [default = 50];
4478 bool has_max_backjump_levels() const;
4480 ::int32_t max_backjump_levels() const;
4481 void set_max_backjump_levels(::int32_t value);
4482
4483 private:
4484 ::int32_t _internal_max_backjump_levels() const;
4485 void _internal_set_max_backjump_levels(::int32_t value);
4486
4487 public:
4488 // optional int32 chronological_backtrack_min_conflicts = 332 [default = 1000];
4491 ::int32_t chronological_backtrack_min_conflicts() const;
4492 void set_chronological_backtrack_min_conflicts(::int32_t value);
4493
4494 private:
4495 ::int32_t _internal_chronological_backtrack_min_conflicts() const;
4496 void _internal_set_chronological_backtrack_min_conflicts(::int32_t value);
4497
4498 public:
4499 // optional int32 max_domain_size_for_linear2_expansion = 340 [default = 8];
4502 ::int32_t max_domain_size_for_linear2_expansion() const;
4503 void set_max_domain_size_for_linear2_expansion(::int32_t value);
4504
4505 private:
4506 ::int32_t _internal_max_domain_size_for_linear2_expansion() const;
4507 void _internal_set_max_domain_size_for_linear2_expansion(::int32_t value);
4508
4509 public:
4510 // optional bool find_clauses_that_are_exactly_one = 333 [default = true];
4515
4516 private:
4517 bool _internal_find_clauses_that_are_exactly_one() const;
4518 void _internal_set_find_clauses_that_are_exactly_one(bool value);
4519
4520 public:
4521 // optional bool create_1uip_boolean_during_icr = 341 [default = true];
4524 bool create_1uip_boolean_during_icr() const;
4525 void set_create_1uip_boolean_during_icr(bool value);
4526
4527 private:
4528 bool _internal_create_1uip_boolean_during_icr() const;
4529 void _internal_set_create_1uip_boolean_during_icr(bool value);
4530
4531 public:
4532 // optional bool inprocessing_use_congruence_closure = 342 [default = true];
4537
4538 private:
4539 bool _internal_inprocessing_use_congruence_closure() const;
4540 void _internal_set_inprocessing_use_congruence_closure(bool value);
4541
4542 public:
4543 // optional bool extra_subsumption_during_conflict_analysis = 351 [default = true];
4548
4549 private:
4550 bool _internal_extra_subsumption_during_conflict_analysis() const;
4551 void _internal_set_extra_subsumption_during_conflict_analysis(bool value);
4552
4553 public:
4554 // optional int32 eagerly_subsume_last_n_conflicts = 343 [default = 4];
4557 ::int32_t eagerly_subsume_last_n_conflicts() const;
4558 void set_eagerly_subsume_last_n_conflicts(::int32_t value);
4559
4560 private:
4561 ::int32_t _internal_eagerly_subsume_last_n_conflicts() const;
4562 void _internal_set_eagerly_subsume_last_n_conflicts(::int32_t value);
4563
4564 public:
4565 // optional double max_drat_time_in_seconds = 348 [default = inf];
4566 bool has_max_drat_time_in_seconds() const;
4568 double max_drat_time_in_seconds() const;
4569 void set_max_drat_time_in_seconds(double value);
4570
4571 private:
4572 double _internal_max_drat_time_in_seconds() const;
4573 void _internal_set_max_drat_time_in_seconds(double value);
4574
4575 public:
4576 // optional bool decision_subsumption_during_conflict_analysis = 353 [default = true];
4581
4582 private:
4583 bool _internal_decision_subsumption_during_conflict_analysis() const;
4584 void _internal_set_decision_subsumption_during_conflict_analysis(bool value);
4585
4586 public:
4587 // optional bool subsume_during_vivification = 355 [default = true];
4590 bool subsume_during_vivification() const;
4591 void set_subsume_during_vivification(bool value);
4592
4593 private:
4594 bool _internal_subsume_during_vivification() const;
4595 void _internal_set_subsume_during_vivification(bool value);
4596
4597 public:
4598 // @@protoc_insertion_point(class_scope:operations_research.sat.SatParameters)
4599 private:
4600 class _Internal;
4601 friend class ::google::protobuf::internal::TcParser;
4602 static const ::google::protobuf::internal::TcParseTable<5, 303,
4603 12, 0,
4604 47>
4605 _table_;
4606
4607 friend class ::google::protobuf::MessageLite;
4608 friend class ::google::protobuf::Arena;
4609 template <typename T>
4610 friend class ::google::protobuf::Arena::InternalHelper;
4611 using InternalArenaConstructable_ = void;
4612 using DestructorSkippable_ = void;
4613 struct Impl_ {
4614 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
4615 inline explicit Impl_(
4616 ::google::protobuf::internal::InternalVisibility visibility,
4617 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
4618 inline explicit Impl_(
4619 ::google::protobuf::internal::InternalVisibility visibility,
4620 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
4621 const SatParameters& from_msg);
4622 ::google::protobuf::internal::HasBits<10> _has_bits_;
4623 ::google::protobuf::internal::CachedSize _cached_size_;
4624 int preferred_variable_order_;
4625 ::int32_t clause_cleanup_target_;
4626 double random_polarity_ratio_;
4627 bool log_search_progress_;
4628 bool use_pb_resolution_;
4629 bool use_optimization_hints_;
4630 bool use_phase_saving_;
4631 bool use_precedences_in_disjunctive_constraint_;
4632 int initial_polarity_;
4633 int minimization_algorithm_;
4634 double variable_activity_decay_;
4635 double max_variable_activity_value_;
4636 double clause_activity_decay_;
4637 ::int32_t clause_cleanup_period_;
4638 ::int32_t glucose_decay_increment_period_;
4639 double max_clause_activity_value_;
4640 double glucose_max_decay_;
4641 double glucose_decay_increment_;
4642 ::int32_t restart_period_;
4643 ::int32_t random_seed_;
4644 double max_time_in_seconds_;
4645 ::int64_t max_number_of_conflicts_;
4646 ::google::protobuf::RepeatedField<int> restart_algorithms_;
4647 ::google::protobuf::RepeatedPtrField<::std::string> subsolvers_;
4648 ::google::protobuf::RepeatedPtrField<::std::string> ignore_subsolvers_;
4649 ::google::protobuf::RepeatedPtrField< ::operations_research::sat::SatParameters > subsolver_params_;
4650 ::google::protobuf::RepeatedPtrField<::std::string> extra_subsolvers_;
4651 ::google::protobuf::RepeatedPtrField<::std::string> filter_subsolvers_;
4652 static const ::google::protobuf::internal::LazyString _i_give_permission_to_break_this_code_default_default_restart_algorithms_;
4653 ::google::protobuf::internal::ArenaStringPtr default_restart_algorithms_;
4654 ::google::protobuf::internal::ArenaStringPtr name_;
4655 ::google::protobuf::internal::ArenaStringPtr log_prefix_;
4656 double random_branches_ratio_;
4657 int max_sat_assumption_order_;
4658 bool minimize_reduction_during_pb_resolution_;
4659 bool max_sat_reverse_assumption_order_;
4660 bool use_blocking_restart_;
4661 bool use_erwa_heuristic_;
4662 int clause_cleanup_ordering_;
4663 ::int32_t num_conflicts_before_strategy_changes_;
4664 double strategy_change_increase_ratio_;
4665 double initial_variables_activity_;
4666 bool also_bump_variables_in_conflict_reasons_;
4667 bool use_overload_checker_in_cumulative_;
4668 bool use_timetable_edge_finding_in_cumulative_;
4669 bool optimize_with_core_;
4670 int search_branching_;
4671 bool optimize_with_max_hs_;
4672 bool enumerate_all_solutions_;
4673 bool only_add_cuts_at_level_zero_;
4674 bool stop_after_first_solution_;
4675 ::int32_t num_search_workers_;
4676 ::int64_t search_random_variable_pool_size_;
4677 bool use_lns_only_;
4678 bool randomize_search_;
4679 bool use_optional_variables_;
4680 bool exploit_best_solution_;
4681 ::int32_t interleave_batch_size_;
4682 bool fill_tightened_domains_in_response_;
4683 bool use_combined_no_overlap_;
4684 bool interleave_search_;
4685 bool diversify_lns_params_;
4686 ::int32_t debug_max_num_presolve_operations_;
4687 double relative_gap_limit_;
4688 bool stop_after_presolve_;
4689 bool exploit_relaxation_solution_;
4690 bool debug_postsolve_with_full_solver_;
4691 bool repair_hint_;
4692 bool expand_alldiff_constraints_;
4693 bool keep_all_feasible_solutions_in_presolve_;
4694 bool presolve_extract_integer_enforcement_;
4695 bool polish_lp_solution_;
4696 bool use_probing_search_;
4697 bool permute_variable_randomly_;
4698 bool permute_presolve_constraint_order_;
4699 bool use_absl_random_;
4700 bool disable_constraint_expansion_;
4701 bool log_to_response_;
4702 bool optimize_with_lb_tree_search_;
4703 bool log_subsolver_statistics_;
4704 bool fix_variables_to_their_hinted_value_;
4705 bool fill_additional_solutions_in_response_;
4706 bool debug_crash_on_bad_hint_;
4707 bool add_objective_cut_;
4708 ::int32_t num_workers_;
4709 bool use_timetabling_in_no_overlap_2d_;
4710 bool use_energetic_reasoning_in_no_overlap_2d_;
4711 bool use_hard_precedences_in_cumulative_;
4712 bool detect_table_with_cost_;
4713 bool exploit_all_precedences_;
4714 bool only_solve_ip_;
4715 bool encode_complex_linear_constraint_with_integer_;
4716 bool mip_scale_large_domain_;
4717 bool use_objective_lb_search_;
4718 bool use_strong_propagation_in_disjunctive_;
4719 bool use_shared_tree_search_;
4720 bool use_ls_only_;
4721 int shared_tree_split_strategy_;
4722 ::int32_t num_violation_ls_;
4723 bool stop_after_root_propagation_;
4724 bool use_objective_shaving_search_;
4725 bool push_all_tasks_toward_start_;
4726 bool use_dynamic_precedence_in_disjunctive_;
4727 bool use_dynamic_precedence_in_cumulative_;
4728 bool use_area_energetic_reasoning_in_no_overlap_2d_;
4729 bool detect_linearized_product_;
4730 bool mip_treat_high_magnitude_bounds_as_infinity_;
4731 ::int32_t max_lin_max_size_for_expansion_;
4732 bool save_lp_basis_in_lb_tree_search_;
4733 bool use_conservative_scale_overload_checker_;
4734 bool encode_cumulative_as_reservoir_;
4735 bool expand_reservoir_using_circuit_;
4736 ::int32_t max_num_deterministic_batches_;
4737 ::int32_t num_full_subsolvers_;
4738 bool inprocessing_minimization_use_all_orderings_;
4739 bool use_try_edge_reasoning_in_no_overlap_2d_;
4740 bool use_symmetry_in_lp_;
4741 bool keep_symmetry_in_presolve_;
4742 ::int32_t routing_cut_subset_size_for_binary_relation_bound_;
4743 bool debug_crash_if_presolve_breaks_hint_;
4744 bool polarity_exploit_ls_hints_;
4745 bool use_all_different_for_circuit_;
4746 bool filter_sat_postsolve_clauses_;
4747 ::int32_t routing_cut_subset_size_for_tight_binary_relation_bound_;
4748 ::int32_t maximum_regions_to_split_in_disconnected_no_overlap_2d_;
4749 bool share_linear2_bounds_;
4750 bool use_chronological_backtracking_;
4751 bool load_at_most_ones_in_sat_presolve_;
4752 bool use_new_integer_conflict_resolution_;
4753 ::int32_t clause_cleanup_period_increment_;
4754 bool debug_crash_if_lrat_check_fails_;
4755 bool check_lrat_proof_;
4756 bool output_lrat_proof_;
4757 bool check_drat_proof_;
4758 ::int32_t clause_cleanup_lbd_tier1_;
4759 ::int32_t clause_cleanup_lbd_tier2_;
4760 bool output_drat_proof_;
4761 bool check_merged_lrat_proof_;
4762 bool inprocessing_use_sat_sweeping_;
4763 ::int64_t max_memory_in_mb_;
4764 int binary_minimization_algorithm_;
4765 ::int32_t pb_cleanup_increment_;
4766 double pb_cleanup_ratio_;
4767 ::int32_t core_minimization_level_;
4768 int max_sat_stratification_;
4769 ::int32_t presolve_bve_threshold_;
4770 ::int32_t presolve_bve_clause_weight_;
4771 double presolve_probing_deterministic_time_limit_;
4772 ::int32_t clause_cleanup_lbd_bound_;
4773 ::int32_t restart_running_window_size_;
4774 double restart_dl_average_ratio_;
4775 bool count_assumption_levels_in_lbd_;
4776 bool subsumption_during_conflict_analysis_;
4777 bool presolve_use_bva_;
4778 bool use_disjunctive_constraint_in_cumulative_;
4779 ::int32_t blocking_restart_window_size_;
4780 double blocking_restart_multiplier_;
4781 double max_deterministic_time_;
4782 double restart_lbd_average_ratio_;
4783 ::int32_t presolve_bva_threshold_;
4784 bool find_multiple_cores_;
4785 bool cp_model_presolve_;
4786 bool presolve_blocked_clause_;
4787 bool cover_optimization_;
4788 ::int32_t linearization_level_;
4789 ::int32_t max_num_cuts_;
4790 bool cp_model_use_sat_presolve_;
4791 bool exploit_integer_lp_solution_;
4792 bool auto_detect_greater_than_at_least_one_of_;
4793 bool instantiate_all_variables_;
4794 ::int32_t binary_search_num_conflicts_;
4795 ::int32_t boolean_encoding_level_;
4796 ::int32_t cp_model_probing_level_;
4797 bool use_exact_lp_reason_;
4798 bool add_lp_constraints_lazily_;
4799 bool share_objective_bounds_;
4800 bool share_level_zero_bounds_;
4801 ::int32_t max_integer_rounding_scaling_;
4802 double min_orthogonality_for_lp_constraints_;
4803 bool exploit_all_lp_solution_;
4804 bool add_cg_cuts_;
4805 bool add_mir_cuts_;
4806 bool use_rins_lns_;
4807 ::int32_t max_consecutive_inactive_count_;
4808 ::int64_t pseudo_cost_reliability_threshold_;
4809 double mip_max_bound_;
4810 ::int32_t new_constraints_batch_size_;
4811 ::int32_t mip_max_activity_exponent_;
4812 double mip_var_scaling_;
4813 double mip_wanted_precision_;
4814 double mip_check_precision_;
4815 ::int32_t max_presolve_iterations_;
4816 bool exploit_objective_;
4817 bool catch_sigint_signal_;
4818 bool use_implied_bounds_;
4819 bool add_lin_max_cuts_;
4820 double merge_no_overlap_work_limit_;
4821 double merge_at_most_one_work_limit_;
4822 ::int32_t presolve_substitution_level_;
4823 ::int32_t max_all_diff_cut_size_;
4824 ::int32_t hint_conflict_limit_;
4825 ::int32_t max_cut_rounds_at_level_zero_;
4826 double cut_max_active_count_value_;
4827 double cut_active_count_decay_;
4828 double absolute_gap_limit_;
4829 ::int32_t cut_cleanup_target_;
4830 int fp_rounding_;
4831 bool use_sat_inprocessing_;
4832 bool use_feasibility_pump_;
4833 bool mip_automatically_scale_variables_;
4834 bool add_zero_half_cuts_;
4835 ::int32_t polarity_rephase_increment_;
4836 bool add_clique_cuts_;
4837 bool convert_intervals_;
4838 bool expand_reservoir_constraints_;
4839 bool log_to_stdout_;
4840 ::int32_t symmetry_level_;
4841 double clause_cleanup_ratio_;
4842 ::int32_t max_domain_size_when_encoding_eq_neq_constraints_;
4843 ::int32_t solution_pool_size_;
4844 double mip_max_valid_magnitude_;
4845 ::int64_t presolve_inclusion_work_limit_;
4846 ::int32_t cut_level_;
4847 bool mip_compute_true_objective_bound_;
4848 bool ignore_names_;
4849 bool share_binary_clauses_;
4850 bool use_dual_scheduling_heuristics_;
4851 double shaving_deterministic_time_in_probing_search_;
4852 double shaving_search_deterministic_time_;
4853 double propagation_loop_detection_factor_;
4854 ::int32_t table_compression_level_;
4855 ::int32_t root_lp_iterations_;
4856 double probing_deterministic_time_limit_;
4857 double mip_drop_tolerance_;
4858 ::int32_t max_size_to_create_precedence_literals_in_disjunctive_;
4859 ::int32_t shared_tree_num_workers_;
4860 bool new_linear_propagation_;
4861 bool infer_all_diffs_;
4862 bool find_big_linear_overlap_;
4863 bool feasibility_jump_enable_restarts_;
4864 ::int32_t shared_tree_max_nodes_per_worker_;
4865 double feasibility_jump_decay_;
4866 double feasibility_jump_var_randomization_probability_;
4867 double feasibility_jump_var_perburbation_range_ratio_;
4868 ::int32_t violation_ls_perturbation_period_;
4869 ::int32_t linear_split_size_;
4870 ::int32_t feasibility_jump_linearization_level_;
4871 ::int32_t feasibility_jump_restart_factor_;
4872 double violation_ls_compound_move_probability_;
4873 ::int32_t max_num_intervals_for_timetable_edge_finding_;
4874 ::int32_t mip_presolve_level_;
4875 double lp_primal_tolerance_;
4876 ::int32_t feasibility_jump_max_expanded_constraint_size_;
4877 bool use_lb_relax_lns_;
4878 bool use_feasibility_jump_;
4879 bool use_extended_probing_;
4880 bool add_rlt_cuts_;
4881 double lp_dual_tolerance_;
4882 ::int32_t at_most_one_max_expansion_size_;
4883 ::int32_t probing_num_combinations_limit_;
4884 double inprocessing_dtime_ratio_;
4885 double inprocessing_probing_dtime_;
4886 double inprocessing_minimization_dtime_;
4887 ::int32_t max_pairs_pairwise_reasoning_in_no_overlap_2d_;
4888 ::int32_t shared_tree_worker_min_restarts_per_subtree_;
4889 double shared_tree_open_leaves_per_worker_;
4890 ::int32_t variables_shaving_level_;
4891 bool use_lns_;
4892 bool share_glue_clauses_;
4893 bool shared_tree_worker_enable_trail_sharing_;
4894 bool inprocessing_minimization_use_conflict_analysis_;
4895 ::int64_t shaving_search_threshold_;
4896 double feasibility_jump_batch_dtime_;
4897 ::int32_t lb_relax_num_workers_threshold_;
4898 ::int32_t shared_tree_balance_tolerance_;
4899 double symmetry_detection_deterministic_time_limit_;
4900 double lns_initial_difficulty_;
4901 double lns_initial_deterministic_limit_;
4902 bool minimize_shared_clauses_;
4903 bool shared_tree_worker_enable_phase_sharing_;
4904 bool remove_fixed_variables_early_;
4905 bool use_linear3_for_no_overlap_2d_precedences_;
4906 ::int32_t routing_cut_subset_size_for_exact_binary_relation_bound_;
4907 double routing_cut_dp_effort_;
4908 ::int32_t routing_cut_max_infeasible_path_length_;
4909 ::int32_t routing_cut_subset_size_for_shortest_paths_bound_;
4910 ::int32_t max_alldiff_domain_size_;
4911 ::int32_t no_overlap_2d_boolean_relations_limit_;
4912 double share_glue_clauses_dtime_;
4913 ::int32_t alternative_pool_size_;
4914 ::int32_t transitive_precedences_work_limit_;
4915 double shared_tree_split_min_dtime_;
4916 ::int32_t solution_pool_diversity_limit_;
4917 ::int32_t max_backjump_levels_;
4918 ::int32_t chronological_backtrack_min_conflicts_;
4919 ::int32_t max_domain_size_for_linear2_expansion_;
4920 bool find_clauses_that_are_exactly_one_;
4921 bool create_1uip_boolean_during_icr_;
4922 bool inprocessing_use_congruence_closure_;
4923 bool extra_subsumption_during_conflict_analysis_;
4924 ::int32_t eagerly_subsume_last_n_conflicts_;
4925 double max_drat_time_in_seconds_;
4926 bool decision_subsumption_during_conflict_analysis_;
4927 bool subsume_during_vivification_;
4928 PROTOBUF_TSAN_DECLARE_MEMBER
4929 };
4930 union { Impl_ _impl_; };
4931 friend struct ::TableStruct_ortools_2fsat_2fsat_5fparameters_2eproto;
4934OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SatParameters_class_data_;
4935
4936// ===================================================================
4937
4938
4939
4940
4941// ===================================================================
4942
4943
4944#ifdef __GNUC__
4945#pragma GCC diagnostic push
4946#pragma GCC diagnostic ignored "-Wstrict-aliasing"
4947#endif // __GNUC__
4948// -------------------------------------------------------------------
4949
4950// SatParameters
4951
4952// optional string name = 171 [default = ""];
4953inline bool SatParameters::has_name() const {
4954 bool value = CheckHasBit(_impl_._has_bits_[0], 0x20000000U);
4955 return value;
4956}
4957inline void SatParameters::clear_name() {
4958 ::google::protobuf::internal::TSanWrite(&_impl_);
4959 _impl_.name_.ClearToEmpty();
4960 ClearHasBit(_impl_._has_bits_[0],
4961 0x20000000U);
4963inline const ::std::string& SatParameters::name() const
4964 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4965 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.name)
4966 return _internal_name();
4967}
4968template <typename Arg_, typename... Args_>
4969PROTOBUF_ALWAYS_INLINE void SatParameters::set_name(Arg_&& arg, Args_... args) {
4970 ::google::protobuf::internal::TSanWrite(&_impl_);
4971 SetHasBit(_impl_._has_bits_[0], 0x20000000U);
4972 _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
4973 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.name)
4975inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_name()
4976 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4977 SetHasBit(_impl_._has_bits_[0], 0x20000000U);
4978 ::std::string* _s = _internal_mutable_name();
4979 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.name)
4980 return _s;
4981}
4982inline const ::std::string& SatParameters::_internal_name() const {
4983 ::google::protobuf::internal::TSanRead(&_impl_);
4984 return _impl_.name_.Get();
4985}
4986inline void SatParameters::_internal_set_name(const ::std::string& value) {
4987 ::google::protobuf::internal::TSanWrite(&_impl_);
4988 _impl_.name_.Set(value, GetArena());
4989}
4990inline ::std::string* PROTOBUF_NONNULL SatParameters::_internal_mutable_name() {
4991 ::google::protobuf::internal::TSanWrite(&_impl_);
4992 return _impl_.name_.Mutable( GetArena());
4993}
4994inline ::std::string* PROTOBUF_NULLABLE SatParameters::release_name() {
4995 ::google::protobuf::internal::TSanWrite(&_impl_);
4996 // @@protoc_insertion_point(field_release:operations_research.sat.SatParameters.name)
4997 if (!CheckHasBit(_impl_._has_bits_[0], 0x20000000U)) {
4998 return nullptr;
5000 ClearHasBit(_impl_._has_bits_[0], 0x20000000U);
5001 auto* released = _impl_.name_.Release();
5002 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
5003 _impl_.name_.Set("", GetArena());
5004 }
5005 return released;
5006}
5007inline void SatParameters::set_allocated_name(::std::string* PROTOBUF_NULLABLE value) {
5008 ::google::protobuf::internal::TSanWrite(&_impl_);
5009 if (value != nullptr) {
5010 SetHasBit(_impl_._has_bits_[0], 0x20000000U);
5011 } else {
5012 ClearHasBit(_impl_._has_bits_[0], 0x20000000U);
5013 }
5014 _impl_.name_.SetAllocated(value, GetArena());
5015 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
5016 _impl_.name_.Set("", GetArena());
5017 }
5018 // @@protoc_insertion_point(field_set_allocated:operations_research.sat.SatParameters.name)
5019}
5020
5021// optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];
5023 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
5024 return value;
5025}
5027 ::google::protobuf::internal::TSanWrite(&_impl_);
5028 _impl_.preferred_variable_order_ = 0;
5029 ClearHasBit(_impl_._has_bits_[0],
5030 0x00000001U);
5032inline ::operations_research::sat::SatParameters_VariableOrder SatParameters::preferred_variable_order() const {
5033 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.preferred_variable_order)
5034 return _internal_preferred_variable_order();
5035}
5037 _internal_set_preferred_variable_order(value);
5038 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
5039 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.preferred_variable_order)
5040}
5041inline ::operations_research::sat::SatParameters_VariableOrder SatParameters::_internal_preferred_variable_order() const {
5042 ::google::protobuf::internal::TSanRead(&_impl_);
5043 return static_cast<::operations_research::sat::SatParameters_VariableOrder>(_impl_.preferred_variable_order_);
5044}
5045inline void SatParameters::_internal_set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value) {
5046 ::google::protobuf::internal::TSanWrite(&_impl_);
5047
5048 assert(::google::protobuf::internal::ValidateEnum(
5050 _impl_.preferred_variable_order_ = value;
5051}
5052
5053// optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];
5054inline bool SatParameters::has_initial_polarity() const {
5055 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000100U);
5056 return value;
5057}
5059 ::google::protobuf::internal::TSanWrite(&_impl_);
5060 _impl_.initial_polarity_ = 1;
5061 ClearHasBit(_impl_._has_bits_[0],
5062 0x00000100U);
5064inline ::operations_research::sat::SatParameters_Polarity SatParameters::initial_polarity() const {
5065 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.initial_polarity)
5066 return _internal_initial_polarity();
5067}
5069 _internal_set_initial_polarity(value);
5070 SetHasBit(_impl_._has_bits_[0], 0x00000100U);
5071 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.initial_polarity)
5072}
5073inline ::operations_research::sat::SatParameters_Polarity SatParameters::_internal_initial_polarity() const {
5074 ::google::protobuf::internal::TSanRead(&_impl_);
5075 return static_cast<::operations_research::sat::SatParameters_Polarity>(_impl_.initial_polarity_);
5076}
5077inline void SatParameters::_internal_set_initial_polarity(::operations_research::sat::SatParameters_Polarity value) {
5078 ::google::protobuf::internal::TSanWrite(&_impl_);
5079
5080 assert(::google::protobuf::internal::ValidateEnum(
5082 _impl_.initial_polarity_ = value;
5083}
5084
5085// optional bool use_phase_saving = 44 [default = true];
5086inline bool SatParameters::has_use_phase_saving() const {
5087 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000040U);
5088 return value;
5089}
5091 ::google::protobuf::internal::TSanWrite(&_impl_);
5092 _impl_.use_phase_saving_ = true;
5093 ClearHasBit(_impl_._has_bits_[0],
5094 0x00000040U);
5096inline bool SatParameters::use_phase_saving() const {
5097 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_phase_saving)
5098 return _internal_use_phase_saving();
5099}
5100inline void SatParameters::set_use_phase_saving(bool value) {
5101 _internal_set_use_phase_saving(value);
5102 SetHasBit(_impl_._has_bits_[0], 0x00000040U);
5103 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_phase_saving)
5104}
5105inline bool SatParameters::_internal_use_phase_saving() const {
5106 ::google::protobuf::internal::TSanRead(&_impl_);
5107 return _impl_.use_phase_saving_;
5108}
5109inline void SatParameters::_internal_set_use_phase_saving(bool value) {
5110 ::google::protobuf::internal::TSanWrite(&_impl_);
5111 _impl_.use_phase_saving_ = value;
5112}
5113
5114// optional int32 polarity_rephase_increment = 168 [default = 1000];
5116 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00040000U);
5117 return value;
5118}
5120 ::google::protobuf::internal::TSanWrite(&_impl_);
5121 _impl_.polarity_rephase_increment_ = 1000;
5122 ClearHasBit(_impl_._has_bits_[6],
5123 0x00040000U);
5125inline ::int32_t SatParameters::polarity_rephase_increment() const {
5126 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.polarity_rephase_increment)
5127 return _internal_polarity_rephase_increment();
5128}
5129inline void SatParameters::set_polarity_rephase_increment(::int32_t value) {
5130 _internal_set_polarity_rephase_increment(value);
5131 SetHasBit(_impl_._has_bits_[6], 0x00040000U);
5132 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.polarity_rephase_increment)
5133}
5134inline ::int32_t SatParameters::_internal_polarity_rephase_increment() const {
5135 ::google::protobuf::internal::TSanRead(&_impl_);
5136 return _impl_.polarity_rephase_increment_;
5137}
5138inline void SatParameters::_internal_set_polarity_rephase_increment(::int32_t value) {
5139 ::google::protobuf::internal::TSanWrite(&_impl_);
5140 _impl_.polarity_rephase_increment_ = value;
5141}
5142
5143// optional bool polarity_exploit_ls_hints = 309 [default = false];
5145 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00800000U);
5146 return value;
5147}
5149 ::google::protobuf::internal::TSanWrite(&_impl_);
5150 _impl_.polarity_exploit_ls_hints_ = false;
5151 ClearHasBit(_impl_._has_bits_[3],
5152 0x00800000U);
5154inline bool SatParameters::polarity_exploit_ls_hints() const {
5155 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.polarity_exploit_ls_hints)
5156 return _internal_polarity_exploit_ls_hints();
5157}
5158inline void SatParameters::set_polarity_exploit_ls_hints(bool value) {
5159 _internal_set_polarity_exploit_ls_hints(value);
5160 SetHasBit(_impl_._has_bits_[3], 0x00800000U);
5161 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.polarity_exploit_ls_hints)
5162}
5163inline bool SatParameters::_internal_polarity_exploit_ls_hints() const {
5164 ::google::protobuf::internal::TSanRead(&_impl_);
5165 return _impl_.polarity_exploit_ls_hints_;
5166}
5167inline void SatParameters::_internal_set_polarity_exploit_ls_hints(bool value) {
5168 ::google::protobuf::internal::TSanWrite(&_impl_);
5169 _impl_.polarity_exploit_ls_hints_ = value;
5170}
5171
5172// optional double random_polarity_ratio = 45 [default = 0];
5173inline bool SatParameters::has_random_polarity_ratio() const {
5174 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
5175 return value;
5176}
5178 ::google::protobuf::internal::TSanWrite(&_impl_);
5179 _impl_.random_polarity_ratio_ = 0;
5180 ClearHasBit(_impl_._has_bits_[0],
5181 0x00000004U);
5183inline double SatParameters::random_polarity_ratio() const {
5184 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.random_polarity_ratio)
5185 return _internal_random_polarity_ratio();
5186}
5187inline void SatParameters::set_random_polarity_ratio(double value) {
5188 _internal_set_random_polarity_ratio(value);
5189 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
5190 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.random_polarity_ratio)
5191}
5192inline double SatParameters::_internal_random_polarity_ratio() const {
5193 ::google::protobuf::internal::TSanRead(&_impl_);
5194 return _impl_.random_polarity_ratio_;
5195}
5196inline void SatParameters::_internal_set_random_polarity_ratio(double value) {
5197 ::google::protobuf::internal::TSanWrite(&_impl_);
5198 _impl_.random_polarity_ratio_ = value;
5199}
5200
5201// optional double random_branches_ratio = 32 [default = 0];
5202inline bool SatParameters::has_random_branches_ratio() const {
5203 bool value = CheckHasBit(_impl_._has_bits_[0], 0x80000000U);
5204 return value;
5205}
5207 ::google::protobuf::internal::TSanWrite(&_impl_);
5208 _impl_.random_branches_ratio_ = 0;
5209 ClearHasBit(_impl_._has_bits_[0],
5210 0x80000000U);
5212inline double SatParameters::random_branches_ratio() const {
5213 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.random_branches_ratio)
5214 return _internal_random_branches_ratio();
5215}
5216inline void SatParameters::set_random_branches_ratio(double value) {
5217 _internal_set_random_branches_ratio(value);
5218 SetHasBit(_impl_._has_bits_[0], 0x80000000U);
5219 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.random_branches_ratio)
5220}
5221inline double SatParameters::_internal_random_branches_ratio() const {
5222 ::google::protobuf::internal::TSanRead(&_impl_);
5223 return _impl_.random_branches_ratio_;
5224}
5225inline void SatParameters::_internal_set_random_branches_ratio(double value) {
5226 ::google::protobuf::internal::TSanWrite(&_impl_);
5227 _impl_.random_branches_ratio_ = value;
5228}
5229
5230// optional bool use_erwa_heuristic = 75 [default = false];
5231inline bool SatParameters::has_use_erwa_heuristic() const {
5232 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000010U);
5233 return value;
5234}
5236 ::google::protobuf::internal::TSanWrite(&_impl_);
5237 _impl_.use_erwa_heuristic_ = false;
5238 ClearHasBit(_impl_._has_bits_[1],
5239 0x00000010U);
5241inline bool SatParameters::use_erwa_heuristic() const {
5242 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_erwa_heuristic)
5243 return _internal_use_erwa_heuristic();
5244}
5245inline void SatParameters::set_use_erwa_heuristic(bool value) {
5246 _internal_set_use_erwa_heuristic(value);
5247 SetHasBit(_impl_._has_bits_[1], 0x00000010U);
5248 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_erwa_heuristic)
5249}
5250inline bool SatParameters::_internal_use_erwa_heuristic() const {
5251 ::google::protobuf::internal::TSanRead(&_impl_);
5252 return _impl_.use_erwa_heuristic_;
5253}
5254inline void SatParameters::_internal_set_use_erwa_heuristic(bool value) {
5255 ::google::protobuf::internal::TSanWrite(&_impl_);
5256 _impl_.use_erwa_heuristic_ = value;
5257}
5258
5259// optional double initial_variables_activity = 76 [default = 0];
5261 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000100U);
5262 return value;
5263}
5265 ::google::protobuf::internal::TSanWrite(&_impl_);
5266 _impl_.initial_variables_activity_ = 0;
5267 ClearHasBit(_impl_._has_bits_[1],
5268 0x00000100U);
5270inline double SatParameters::initial_variables_activity() const {
5271 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.initial_variables_activity)
5272 return _internal_initial_variables_activity();
5273}
5274inline void SatParameters::set_initial_variables_activity(double value) {
5275 _internal_set_initial_variables_activity(value);
5276 SetHasBit(_impl_._has_bits_[1], 0x00000100U);
5277 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.initial_variables_activity)
5278}
5279inline double SatParameters::_internal_initial_variables_activity() const {
5280 ::google::protobuf::internal::TSanRead(&_impl_);
5281 return _impl_.initial_variables_activity_;
5282}
5283inline void SatParameters::_internal_set_initial_variables_activity(double value) {
5284 ::google::protobuf::internal::TSanWrite(&_impl_);
5285 _impl_.initial_variables_activity_ = value;
5286}
5287
5288// optional bool also_bump_variables_in_conflict_reasons = 77 [default = false];
5290 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000200U);
5291 return value;
5292}
5294 ::google::protobuf::internal::TSanWrite(&_impl_);
5295 _impl_.also_bump_variables_in_conflict_reasons_ = false;
5296 ClearHasBit(_impl_._has_bits_[1],
5297 0x00000200U);
5300 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.also_bump_variables_in_conflict_reasons)
5301 return _internal_also_bump_variables_in_conflict_reasons();
5302}
5304 _internal_set_also_bump_variables_in_conflict_reasons(value);
5305 SetHasBit(_impl_._has_bits_[1], 0x00000200U);
5306 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.also_bump_variables_in_conflict_reasons)
5307}
5308inline bool SatParameters::_internal_also_bump_variables_in_conflict_reasons() const {
5309 ::google::protobuf::internal::TSanRead(&_impl_);
5310 return _impl_.also_bump_variables_in_conflict_reasons_;
5311}
5312inline void SatParameters::_internal_set_also_bump_variables_in_conflict_reasons(bool value) {
5313 ::google::protobuf::internal::TSanWrite(&_impl_);
5314 _impl_.also_bump_variables_in_conflict_reasons_ = value;
5315}
5316
5317// optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];
5319 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000200U);
5320 return value;
5321}
5323 ::google::protobuf::internal::TSanWrite(&_impl_);
5324 _impl_.minimization_algorithm_ = 2;
5325 ClearHasBit(_impl_._has_bits_[0],
5326 0x00000200U);
5328inline ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm SatParameters::minimization_algorithm() const {
5329 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimization_algorithm)
5330 return _internal_minimization_algorithm();
5331}
5333 _internal_set_minimization_algorithm(value);
5334 SetHasBit(_impl_._has_bits_[0], 0x00000200U);
5335 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimization_algorithm)
5336}
5337inline ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm SatParameters::_internal_minimization_algorithm() const {
5338 ::google::protobuf::internal::TSanRead(&_impl_);
5339 return static_cast<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm>(_impl_.minimization_algorithm_);
5340}
5341inline void SatParameters::_internal_set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value) {
5342 ::google::protobuf::internal::TSanWrite(&_impl_);
5343
5344 assert(::google::protobuf::internal::ValidateEnum(
5346 _impl_.minimization_algorithm_ = value;
5347}
5348
5349// optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FROM_UIP_AND_DECISIONS];
5351 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000800U);
5352 return value;
5353}
5355 ::google::protobuf::internal::TSanWrite(&_impl_);
5356 _impl_.binary_minimization_algorithm_ = 5;
5357 ClearHasBit(_impl_._has_bits_[4],
5358 0x00000800U);
5360inline ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm SatParameters::binary_minimization_algorithm() const {
5361 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.binary_minimization_algorithm)
5362 return _internal_binary_minimization_algorithm();
5363}
5365 _internal_set_binary_minimization_algorithm(value);
5366 SetHasBit(_impl_._has_bits_[4], 0x00000800U);
5367 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.binary_minimization_algorithm)
5368}
5369inline ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm SatParameters::_internal_binary_minimization_algorithm() const {
5370 ::google::protobuf::internal::TSanRead(&_impl_);
5371 return static_cast<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm>(_impl_.binary_minimization_algorithm_);
5372}
5373inline void SatParameters::_internal_set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value) {
5374 ::google::protobuf::internal::TSanWrite(&_impl_);
5375
5376 assert(::google::protobuf::internal::ValidateEnum(
5378 _impl_.binary_minimization_algorithm_ = value;
5379}
5380
5381// optional bool subsumption_during_conflict_analysis = 56 [default = true];
5383 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00800000U);
5384 return value;
5385}
5387 ::google::protobuf::internal::TSanWrite(&_impl_);
5388 _impl_.subsumption_during_conflict_analysis_ = true;
5389 ClearHasBit(_impl_._has_bits_[4],
5390 0x00800000U);
5393 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.subsumption_during_conflict_analysis)
5394 return _internal_subsumption_during_conflict_analysis();
5395}
5397 _internal_set_subsumption_during_conflict_analysis(value);
5398 SetHasBit(_impl_._has_bits_[4], 0x00800000U);
5399 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.subsumption_during_conflict_analysis)
5400}
5401inline bool SatParameters::_internal_subsumption_during_conflict_analysis() const {
5402 ::google::protobuf::internal::TSanRead(&_impl_);
5403 return _impl_.subsumption_during_conflict_analysis_;
5404}
5405inline void SatParameters::_internal_set_subsumption_during_conflict_analysis(bool value) {
5406 ::google::protobuf::internal::TSanWrite(&_impl_);
5407 _impl_.subsumption_during_conflict_analysis_ = value;
5408}
5409
5410// optional bool extra_subsumption_during_conflict_analysis = 351 [default = true];
5412 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000400U);
5413 return value;
5414}
5416 ::google::protobuf::internal::TSanWrite(&_impl_);
5417 _impl_.extra_subsumption_during_conflict_analysis_ = true;
5418 ClearHasBit(_impl_._has_bits_[9],
5419 0x00000400U);
5422 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.extra_subsumption_during_conflict_analysis)
5423 return _internal_extra_subsumption_during_conflict_analysis();
5424}
5426 _internal_set_extra_subsumption_during_conflict_analysis(value);
5427 SetHasBit(_impl_._has_bits_[9], 0x00000400U);
5428 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.extra_subsumption_during_conflict_analysis)
5429}
5430inline bool SatParameters::_internal_extra_subsumption_during_conflict_analysis() const {
5431 ::google::protobuf::internal::TSanRead(&_impl_);
5432 return _impl_.extra_subsumption_during_conflict_analysis_;
5433}
5434inline void SatParameters::_internal_set_extra_subsumption_during_conflict_analysis(bool value) {
5435 ::google::protobuf::internal::TSanWrite(&_impl_);
5436 _impl_.extra_subsumption_during_conflict_analysis_ = value;
5437}
5438
5439// optional bool decision_subsumption_during_conflict_analysis = 353 [default = true];
5441 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00002000U);
5442 return value;
5443}
5445 ::google::protobuf::internal::TSanWrite(&_impl_);
5446 _impl_.decision_subsumption_during_conflict_analysis_ = true;
5447 ClearHasBit(_impl_._has_bits_[9],
5448 0x00002000U);
5451 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.decision_subsumption_during_conflict_analysis)
5452 return _internal_decision_subsumption_during_conflict_analysis();
5453}
5455 _internal_set_decision_subsumption_during_conflict_analysis(value);
5456 SetHasBit(_impl_._has_bits_[9], 0x00002000U);
5457 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.decision_subsumption_during_conflict_analysis)
5458}
5459inline bool SatParameters::_internal_decision_subsumption_during_conflict_analysis() const {
5460 ::google::protobuf::internal::TSanRead(&_impl_);
5461 return _impl_.decision_subsumption_during_conflict_analysis_;
5462}
5463inline void SatParameters::_internal_set_decision_subsumption_during_conflict_analysis(bool value) {
5464 ::google::protobuf::internal::TSanWrite(&_impl_);
5465 _impl_.decision_subsumption_during_conflict_analysis_ = value;
5466}
5467
5468// optional int32 eagerly_subsume_last_n_conflicts = 343 [default = 4];
5470 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000800U);
5471 return value;
5472}
5474 ::google::protobuf::internal::TSanWrite(&_impl_);
5475 _impl_.eagerly_subsume_last_n_conflicts_ = 4;
5476 ClearHasBit(_impl_._has_bits_[9],
5477 0x00000800U);
5479inline ::int32_t SatParameters::eagerly_subsume_last_n_conflicts() const {
5480 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.eagerly_subsume_last_n_conflicts)
5481 return _internal_eagerly_subsume_last_n_conflicts();
5482}
5483inline void SatParameters::set_eagerly_subsume_last_n_conflicts(::int32_t value) {
5484 _internal_set_eagerly_subsume_last_n_conflicts(value);
5485 SetHasBit(_impl_._has_bits_[9], 0x00000800U);
5486 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.eagerly_subsume_last_n_conflicts)
5487}
5488inline ::int32_t SatParameters::_internal_eagerly_subsume_last_n_conflicts() const {
5489 ::google::protobuf::internal::TSanRead(&_impl_);
5490 return _impl_.eagerly_subsume_last_n_conflicts_;
5491}
5492inline void SatParameters::_internal_set_eagerly_subsume_last_n_conflicts(::int32_t value) {
5493 ::google::protobuf::internal::TSanWrite(&_impl_);
5494 _impl_.eagerly_subsume_last_n_conflicts_ = value;
5495}
5496
5497// optional bool subsume_during_vivification = 355 [default = true];
5499 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00004000U);
5500 return value;
5501}
5503 ::google::protobuf::internal::TSanWrite(&_impl_);
5504 _impl_.subsume_during_vivification_ = true;
5505 ClearHasBit(_impl_._has_bits_[9],
5506 0x00004000U);
5509 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.subsume_during_vivification)
5510 return _internal_subsume_during_vivification();
5511}
5512inline void SatParameters::set_subsume_during_vivification(bool value) {
5513 _internal_set_subsume_during_vivification(value);
5514 SetHasBit(_impl_._has_bits_[9], 0x00004000U);
5515 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.subsume_during_vivification)
5516}
5517inline bool SatParameters::_internal_subsume_during_vivification() const {
5518 ::google::protobuf::internal::TSanRead(&_impl_);
5519 return _impl_.subsume_during_vivification_;
5520}
5521inline void SatParameters::_internal_set_subsume_during_vivification(bool value) {
5522 ::google::protobuf::internal::TSanWrite(&_impl_);
5523 _impl_.subsume_during_vivification_ = value;
5524}
5525
5526// optional bool use_chronological_backtracking = 330 [default = false];
5528 bool value = CheckHasBit(_impl_._has_bits_[3], 0x20000000U);
5529 return value;
5530}
5532 ::google::protobuf::internal::TSanWrite(&_impl_);
5533 _impl_.use_chronological_backtracking_ = false;
5534 ClearHasBit(_impl_._has_bits_[3],
5535 0x20000000U);
5538 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_chronological_backtracking)
5539 return _internal_use_chronological_backtracking();
5540}
5542 _internal_set_use_chronological_backtracking(value);
5543 SetHasBit(_impl_._has_bits_[3], 0x20000000U);
5544 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_chronological_backtracking)
5545}
5546inline bool SatParameters::_internal_use_chronological_backtracking() const {
5547 ::google::protobuf::internal::TSanRead(&_impl_);
5548 return _impl_.use_chronological_backtracking_;
5549}
5550inline void SatParameters::_internal_set_use_chronological_backtracking(bool value) {
5551 ::google::protobuf::internal::TSanWrite(&_impl_);
5552 _impl_.use_chronological_backtracking_ = value;
5553}
5554
5555// optional int32 max_backjump_levels = 331 [default = 50];
5556inline bool SatParameters::has_max_backjump_levels() const {
5557 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000010U);
5558 return value;
5559}
5561 ::google::protobuf::internal::TSanWrite(&_impl_);
5562 _impl_.max_backjump_levels_ = 50;
5563 ClearHasBit(_impl_._has_bits_[9],
5564 0x00000010U);
5566inline ::int32_t SatParameters::max_backjump_levels() const {
5567 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_backjump_levels)
5568 return _internal_max_backjump_levels();
5569}
5570inline void SatParameters::set_max_backjump_levels(::int32_t value) {
5571 _internal_set_max_backjump_levels(value);
5572 SetHasBit(_impl_._has_bits_[9], 0x00000010U);
5573 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_backjump_levels)
5574}
5575inline ::int32_t SatParameters::_internal_max_backjump_levels() const {
5576 ::google::protobuf::internal::TSanRead(&_impl_);
5577 return _impl_.max_backjump_levels_;
5578}
5579inline void SatParameters::_internal_set_max_backjump_levels(::int32_t value) {
5580 ::google::protobuf::internal::TSanWrite(&_impl_);
5581 _impl_.max_backjump_levels_ = value;
5582}
5583
5584// optional int32 chronological_backtrack_min_conflicts = 332 [default = 1000];
5586 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000020U);
5587 return value;
5588}
5590 ::google::protobuf::internal::TSanWrite(&_impl_);
5591 _impl_.chronological_backtrack_min_conflicts_ = 1000;
5592 ClearHasBit(_impl_._has_bits_[9],
5593 0x00000020U);
5596 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.chronological_backtrack_min_conflicts)
5597 return _internal_chronological_backtrack_min_conflicts();
5598}
5600 _internal_set_chronological_backtrack_min_conflicts(value);
5601 SetHasBit(_impl_._has_bits_[9], 0x00000020U);
5602 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.chronological_backtrack_min_conflicts)
5603}
5604inline ::int32_t SatParameters::_internal_chronological_backtrack_min_conflicts() const {
5605 ::google::protobuf::internal::TSanRead(&_impl_);
5606 return _impl_.chronological_backtrack_min_conflicts_;
5607}
5608inline void SatParameters::_internal_set_chronological_backtrack_min_conflicts(::int32_t value) {
5609 ::google::protobuf::internal::TSanWrite(&_impl_);
5610 _impl_.chronological_backtrack_min_conflicts_ = value;
5611}
5612
5613// optional int32 clause_cleanup_period = 11 [default = 10000];
5614inline bool SatParameters::has_clause_cleanup_period() const {
5615 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00002000U);
5616 return value;
5617}
5619 ::google::protobuf::internal::TSanWrite(&_impl_);
5620 _impl_.clause_cleanup_period_ = 10000;
5621 ClearHasBit(_impl_._has_bits_[0],
5622 0x00002000U);
5624inline ::int32_t SatParameters::clause_cleanup_period() const {
5625 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_period)
5626 return _internal_clause_cleanup_period();
5627}
5628inline void SatParameters::set_clause_cleanup_period(::int32_t value) {
5629 _internal_set_clause_cleanup_period(value);
5630 SetHasBit(_impl_._has_bits_[0], 0x00002000U);
5631 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_period)
5632}
5633inline ::int32_t SatParameters::_internal_clause_cleanup_period() const {
5634 ::google::protobuf::internal::TSanRead(&_impl_);
5635 return _impl_.clause_cleanup_period_;
5636}
5637inline void SatParameters::_internal_set_clause_cleanup_period(::int32_t value) {
5638 ::google::protobuf::internal::TSanWrite(&_impl_);
5639 _impl_.clause_cleanup_period_ = value;
5640}
5641
5642// optional int32 clause_cleanup_period_increment = 337 [default = 0];
5644 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000001U);
5645 return value;
5646}
5648 ::google::protobuf::internal::TSanWrite(&_impl_);
5649 _impl_.clause_cleanup_period_increment_ = 0;
5650 ClearHasBit(_impl_._has_bits_[4],
5651 0x00000001U);
5653inline ::int32_t SatParameters::clause_cleanup_period_increment() const {
5654 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_period_increment)
5655 return _internal_clause_cleanup_period_increment();
5656}
5657inline void SatParameters::set_clause_cleanup_period_increment(::int32_t value) {
5658 _internal_set_clause_cleanup_period_increment(value);
5659 SetHasBit(_impl_._has_bits_[4], 0x00000001U);
5660 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_period_increment)
5661}
5662inline ::int32_t SatParameters::_internal_clause_cleanup_period_increment() const {
5663 ::google::protobuf::internal::TSanRead(&_impl_);
5664 return _impl_.clause_cleanup_period_increment_;
5665}
5666inline void SatParameters::_internal_set_clause_cleanup_period_increment(::int32_t value) {
5667 ::google::protobuf::internal::TSanWrite(&_impl_);
5668 _impl_.clause_cleanup_period_increment_ = value;
5669}
5670
5671// optional int32 clause_cleanup_target = 13 [default = 0];
5672inline bool SatParameters::has_clause_cleanup_target() const {
5673 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
5674 return value;
5675}
5677 ::google::protobuf::internal::TSanWrite(&_impl_);
5678 _impl_.clause_cleanup_target_ = 0;
5679 ClearHasBit(_impl_._has_bits_[0],
5680 0x00000002U);
5682inline ::int32_t SatParameters::clause_cleanup_target() const {
5683 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_target)
5684 return _internal_clause_cleanup_target();
5685}
5686inline void SatParameters::set_clause_cleanup_target(::int32_t value) {
5687 _internal_set_clause_cleanup_target(value);
5688 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
5689 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_target)
5690}
5691inline ::int32_t SatParameters::_internal_clause_cleanup_target() const {
5692 ::google::protobuf::internal::TSanRead(&_impl_);
5693 return _impl_.clause_cleanup_target_;
5694}
5695inline void SatParameters::_internal_set_clause_cleanup_target(::int32_t value) {
5696 ::google::protobuf::internal::TSanWrite(&_impl_);
5697 _impl_.clause_cleanup_target_ = value;
5698}
5699
5700// optional double clause_cleanup_ratio = 190 [default = 0.5];
5701inline bool SatParameters::has_clause_cleanup_ratio() const {
5702 bool value = CheckHasBit(_impl_._has_bits_[6], 0x01000000U);
5703 return value;
5704}
5706 ::google::protobuf::internal::TSanWrite(&_impl_);
5707 _impl_.clause_cleanup_ratio_ = 0.5;
5708 ClearHasBit(_impl_._has_bits_[6],
5709 0x01000000U);
5711inline double SatParameters::clause_cleanup_ratio() const {
5712 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_ratio)
5713 return _internal_clause_cleanup_ratio();
5714}
5715inline void SatParameters::set_clause_cleanup_ratio(double value) {
5716 _internal_set_clause_cleanup_ratio(value);
5717 SetHasBit(_impl_._has_bits_[6], 0x01000000U);
5718 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_ratio)
5719}
5720inline double SatParameters::_internal_clause_cleanup_ratio() const {
5721 ::google::protobuf::internal::TSanRead(&_impl_);
5722 return _impl_.clause_cleanup_ratio_;
5723}
5724inline void SatParameters::_internal_set_clause_cleanup_ratio(double value) {
5725 ::google::protobuf::internal::TSanWrite(&_impl_);
5726 _impl_.clause_cleanup_ratio_ = value;
5727}
5728
5729// optional int32 clause_cleanup_lbd_bound = 59 [default = 5];
5731 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00080000U);
5732 return value;
5733}
5735 ::google::protobuf::internal::TSanWrite(&_impl_);
5736 _impl_.clause_cleanup_lbd_bound_ = 5;
5737 ClearHasBit(_impl_._has_bits_[4],
5738 0x00080000U);
5740inline ::int32_t SatParameters::clause_cleanup_lbd_bound() const {
5741 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_lbd_bound)
5742 return _internal_clause_cleanup_lbd_bound();
5743}
5744inline void SatParameters::set_clause_cleanup_lbd_bound(::int32_t value) {
5745 _internal_set_clause_cleanup_lbd_bound(value);
5746 SetHasBit(_impl_._has_bits_[4], 0x00080000U);
5747 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_lbd_bound)
5748}
5749inline ::int32_t SatParameters::_internal_clause_cleanup_lbd_bound() const {
5750 ::google::protobuf::internal::TSanRead(&_impl_);
5751 return _impl_.clause_cleanup_lbd_bound_;
5752}
5753inline void SatParameters::_internal_set_clause_cleanup_lbd_bound(::int32_t value) {
5754 ::google::protobuf::internal::TSanWrite(&_impl_);
5755 _impl_.clause_cleanup_lbd_bound_ = value;
5756}
5757
5758// optional int32 clause_cleanup_lbd_tier1 = 349 [default = 0];
5760 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000020U);
5761 return value;
5762}
5764 ::google::protobuf::internal::TSanWrite(&_impl_);
5765 _impl_.clause_cleanup_lbd_tier1_ = 0;
5766 ClearHasBit(_impl_._has_bits_[4],
5767 0x00000020U);
5769inline ::int32_t SatParameters::clause_cleanup_lbd_tier1() const {
5770 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_lbd_tier1)
5771 return _internal_clause_cleanup_lbd_tier1();
5772}
5773inline void SatParameters::set_clause_cleanup_lbd_tier1(::int32_t value) {
5774 _internal_set_clause_cleanup_lbd_tier1(value);
5775 SetHasBit(_impl_._has_bits_[4], 0x00000020U);
5776 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_lbd_tier1)
5777}
5778inline ::int32_t SatParameters::_internal_clause_cleanup_lbd_tier1() const {
5779 ::google::protobuf::internal::TSanRead(&_impl_);
5780 return _impl_.clause_cleanup_lbd_tier1_;
5781}
5782inline void SatParameters::_internal_set_clause_cleanup_lbd_tier1(::int32_t value) {
5783 ::google::protobuf::internal::TSanWrite(&_impl_);
5784 _impl_.clause_cleanup_lbd_tier1_ = value;
5785}
5786
5787// optional int32 clause_cleanup_lbd_tier2 = 350 [default = 0];
5789 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000040U);
5790 return value;
5791}
5793 ::google::protobuf::internal::TSanWrite(&_impl_);
5794 _impl_.clause_cleanup_lbd_tier2_ = 0;
5795 ClearHasBit(_impl_._has_bits_[4],
5796 0x00000040U);
5798inline ::int32_t SatParameters::clause_cleanup_lbd_tier2() const {
5799 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_lbd_tier2)
5800 return _internal_clause_cleanup_lbd_tier2();
5801}
5802inline void SatParameters::set_clause_cleanup_lbd_tier2(::int32_t value) {
5803 _internal_set_clause_cleanup_lbd_tier2(value);
5804 SetHasBit(_impl_._has_bits_[4], 0x00000040U);
5805 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_lbd_tier2)
5806}
5807inline ::int32_t SatParameters::_internal_clause_cleanup_lbd_tier2() const {
5808 ::google::protobuf::internal::TSanRead(&_impl_);
5809 return _impl_.clause_cleanup_lbd_tier2_;
5810}
5811inline void SatParameters::_internal_set_clause_cleanup_lbd_tier2(::int32_t value) {
5812 ::google::protobuf::internal::TSanWrite(&_impl_);
5813 _impl_.clause_cleanup_lbd_tier2_ = value;
5814}
5815
5816// optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];
5818 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000020U);
5819 return value;
5820}
5822 ::google::protobuf::internal::TSanWrite(&_impl_);
5823 _impl_.clause_cleanup_ordering_ = 0;
5824 ClearHasBit(_impl_._has_bits_[1],
5825 0x00000020U);
5827inline ::operations_research::sat::SatParameters_ClauseOrdering SatParameters::clause_cleanup_ordering() const {
5828 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_cleanup_ordering)
5829 return _internal_clause_cleanup_ordering();
5830}
5832 _internal_set_clause_cleanup_ordering(value);
5833 SetHasBit(_impl_._has_bits_[1], 0x00000020U);
5834 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_cleanup_ordering)
5835}
5836inline ::operations_research::sat::SatParameters_ClauseOrdering SatParameters::_internal_clause_cleanup_ordering() const {
5837 ::google::protobuf::internal::TSanRead(&_impl_);
5838 return static_cast<::operations_research::sat::SatParameters_ClauseOrdering>(_impl_.clause_cleanup_ordering_);
5839}
5840inline void SatParameters::_internal_set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value) {
5841 ::google::protobuf::internal::TSanWrite(&_impl_);
5842
5843 assert(::google::protobuf::internal::ValidateEnum(
5845 _impl_.clause_cleanup_ordering_ = value;
5846}
5847
5848// optional int32 pb_cleanup_increment = 46 [default = 200];
5849inline bool SatParameters::has_pb_cleanup_increment() const {
5850 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00001000U);
5851 return value;
5852}
5854 ::google::protobuf::internal::TSanWrite(&_impl_);
5855 _impl_.pb_cleanup_increment_ = 200;
5856 ClearHasBit(_impl_._has_bits_[4],
5857 0x00001000U);
5859inline ::int32_t SatParameters::pb_cleanup_increment() const {
5860 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.pb_cleanup_increment)
5861 return _internal_pb_cleanup_increment();
5862}
5863inline void SatParameters::set_pb_cleanup_increment(::int32_t value) {
5864 _internal_set_pb_cleanup_increment(value);
5865 SetHasBit(_impl_._has_bits_[4], 0x00001000U);
5866 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.pb_cleanup_increment)
5867}
5868inline ::int32_t SatParameters::_internal_pb_cleanup_increment() const {
5869 ::google::protobuf::internal::TSanRead(&_impl_);
5870 return _impl_.pb_cleanup_increment_;
5871}
5872inline void SatParameters::_internal_set_pb_cleanup_increment(::int32_t value) {
5873 ::google::protobuf::internal::TSanWrite(&_impl_);
5874 _impl_.pb_cleanup_increment_ = value;
5875}
5876
5877// optional double pb_cleanup_ratio = 47 [default = 0.5];
5878inline bool SatParameters::has_pb_cleanup_ratio() const {
5879 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00002000U);
5880 return value;
5881}
5883 ::google::protobuf::internal::TSanWrite(&_impl_);
5884 _impl_.pb_cleanup_ratio_ = 0.5;
5885 ClearHasBit(_impl_._has_bits_[4],
5886 0x00002000U);
5888inline double SatParameters::pb_cleanup_ratio() const {
5889 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.pb_cleanup_ratio)
5890 return _internal_pb_cleanup_ratio();
5891}
5892inline void SatParameters::set_pb_cleanup_ratio(double value) {
5893 _internal_set_pb_cleanup_ratio(value);
5894 SetHasBit(_impl_._has_bits_[4], 0x00002000U);
5895 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.pb_cleanup_ratio)
5896}
5897inline double SatParameters::_internal_pb_cleanup_ratio() const {
5898 ::google::protobuf::internal::TSanRead(&_impl_);
5899 return _impl_.pb_cleanup_ratio_;
5900}
5901inline void SatParameters::_internal_set_pb_cleanup_ratio(double value) {
5902 ::google::protobuf::internal::TSanWrite(&_impl_);
5903 _impl_.pb_cleanup_ratio_ = value;
5904}
5905
5906// optional double variable_activity_decay = 15 [default = 0.8];
5908 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000400U);
5909 return value;
5910}
5912 ::google::protobuf::internal::TSanWrite(&_impl_);
5913 _impl_.variable_activity_decay_ = 0.8;
5914 ClearHasBit(_impl_._has_bits_[0],
5915 0x00000400U);
5917inline double SatParameters::variable_activity_decay() const {
5918 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.variable_activity_decay)
5919 return _internal_variable_activity_decay();
5920}
5921inline void SatParameters::set_variable_activity_decay(double value) {
5922 _internal_set_variable_activity_decay(value);
5923 SetHasBit(_impl_._has_bits_[0], 0x00000400U);
5924 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.variable_activity_decay)
5925}
5926inline double SatParameters::_internal_variable_activity_decay() const {
5927 ::google::protobuf::internal::TSanRead(&_impl_);
5928 return _impl_.variable_activity_decay_;
5929}
5930inline void SatParameters::_internal_set_variable_activity_decay(double value) {
5931 ::google::protobuf::internal::TSanWrite(&_impl_);
5932 _impl_.variable_activity_decay_ = value;
5933}
5934
5935// optional double max_variable_activity_value = 16 [default = 1e+100];
5937 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000800U);
5938 return value;
5939}
5941 ::google::protobuf::internal::TSanWrite(&_impl_);
5942 _impl_.max_variable_activity_value_ = 1e+100;
5943 ClearHasBit(_impl_._has_bits_[0],
5944 0x00000800U);
5946inline double SatParameters::max_variable_activity_value() const {
5947 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_variable_activity_value)
5948 return _internal_max_variable_activity_value();
5949}
5950inline void SatParameters::set_max_variable_activity_value(double value) {
5951 _internal_set_max_variable_activity_value(value);
5952 SetHasBit(_impl_._has_bits_[0], 0x00000800U);
5953 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_variable_activity_value)
5954}
5955inline double SatParameters::_internal_max_variable_activity_value() const {
5956 ::google::protobuf::internal::TSanRead(&_impl_);
5957 return _impl_.max_variable_activity_value_;
5958}
5959inline void SatParameters::_internal_set_max_variable_activity_value(double value) {
5960 ::google::protobuf::internal::TSanWrite(&_impl_);
5961 _impl_.max_variable_activity_value_ = value;
5962}
5963
5964// optional double glucose_max_decay = 22 [default = 0.95];
5965inline bool SatParameters::has_glucose_max_decay() const {
5966 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00010000U);
5967 return value;
5968}
5970 ::google::protobuf::internal::TSanWrite(&_impl_);
5971 _impl_.glucose_max_decay_ = 0.95;
5972 ClearHasBit(_impl_._has_bits_[0],
5973 0x00010000U);
5975inline double SatParameters::glucose_max_decay() const {
5976 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.glucose_max_decay)
5977 return _internal_glucose_max_decay();
5978}
5979inline void SatParameters::set_glucose_max_decay(double value) {
5980 _internal_set_glucose_max_decay(value);
5981 SetHasBit(_impl_._has_bits_[0], 0x00010000U);
5982 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.glucose_max_decay)
5983}
5984inline double SatParameters::_internal_glucose_max_decay() const {
5985 ::google::protobuf::internal::TSanRead(&_impl_);
5986 return _impl_.glucose_max_decay_;
5987}
5988inline void SatParameters::_internal_set_glucose_max_decay(double value) {
5989 ::google::protobuf::internal::TSanWrite(&_impl_);
5990 _impl_.glucose_max_decay_ = value;
5991}
5992
5993// optional double glucose_decay_increment = 23 [default = 0.01];
5995 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00020000U);
5996 return value;
5997}
5999 ::google::protobuf::internal::TSanWrite(&_impl_);
6000 _impl_.glucose_decay_increment_ = 0.01;
6001 ClearHasBit(_impl_._has_bits_[0],
6002 0x00020000U);
6004inline double SatParameters::glucose_decay_increment() const {
6005 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.glucose_decay_increment)
6006 return _internal_glucose_decay_increment();
6007}
6008inline void SatParameters::set_glucose_decay_increment(double value) {
6009 _internal_set_glucose_decay_increment(value);
6010 SetHasBit(_impl_._has_bits_[0], 0x00020000U);
6011 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.glucose_decay_increment)
6012}
6013inline double SatParameters::_internal_glucose_decay_increment() const {
6014 ::google::protobuf::internal::TSanRead(&_impl_);
6015 return _impl_.glucose_decay_increment_;
6016}
6017inline void SatParameters::_internal_set_glucose_decay_increment(double value) {
6018 ::google::protobuf::internal::TSanWrite(&_impl_);
6019 _impl_.glucose_decay_increment_ = value;
6020}
6021
6022// optional int32 glucose_decay_increment_period = 24 [default = 5000];
6024 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00004000U);
6025 return value;
6026}
6028 ::google::protobuf::internal::TSanWrite(&_impl_);
6029 _impl_.glucose_decay_increment_period_ = 5000;
6030 ClearHasBit(_impl_._has_bits_[0],
6031 0x00004000U);
6033inline ::int32_t SatParameters::glucose_decay_increment_period() const {
6034 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.glucose_decay_increment_period)
6035 return _internal_glucose_decay_increment_period();
6036}
6037inline void SatParameters::set_glucose_decay_increment_period(::int32_t value) {
6038 _internal_set_glucose_decay_increment_period(value);
6039 SetHasBit(_impl_._has_bits_[0], 0x00004000U);
6040 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.glucose_decay_increment_period)
6041}
6042inline ::int32_t SatParameters::_internal_glucose_decay_increment_period() const {
6043 ::google::protobuf::internal::TSanRead(&_impl_);
6044 return _impl_.glucose_decay_increment_period_;
6045}
6046inline void SatParameters::_internal_set_glucose_decay_increment_period(::int32_t value) {
6047 ::google::protobuf::internal::TSanWrite(&_impl_);
6048 _impl_.glucose_decay_increment_period_ = value;
6049}
6050
6051// optional double clause_activity_decay = 17 [default = 0.999];
6052inline bool SatParameters::has_clause_activity_decay() const {
6053 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00001000U);
6054 return value;
6055}
6057 ::google::protobuf::internal::TSanWrite(&_impl_);
6058 _impl_.clause_activity_decay_ = 0.999;
6059 ClearHasBit(_impl_._has_bits_[0],
6060 0x00001000U);
6062inline double SatParameters::clause_activity_decay() const {
6063 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.clause_activity_decay)
6064 return _internal_clause_activity_decay();
6065}
6066inline void SatParameters::set_clause_activity_decay(double value) {
6067 _internal_set_clause_activity_decay(value);
6068 SetHasBit(_impl_._has_bits_[0], 0x00001000U);
6069 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.clause_activity_decay)
6070}
6071inline double SatParameters::_internal_clause_activity_decay() const {
6072 ::google::protobuf::internal::TSanRead(&_impl_);
6073 return _impl_.clause_activity_decay_;
6074}
6075inline void SatParameters::_internal_set_clause_activity_decay(double value) {
6076 ::google::protobuf::internal::TSanWrite(&_impl_);
6077 _impl_.clause_activity_decay_ = value;
6078}
6079
6080// optional double max_clause_activity_value = 18 [default = 1e+20];
6082 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00008000U);
6083 return value;
6084}
6086 ::google::protobuf::internal::TSanWrite(&_impl_);
6087 _impl_.max_clause_activity_value_ = 1e+20;
6088 ClearHasBit(_impl_._has_bits_[0],
6089 0x00008000U);
6091inline double SatParameters::max_clause_activity_value() const {
6092 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_clause_activity_value)
6093 return _internal_max_clause_activity_value();
6094}
6095inline void SatParameters::set_max_clause_activity_value(double value) {
6096 _internal_set_max_clause_activity_value(value);
6097 SetHasBit(_impl_._has_bits_[0], 0x00008000U);
6098 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_clause_activity_value)
6099}
6100inline double SatParameters::_internal_max_clause_activity_value() const {
6101 ::google::protobuf::internal::TSanRead(&_impl_);
6102 return _impl_.max_clause_activity_value_;
6103}
6104inline void SatParameters::_internal_set_max_clause_activity_value(double value) {
6105 ::google::protobuf::internal::TSanWrite(&_impl_);
6106 _impl_.max_clause_activity_value_ = value;
6107}
6108
6109// repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;
6110inline int SatParameters::_internal_restart_algorithms_size() const {
6111 return _internal_restart_algorithms().size();
6112}
6113inline int SatParameters::restart_algorithms_size() const {
6114 return _internal_restart_algorithms_size();
6115}
6117 ::google::protobuf::internal::TSanWrite(&_impl_);
6118 _impl_.restart_algorithms_.Clear();
6119 ClearHasBitForRepeated(_impl_._has_bits_[0],
6120 0x00400000U);
6122inline ::operations_research::sat::SatParameters_RestartAlgorithm SatParameters::restart_algorithms(int index) const {
6123 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_algorithms)
6124 return static_cast<::operations_research::sat::SatParameters_RestartAlgorithm>(_internal_restart_algorithms().Get(index));
6125}
6128 assert(::google::protobuf::internal::ValidateEnum(
6130 _internal_mutable_restart_algorithms()->Set(index, value);
6131 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_algorithms)
6132}
6134
6135 assert(::google::protobuf::internal::ValidateEnum(
6137 ::google::protobuf::internal::TSanWrite(&_impl_);
6138 _internal_mutable_restart_algorithms()->Add(value);
6139 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00400000U);
6140 // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.restart_algorithms)
6141}
6142inline const ::google::protobuf::RepeatedField<int>& SatParameters::restart_algorithms() const
6143 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6144 // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.restart_algorithms)
6145 return _internal_restart_algorithms();
6146}
6147inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL SatParameters::mutable_restart_algorithms()
6148 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6149 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00400000U);
6150 // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.restart_algorithms)
6151 ::google::protobuf::internal::TSanWrite(&_impl_);
6152 return _internal_mutable_restart_algorithms();
6153}
6154inline const ::google::protobuf::RepeatedField<int>& SatParameters::_internal_restart_algorithms()
6155 const {
6156 ::google::protobuf::internal::TSanRead(&_impl_);
6157 return _impl_.restart_algorithms_;
6158}
6159inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL
6160SatParameters::_internal_mutable_restart_algorithms() {
6161 ::google::protobuf::internal::TSanRead(&_impl_);
6162 return &_impl_.restart_algorithms_;
6163}
6164
6165// optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];
6167 bool value = CheckHasBit(_impl_._has_bits_[0], 0x10000000U);
6168 return value;
6169}
6171 ::google::protobuf::internal::TSanWrite(&_impl_);
6172 _impl_.default_restart_algorithms_.ClearToDefault(::operations_research::sat::SatParameters::Impl_::_i_give_permission_to_break_this_code_default_default_restart_algorithms_, GetArena());
6173 ClearHasBit(_impl_._has_bits_[0],
6174 0x10000000U);
6176inline const ::std::string& SatParameters::default_restart_algorithms() const
6177 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6178 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.default_restart_algorithms)
6179 if (_impl_.default_restart_algorithms_.IsDefault()) {
6180 return Impl_::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get();
6182 return _internal_default_restart_algorithms();
6183}
6184template <typename Arg_, typename... Args_>
6185PROTOBUF_ALWAYS_INLINE void SatParameters::set_default_restart_algorithms(Arg_&& arg, Args_... args) {
6186 ::google::protobuf::internal::TSanWrite(&_impl_);
6187 SetHasBit(_impl_._has_bits_[0], 0x10000000U);
6188 _impl_.default_restart_algorithms_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
6189 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.default_restart_algorithms)
6191inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_default_restart_algorithms()
6192 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6193 SetHasBit(_impl_._has_bits_[0], 0x10000000U);
6194 ::std::string* _s = _internal_mutable_default_restart_algorithms();
6195 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.default_restart_algorithms)
6196 return _s;
6197}
6198inline const ::std::string& SatParameters::_internal_default_restart_algorithms() const {
6199 ::google::protobuf::internal::TSanRead(&_impl_);
6200 return _impl_.default_restart_algorithms_.Get();
6201}
6202inline void SatParameters::_internal_set_default_restart_algorithms(const ::std::string& value) {
6203 ::google::protobuf::internal::TSanWrite(&_impl_);
6204 _impl_.default_restart_algorithms_.Set(value, GetArena());
6205}
6206inline ::std::string* PROTOBUF_NONNULL SatParameters::_internal_mutable_default_restart_algorithms() {
6207 ::google::protobuf::internal::TSanWrite(&_impl_);
6208 return _impl_.default_restart_algorithms_.Mutable(::operations_research::sat::SatParameters::Impl_::_i_give_permission_to_break_this_code_default_default_restart_algorithms_, GetArena());
6209}
6210inline ::std::string* PROTOBUF_NULLABLE SatParameters::release_default_restart_algorithms() {
6211 ::google::protobuf::internal::TSanWrite(&_impl_);
6212 // @@protoc_insertion_point(field_release:operations_research.sat.SatParameters.default_restart_algorithms)
6213 if (!CheckHasBit(_impl_._has_bits_[0], 0x10000000U)) {
6214 return nullptr;
6216 ClearHasBit(_impl_._has_bits_[0], 0x10000000U);
6217 return _impl_.default_restart_algorithms_.Release();
6218}
6219inline void SatParameters::set_allocated_default_restart_algorithms(::std::string* PROTOBUF_NULLABLE value) {
6220 ::google::protobuf::internal::TSanWrite(&_impl_);
6221 if (value != nullptr) {
6222 SetHasBit(_impl_._has_bits_[0], 0x10000000U);
6223 } else {
6224 ClearHasBit(_impl_._has_bits_[0], 0x10000000U);
6225 }
6226 _impl_.default_restart_algorithms_.SetAllocated(value, GetArena());
6227 // @@protoc_insertion_point(field_set_allocated:operations_research.sat.SatParameters.default_restart_algorithms)
6228}
6229
6230// optional int32 restart_period = 30 [default = 50];
6231inline bool SatParameters::has_restart_period() const {
6232 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00040000U);
6233 return value;
6234}
6236 ::google::protobuf::internal::TSanWrite(&_impl_);
6237 _impl_.restart_period_ = 50;
6238 ClearHasBit(_impl_._has_bits_[0],
6239 0x00040000U);
6241inline ::int32_t SatParameters::restart_period() const {
6242 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_period)
6243 return _internal_restart_period();
6244}
6245inline void SatParameters::set_restart_period(::int32_t value) {
6246 _internal_set_restart_period(value);
6247 SetHasBit(_impl_._has_bits_[0], 0x00040000U);
6248 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_period)
6249}
6250inline ::int32_t SatParameters::_internal_restart_period() const {
6251 ::google::protobuf::internal::TSanRead(&_impl_);
6252 return _impl_.restart_period_;
6253}
6254inline void SatParameters::_internal_set_restart_period(::int32_t value) {
6255 ::google::protobuf::internal::TSanWrite(&_impl_);
6256 _impl_.restart_period_ = value;
6257}
6258
6259// optional int32 restart_running_window_size = 62 [default = 50];
6261 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00100000U);
6262 return value;
6263}
6265 ::google::protobuf::internal::TSanWrite(&_impl_);
6266 _impl_.restart_running_window_size_ = 50;
6267 ClearHasBit(_impl_._has_bits_[4],
6268 0x00100000U);
6270inline ::int32_t SatParameters::restart_running_window_size() const {
6271 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_running_window_size)
6272 return _internal_restart_running_window_size();
6273}
6274inline void SatParameters::set_restart_running_window_size(::int32_t value) {
6275 _internal_set_restart_running_window_size(value);
6276 SetHasBit(_impl_._has_bits_[4], 0x00100000U);
6277 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_running_window_size)
6278}
6279inline ::int32_t SatParameters::_internal_restart_running_window_size() const {
6280 ::google::protobuf::internal::TSanRead(&_impl_);
6281 return _impl_.restart_running_window_size_;
6282}
6283inline void SatParameters::_internal_set_restart_running_window_size(::int32_t value) {
6284 ::google::protobuf::internal::TSanWrite(&_impl_);
6285 _impl_.restart_running_window_size_ = value;
6286}
6287
6288// optional double restart_dl_average_ratio = 63 [default = 1];
6290 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00200000U);
6291 return value;
6292}
6294 ::google::protobuf::internal::TSanWrite(&_impl_);
6295 _impl_.restart_dl_average_ratio_ = 1;
6296 ClearHasBit(_impl_._has_bits_[4],
6297 0x00200000U);
6299inline double SatParameters::restart_dl_average_ratio() const {
6300 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_dl_average_ratio)
6301 return _internal_restart_dl_average_ratio();
6302}
6303inline void SatParameters::set_restart_dl_average_ratio(double value) {
6304 _internal_set_restart_dl_average_ratio(value);
6305 SetHasBit(_impl_._has_bits_[4], 0x00200000U);
6306 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_dl_average_ratio)
6307}
6308inline double SatParameters::_internal_restart_dl_average_ratio() const {
6309 ::google::protobuf::internal::TSanRead(&_impl_);
6310 return _impl_.restart_dl_average_ratio_;
6311}
6312inline void SatParameters::_internal_set_restart_dl_average_ratio(double value) {
6313 ::google::protobuf::internal::TSanWrite(&_impl_);
6314 _impl_.restart_dl_average_ratio_ = value;
6315}
6316
6317// optional double restart_lbd_average_ratio = 71 [default = 1];
6319 bool value = CheckHasBit(_impl_._has_bits_[4], 0x20000000U);
6320 return value;
6321}
6323 ::google::protobuf::internal::TSanWrite(&_impl_);
6324 _impl_.restart_lbd_average_ratio_ = 1;
6325 ClearHasBit(_impl_._has_bits_[4],
6326 0x20000000U);
6328inline double SatParameters::restart_lbd_average_ratio() const {
6329 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.restart_lbd_average_ratio)
6330 return _internal_restart_lbd_average_ratio();
6331}
6332inline void SatParameters::set_restart_lbd_average_ratio(double value) {
6333 _internal_set_restart_lbd_average_ratio(value);
6334 SetHasBit(_impl_._has_bits_[4], 0x20000000U);
6335 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.restart_lbd_average_ratio)
6336}
6337inline double SatParameters::_internal_restart_lbd_average_ratio() const {
6338 ::google::protobuf::internal::TSanRead(&_impl_);
6339 return _impl_.restart_lbd_average_ratio_;
6340}
6341inline void SatParameters::_internal_set_restart_lbd_average_ratio(double value) {
6342 ::google::protobuf::internal::TSanWrite(&_impl_);
6343 _impl_.restart_lbd_average_ratio_ = value;
6344}
6345
6346// optional bool use_blocking_restart = 64 [default = false];
6347inline bool SatParameters::has_use_blocking_restart() const {
6348 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000008U);
6349 return value;
6350}
6352 ::google::protobuf::internal::TSanWrite(&_impl_);
6353 _impl_.use_blocking_restart_ = false;
6354 ClearHasBit(_impl_._has_bits_[1],
6355 0x00000008U);
6357inline bool SatParameters::use_blocking_restart() const {
6358 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_blocking_restart)
6359 return _internal_use_blocking_restart();
6360}
6361inline void SatParameters::set_use_blocking_restart(bool value) {
6362 _internal_set_use_blocking_restart(value);
6363 SetHasBit(_impl_._has_bits_[1], 0x00000008U);
6364 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_blocking_restart)
6365}
6366inline bool SatParameters::_internal_use_blocking_restart() const {
6367 ::google::protobuf::internal::TSanRead(&_impl_);
6368 return _impl_.use_blocking_restart_;
6369}
6370inline void SatParameters::_internal_set_use_blocking_restart(bool value) {
6371 ::google::protobuf::internal::TSanWrite(&_impl_);
6372 _impl_.use_blocking_restart_ = value;
6373}
6374
6375// optional int32 blocking_restart_window_size = 65 [default = 5000];
6377 bool value = CheckHasBit(_impl_._has_bits_[4], 0x04000000U);
6378 return value;
6379}
6381 ::google::protobuf::internal::TSanWrite(&_impl_);
6382 _impl_.blocking_restart_window_size_ = 5000;
6383 ClearHasBit(_impl_._has_bits_[4],
6384 0x04000000U);
6386inline ::int32_t SatParameters::blocking_restart_window_size() const {
6387 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.blocking_restart_window_size)
6388 return _internal_blocking_restart_window_size();
6389}
6390inline void SatParameters::set_blocking_restart_window_size(::int32_t value) {
6391 _internal_set_blocking_restart_window_size(value);
6392 SetHasBit(_impl_._has_bits_[4], 0x04000000U);
6393 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.blocking_restart_window_size)
6394}
6395inline ::int32_t SatParameters::_internal_blocking_restart_window_size() const {
6396 ::google::protobuf::internal::TSanRead(&_impl_);
6397 return _impl_.blocking_restart_window_size_;
6398}
6399inline void SatParameters::_internal_set_blocking_restart_window_size(::int32_t value) {
6400 ::google::protobuf::internal::TSanWrite(&_impl_);
6401 _impl_.blocking_restart_window_size_ = value;
6402}
6403
6404// optional double blocking_restart_multiplier = 66 [default = 1.4];
6406 bool value = CheckHasBit(_impl_._has_bits_[4], 0x08000000U);
6407 return value;
6408}
6410 ::google::protobuf::internal::TSanWrite(&_impl_);
6411 _impl_.blocking_restart_multiplier_ = 1.4;
6412 ClearHasBit(_impl_._has_bits_[4],
6413 0x08000000U);
6415inline double SatParameters::blocking_restart_multiplier() const {
6416 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.blocking_restart_multiplier)
6417 return _internal_blocking_restart_multiplier();
6418}
6419inline void SatParameters::set_blocking_restart_multiplier(double value) {
6420 _internal_set_blocking_restart_multiplier(value);
6421 SetHasBit(_impl_._has_bits_[4], 0x08000000U);
6422 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.blocking_restart_multiplier)
6423}
6424inline double SatParameters::_internal_blocking_restart_multiplier() const {
6425 ::google::protobuf::internal::TSanRead(&_impl_);
6426 return _impl_.blocking_restart_multiplier_;
6427}
6428inline void SatParameters::_internal_set_blocking_restart_multiplier(double value) {
6429 ::google::protobuf::internal::TSanWrite(&_impl_);
6430 _impl_.blocking_restart_multiplier_ = value;
6431}
6432
6433// optional int32 num_conflicts_before_strategy_changes = 68 [default = 0];
6435 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000040U);
6436 return value;
6437}
6439 ::google::protobuf::internal::TSanWrite(&_impl_);
6440 _impl_.num_conflicts_before_strategy_changes_ = 0;
6441 ClearHasBit(_impl_._has_bits_[1],
6442 0x00000040U);
6445 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_conflicts_before_strategy_changes)
6446 return _internal_num_conflicts_before_strategy_changes();
6447}
6449 _internal_set_num_conflicts_before_strategy_changes(value);
6450 SetHasBit(_impl_._has_bits_[1], 0x00000040U);
6451 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_conflicts_before_strategy_changes)
6452}
6453inline ::int32_t SatParameters::_internal_num_conflicts_before_strategy_changes() const {
6454 ::google::protobuf::internal::TSanRead(&_impl_);
6455 return _impl_.num_conflicts_before_strategy_changes_;
6456}
6457inline void SatParameters::_internal_set_num_conflicts_before_strategy_changes(::int32_t value) {
6458 ::google::protobuf::internal::TSanWrite(&_impl_);
6459 _impl_.num_conflicts_before_strategy_changes_ = value;
6460}
6461
6462// optional double strategy_change_increase_ratio = 69 [default = 0];
6464 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000080U);
6465 return value;
6466}
6468 ::google::protobuf::internal::TSanWrite(&_impl_);
6469 _impl_.strategy_change_increase_ratio_ = 0;
6470 ClearHasBit(_impl_._has_bits_[1],
6471 0x00000080U);
6474 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.strategy_change_increase_ratio)
6475 return _internal_strategy_change_increase_ratio();
6476}
6477inline void SatParameters::set_strategy_change_increase_ratio(double value) {
6478 _internal_set_strategy_change_increase_ratio(value);
6479 SetHasBit(_impl_._has_bits_[1], 0x00000080U);
6480 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.strategy_change_increase_ratio)
6481}
6482inline double SatParameters::_internal_strategy_change_increase_ratio() const {
6483 ::google::protobuf::internal::TSanRead(&_impl_);
6484 return _impl_.strategy_change_increase_ratio_;
6485}
6486inline void SatParameters::_internal_set_strategy_change_increase_ratio(double value) {
6487 ::google::protobuf::internal::TSanWrite(&_impl_);
6488 _impl_.strategy_change_increase_ratio_ = value;
6489}
6490
6491// optional double max_time_in_seconds = 36 [default = inf];
6492inline bool SatParameters::has_max_time_in_seconds() const {
6493 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00100000U);
6494 return value;
6495}
6497 ::google::protobuf::internal::TSanWrite(&_impl_);
6498 _impl_.max_time_in_seconds_ = std::numeric_limits<double>::infinity();
6499 ClearHasBit(_impl_._has_bits_[0],
6500 0x00100000U);
6502inline double SatParameters::max_time_in_seconds() const {
6503 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_time_in_seconds)
6504 return _internal_max_time_in_seconds();
6505}
6506inline void SatParameters::set_max_time_in_seconds(double value) {
6507 _internal_set_max_time_in_seconds(value);
6508 SetHasBit(_impl_._has_bits_[0], 0x00100000U);
6509 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_time_in_seconds)
6510}
6511inline double SatParameters::_internal_max_time_in_seconds() const {
6512 ::google::protobuf::internal::TSanRead(&_impl_);
6513 return _impl_.max_time_in_seconds_;
6514}
6515inline void SatParameters::_internal_set_max_time_in_seconds(double value) {
6516 ::google::protobuf::internal::TSanWrite(&_impl_);
6517 _impl_.max_time_in_seconds_ = value;
6518}
6519
6520// optional double max_deterministic_time = 67 [default = inf];
6522 bool value = CheckHasBit(_impl_._has_bits_[4], 0x10000000U);
6523 return value;
6524}
6526 ::google::protobuf::internal::TSanWrite(&_impl_);
6527 _impl_.max_deterministic_time_ = std::numeric_limits<double>::infinity();
6528 ClearHasBit(_impl_._has_bits_[4],
6529 0x10000000U);
6531inline double SatParameters::max_deterministic_time() const {
6532 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_deterministic_time)
6533 return _internal_max_deterministic_time();
6534}
6535inline void SatParameters::set_max_deterministic_time(double value) {
6536 _internal_set_max_deterministic_time(value);
6537 SetHasBit(_impl_._has_bits_[4], 0x10000000U);
6538 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_deterministic_time)
6539}
6540inline double SatParameters::_internal_max_deterministic_time() const {
6541 ::google::protobuf::internal::TSanRead(&_impl_);
6542 return _impl_.max_deterministic_time_;
6543}
6544inline void SatParameters::_internal_set_max_deterministic_time(double value) {
6545 ::google::protobuf::internal::TSanWrite(&_impl_);
6546 _impl_.max_deterministic_time_ = value;
6547}
6548
6549// optional int32 max_num_deterministic_batches = 291 [default = 0];
6551 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00008000U);
6552 return value;
6553}
6555 ::google::protobuf::internal::TSanWrite(&_impl_);
6556 _impl_.max_num_deterministic_batches_ = 0;
6557 ClearHasBit(_impl_._has_bits_[3],
6558 0x00008000U);
6560inline ::int32_t SatParameters::max_num_deterministic_batches() const {
6561 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_num_deterministic_batches)
6562 return _internal_max_num_deterministic_batches();
6563}
6564inline void SatParameters::set_max_num_deterministic_batches(::int32_t value) {
6565 _internal_set_max_num_deterministic_batches(value);
6566 SetHasBit(_impl_._has_bits_[3], 0x00008000U);
6567 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_num_deterministic_batches)
6568}
6569inline ::int32_t SatParameters::_internal_max_num_deterministic_batches() const {
6570 ::google::protobuf::internal::TSanRead(&_impl_);
6571 return _impl_.max_num_deterministic_batches_;
6572}
6573inline void SatParameters::_internal_set_max_num_deterministic_batches(::int32_t value) {
6574 ::google::protobuf::internal::TSanWrite(&_impl_);
6575 _impl_.max_num_deterministic_batches_ = value;
6576}
6577
6578// optional int64 max_number_of_conflicts = 37 [default = 9223372036854775807];
6580 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00200000U);
6581 return value;
6582}
6584 ::google::protobuf::internal::TSanWrite(&_impl_);
6585 _impl_.max_number_of_conflicts_ = ::int64_t{9223372036854775807};
6586 ClearHasBit(_impl_._has_bits_[0],
6587 0x00200000U);
6589inline ::int64_t SatParameters::max_number_of_conflicts() const {
6590 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_number_of_conflicts)
6591 return _internal_max_number_of_conflicts();
6592}
6593inline void SatParameters::set_max_number_of_conflicts(::int64_t value) {
6594 _internal_set_max_number_of_conflicts(value);
6595 SetHasBit(_impl_._has_bits_[0], 0x00200000U);
6596 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_number_of_conflicts)
6597}
6598inline ::int64_t SatParameters::_internal_max_number_of_conflicts() const {
6599 ::google::protobuf::internal::TSanRead(&_impl_);
6600 return _impl_.max_number_of_conflicts_;
6601}
6602inline void SatParameters::_internal_set_max_number_of_conflicts(::int64_t value) {
6603 ::google::protobuf::internal::TSanWrite(&_impl_);
6604 _impl_.max_number_of_conflicts_ = value;
6605}
6606
6607// optional int64 max_memory_in_mb = 40 [default = 10000];
6608inline bool SatParameters::has_max_memory_in_mb() const {
6609 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000400U);
6610 return value;
6611}
6613 ::google::protobuf::internal::TSanWrite(&_impl_);
6614 _impl_.max_memory_in_mb_ = ::int64_t{10000};
6615 ClearHasBit(_impl_._has_bits_[4],
6616 0x00000400U);
6618inline ::int64_t SatParameters::max_memory_in_mb() const {
6619 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_memory_in_mb)
6620 return _internal_max_memory_in_mb();
6621}
6622inline void SatParameters::set_max_memory_in_mb(::int64_t value) {
6623 _internal_set_max_memory_in_mb(value);
6624 SetHasBit(_impl_._has_bits_[4], 0x00000400U);
6625 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_memory_in_mb)
6626}
6627inline ::int64_t SatParameters::_internal_max_memory_in_mb() const {
6628 ::google::protobuf::internal::TSanRead(&_impl_);
6629 return _impl_.max_memory_in_mb_;
6630}
6631inline void SatParameters::_internal_set_max_memory_in_mb(::int64_t value) {
6632 ::google::protobuf::internal::TSanWrite(&_impl_);
6633 _impl_.max_memory_in_mb_ = value;
6634}
6635
6636// optional double absolute_gap_limit = 159 [default = 0.0001];
6637inline bool SatParameters::has_absolute_gap_limit() const {
6638 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000800U);
6639 return value;
6640}
6642 ::google::protobuf::internal::TSanWrite(&_impl_);
6643 _impl_.absolute_gap_limit_ = 0.0001;
6644 ClearHasBit(_impl_._has_bits_[6],
6645 0x00000800U);
6647inline double SatParameters::absolute_gap_limit() const {
6648 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.absolute_gap_limit)
6649 return _internal_absolute_gap_limit();
6650}
6651inline void SatParameters::set_absolute_gap_limit(double value) {
6652 _internal_set_absolute_gap_limit(value);
6653 SetHasBit(_impl_._has_bits_[6], 0x00000800U);
6654 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.absolute_gap_limit)
6655}
6656inline double SatParameters::_internal_absolute_gap_limit() const {
6657 ::google::protobuf::internal::TSanRead(&_impl_);
6658 return _impl_.absolute_gap_limit_;
6659}
6660inline void SatParameters::_internal_set_absolute_gap_limit(double value) {
6661 ::google::protobuf::internal::TSanWrite(&_impl_);
6662 _impl_.absolute_gap_limit_ = value;
6663}
6664
6665// optional double relative_gap_limit = 160 [default = 0];
6666inline bool SatParameters::has_relative_gap_limit() const {
6667 bool value = CheckHasBit(_impl_._has_bits_[1], 0x40000000U);
6668 return value;
6669}
6671 ::google::protobuf::internal::TSanWrite(&_impl_);
6672 _impl_.relative_gap_limit_ = 0;
6673 ClearHasBit(_impl_._has_bits_[1],
6674 0x40000000U);
6676inline double SatParameters::relative_gap_limit() const {
6677 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.relative_gap_limit)
6678 return _internal_relative_gap_limit();
6679}
6680inline void SatParameters::set_relative_gap_limit(double value) {
6681 _internal_set_relative_gap_limit(value);
6682 SetHasBit(_impl_._has_bits_[1], 0x40000000U);
6683 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.relative_gap_limit)
6684}
6685inline double SatParameters::_internal_relative_gap_limit() const {
6686 ::google::protobuf::internal::TSanRead(&_impl_);
6687 return _impl_.relative_gap_limit_;
6688}
6689inline void SatParameters::_internal_set_relative_gap_limit(double value) {
6690 ::google::protobuf::internal::TSanWrite(&_impl_);
6691 _impl_.relative_gap_limit_ = value;
6692}
6693
6694// optional int32 random_seed = 31 [default = 1];
6695inline bool SatParameters::has_random_seed() const {
6696 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00080000U);
6697 return value;
6698}
6700 ::google::protobuf::internal::TSanWrite(&_impl_);
6701 _impl_.random_seed_ = 1;
6702 ClearHasBit(_impl_._has_bits_[0],
6703 0x00080000U);
6705inline ::int32_t SatParameters::random_seed() const {
6706 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.random_seed)
6707 return _internal_random_seed();
6708}
6709inline void SatParameters::set_random_seed(::int32_t value) {
6710 _internal_set_random_seed(value);
6711 SetHasBit(_impl_._has_bits_[0], 0x00080000U);
6712 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.random_seed)
6713}
6714inline ::int32_t SatParameters::_internal_random_seed() const {
6715 ::google::protobuf::internal::TSanRead(&_impl_);
6716 return _impl_.random_seed_;
6717}
6718inline void SatParameters::_internal_set_random_seed(::int32_t value) {
6719 ::google::protobuf::internal::TSanWrite(&_impl_);
6720 _impl_.random_seed_ = value;
6721}
6722
6723// optional bool permute_variable_randomly = 178 [default = false];
6725 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000100U);
6726 return value;
6727}
6729 ::google::protobuf::internal::TSanWrite(&_impl_);
6730 _impl_.permute_variable_randomly_ = false;
6731 ClearHasBit(_impl_._has_bits_[2],
6732 0x00000100U);
6734inline bool SatParameters::permute_variable_randomly() const {
6735 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.permute_variable_randomly)
6736 return _internal_permute_variable_randomly();
6737}
6738inline void SatParameters::set_permute_variable_randomly(bool value) {
6739 _internal_set_permute_variable_randomly(value);
6740 SetHasBit(_impl_._has_bits_[2], 0x00000100U);
6741 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.permute_variable_randomly)
6742}
6743inline bool SatParameters::_internal_permute_variable_randomly() const {
6744 ::google::protobuf::internal::TSanRead(&_impl_);
6745 return _impl_.permute_variable_randomly_;
6746}
6747inline void SatParameters::_internal_set_permute_variable_randomly(bool value) {
6748 ::google::protobuf::internal::TSanWrite(&_impl_);
6749 _impl_.permute_variable_randomly_ = value;
6750}
6751
6752// optional bool permute_presolve_constraint_order = 179 [default = false];
6754 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000200U);
6755 return value;
6756}
6758 ::google::protobuf::internal::TSanWrite(&_impl_);
6759 _impl_.permute_presolve_constraint_order_ = false;
6760 ClearHasBit(_impl_._has_bits_[2],
6761 0x00000200U);
6764 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.permute_presolve_constraint_order)
6765 return _internal_permute_presolve_constraint_order();
6766}
6768 _internal_set_permute_presolve_constraint_order(value);
6769 SetHasBit(_impl_._has_bits_[2], 0x00000200U);
6770 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.permute_presolve_constraint_order)
6771}
6772inline bool SatParameters::_internal_permute_presolve_constraint_order() const {
6773 ::google::protobuf::internal::TSanRead(&_impl_);
6774 return _impl_.permute_presolve_constraint_order_;
6775}
6776inline void SatParameters::_internal_set_permute_presolve_constraint_order(bool value) {
6777 ::google::protobuf::internal::TSanWrite(&_impl_);
6778 _impl_.permute_presolve_constraint_order_ = value;
6779}
6780
6781// optional bool use_absl_random = 180 [default = false];
6782inline bool SatParameters::has_use_absl_random() const {
6783 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000400U);
6784 return value;
6785}
6787 ::google::protobuf::internal::TSanWrite(&_impl_);
6788 _impl_.use_absl_random_ = false;
6789 ClearHasBit(_impl_._has_bits_[2],
6790 0x00000400U);
6792inline bool SatParameters::use_absl_random() const {
6793 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_absl_random)
6794 return _internal_use_absl_random();
6795}
6796inline void SatParameters::set_use_absl_random(bool value) {
6797 _internal_set_use_absl_random(value);
6798 SetHasBit(_impl_._has_bits_[2], 0x00000400U);
6799 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_absl_random)
6800}
6801inline bool SatParameters::_internal_use_absl_random() const {
6802 ::google::protobuf::internal::TSanRead(&_impl_);
6803 return _impl_.use_absl_random_;
6804}
6805inline void SatParameters::_internal_set_use_absl_random(bool value) {
6806 ::google::protobuf::internal::TSanWrite(&_impl_);
6807 _impl_.use_absl_random_ = value;
6808}
6809
6810// optional bool log_search_progress = 41 [default = false];
6811inline bool SatParameters::has_log_search_progress() const {
6812 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
6813 return value;
6814}
6816 ::google::protobuf::internal::TSanWrite(&_impl_);
6817 _impl_.log_search_progress_ = false;
6818 ClearHasBit(_impl_._has_bits_[0],
6819 0x00000008U);
6821inline bool SatParameters::log_search_progress() const {
6822 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_search_progress)
6823 return _internal_log_search_progress();
6824}
6825inline void SatParameters::set_log_search_progress(bool value) {
6826 _internal_set_log_search_progress(value);
6827 SetHasBit(_impl_._has_bits_[0], 0x00000008U);
6828 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_search_progress)
6829}
6830inline bool SatParameters::_internal_log_search_progress() const {
6831 ::google::protobuf::internal::TSanRead(&_impl_);
6832 return _impl_.log_search_progress_;
6833}
6834inline void SatParameters::_internal_set_log_search_progress(bool value) {
6835 ::google::protobuf::internal::TSanWrite(&_impl_);
6836 _impl_.log_search_progress_ = value;
6837}
6838
6839// optional bool log_subsolver_statistics = 189 [default = false];
6841 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00004000U);
6842 return value;
6843}
6845 ::google::protobuf::internal::TSanWrite(&_impl_);
6846 _impl_.log_subsolver_statistics_ = false;
6847 ClearHasBit(_impl_._has_bits_[2],
6848 0x00004000U);
6850inline bool SatParameters::log_subsolver_statistics() const {
6851 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_subsolver_statistics)
6852 return _internal_log_subsolver_statistics();
6853}
6854inline void SatParameters::set_log_subsolver_statistics(bool value) {
6855 _internal_set_log_subsolver_statistics(value);
6856 SetHasBit(_impl_._has_bits_[2], 0x00004000U);
6857 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_subsolver_statistics)
6858}
6859inline bool SatParameters::_internal_log_subsolver_statistics() const {
6860 ::google::protobuf::internal::TSanRead(&_impl_);
6861 return _impl_.log_subsolver_statistics_;
6862}
6863inline void SatParameters::_internal_set_log_subsolver_statistics(bool value) {
6864 ::google::protobuf::internal::TSanWrite(&_impl_);
6865 _impl_.log_subsolver_statistics_ = value;
6866}
6867
6868// optional string log_prefix = 185 [default = ""];
6869inline bool SatParameters::has_log_prefix() const {
6870 bool value = CheckHasBit(_impl_._has_bits_[0], 0x40000000U);
6871 return value;
6872}
6873inline void SatParameters::clear_log_prefix() {
6874 ::google::protobuf::internal::TSanWrite(&_impl_);
6875 _impl_.log_prefix_.ClearToEmpty();
6876 ClearHasBit(_impl_._has_bits_[0],
6877 0x40000000U);
6879inline const ::std::string& SatParameters::log_prefix() const
6880 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6881 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_prefix)
6882 return _internal_log_prefix();
6883}
6884template <typename Arg_, typename... Args_>
6885PROTOBUF_ALWAYS_INLINE void SatParameters::set_log_prefix(Arg_&& arg, Args_... args) {
6886 ::google::protobuf::internal::TSanWrite(&_impl_);
6887 SetHasBit(_impl_._has_bits_[0], 0x40000000U);
6888 _impl_.log_prefix_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
6889 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_prefix)
6891inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_log_prefix()
6892 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6893 SetHasBit(_impl_._has_bits_[0], 0x40000000U);
6894 ::std::string* _s = _internal_mutable_log_prefix();
6895 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.log_prefix)
6896 return _s;
6897}
6898inline const ::std::string& SatParameters::_internal_log_prefix() const {
6899 ::google::protobuf::internal::TSanRead(&_impl_);
6900 return _impl_.log_prefix_.Get();
6901}
6902inline void SatParameters::_internal_set_log_prefix(const ::std::string& value) {
6903 ::google::protobuf::internal::TSanWrite(&_impl_);
6904 _impl_.log_prefix_.Set(value, GetArena());
6905}
6906inline ::std::string* PROTOBUF_NONNULL SatParameters::_internal_mutable_log_prefix() {
6907 ::google::protobuf::internal::TSanWrite(&_impl_);
6908 return _impl_.log_prefix_.Mutable( GetArena());
6909}
6910inline ::std::string* PROTOBUF_NULLABLE SatParameters::release_log_prefix() {
6911 ::google::protobuf::internal::TSanWrite(&_impl_);
6912 // @@protoc_insertion_point(field_release:operations_research.sat.SatParameters.log_prefix)
6913 if (!CheckHasBit(_impl_._has_bits_[0], 0x40000000U)) {
6914 return nullptr;
6916 ClearHasBit(_impl_._has_bits_[0], 0x40000000U);
6917 auto* released = _impl_.log_prefix_.Release();
6918 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
6919 _impl_.log_prefix_.Set("", GetArena());
6920 }
6921 return released;
6922}
6923inline void SatParameters::set_allocated_log_prefix(::std::string* PROTOBUF_NULLABLE value) {
6924 ::google::protobuf::internal::TSanWrite(&_impl_);
6925 if (value != nullptr) {
6926 SetHasBit(_impl_._has_bits_[0], 0x40000000U);
6927 } else {
6928 ClearHasBit(_impl_._has_bits_[0], 0x40000000U);
6929 }
6930 _impl_.log_prefix_.SetAllocated(value, GetArena());
6931 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.log_prefix_.IsDefault()) {
6932 _impl_.log_prefix_.Set("", GetArena());
6933 }
6934 // @@protoc_insertion_point(field_set_allocated:operations_research.sat.SatParameters.log_prefix)
6935}
6936
6937// optional bool log_to_stdout = 186 [default = true];
6938inline bool SatParameters::has_log_to_stdout() const {
6939 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00400000U);
6940 return value;
6941}
6943 ::google::protobuf::internal::TSanWrite(&_impl_);
6944 _impl_.log_to_stdout_ = true;
6945 ClearHasBit(_impl_._has_bits_[6],
6946 0x00400000U);
6948inline bool SatParameters::log_to_stdout() const {
6949 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_to_stdout)
6950 return _internal_log_to_stdout();
6951}
6952inline void SatParameters::set_log_to_stdout(bool value) {
6953 _internal_set_log_to_stdout(value);
6954 SetHasBit(_impl_._has_bits_[6], 0x00400000U);
6955 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_to_stdout)
6956}
6957inline bool SatParameters::_internal_log_to_stdout() const {
6958 ::google::protobuf::internal::TSanRead(&_impl_);
6959 return _impl_.log_to_stdout_;
6960}
6961inline void SatParameters::_internal_set_log_to_stdout(bool value) {
6962 ::google::protobuf::internal::TSanWrite(&_impl_);
6963 _impl_.log_to_stdout_ = value;
6964}
6965
6966// optional bool log_to_response = 187 [default = false];
6967inline bool SatParameters::has_log_to_response() const {
6968 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00001000U);
6969 return value;
6970}
6972 ::google::protobuf::internal::TSanWrite(&_impl_);
6973 _impl_.log_to_response_ = false;
6974 ClearHasBit(_impl_._has_bits_[2],
6975 0x00001000U);
6977inline bool SatParameters::log_to_response() const {
6978 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.log_to_response)
6979 return _internal_log_to_response();
6980}
6981inline void SatParameters::set_log_to_response(bool value) {
6982 _internal_set_log_to_response(value);
6983 SetHasBit(_impl_._has_bits_[2], 0x00001000U);
6984 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.log_to_response)
6985}
6986inline bool SatParameters::_internal_log_to_response() const {
6987 ::google::protobuf::internal::TSanRead(&_impl_);
6988 return _impl_.log_to_response_;
6989}
6990inline void SatParameters::_internal_set_log_to_response(bool value) {
6991 ::google::protobuf::internal::TSanWrite(&_impl_);
6992 _impl_.log_to_response_ = value;
6993}
6994
6995// optional bool use_pb_resolution = 43 [default = false];
6996inline bool SatParameters::has_use_pb_resolution() const {
6997 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000010U);
6998 return value;
6999}
7001 ::google::protobuf::internal::TSanWrite(&_impl_);
7002 _impl_.use_pb_resolution_ = false;
7003 ClearHasBit(_impl_._has_bits_[0],
7004 0x00000010U);
7006inline bool SatParameters::use_pb_resolution() const {
7007 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_pb_resolution)
7008 return _internal_use_pb_resolution();
7009}
7010inline void SatParameters::set_use_pb_resolution(bool value) {
7011 _internal_set_use_pb_resolution(value);
7012 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
7013 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_pb_resolution)
7014}
7015inline bool SatParameters::_internal_use_pb_resolution() const {
7016 ::google::protobuf::internal::TSanRead(&_impl_);
7017 return _impl_.use_pb_resolution_;
7018}
7019inline void SatParameters::_internal_set_use_pb_resolution(bool value) {
7020 ::google::protobuf::internal::TSanWrite(&_impl_);
7021 _impl_.use_pb_resolution_ = value;
7022}
7023
7024// optional bool minimize_reduction_during_pb_resolution = 48 [default = false];
7026 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000002U);
7027 return value;
7028}
7030 ::google::protobuf::internal::TSanWrite(&_impl_);
7031 _impl_.minimize_reduction_during_pb_resolution_ = false;
7032 ClearHasBit(_impl_._has_bits_[1],
7033 0x00000002U);
7036 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimize_reduction_during_pb_resolution)
7037 return _internal_minimize_reduction_during_pb_resolution();
7038}
7040 _internal_set_minimize_reduction_during_pb_resolution(value);
7041 SetHasBit(_impl_._has_bits_[1], 0x00000002U);
7042 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimize_reduction_during_pb_resolution)
7043}
7044inline bool SatParameters::_internal_minimize_reduction_during_pb_resolution() const {
7045 ::google::protobuf::internal::TSanRead(&_impl_);
7046 return _impl_.minimize_reduction_during_pb_resolution_;
7047}
7048inline void SatParameters::_internal_set_minimize_reduction_during_pb_resolution(bool value) {
7049 ::google::protobuf::internal::TSanWrite(&_impl_);
7050 _impl_.minimize_reduction_during_pb_resolution_ = value;
7051}
7052
7053// optional bool count_assumption_levels_in_lbd = 49 [default = true];
7055 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00400000U);
7056 return value;
7057}
7059 ::google::protobuf::internal::TSanWrite(&_impl_);
7060 _impl_.count_assumption_levels_in_lbd_ = true;
7061 ClearHasBit(_impl_._has_bits_[4],
7062 0x00400000U);
7065 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.count_assumption_levels_in_lbd)
7066 return _internal_count_assumption_levels_in_lbd();
7067}
7069 _internal_set_count_assumption_levels_in_lbd(value);
7070 SetHasBit(_impl_._has_bits_[4], 0x00400000U);
7071 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.count_assumption_levels_in_lbd)
7072}
7073inline bool SatParameters::_internal_count_assumption_levels_in_lbd() const {
7074 ::google::protobuf::internal::TSanRead(&_impl_);
7075 return _impl_.count_assumption_levels_in_lbd_;
7076}
7077inline void SatParameters::_internal_set_count_assumption_levels_in_lbd(bool value) {
7078 ::google::protobuf::internal::TSanWrite(&_impl_);
7079 _impl_.count_assumption_levels_in_lbd_ = value;
7080}
7081
7082// optional int32 presolve_bve_threshold = 54 [default = 500];
7084 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00010000U);
7085 return value;
7086}
7088 ::google::protobuf::internal::TSanWrite(&_impl_);
7089 _impl_.presolve_bve_threshold_ = 500;
7090 ClearHasBit(_impl_._has_bits_[4],
7091 0x00010000U);
7093inline ::int32_t SatParameters::presolve_bve_threshold() const {
7094 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_bve_threshold)
7095 return _internal_presolve_bve_threshold();
7096}
7097inline void SatParameters::set_presolve_bve_threshold(::int32_t value) {
7098 _internal_set_presolve_bve_threshold(value);
7099 SetHasBit(_impl_._has_bits_[4], 0x00010000U);
7100 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_bve_threshold)
7101}
7102inline ::int32_t SatParameters::_internal_presolve_bve_threshold() const {
7103 ::google::protobuf::internal::TSanRead(&_impl_);
7104 return _impl_.presolve_bve_threshold_;
7105}
7106inline void SatParameters::_internal_set_presolve_bve_threshold(::int32_t value) {
7107 ::google::protobuf::internal::TSanWrite(&_impl_);
7108 _impl_.presolve_bve_threshold_ = value;
7109}
7110
7111// optional bool filter_sat_postsolve_clauses = 324 [default = false];
7113 bool value = CheckHasBit(_impl_._has_bits_[3], 0x02000000U);
7114 return value;
7115}
7117 ::google::protobuf::internal::TSanWrite(&_impl_);
7118 _impl_.filter_sat_postsolve_clauses_ = false;
7119 ClearHasBit(_impl_._has_bits_[3],
7120 0x02000000U);
7123 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.filter_sat_postsolve_clauses)
7124 return _internal_filter_sat_postsolve_clauses();
7125}
7127 _internal_set_filter_sat_postsolve_clauses(value);
7128 SetHasBit(_impl_._has_bits_[3], 0x02000000U);
7129 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.filter_sat_postsolve_clauses)
7130}
7131inline bool SatParameters::_internal_filter_sat_postsolve_clauses() const {
7132 ::google::protobuf::internal::TSanRead(&_impl_);
7133 return _impl_.filter_sat_postsolve_clauses_;
7134}
7135inline void SatParameters::_internal_set_filter_sat_postsolve_clauses(bool value) {
7136 ::google::protobuf::internal::TSanWrite(&_impl_);
7137 _impl_.filter_sat_postsolve_clauses_ = value;
7138}
7139
7140// optional int32 presolve_bve_clause_weight = 55 [default = 3];
7142 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00020000U);
7143 return value;
7144}
7146 ::google::protobuf::internal::TSanWrite(&_impl_);
7147 _impl_.presolve_bve_clause_weight_ = 3;
7148 ClearHasBit(_impl_._has_bits_[4],
7149 0x00020000U);
7151inline ::int32_t SatParameters::presolve_bve_clause_weight() const {
7152 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_bve_clause_weight)
7153 return _internal_presolve_bve_clause_weight();
7154}
7155inline void SatParameters::set_presolve_bve_clause_weight(::int32_t value) {
7156 _internal_set_presolve_bve_clause_weight(value);
7157 SetHasBit(_impl_._has_bits_[4], 0x00020000U);
7158 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_bve_clause_weight)
7159}
7160inline ::int32_t SatParameters::_internal_presolve_bve_clause_weight() const {
7161 ::google::protobuf::internal::TSanRead(&_impl_);
7162 return _impl_.presolve_bve_clause_weight_;
7163}
7164inline void SatParameters::_internal_set_presolve_bve_clause_weight(::int32_t value) {
7165 ::google::protobuf::internal::TSanWrite(&_impl_);
7166 _impl_.presolve_bve_clause_weight_ = value;
7167}
7168
7169// optional double probing_deterministic_time_limit = 226 [default = 1];
7171 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000080U);
7172 return value;
7173}
7175 ::google::protobuf::internal::TSanWrite(&_impl_);
7176 _impl_.probing_deterministic_time_limit_ = 1;
7177 ClearHasBit(_impl_._has_bits_[7],
7178 0x00000080U);
7181 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.probing_deterministic_time_limit)
7182 return _internal_probing_deterministic_time_limit();
7183}
7185 _internal_set_probing_deterministic_time_limit(value);
7186 SetHasBit(_impl_._has_bits_[7], 0x00000080U);
7187 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.probing_deterministic_time_limit)
7188}
7189inline double SatParameters::_internal_probing_deterministic_time_limit() const {
7190 ::google::protobuf::internal::TSanRead(&_impl_);
7191 return _impl_.probing_deterministic_time_limit_;
7192}
7193inline void SatParameters::_internal_set_probing_deterministic_time_limit(double value) {
7194 ::google::protobuf::internal::TSanWrite(&_impl_);
7195 _impl_.probing_deterministic_time_limit_ = value;
7196}
7197
7198// optional double presolve_probing_deterministic_time_limit = 57 [default = 30];
7200 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00040000U);
7201 return value;
7202}
7204 ::google::protobuf::internal::TSanWrite(&_impl_);
7205 _impl_.presolve_probing_deterministic_time_limit_ = 30;
7206 ClearHasBit(_impl_._has_bits_[4],
7207 0x00040000U);
7210 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_probing_deterministic_time_limit)
7211 return _internal_presolve_probing_deterministic_time_limit();
7212}
7214 _internal_set_presolve_probing_deterministic_time_limit(value);
7215 SetHasBit(_impl_._has_bits_[4], 0x00040000U);
7216 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_probing_deterministic_time_limit)
7217}
7218inline double SatParameters::_internal_presolve_probing_deterministic_time_limit() const {
7219 ::google::protobuf::internal::TSanRead(&_impl_);
7220 return _impl_.presolve_probing_deterministic_time_limit_;
7221}
7222inline void SatParameters::_internal_set_presolve_probing_deterministic_time_limit(double value) {
7223 ::google::protobuf::internal::TSanWrite(&_impl_);
7224 _impl_.presolve_probing_deterministic_time_limit_ = value;
7225}
7226
7227// optional bool presolve_blocked_clause = 88 [default = true];
7229 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000002U);
7230 return value;
7231}
7233 ::google::protobuf::internal::TSanWrite(&_impl_);
7234 _impl_.presolve_blocked_clause_ = true;
7235 ClearHasBit(_impl_._has_bits_[5],
7236 0x00000002U);
7238inline bool SatParameters::presolve_blocked_clause() const {
7239 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_blocked_clause)
7240 return _internal_presolve_blocked_clause();
7241}
7242inline void SatParameters::set_presolve_blocked_clause(bool value) {
7243 _internal_set_presolve_blocked_clause(value);
7244 SetHasBit(_impl_._has_bits_[5], 0x00000002U);
7245 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_blocked_clause)
7246}
7247inline bool SatParameters::_internal_presolve_blocked_clause() const {
7248 ::google::protobuf::internal::TSanRead(&_impl_);
7249 return _impl_.presolve_blocked_clause_;
7250}
7251inline void SatParameters::_internal_set_presolve_blocked_clause(bool value) {
7252 ::google::protobuf::internal::TSanWrite(&_impl_);
7253 _impl_.presolve_blocked_clause_ = value;
7254}
7255
7256// optional bool presolve_use_bva = 72 [default = true];
7257inline bool SatParameters::has_presolve_use_bva() const {
7258 bool value = CheckHasBit(_impl_._has_bits_[4], 0x01000000U);
7259 return value;
7260}
7262 ::google::protobuf::internal::TSanWrite(&_impl_);
7263 _impl_.presolve_use_bva_ = true;
7264 ClearHasBit(_impl_._has_bits_[4],
7265 0x01000000U);
7267inline bool SatParameters::presolve_use_bva() const {
7268 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_use_bva)
7269 return _internal_presolve_use_bva();
7270}
7271inline void SatParameters::set_presolve_use_bva(bool value) {
7272 _internal_set_presolve_use_bva(value);
7273 SetHasBit(_impl_._has_bits_[4], 0x01000000U);
7274 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_use_bva)
7275}
7276inline bool SatParameters::_internal_presolve_use_bva() const {
7277 ::google::protobuf::internal::TSanRead(&_impl_);
7278 return _impl_.presolve_use_bva_;
7279}
7280inline void SatParameters::_internal_set_presolve_use_bva(bool value) {
7281 ::google::protobuf::internal::TSanWrite(&_impl_);
7282 _impl_.presolve_use_bva_ = value;
7283}
7284
7285// optional int32 presolve_bva_threshold = 73 [default = 1];
7287 bool value = CheckHasBit(_impl_._has_bits_[4], 0x40000000U);
7288 return value;
7289}
7291 ::google::protobuf::internal::TSanWrite(&_impl_);
7292 _impl_.presolve_bva_threshold_ = 1;
7293 ClearHasBit(_impl_._has_bits_[4],
7294 0x40000000U);
7296inline ::int32_t SatParameters::presolve_bva_threshold() const {
7297 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_bva_threshold)
7298 return _internal_presolve_bva_threshold();
7299}
7300inline void SatParameters::set_presolve_bva_threshold(::int32_t value) {
7301 _internal_set_presolve_bva_threshold(value);
7302 SetHasBit(_impl_._has_bits_[4], 0x40000000U);
7303 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_bva_threshold)
7304}
7305inline ::int32_t SatParameters::_internal_presolve_bva_threshold() const {
7306 ::google::protobuf::internal::TSanRead(&_impl_);
7307 return _impl_.presolve_bva_threshold_;
7308}
7309inline void SatParameters::_internal_set_presolve_bva_threshold(::int32_t value) {
7310 ::google::protobuf::internal::TSanWrite(&_impl_);
7311 _impl_.presolve_bva_threshold_ = value;
7312}
7313
7314// optional int32 max_presolve_iterations = 138 [default = 3];
7316 bool value = CheckHasBit(_impl_._has_bits_[5], 0x40000000U);
7317 return value;
7318}
7320 ::google::protobuf::internal::TSanWrite(&_impl_);
7321 _impl_.max_presolve_iterations_ = 3;
7322 ClearHasBit(_impl_._has_bits_[5],
7323 0x40000000U);
7325inline ::int32_t SatParameters::max_presolve_iterations() const {
7326 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_presolve_iterations)
7327 return _internal_max_presolve_iterations();
7328}
7329inline void SatParameters::set_max_presolve_iterations(::int32_t value) {
7330 _internal_set_max_presolve_iterations(value);
7331 SetHasBit(_impl_._has_bits_[5], 0x40000000U);
7332 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_presolve_iterations)
7333}
7334inline ::int32_t SatParameters::_internal_max_presolve_iterations() const {
7335 ::google::protobuf::internal::TSanRead(&_impl_);
7336 return _impl_.max_presolve_iterations_;
7337}
7338inline void SatParameters::_internal_set_max_presolve_iterations(::int32_t value) {
7339 ::google::protobuf::internal::TSanWrite(&_impl_);
7340 _impl_.max_presolve_iterations_ = value;
7341}
7342
7343// optional bool cp_model_presolve = 86 [default = true];
7344inline bool SatParameters::has_cp_model_presolve() const {
7345 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000001U);
7346 return value;
7347}
7349 ::google::protobuf::internal::TSanWrite(&_impl_);
7350 _impl_.cp_model_presolve_ = true;
7351 ClearHasBit(_impl_._has_bits_[5],
7352 0x00000001U);
7354inline bool SatParameters::cp_model_presolve() const {
7355 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_presolve)
7356 return _internal_cp_model_presolve();
7357}
7358inline void SatParameters::set_cp_model_presolve(bool value) {
7359 _internal_set_cp_model_presolve(value);
7360 SetHasBit(_impl_._has_bits_[5], 0x00000001U);
7361 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_presolve)
7362}
7363inline bool SatParameters::_internal_cp_model_presolve() const {
7364 ::google::protobuf::internal::TSanRead(&_impl_);
7365 return _impl_.cp_model_presolve_;
7366}
7367inline void SatParameters::_internal_set_cp_model_presolve(bool value) {
7368 ::google::protobuf::internal::TSanWrite(&_impl_);
7369 _impl_.cp_model_presolve_ = value;
7370}
7371
7372// optional int32 cp_model_probing_level = 110 [default = 2];
7374 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000800U);
7375 return value;
7376}
7378 ::google::protobuf::internal::TSanWrite(&_impl_);
7379 _impl_.cp_model_probing_level_ = 2;
7380 ClearHasBit(_impl_._has_bits_[5],
7381 0x00000800U);
7383inline ::int32_t SatParameters::cp_model_probing_level() const {
7384 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_probing_level)
7385 return _internal_cp_model_probing_level();
7386}
7387inline void SatParameters::set_cp_model_probing_level(::int32_t value) {
7388 _internal_set_cp_model_probing_level(value);
7389 SetHasBit(_impl_._has_bits_[5], 0x00000800U);
7390 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_probing_level)
7391}
7392inline ::int32_t SatParameters::_internal_cp_model_probing_level() const {
7393 ::google::protobuf::internal::TSanRead(&_impl_);
7394 return _impl_.cp_model_probing_level_;
7395}
7396inline void SatParameters::_internal_set_cp_model_probing_level(::int32_t value) {
7397 ::google::protobuf::internal::TSanWrite(&_impl_);
7398 _impl_.cp_model_probing_level_ = value;
7399}
7400
7401// optional bool cp_model_use_sat_presolve = 93 [default = true];
7403 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000020U);
7404 return value;
7405}
7407 ::google::protobuf::internal::TSanWrite(&_impl_);
7408 _impl_.cp_model_use_sat_presolve_ = true;
7409 ClearHasBit(_impl_._has_bits_[5],
7410 0x00000020U);
7412inline bool SatParameters::cp_model_use_sat_presolve() const {
7413 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cp_model_use_sat_presolve)
7414 return _internal_cp_model_use_sat_presolve();
7415}
7416inline void SatParameters::set_cp_model_use_sat_presolve(bool value) {
7417 _internal_set_cp_model_use_sat_presolve(value);
7418 SetHasBit(_impl_._has_bits_[5], 0x00000020U);
7419 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cp_model_use_sat_presolve)
7420}
7421inline bool SatParameters::_internal_cp_model_use_sat_presolve() const {
7422 ::google::protobuf::internal::TSanRead(&_impl_);
7423 return _impl_.cp_model_use_sat_presolve_;
7424}
7425inline void SatParameters::_internal_set_cp_model_use_sat_presolve(bool value) {
7426 ::google::protobuf::internal::TSanWrite(&_impl_);
7427 _impl_.cp_model_use_sat_presolve_ = value;
7428}
7429
7430// optional bool load_at_most_ones_in_sat_presolve = 335 [default = false];
7432 bool value = CheckHasBit(_impl_._has_bits_[3], 0x40000000U);
7433 return value;
7434}
7436 ::google::protobuf::internal::TSanWrite(&_impl_);
7437 _impl_.load_at_most_ones_in_sat_presolve_ = false;
7438 ClearHasBit(_impl_._has_bits_[3],
7439 0x40000000U);
7442 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.load_at_most_ones_in_sat_presolve)
7443 return _internal_load_at_most_ones_in_sat_presolve();
7444}
7446 _internal_set_load_at_most_ones_in_sat_presolve(value);
7447 SetHasBit(_impl_._has_bits_[3], 0x40000000U);
7448 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.load_at_most_ones_in_sat_presolve)
7449}
7450inline bool SatParameters::_internal_load_at_most_ones_in_sat_presolve() const {
7451 ::google::protobuf::internal::TSanRead(&_impl_);
7452 return _impl_.load_at_most_ones_in_sat_presolve_;
7453}
7454inline void SatParameters::_internal_set_load_at_most_ones_in_sat_presolve(bool value) {
7455 ::google::protobuf::internal::TSanWrite(&_impl_);
7456 _impl_.load_at_most_ones_in_sat_presolve_ = value;
7457}
7458
7459// optional bool remove_fixed_variables_early = 310 [default = true];
7461 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00800000U);
7462 return value;
7463}
7465 ::google::protobuf::internal::TSanWrite(&_impl_);
7466 _impl_.remove_fixed_variables_early_ = true;
7467 ClearHasBit(_impl_._has_bits_[8],
7468 0x00800000U);
7471 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.remove_fixed_variables_early)
7472 return _internal_remove_fixed_variables_early();
7473}
7475 _internal_set_remove_fixed_variables_early(value);
7476 SetHasBit(_impl_._has_bits_[8], 0x00800000U);
7477 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.remove_fixed_variables_early)
7478}
7479inline bool SatParameters::_internal_remove_fixed_variables_early() const {
7480 ::google::protobuf::internal::TSanRead(&_impl_);
7481 return _impl_.remove_fixed_variables_early_;
7482}
7483inline void SatParameters::_internal_set_remove_fixed_variables_early(bool value) {
7484 ::google::protobuf::internal::TSanWrite(&_impl_);
7485 _impl_.remove_fixed_variables_early_ = value;
7486}
7487
7488// optional bool detect_table_with_cost = 216 [default = false];
7490 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00800000U);
7491 return value;
7492}
7494 ::google::protobuf::internal::TSanWrite(&_impl_);
7495 _impl_.detect_table_with_cost_ = false;
7496 ClearHasBit(_impl_._has_bits_[2],
7497 0x00800000U);
7499inline bool SatParameters::detect_table_with_cost() const {
7500 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.detect_table_with_cost)
7501 return _internal_detect_table_with_cost();
7502}
7503inline void SatParameters::set_detect_table_with_cost(bool value) {
7504 _internal_set_detect_table_with_cost(value);
7505 SetHasBit(_impl_._has_bits_[2], 0x00800000U);
7506 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.detect_table_with_cost)
7507}
7508inline bool SatParameters::_internal_detect_table_with_cost() const {
7509 ::google::protobuf::internal::TSanRead(&_impl_);
7510 return _impl_.detect_table_with_cost_;
7511}
7512inline void SatParameters::_internal_set_detect_table_with_cost(bool value) {
7513 ::google::protobuf::internal::TSanWrite(&_impl_);
7514 _impl_.detect_table_with_cost_ = value;
7515}
7516
7517// optional int32 table_compression_level = 217 [default = 2];
7519 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000020U);
7520 return value;
7521}
7523 ::google::protobuf::internal::TSanWrite(&_impl_);
7524 _impl_.table_compression_level_ = 2;
7525 ClearHasBit(_impl_._has_bits_[7],
7526 0x00000020U);
7528inline ::int32_t SatParameters::table_compression_level() const {
7529 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.table_compression_level)
7530 return _internal_table_compression_level();
7531}
7532inline void SatParameters::set_table_compression_level(::int32_t value) {
7533 _internal_set_table_compression_level(value);
7534 SetHasBit(_impl_._has_bits_[7], 0x00000020U);
7535 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.table_compression_level)
7536}
7537inline ::int32_t SatParameters::_internal_table_compression_level() const {
7538 ::google::protobuf::internal::TSanRead(&_impl_);
7539 return _impl_.table_compression_level_;
7540}
7541inline void SatParameters::_internal_set_table_compression_level(::int32_t value) {
7542 ::google::protobuf::internal::TSanWrite(&_impl_);
7543 _impl_.table_compression_level_ = value;
7544}
7545
7546// optional bool expand_alldiff_constraints = 170 [default = false];
7548 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000008U);
7549 return value;
7550}
7552 ::google::protobuf::internal::TSanWrite(&_impl_);
7553 _impl_.expand_alldiff_constraints_ = false;
7554 ClearHasBit(_impl_._has_bits_[2],
7555 0x00000008U);
7558 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_alldiff_constraints)
7559 return _internal_expand_alldiff_constraints();
7560}
7561inline void SatParameters::set_expand_alldiff_constraints(bool value) {
7562 _internal_set_expand_alldiff_constraints(value);
7563 SetHasBit(_impl_._has_bits_[2], 0x00000008U);
7564 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_alldiff_constraints)
7565}
7566inline bool SatParameters::_internal_expand_alldiff_constraints() const {
7567 ::google::protobuf::internal::TSanRead(&_impl_);
7568 return _impl_.expand_alldiff_constraints_;
7569}
7570inline void SatParameters::_internal_set_expand_alldiff_constraints(bool value) {
7571 ::google::protobuf::internal::TSanWrite(&_impl_);
7572 _impl_.expand_alldiff_constraints_ = value;
7573}
7574
7575// optional int32 max_alldiff_domain_size = 320 [default = 256];
7577 bool value = CheckHasBit(_impl_._has_bits_[8], 0x20000000U);
7578 return value;
7579}
7581 ::google::protobuf::internal::TSanWrite(&_impl_);
7582 _impl_.max_alldiff_domain_size_ = 256;
7583 ClearHasBit(_impl_._has_bits_[8],
7584 0x20000000U);
7586inline ::int32_t SatParameters::max_alldiff_domain_size() const {
7587 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_alldiff_domain_size)
7588 return _internal_max_alldiff_domain_size();
7589}
7590inline void SatParameters::set_max_alldiff_domain_size(::int32_t value) {
7591 _internal_set_max_alldiff_domain_size(value);
7592 SetHasBit(_impl_._has_bits_[8], 0x20000000U);
7593 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_alldiff_domain_size)
7594}
7595inline ::int32_t SatParameters::_internal_max_alldiff_domain_size() const {
7596 ::google::protobuf::internal::TSanRead(&_impl_);
7597 return _impl_.max_alldiff_domain_size_;
7598}
7599inline void SatParameters::_internal_set_max_alldiff_domain_size(::int32_t value) {
7600 ::google::protobuf::internal::TSanWrite(&_impl_);
7601 _impl_.max_alldiff_domain_size_ = value;
7602}
7603
7604// optional bool expand_reservoir_constraints = 182 [default = true];
7606 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00200000U);
7607 return value;
7608}
7610 ::google::protobuf::internal::TSanWrite(&_impl_);
7611 _impl_.expand_reservoir_constraints_ = true;
7612 ClearHasBit(_impl_._has_bits_[6],
7613 0x00200000U);
7616 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_reservoir_constraints)
7617 return _internal_expand_reservoir_constraints();
7618}
7620 _internal_set_expand_reservoir_constraints(value);
7621 SetHasBit(_impl_._has_bits_[6], 0x00200000U);
7622 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_reservoir_constraints)
7623}
7624inline bool SatParameters::_internal_expand_reservoir_constraints() const {
7625 ::google::protobuf::internal::TSanRead(&_impl_);
7626 return _impl_.expand_reservoir_constraints_;
7627}
7628inline void SatParameters::_internal_set_expand_reservoir_constraints(bool value) {
7629 ::google::protobuf::internal::TSanWrite(&_impl_);
7630 _impl_.expand_reservoir_constraints_ = value;
7631}
7632
7633// optional int32 max_domain_size_for_linear2_expansion = 340 [default = 8];
7635 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000040U);
7636 return value;
7637}
7639 ::google::protobuf::internal::TSanWrite(&_impl_);
7640 _impl_.max_domain_size_for_linear2_expansion_ = 8;
7641 ClearHasBit(_impl_._has_bits_[9],
7642 0x00000040U);
7645 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_domain_size_for_linear2_expansion)
7646 return _internal_max_domain_size_for_linear2_expansion();
7647}
7649 _internal_set_max_domain_size_for_linear2_expansion(value);
7650 SetHasBit(_impl_._has_bits_[9], 0x00000040U);
7651 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_domain_size_for_linear2_expansion)
7652}
7653inline ::int32_t SatParameters::_internal_max_domain_size_for_linear2_expansion() const {
7654 ::google::protobuf::internal::TSanRead(&_impl_);
7655 return _impl_.max_domain_size_for_linear2_expansion_;
7656}
7657inline void SatParameters::_internal_set_max_domain_size_for_linear2_expansion(::int32_t value) {
7658 ::google::protobuf::internal::TSanWrite(&_impl_);
7659 _impl_.max_domain_size_for_linear2_expansion_ = value;
7660}
7661
7662// optional bool expand_reservoir_using_circuit = 288 [default = false];
7664 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00004000U);
7665 return value;
7666}
7668 ::google::protobuf::internal::TSanWrite(&_impl_);
7669 _impl_.expand_reservoir_using_circuit_ = false;
7670 ClearHasBit(_impl_._has_bits_[3],
7671 0x00004000U);
7674 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.expand_reservoir_using_circuit)
7675 return _internal_expand_reservoir_using_circuit();
7676}
7678 _internal_set_expand_reservoir_using_circuit(value);
7679 SetHasBit(_impl_._has_bits_[3], 0x00004000U);
7680 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.expand_reservoir_using_circuit)
7681}
7682inline bool SatParameters::_internal_expand_reservoir_using_circuit() const {
7683 ::google::protobuf::internal::TSanRead(&_impl_);
7684 return _impl_.expand_reservoir_using_circuit_;
7685}
7686inline void SatParameters::_internal_set_expand_reservoir_using_circuit(bool value) {
7687 ::google::protobuf::internal::TSanWrite(&_impl_);
7688 _impl_.expand_reservoir_using_circuit_ = value;
7689}
7690
7691// optional bool encode_cumulative_as_reservoir = 287 [default = false];
7693 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00002000U);
7694 return value;
7695}
7697 ::google::protobuf::internal::TSanWrite(&_impl_);
7698 _impl_.encode_cumulative_as_reservoir_ = false;
7699 ClearHasBit(_impl_._has_bits_[3],
7700 0x00002000U);
7703 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.encode_cumulative_as_reservoir)
7704 return _internal_encode_cumulative_as_reservoir();
7705}
7707 _internal_set_encode_cumulative_as_reservoir(value);
7708 SetHasBit(_impl_._has_bits_[3], 0x00002000U);
7709 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.encode_cumulative_as_reservoir)
7710}
7711inline bool SatParameters::_internal_encode_cumulative_as_reservoir() const {
7712 ::google::protobuf::internal::TSanRead(&_impl_);
7713 return _impl_.encode_cumulative_as_reservoir_;
7714}
7715inline void SatParameters::_internal_set_encode_cumulative_as_reservoir(bool value) {
7716 ::google::protobuf::internal::TSanWrite(&_impl_);
7717 _impl_.encode_cumulative_as_reservoir_ = value;
7718}
7719
7720// optional int32 max_lin_max_size_for_expansion = 280 [default = 0];
7722 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000400U);
7723 return value;
7724}
7726 ::google::protobuf::internal::TSanWrite(&_impl_);
7727 _impl_.max_lin_max_size_for_expansion_ = 0;
7728 ClearHasBit(_impl_._has_bits_[3],
7729 0x00000400U);
7731inline ::int32_t SatParameters::max_lin_max_size_for_expansion() const {
7732 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_lin_max_size_for_expansion)
7733 return _internal_max_lin_max_size_for_expansion();
7734}
7735inline void SatParameters::set_max_lin_max_size_for_expansion(::int32_t value) {
7736 _internal_set_max_lin_max_size_for_expansion(value);
7737 SetHasBit(_impl_._has_bits_[3], 0x00000400U);
7738 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_lin_max_size_for_expansion)
7739}
7740inline ::int32_t SatParameters::_internal_max_lin_max_size_for_expansion() const {
7741 ::google::protobuf::internal::TSanRead(&_impl_);
7742 return _impl_.max_lin_max_size_for_expansion_;
7743}
7744inline void SatParameters::_internal_set_max_lin_max_size_for_expansion(::int32_t value) {
7745 ::google::protobuf::internal::TSanWrite(&_impl_);
7746 _impl_.max_lin_max_size_for_expansion_ = value;
7747}
7748
7749// optional bool disable_constraint_expansion = 181 [default = false];
7751 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000800U);
7752 return value;
7753}
7755 ::google::protobuf::internal::TSanWrite(&_impl_);
7756 _impl_.disable_constraint_expansion_ = false;
7757 ClearHasBit(_impl_._has_bits_[2],
7758 0x00000800U);
7761 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.disable_constraint_expansion)
7762 return _internal_disable_constraint_expansion();
7763}
7765 _internal_set_disable_constraint_expansion(value);
7766 SetHasBit(_impl_._has_bits_[2], 0x00000800U);
7767 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.disable_constraint_expansion)
7768}
7769inline bool SatParameters::_internal_disable_constraint_expansion() const {
7770 ::google::protobuf::internal::TSanRead(&_impl_);
7771 return _impl_.disable_constraint_expansion_;
7772}
7773inline void SatParameters::_internal_set_disable_constraint_expansion(bool value) {
7774 ::google::protobuf::internal::TSanWrite(&_impl_);
7775 _impl_.disable_constraint_expansion_ = value;
7776}
7777
7778// optional bool encode_complex_linear_constraint_with_integer = 223 [default = false];
7780 bool value = CheckHasBit(_impl_._has_bits_[2], 0x04000000U);
7781 return value;
7782}
7784 ::google::protobuf::internal::TSanWrite(&_impl_);
7785 _impl_.encode_complex_linear_constraint_with_integer_ = false;
7786 ClearHasBit(_impl_._has_bits_[2],
7787 0x04000000U);
7790 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.encode_complex_linear_constraint_with_integer)
7791 return _internal_encode_complex_linear_constraint_with_integer();
7792}
7794 _internal_set_encode_complex_linear_constraint_with_integer(value);
7795 SetHasBit(_impl_._has_bits_[2], 0x04000000U);
7796 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.encode_complex_linear_constraint_with_integer)
7797}
7798inline bool SatParameters::_internal_encode_complex_linear_constraint_with_integer() const {
7799 ::google::protobuf::internal::TSanRead(&_impl_);
7800 return _impl_.encode_complex_linear_constraint_with_integer_;
7801}
7802inline void SatParameters::_internal_set_encode_complex_linear_constraint_with_integer(bool value) {
7803 ::google::protobuf::internal::TSanWrite(&_impl_);
7804 _impl_.encode_complex_linear_constraint_with_integer_ = value;
7805}
7806
7807// optional double merge_no_overlap_work_limit = 145 [default = 1000000000000];
7809 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000008U);
7810 return value;
7811}
7813 ::google::protobuf::internal::TSanWrite(&_impl_);
7814 _impl_.merge_no_overlap_work_limit_ = 1000000000000;
7815 ClearHasBit(_impl_._has_bits_[6],
7816 0x00000008U);
7818inline double SatParameters::merge_no_overlap_work_limit() const {
7819 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.merge_no_overlap_work_limit)
7820 return _internal_merge_no_overlap_work_limit();
7821}
7822inline void SatParameters::set_merge_no_overlap_work_limit(double value) {
7823 _internal_set_merge_no_overlap_work_limit(value);
7824 SetHasBit(_impl_._has_bits_[6], 0x00000008U);
7825 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.merge_no_overlap_work_limit)
7826}
7827inline double SatParameters::_internal_merge_no_overlap_work_limit() const {
7828 ::google::protobuf::internal::TSanRead(&_impl_);
7829 return _impl_.merge_no_overlap_work_limit_;
7830}
7831inline void SatParameters::_internal_set_merge_no_overlap_work_limit(double value) {
7832 ::google::protobuf::internal::TSanWrite(&_impl_);
7833 _impl_.merge_no_overlap_work_limit_ = value;
7834}
7835
7836// optional double merge_at_most_one_work_limit = 146 [default = 100000000];
7838 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000010U);
7839 return value;
7840}
7842 ::google::protobuf::internal::TSanWrite(&_impl_);
7843 _impl_.merge_at_most_one_work_limit_ = 100000000;
7844 ClearHasBit(_impl_._has_bits_[6],
7845 0x00000010U);
7847inline double SatParameters::merge_at_most_one_work_limit() const {
7848 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.merge_at_most_one_work_limit)
7849 return _internal_merge_at_most_one_work_limit();
7850}
7851inline void SatParameters::set_merge_at_most_one_work_limit(double value) {
7852 _internal_set_merge_at_most_one_work_limit(value);
7853 SetHasBit(_impl_._has_bits_[6], 0x00000010U);
7854 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.merge_at_most_one_work_limit)
7855}
7856inline double SatParameters::_internal_merge_at_most_one_work_limit() const {
7857 ::google::protobuf::internal::TSanRead(&_impl_);
7858 return _impl_.merge_at_most_one_work_limit_;
7859}
7860inline void SatParameters::_internal_set_merge_at_most_one_work_limit(double value) {
7861 ::google::protobuf::internal::TSanWrite(&_impl_);
7862 _impl_.merge_at_most_one_work_limit_ = value;
7863}
7864
7865// optional int32 presolve_substitution_level = 147 [default = 1];
7867 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000020U);
7868 return value;
7869}
7871 ::google::protobuf::internal::TSanWrite(&_impl_);
7872 _impl_.presolve_substitution_level_ = 1;
7873 ClearHasBit(_impl_._has_bits_[6],
7874 0x00000020U);
7876inline ::int32_t SatParameters::presolve_substitution_level() const {
7877 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_substitution_level)
7878 return _internal_presolve_substitution_level();
7879}
7880inline void SatParameters::set_presolve_substitution_level(::int32_t value) {
7881 _internal_set_presolve_substitution_level(value);
7882 SetHasBit(_impl_._has_bits_[6], 0x00000020U);
7883 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_substitution_level)
7884}
7885inline ::int32_t SatParameters::_internal_presolve_substitution_level() const {
7886 ::google::protobuf::internal::TSanRead(&_impl_);
7887 return _impl_.presolve_substitution_level_;
7888}
7889inline void SatParameters::_internal_set_presolve_substitution_level(::int32_t value) {
7890 ::google::protobuf::internal::TSanWrite(&_impl_);
7891 _impl_.presolve_substitution_level_ = value;
7892}
7893
7894// optional bool presolve_extract_integer_enforcement = 174 [default = false];
7896 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000020U);
7897 return value;
7898}
7900 ::google::protobuf::internal::TSanWrite(&_impl_);
7901 _impl_.presolve_extract_integer_enforcement_ = false;
7902 ClearHasBit(_impl_._has_bits_[2],
7903 0x00000020U);
7906 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_extract_integer_enforcement)
7907 return _internal_presolve_extract_integer_enforcement();
7908}
7910 _internal_set_presolve_extract_integer_enforcement(value);
7911 SetHasBit(_impl_._has_bits_[2], 0x00000020U);
7912 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_extract_integer_enforcement)
7913}
7914inline bool SatParameters::_internal_presolve_extract_integer_enforcement() const {
7915 ::google::protobuf::internal::TSanRead(&_impl_);
7916 return _impl_.presolve_extract_integer_enforcement_;
7917}
7918inline void SatParameters::_internal_set_presolve_extract_integer_enforcement(bool value) {
7919 ::google::protobuf::internal::TSanWrite(&_impl_);
7920 _impl_.presolve_extract_integer_enforcement_ = value;
7921}
7922
7923// optional int64 presolve_inclusion_work_limit = 201 [default = 100000000];
7925 bool value = CheckHasBit(_impl_._has_bits_[6], 0x10000000U);
7926 return value;
7927}
7929 ::google::protobuf::internal::TSanWrite(&_impl_);
7930 _impl_.presolve_inclusion_work_limit_ = ::int64_t{100000000};
7931 ClearHasBit(_impl_._has_bits_[6],
7932 0x10000000U);
7934inline ::int64_t SatParameters::presolve_inclusion_work_limit() const {
7935 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.presolve_inclusion_work_limit)
7936 return _internal_presolve_inclusion_work_limit();
7937}
7938inline void SatParameters::set_presolve_inclusion_work_limit(::int64_t value) {
7939 _internal_set_presolve_inclusion_work_limit(value);
7940 SetHasBit(_impl_._has_bits_[6], 0x10000000U);
7941 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.presolve_inclusion_work_limit)
7942}
7943inline ::int64_t SatParameters::_internal_presolve_inclusion_work_limit() const {
7944 ::google::protobuf::internal::TSanRead(&_impl_);
7945 return _impl_.presolve_inclusion_work_limit_;
7946}
7947inline void SatParameters::_internal_set_presolve_inclusion_work_limit(::int64_t value) {
7948 ::google::protobuf::internal::TSanWrite(&_impl_);
7949 _impl_.presolve_inclusion_work_limit_ = value;
7950}
7951
7952// optional bool ignore_names = 202 [default = true];
7953inline bool SatParameters::has_ignore_names() const {
7954 bool value = CheckHasBit(_impl_._has_bits_[6], 0x80000000U);
7955 return value;
7956}
7958 ::google::protobuf::internal::TSanWrite(&_impl_);
7959 _impl_.ignore_names_ = true;
7960 ClearHasBit(_impl_._has_bits_[6],
7961 0x80000000U);
7963inline bool SatParameters::ignore_names() const {
7964 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.ignore_names)
7965 return _internal_ignore_names();
7966}
7967inline void SatParameters::set_ignore_names(bool value) {
7968 _internal_set_ignore_names(value);
7969 SetHasBit(_impl_._has_bits_[6], 0x80000000U);
7970 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.ignore_names)
7971}
7972inline bool SatParameters::_internal_ignore_names() const {
7973 ::google::protobuf::internal::TSanRead(&_impl_);
7974 return _impl_.ignore_names_;
7975}
7976inline void SatParameters::_internal_set_ignore_names(bool value) {
7977 ::google::protobuf::internal::TSanWrite(&_impl_);
7978 _impl_.ignore_names_ = value;
7979}
7980
7981// optional bool infer_all_diffs = 233 [default = true];
7982inline bool SatParameters::has_infer_all_diffs() const {
7983 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00001000U);
7984 return value;
7985}
7987 ::google::protobuf::internal::TSanWrite(&_impl_);
7988 _impl_.infer_all_diffs_ = true;
7989 ClearHasBit(_impl_._has_bits_[7],
7990 0x00001000U);
7992inline bool SatParameters::infer_all_diffs() const {
7993 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.infer_all_diffs)
7994 return _internal_infer_all_diffs();
7995}
7996inline void SatParameters::set_infer_all_diffs(bool value) {
7997 _internal_set_infer_all_diffs(value);
7998 SetHasBit(_impl_._has_bits_[7], 0x00001000U);
7999 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.infer_all_diffs)
8000}
8001inline bool SatParameters::_internal_infer_all_diffs() const {
8002 ::google::protobuf::internal::TSanRead(&_impl_);
8003 return _impl_.infer_all_diffs_;
8004}
8005inline void SatParameters::_internal_set_infer_all_diffs(bool value) {
8006 ::google::protobuf::internal::TSanWrite(&_impl_);
8007 _impl_.infer_all_diffs_ = value;
8008}
8009
8010// optional bool find_big_linear_overlap = 234 [default = true];
8012 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00002000U);
8013 return value;
8014}
8016 ::google::protobuf::internal::TSanWrite(&_impl_);
8017 _impl_.find_big_linear_overlap_ = true;
8018 ClearHasBit(_impl_._has_bits_[7],
8019 0x00002000U);
8021inline bool SatParameters::find_big_linear_overlap() const {
8022 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.find_big_linear_overlap)
8023 return _internal_find_big_linear_overlap();
8024}
8025inline void SatParameters::set_find_big_linear_overlap(bool value) {
8026 _internal_set_find_big_linear_overlap(value);
8027 SetHasBit(_impl_._has_bits_[7], 0x00002000U);
8028 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.find_big_linear_overlap)
8029}
8030inline bool SatParameters::_internal_find_big_linear_overlap() const {
8031 ::google::protobuf::internal::TSanRead(&_impl_);
8032 return _impl_.find_big_linear_overlap_;
8033}
8034inline void SatParameters::_internal_set_find_big_linear_overlap(bool value) {
8035 ::google::protobuf::internal::TSanWrite(&_impl_);
8036 _impl_.find_big_linear_overlap_ = value;
8037}
8038
8039// optional bool find_clauses_that_are_exactly_one = 333 [default = true];
8041 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000080U);
8042 return value;
8043}
8045 ::google::protobuf::internal::TSanWrite(&_impl_);
8046 _impl_.find_clauses_that_are_exactly_one_ = true;
8047 ClearHasBit(_impl_._has_bits_[9],
8048 0x00000080U);
8051 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.find_clauses_that_are_exactly_one)
8052 return _internal_find_clauses_that_are_exactly_one();
8053}
8055 _internal_set_find_clauses_that_are_exactly_one(value);
8056 SetHasBit(_impl_._has_bits_[9], 0x00000080U);
8057 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.find_clauses_that_are_exactly_one)
8058}
8059inline bool SatParameters::_internal_find_clauses_that_are_exactly_one() const {
8060 ::google::protobuf::internal::TSanRead(&_impl_);
8061 return _impl_.find_clauses_that_are_exactly_one_;
8062}
8063inline void SatParameters::_internal_set_find_clauses_that_are_exactly_one(bool value) {
8064 ::google::protobuf::internal::TSanWrite(&_impl_);
8065 _impl_.find_clauses_that_are_exactly_one_ = value;
8066}
8067
8068// optional bool use_sat_inprocessing = 163 [default = true];
8069inline bool SatParameters::has_use_sat_inprocessing() const {
8070 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00004000U);
8071 return value;
8072}
8074 ::google::protobuf::internal::TSanWrite(&_impl_);
8075 _impl_.use_sat_inprocessing_ = true;
8076 ClearHasBit(_impl_._has_bits_[6],
8077 0x00004000U);
8079inline bool SatParameters::use_sat_inprocessing() const {
8080 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_sat_inprocessing)
8081 return _internal_use_sat_inprocessing();
8082}
8083inline void SatParameters::set_use_sat_inprocessing(bool value) {
8084 _internal_set_use_sat_inprocessing(value);
8085 SetHasBit(_impl_._has_bits_[6], 0x00004000U);
8086 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_sat_inprocessing)
8087}
8088inline bool SatParameters::_internal_use_sat_inprocessing() const {
8089 ::google::protobuf::internal::TSanRead(&_impl_);
8090 return _impl_.use_sat_inprocessing_;
8091}
8092inline void SatParameters::_internal_set_use_sat_inprocessing(bool value) {
8093 ::google::protobuf::internal::TSanWrite(&_impl_);
8094 _impl_.use_sat_inprocessing_ = value;
8095}
8096
8097// optional double inprocessing_dtime_ratio = 273 [default = 0.2];
8099 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000008U);
8100 return value;
8101}
8103 ::google::protobuf::internal::TSanWrite(&_impl_);
8104 _impl_.inprocessing_dtime_ratio_ = 0.2;
8105 ClearHasBit(_impl_._has_bits_[8],
8106 0x00000008U);
8108inline double SatParameters::inprocessing_dtime_ratio() const {
8109 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_dtime_ratio)
8110 return _internal_inprocessing_dtime_ratio();
8111}
8112inline void SatParameters::set_inprocessing_dtime_ratio(double value) {
8113 _internal_set_inprocessing_dtime_ratio(value);
8114 SetHasBit(_impl_._has_bits_[8], 0x00000008U);
8115 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_dtime_ratio)
8116}
8117inline double SatParameters::_internal_inprocessing_dtime_ratio() const {
8118 ::google::protobuf::internal::TSanRead(&_impl_);
8119 return _impl_.inprocessing_dtime_ratio_;
8120}
8121inline void SatParameters::_internal_set_inprocessing_dtime_ratio(double value) {
8122 ::google::protobuf::internal::TSanWrite(&_impl_);
8123 _impl_.inprocessing_dtime_ratio_ = value;
8124}
8125
8126// optional double inprocessing_probing_dtime = 274 [default = 1];
8128 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000010U);
8129 return value;
8130}
8132 ::google::protobuf::internal::TSanWrite(&_impl_);
8133 _impl_.inprocessing_probing_dtime_ = 1;
8134 ClearHasBit(_impl_._has_bits_[8],
8135 0x00000010U);
8137inline double SatParameters::inprocessing_probing_dtime() const {
8138 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_probing_dtime)
8139 return _internal_inprocessing_probing_dtime();
8140}
8141inline void SatParameters::set_inprocessing_probing_dtime(double value) {
8142 _internal_set_inprocessing_probing_dtime(value);
8143 SetHasBit(_impl_._has_bits_[8], 0x00000010U);
8144 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_probing_dtime)
8145}
8146inline double SatParameters::_internal_inprocessing_probing_dtime() const {
8147 ::google::protobuf::internal::TSanRead(&_impl_);
8148 return _impl_.inprocessing_probing_dtime_;
8149}
8150inline void SatParameters::_internal_set_inprocessing_probing_dtime(double value) {
8151 ::google::protobuf::internal::TSanWrite(&_impl_);
8152 _impl_.inprocessing_probing_dtime_ = value;
8153}
8154
8155// optional double inprocessing_minimization_dtime = 275 [default = 1];
8157 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000020U);
8158 return value;
8159}
8161 ::google::protobuf::internal::TSanWrite(&_impl_);
8162 _impl_.inprocessing_minimization_dtime_ = 1;
8163 ClearHasBit(_impl_._has_bits_[8],
8164 0x00000020U);
8167 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_minimization_dtime)
8168 return _internal_inprocessing_minimization_dtime();
8169}
8171 _internal_set_inprocessing_minimization_dtime(value);
8172 SetHasBit(_impl_._has_bits_[8], 0x00000020U);
8173 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_minimization_dtime)
8174}
8175inline double SatParameters::_internal_inprocessing_minimization_dtime() const {
8176 ::google::protobuf::internal::TSanRead(&_impl_);
8177 return _impl_.inprocessing_minimization_dtime_;
8178}
8179inline void SatParameters::_internal_set_inprocessing_minimization_dtime(double value) {
8180 ::google::protobuf::internal::TSanWrite(&_impl_);
8181 _impl_.inprocessing_minimization_dtime_ = value;
8182}
8183
8184// optional bool inprocessing_minimization_use_conflict_analysis = 297 [default = true];
8186 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00002000U);
8187 return value;
8188}
8190 ::google::protobuf::internal::TSanWrite(&_impl_);
8191 _impl_.inprocessing_minimization_use_conflict_analysis_ = true;
8192 ClearHasBit(_impl_._has_bits_[8],
8193 0x00002000U);
8196 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_minimization_use_conflict_analysis)
8197 return _internal_inprocessing_minimization_use_conflict_analysis();
8198}
8200 _internal_set_inprocessing_minimization_use_conflict_analysis(value);
8201 SetHasBit(_impl_._has_bits_[8], 0x00002000U);
8202 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_minimization_use_conflict_analysis)
8203}
8204inline bool SatParameters::_internal_inprocessing_minimization_use_conflict_analysis() const {
8205 ::google::protobuf::internal::TSanRead(&_impl_);
8206 return _impl_.inprocessing_minimization_use_conflict_analysis_;
8207}
8208inline void SatParameters::_internal_set_inprocessing_minimization_use_conflict_analysis(bool value) {
8209 ::google::protobuf::internal::TSanWrite(&_impl_);
8210 _impl_.inprocessing_minimization_use_conflict_analysis_ = value;
8211}
8212
8213// optional bool inprocessing_minimization_use_all_orderings = 298 [default = false];
8215 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00020000U);
8216 return value;
8217}
8219 ::google::protobuf::internal::TSanWrite(&_impl_);
8220 _impl_.inprocessing_minimization_use_all_orderings_ = false;
8221 ClearHasBit(_impl_._has_bits_[3],
8222 0x00020000U);
8225 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_minimization_use_all_orderings)
8226 return _internal_inprocessing_minimization_use_all_orderings();
8227}
8229 _internal_set_inprocessing_minimization_use_all_orderings(value);
8230 SetHasBit(_impl_._has_bits_[3], 0x00020000U);
8231 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_minimization_use_all_orderings)
8232}
8233inline bool SatParameters::_internal_inprocessing_minimization_use_all_orderings() const {
8234 ::google::protobuf::internal::TSanRead(&_impl_);
8235 return _impl_.inprocessing_minimization_use_all_orderings_;
8236}
8237inline void SatParameters::_internal_set_inprocessing_minimization_use_all_orderings(bool value) {
8238 ::google::protobuf::internal::TSanWrite(&_impl_);
8239 _impl_.inprocessing_minimization_use_all_orderings_ = value;
8240}
8241
8242// optional bool inprocessing_use_congruence_closure = 342 [default = true];
8244 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000200U);
8245 return value;
8246}
8248 ::google::protobuf::internal::TSanWrite(&_impl_);
8249 _impl_.inprocessing_use_congruence_closure_ = true;
8250 ClearHasBit(_impl_._has_bits_[9],
8251 0x00000200U);
8254 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_use_congruence_closure)
8255 return _internal_inprocessing_use_congruence_closure();
8256}
8258 _internal_set_inprocessing_use_congruence_closure(value);
8259 SetHasBit(_impl_._has_bits_[9], 0x00000200U);
8260 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_use_congruence_closure)
8261}
8262inline bool SatParameters::_internal_inprocessing_use_congruence_closure() const {
8263 ::google::protobuf::internal::TSanRead(&_impl_);
8264 return _impl_.inprocessing_use_congruence_closure_;
8265}
8266inline void SatParameters::_internal_set_inprocessing_use_congruence_closure(bool value) {
8267 ::google::protobuf::internal::TSanWrite(&_impl_);
8268 _impl_.inprocessing_use_congruence_closure_ = value;
8269}
8270
8271// optional bool inprocessing_use_sat_sweeping = 354 [default = false];
8273 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000200U);
8274 return value;
8275}
8277 ::google::protobuf::internal::TSanWrite(&_impl_);
8278 _impl_.inprocessing_use_sat_sweeping_ = false;
8279 ClearHasBit(_impl_._has_bits_[4],
8280 0x00000200U);
8283 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.inprocessing_use_sat_sweeping)
8284 return _internal_inprocessing_use_sat_sweeping();
8285}
8287 _internal_set_inprocessing_use_sat_sweeping(value);
8288 SetHasBit(_impl_._has_bits_[4], 0x00000200U);
8289 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.inprocessing_use_sat_sweeping)
8290}
8291inline bool SatParameters::_internal_inprocessing_use_sat_sweeping() const {
8292 ::google::protobuf::internal::TSanRead(&_impl_);
8293 return _impl_.inprocessing_use_sat_sweeping_;
8294}
8295inline void SatParameters::_internal_set_inprocessing_use_sat_sweeping(bool value) {
8296 ::google::protobuf::internal::TSanWrite(&_impl_);
8297 _impl_.inprocessing_use_sat_sweeping_ = value;
8298}
8299
8300// optional int32 num_workers = 206 [default = 0];
8301inline bool SatParameters::has_num_workers() const {
8302 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00080000U);
8303 return value;
8304}
8306 ::google::protobuf::internal::TSanWrite(&_impl_);
8307 _impl_.num_workers_ = 0;
8308 ClearHasBit(_impl_._has_bits_[2],
8309 0x00080000U);
8311inline ::int32_t SatParameters::num_workers() const {
8312 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_workers)
8313 return _internal_num_workers();
8314}
8315inline void SatParameters::set_num_workers(::int32_t value) {
8316 _internal_set_num_workers(value);
8317 SetHasBit(_impl_._has_bits_[2], 0x00080000U);
8318 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_workers)
8319}
8320inline ::int32_t SatParameters::_internal_num_workers() const {
8321 ::google::protobuf::internal::TSanRead(&_impl_);
8322 return _impl_.num_workers_;
8323}
8324inline void SatParameters::_internal_set_num_workers(::int32_t value) {
8325 ::google::protobuf::internal::TSanWrite(&_impl_);
8326 _impl_.num_workers_ = value;
8327}
8328
8329// optional int32 num_search_workers = 100 [default = 0];
8330inline bool SatParameters::has_num_search_workers() const {
8331 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00040000U);
8332 return value;
8333}
8335 ::google::protobuf::internal::TSanWrite(&_impl_);
8336 _impl_.num_search_workers_ = 0;
8337 ClearHasBit(_impl_._has_bits_[1],
8338 0x00040000U);
8340inline ::int32_t SatParameters::num_search_workers() const {
8341 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_search_workers)
8342 return _internal_num_search_workers();
8343}
8344inline void SatParameters::set_num_search_workers(::int32_t value) {
8345 _internal_set_num_search_workers(value);
8346 SetHasBit(_impl_._has_bits_[1], 0x00040000U);
8347 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_search_workers)
8348}
8349inline ::int32_t SatParameters::_internal_num_search_workers() const {
8350 ::google::protobuf::internal::TSanRead(&_impl_);
8351 return _impl_.num_search_workers_;
8352}
8353inline void SatParameters::_internal_set_num_search_workers(::int32_t value) {
8354 ::google::protobuf::internal::TSanWrite(&_impl_);
8355 _impl_.num_search_workers_ = value;
8356}
8357
8358// optional int32 num_full_subsolvers = 294 [default = 0];
8359inline bool SatParameters::has_num_full_subsolvers() const {
8360 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00010000U);
8361 return value;
8362}
8364 ::google::protobuf::internal::TSanWrite(&_impl_);
8365 _impl_.num_full_subsolvers_ = 0;
8366 ClearHasBit(_impl_._has_bits_[3],
8367 0x00010000U);
8369inline ::int32_t SatParameters::num_full_subsolvers() const {
8370 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_full_subsolvers)
8371 return _internal_num_full_subsolvers();
8372}
8373inline void SatParameters::set_num_full_subsolvers(::int32_t value) {
8374 _internal_set_num_full_subsolvers(value);
8375 SetHasBit(_impl_._has_bits_[3], 0x00010000U);
8376 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_full_subsolvers)
8377}
8378inline ::int32_t SatParameters::_internal_num_full_subsolvers() const {
8379 ::google::protobuf::internal::TSanRead(&_impl_);
8380 return _impl_.num_full_subsolvers_;
8381}
8382inline void SatParameters::_internal_set_num_full_subsolvers(::int32_t value) {
8383 ::google::protobuf::internal::TSanWrite(&_impl_);
8384 _impl_.num_full_subsolvers_ = value;
8385}
8386
8387// repeated string subsolvers = 207;
8388inline int SatParameters::_internal_subsolvers_size() const {
8389 return _internal_subsolvers().size();
8390}
8391inline int SatParameters::subsolvers_size() const {
8392 return _internal_subsolvers_size();
8393}
8394inline void SatParameters::clear_subsolvers() {
8395 ::google::protobuf::internal::TSanWrite(&_impl_);
8396 _impl_.subsolvers_.Clear();
8397 ClearHasBitForRepeated(_impl_._has_bits_[0],
8398 0x00800000U);
8400inline ::std::string* PROTOBUF_NONNULL SatParameters::add_subsolvers()
8401 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8402 ::google::protobuf::internal::TSanWrite(&_impl_);
8403 ::std::string* _s =
8404 _internal_mutable_subsolvers()->InternalAddWithArena(
8405 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8406 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00800000U);
8407 // @@protoc_insertion_point(field_add_mutable:operations_research.sat.SatParameters.subsolvers)
8408 return _s;
8409}
8410inline const ::std::string& SatParameters::subsolvers(int index) const
8411 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8412 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.subsolvers)
8413 return _internal_subsolvers().Get(index);
8414}
8415inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_subsolvers(int index)
8416 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8417 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.subsolvers)
8418 return _internal_mutable_subsolvers()->Mutable(index);
8419}
8420template <typename Arg_, typename... Args_>
8421inline void SatParameters::set_subsolvers(int index, Arg_&& value, Args_... args) {
8422 ::google::protobuf::internal::AssignToString(*_internal_mutable_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8423 args... );
8424 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.subsolvers)
8425}
8426template <typename Arg_, typename... Args_>
8427inline void SatParameters::add_subsolvers(Arg_&& value, Args_... args) {
8428 ::google::protobuf::internal::TSanWrite(&_impl_);
8429 ::google::protobuf::internal::AddToRepeatedPtrField(
8430 ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
8431 *_internal_mutable_subsolvers(), ::std::forward<Arg_>(value),
8432 args... );
8433 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00800000U);
8434 // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.subsolvers)
8435}
8436inline const ::google::protobuf::RepeatedPtrField<::std::string>& SatParameters::subsolvers()
8437 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8438 // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.subsolvers)
8439 return _internal_subsolvers();
8440}
8441inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8442SatParameters::mutable_subsolvers() ABSL_ATTRIBUTE_LIFETIME_BOUND {
8443 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00800000U);
8444 // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.subsolvers)
8445 ::google::protobuf::internal::TSanWrite(&_impl_);
8446 return _internal_mutable_subsolvers();
8448inline const ::google::protobuf::RepeatedPtrField<::std::string>&
8449SatParameters::_internal_subsolvers() const {
8450 ::google::protobuf::internal::TSanRead(&_impl_);
8451 return _impl_.subsolvers_;
8452}
8453inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8454SatParameters::_internal_mutable_subsolvers() {
8455 ::google::protobuf::internal::TSanRead(&_impl_);
8456 return &_impl_.subsolvers_;
8457}
8458
8459// repeated string extra_subsolvers = 219;
8460inline int SatParameters::_internal_extra_subsolvers_size() const {
8461 return _internal_extra_subsolvers().size();
8462}
8463inline int SatParameters::extra_subsolvers_size() const {
8464 return _internal_extra_subsolvers_size();
8465}
8467 ::google::protobuf::internal::TSanWrite(&_impl_);
8468 _impl_.extra_subsolvers_.Clear();
8469 ClearHasBitForRepeated(_impl_._has_bits_[0],
8470 0x04000000U);
8472inline ::std::string* PROTOBUF_NONNULL SatParameters::add_extra_subsolvers()
8473 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8474 ::google::protobuf::internal::TSanWrite(&_impl_);
8475 ::std::string* _s =
8476 _internal_mutable_extra_subsolvers()->InternalAddWithArena(
8477 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8478 SetHasBitForRepeated(_impl_._has_bits_[0], 0x04000000U);
8479 // @@protoc_insertion_point(field_add_mutable:operations_research.sat.SatParameters.extra_subsolvers)
8480 return _s;
8481}
8482inline const ::std::string& SatParameters::extra_subsolvers(int index) const
8483 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8484 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.extra_subsolvers)
8485 return _internal_extra_subsolvers().Get(index);
8486}
8487inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_extra_subsolvers(int index)
8488 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8489 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.extra_subsolvers)
8490 return _internal_mutable_extra_subsolvers()->Mutable(index);
8491}
8492template <typename Arg_, typename... Args_>
8493inline void SatParameters::set_extra_subsolvers(int index, Arg_&& value, Args_... args) {
8494 ::google::protobuf::internal::AssignToString(*_internal_mutable_extra_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8495 args... );
8496 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.extra_subsolvers)
8497}
8498template <typename Arg_, typename... Args_>
8499inline void SatParameters::add_extra_subsolvers(Arg_&& value, Args_... args) {
8500 ::google::protobuf::internal::TSanWrite(&_impl_);
8501 ::google::protobuf::internal::AddToRepeatedPtrField(
8502 ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
8503 *_internal_mutable_extra_subsolvers(), ::std::forward<Arg_>(value),
8504 args... );
8505 SetHasBitForRepeated(_impl_._has_bits_[0], 0x04000000U);
8506 // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.extra_subsolvers)
8507}
8508inline const ::google::protobuf::RepeatedPtrField<::std::string>& SatParameters::extra_subsolvers()
8509 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8510 // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.extra_subsolvers)
8511 return _internal_extra_subsolvers();
8512}
8513inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8514SatParameters::mutable_extra_subsolvers() ABSL_ATTRIBUTE_LIFETIME_BOUND {
8515 SetHasBitForRepeated(_impl_._has_bits_[0], 0x04000000U);
8516 // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.extra_subsolvers)
8517 ::google::protobuf::internal::TSanWrite(&_impl_);
8518 return _internal_mutable_extra_subsolvers();
8520inline const ::google::protobuf::RepeatedPtrField<::std::string>&
8521SatParameters::_internal_extra_subsolvers() const {
8522 ::google::protobuf::internal::TSanRead(&_impl_);
8523 return _impl_.extra_subsolvers_;
8524}
8525inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8526SatParameters::_internal_mutable_extra_subsolvers() {
8527 ::google::protobuf::internal::TSanRead(&_impl_);
8528 return &_impl_.extra_subsolvers_;
8529}
8530
8531// repeated string ignore_subsolvers = 209;
8532inline int SatParameters::_internal_ignore_subsolvers_size() const {
8533 return _internal_ignore_subsolvers().size();
8534}
8535inline int SatParameters::ignore_subsolvers_size() const {
8536 return _internal_ignore_subsolvers_size();
8537}
8539 ::google::protobuf::internal::TSanWrite(&_impl_);
8540 _impl_.ignore_subsolvers_.Clear();
8541 ClearHasBitForRepeated(_impl_._has_bits_[0],
8542 0x01000000U);
8544inline ::std::string* PROTOBUF_NONNULL SatParameters::add_ignore_subsolvers()
8545 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8546 ::google::protobuf::internal::TSanWrite(&_impl_);
8547 ::std::string* _s =
8548 _internal_mutable_ignore_subsolvers()->InternalAddWithArena(
8549 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8550 SetHasBitForRepeated(_impl_._has_bits_[0], 0x01000000U);
8551 // @@protoc_insertion_point(field_add_mutable:operations_research.sat.SatParameters.ignore_subsolvers)
8552 return _s;
8553}
8554inline const ::std::string& SatParameters::ignore_subsolvers(int index) const
8555 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8556 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.ignore_subsolvers)
8557 return _internal_ignore_subsolvers().Get(index);
8558}
8559inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_ignore_subsolvers(int index)
8560 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8561 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.ignore_subsolvers)
8562 return _internal_mutable_ignore_subsolvers()->Mutable(index);
8563}
8564template <typename Arg_, typename... Args_>
8565inline void SatParameters::set_ignore_subsolvers(int index, Arg_&& value, Args_... args) {
8566 ::google::protobuf::internal::AssignToString(*_internal_mutable_ignore_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8567 args... );
8568 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.ignore_subsolvers)
8569}
8570template <typename Arg_, typename... Args_>
8571inline void SatParameters::add_ignore_subsolvers(Arg_&& value, Args_... args) {
8572 ::google::protobuf::internal::TSanWrite(&_impl_);
8573 ::google::protobuf::internal::AddToRepeatedPtrField(
8574 ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
8575 *_internal_mutable_ignore_subsolvers(), ::std::forward<Arg_>(value),
8576 args... );
8577 SetHasBitForRepeated(_impl_._has_bits_[0], 0x01000000U);
8578 // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.ignore_subsolvers)
8579}
8580inline const ::google::protobuf::RepeatedPtrField<::std::string>& SatParameters::ignore_subsolvers()
8581 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8582 // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.ignore_subsolvers)
8583 return _internal_ignore_subsolvers();
8584}
8585inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8586SatParameters::mutable_ignore_subsolvers() ABSL_ATTRIBUTE_LIFETIME_BOUND {
8587 SetHasBitForRepeated(_impl_._has_bits_[0], 0x01000000U);
8588 // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.ignore_subsolvers)
8589 ::google::protobuf::internal::TSanWrite(&_impl_);
8590 return _internal_mutable_ignore_subsolvers();
8592inline const ::google::protobuf::RepeatedPtrField<::std::string>&
8593SatParameters::_internal_ignore_subsolvers() const {
8594 ::google::protobuf::internal::TSanRead(&_impl_);
8595 return _impl_.ignore_subsolvers_;
8596}
8597inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8598SatParameters::_internal_mutable_ignore_subsolvers() {
8599 ::google::protobuf::internal::TSanRead(&_impl_);
8600 return &_impl_.ignore_subsolvers_;
8601}
8602
8603// repeated string filter_subsolvers = 293;
8604inline int SatParameters::_internal_filter_subsolvers_size() const {
8605 return _internal_filter_subsolvers().size();
8606}
8607inline int SatParameters::filter_subsolvers_size() const {
8608 return _internal_filter_subsolvers_size();
8609}
8611 ::google::protobuf::internal::TSanWrite(&_impl_);
8612 _impl_.filter_subsolvers_.Clear();
8613 ClearHasBitForRepeated(_impl_._has_bits_[0],
8614 0x08000000U);
8616inline ::std::string* PROTOBUF_NONNULL SatParameters::add_filter_subsolvers()
8617 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8618 ::google::protobuf::internal::TSanWrite(&_impl_);
8619 ::std::string* _s =
8620 _internal_mutable_filter_subsolvers()->InternalAddWithArena(
8621 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8622 SetHasBitForRepeated(_impl_._has_bits_[0], 0x08000000U);
8623 // @@protoc_insertion_point(field_add_mutable:operations_research.sat.SatParameters.filter_subsolvers)
8624 return _s;
8625}
8626inline const ::std::string& SatParameters::filter_subsolvers(int index) const
8627 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8628 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.filter_subsolvers)
8629 return _internal_filter_subsolvers().Get(index);
8630}
8631inline ::std::string* PROTOBUF_NONNULL SatParameters::mutable_filter_subsolvers(int index)
8632 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8633 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.filter_subsolvers)
8634 return _internal_mutable_filter_subsolvers()->Mutable(index);
8635}
8636template <typename Arg_, typename... Args_>
8637inline void SatParameters::set_filter_subsolvers(int index, Arg_&& value, Args_... args) {
8638 ::google::protobuf::internal::AssignToString(*_internal_mutable_filter_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8639 args... );
8640 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.filter_subsolvers)
8641}
8642template <typename Arg_, typename... Args_>
8643inline void SatParameters::add_filter_subsolvers(Arg_&& value, Args_... args) {
8644 ::google::protobuf::internal::TSanWrite(&_impl_);
8645 ::google::protobuf::internal::AddToRepeatedPtrField(
8646 ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
8647 *_internal_mutable_filter_subsolvers(), ::std::forward<Arg_>(value),
8648 args... );
8649 SetHasBitForRepeated(_impl_._has_bits_[0], 0x08000000U);
8650 // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.filter_subsolvers)
8651}
8652inline const ::google::protobuf::RepeatedPtrField<::std::string>& SatParameters::filter_subsolvers()
8653 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8654 // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.filter_subsolvers)
8655 return _internal_filter_subsolvers();
8656}
8657inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8658SatParameters::mutable_filter_subsolvers() ABSL_ATTRIBUTE_LIFETIME_BOUND {
8659 SetHasBitForRepeated(_impl_._has_bits_[0], 0x08000000U);
8660 // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.filter_subsolvers)
8661 ::google::protobuf::internal::TSanWrite(&_impl_);
8662 return _internal_mutable_filter_subsolvers();
8664inline const ::google::protobuf::RepeatedPtrField<::std::string>&
8665SatParameters::_internal_filter_subsolvers() const {
8666 ::google::protobuf::internal::TSanRead(&_impl_);
8667 return _impl_.filter_subsolvers_;
8668}
8669inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8670SatParameters::_internal_mutable_filter_subsolvers() {
8671 ::google::protobuf::internal::TSanRead(&_impl_);
8672 return &_impl_.filter_subsolvers_;
8673}
8674
8675// repeated .operations_research.sat.SatParameters subsolver_params = 210;
8676inline int SatParameters::_internal_subsolver_params_size() const {
8677 return _internal_subsolver_params().size();
8678}
8679inline int SatParameters::subsolver_params_size() const {
8680 return _internal_subsolver_params_size();
8681}
8683 ::google::protobuf::internal::TSanWrite(&_impl_);
8684 _impl_.subsolver_params_.Clear();
8685 ClearHasBitForRepeated(_impl_._has_bits_[0],
8686 0x02000000U);
8688inline ::operations_research::sat::SatParameters* PROTOBUF_NONNULL SatParameters::mutable_subsolver_params(int index)
8689 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8690 // @@protoc_insertion_point(field_mutable:operations_research.sat.SatParameters.subsolver_params)
8691 return _internal_mutable_subsolver_params()->Mutable(index);
8692}
8693inline ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>* PROTOBUF_NONNULL SatParameters::mutable_subsolver_params()
8694 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8695 SetHasBitForRepeated(_impl_._has_bits_[0], 0x02000000U);
8696 // @@protoc_insertion_point(field_mutable_list:operations_research.sat.SatParameters.subsolver_params)
8697 ::google::protobuf::internal::TSanWrite(&_impl_);
8698 return _internal_mutable_subsolver_params();
8699}
8700inline const ::operations_research::sat::SatParameters& SatParameters::subsolver_params(int index) const
8701 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8702 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.subsolver_params)
8703 return _internal_subsolver_params().Get(index);
8704}
8705inline ::operations_research::sat::SatParameters* PROTOBUF_NONNULL SatParameters::add_subsolver_params()
8706 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8707 ::google::protobuf::internal::TSanWrite(&_impl_);
8709 _internal_mutable_subsolver_params()->InternalAddWithArena(
8710 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8711 SetHasBitForRepeated(_impl_._has_bits_[0], 0x02000000U);
8712 // @@protoc_insertion_point(field_add:operations_research.sat.SatParameters.subsolver_params)
8713 return _add;
8714}
8715inline const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>& SatParameters::subsolver_params() const
8716 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8717 // @@protoc_insertion_point(field_list:operations_research.sat.SatParameters.subsolver_params)
8718 return _internal_subsolver_params();
8719}
8720inline const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>&
8721SatParameters::_internal_subsolver_params() const {
8722 ::google::protobuf::internal::TSanRead(&_impl_);
8723 return _impl_.subsolver_params_;
8724}
8725inline ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>* PROTOBUF_NONNULL
8726SatParameters::_internal_mutable_subsolver_params() {
8727 ::google::protobuf::internal::TSanRead(&_impl_);
8728 return &_impl_.subsolver_params_;
8729}
8730
8731// optional bool interleave_search = 136 [default = false];
8732inline bool SatParameters::has_interleave_search() const {
8733 bool value = CheckHasBit(_impl_._has_bits_[1], 0x08000000U);
8734 return value;
8735}
8737 ::google::protobuf::internal::TSanWrite(&_impl_);
8738 _impl_.interleave_search_ = false;
8739 ClearHasBit(_impl_._has_bits_[1],
8740 0x08000000U);
8742inline bool SatParameters::interleave_search() const {
8743 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.interleave_search)
8744 return _internal_interleave_search();
8745}
8746inline void SatParameters::set_interleave_search(bool value) {
8747 _internal_set_interleave_search(value);
8748 SetHasBit(_impl_._has_bits_[1], 0x08000000U);
8749 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.interleave_search)
8750}
8751inline bool SatParameters::_internal_interleave_search() const {
8752 ::google::protobuf::internal::TSanRead(&_impl_);
8753 return _impl_.interleave_search_;
8754}
8755inline void SatParameters::_internal_set_interleave_search(bool value) {
8756 ::google::protobuf::internal::TSanWrite(&_impl_);
8757 _impl_.interleave_search_ = value;
8758}
8759
8760// optional int32 interleave_batch_size = 134 [default = 0];
8761inline bool SatParameters::has_interleave_batch_size() const {
8762 bool value = CheckHasBit(_impl_._has_bits_[1], 0x01000000U);
8763 return value;
8764}
8766 ::google::protobuf::internal::TSanWrite(&_impl_);
8767 _impl_.interleave_batch_size_ = 0;
8768 ClearHasBit(_impl_._has_bits_[1],
8769 0x01000000U);
8771inline ::int32_t SatParameters::interleave_batch_size() const {
8772 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.interleave_batch_size)
8773 return _internal_interleave_batch_size();
8774}
8775inline void SatParameters::set_interleave_batch_size(::int32_t value) {
8776 _internal_set_interleave_batch_size(value);
8777 SetHasBit(_impl_._has_bits_[1], 0x01000000U);
8778 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.interleave_batch_size)
8779}
8780inline ::int32_t SatParameters::_internal_interleave_batch_size() const {
8781 ::google::protobuf::internal::TSanRead(&_impl_);
8782 return _impl_.interleave_batch_size_;
8783}
8784inline void SatParameters::_internal_set_interleave_batch_size(::int32_t value) {
8785 ::google::protobuf::internal::TSanWrite(&_impl_);
8786 _impl_.interleave_batch_size_ = value;
8787}
8788
8789// optional bool share_objective_bounds = 113 [default = true];
8791 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00004000U);
8792 return value;
8793}
8795 ::google::protobuf::internal::TSanWrite(&_impl_);
8796 _impl_.share_objective_bounds_ = true;
8797 ClearHasBit(_impl_._has_bits_[5],
8798 0x00004000U);
8800inline bool SatParameters::share_objective_bounds() const {
8801 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_objective_bounds)
8802 return _internal_share_objective_bounds();
8803}
8804inline void SatParameters::set_share_objective_bounds(bool value) {
8805 _internal_set_share_objective_bounds(value);
8806 SetHasBit(_impl_._has_bits_[5], 0x00004000U);
8807 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_objective_bounds)
8808}
8809inline bool SatParameters::_internal_share_objective_bounds() const {
8810 ::google::protobuf::internal::TSanRead(&_impl_);
8811 return _impl_.share_objective_bounds_;
8812}
8813inline void SatParameters::_internal_set_share_objective_bounds(bool value) {
8814 ::google::protobuf::internal::TSanWrite(&_impl_);
8815 _impl_.share_objective_bounds_ = value;
8816}
8817
8818// optional bool share_level_zero_bounds = 114 [default = true];
8820 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00008000U);
8821 return value;
8822}
8824 ::google::protobuf::internal::TSanWrite(&_impl_);
8825 _impl_.share_level_zero_bounds_ = true;
8826 ClearHasBit(_impl_._has_bits_[5],
8827 0x00008000U);
8829inline bool SatParameters::share_level_zero_bounds() const {
8830 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_level_zero_bounds)
8831 return _internal_share_level_zero_bounds();
8832}
8833inline void SatParameters::set_share_level_zero_bounds(bool value) {
8834 _internal_set_share_level_zero_bounds(value);
8835 SetHasBit(_impl_._has_bits_[5], 0x00008000U);
8836 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_level_zero_bounds)
8837}
8838inline bool SatParameters::_internal_share_level_zero_bounds() const {
8839 ::google::protobuf::internal::TSanRead(&_impl_);
8840 return _impl_.share_level_zero_bounds_;
8841}
8842inline void SatParameters::_internal_set_share_level_zero_bounds(bool value) {
8843 ::google::protobuf::internal::TSanWrite(&_impl_);
8844 _impl_.share_level_zero_bounds_ = value;
8845}
8846
8847// optional bool share_linear2_bounds = 326 [default = false];
8848inline bool SatParameters::has_share_linear2_bounds() const {
8849 bool value = CheckHasBit(_impl_._has_bits_[3], 0x10000000U);
8850 return value;
8851}
8853 ::google::protobuf::internal::TSanWrite(&_impl_);
8854 _impl_.share_linear2_bounds_ = false;
8855 ClearHasBit(_impl_._has_bits_[3],
8856 0x10000000U);
8858inline bool SatParameters::share_linear2_bounds() const {
8859 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_linear2_bounds)
8860 return _internal_share_linear2_bounds();
8861}
8862inline void SatParameters::set_share_linear2_bounds(bool value) {
8863 _internal_set_share_linear2_bounds(value);
8864 SetHasBit(_impl_._has_bits_[3], 0x10000000U);
8865 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_linear2_bounds)
8866}
8867inline bool SatParameters::_internal_share_linear2_bounds() const {
8868 ::google::protobuf::internal::TSanRead(&_impl_);
8869 return _impl_.share_linear2_bounds_;
8870}
8871inline void SatParameters::_internal_set_share_linear2_bounds(bool value) {
8872 ::google::protobuf::internal::TSanWrite(&_impl_);
8873 _impl_.share_linear2_bounds_ = value;
8874}
8875
8876// optional bool share_binary_clauses = 203 [default = true];
8877inline bool SatParameters::has_share_binary_clauses() const {
8878 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000001U);
8879 return value;
8880}
8882 ::google::protobuf::internal::TSanWrite(&_impl_);
8883 _impl_.share_binary_clauses_ = true;
8884 ClearHasBit(_impl_._has_bits_[7],
8885 0x00000001U);
8887inline bool SatParameters::share_binary_clauses() const {
8888 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_binary_clauses)
8889 return _internal_share_binary_clauses();
8890}
8891inline void SatParameters::set_share_binary_clauses(bool value) {
8892 _internal_set_share_binary_clauses(value);
8893 SetHasBit(_impl_._has_bits_[7], 0x00000001U);
8894 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_binary_clauses)
8895}
8896inline bool SatParameters::_internal_share_binary_clauses() const {
8897 ::google::protobuf::internal::TSanRead(&_impl_);
8898 return _impl_.share_binary_clauses_;
8899}
8900inline void SatParameters::_internal_set_share_binary_clauses(bool value) {
8901 ::google::protobuf::internal::TSanWrite(&_impl_);
8902 _impl_.share_binary_clauses_ = value;
8903}
8904
8905// optional bool share_glue_clauses = 285 [default = true];
8906inline bool SatParameters::has_share_glue_clauses() const {
8907 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000800U);
8908 return value;
8909}
8911 ::google::protobuf::internal::TSanWrite(&_impl_);
8912 _impl_.share_glue_clauses_ = true;
8913 ClearHasBit(_impl_._has_bits_[8],
8914 0x00000800U);
8916inline bool SatParameters::share_glue_clauses() const {
8917 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_glue_clauses)
8918 return _internal_share_glue_clauses();
8919}
8920inline void SatParameters::set_share_glue_clauses(bool value) {
8921 _internal_set_share_glue_clauses(value);
8922 SetHasBit(_impl_._has_bits_[8], 0x00000800U);
8923 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_glue_clauses)
8924}
8925inline bool SatParameters::_internal_share_glue_clauses() const {
8926 ::google::protobuf::internal::TSanRead(&_impl_);
8927 return _impl_.share_glue_clauses_;
8928}
8929inline void SatParameters::_internal_set_share_glue_clauses(bool value) {
8930 ::google::protobuf::internal::TSanWrite(&_impl_);
8931 _impl_.share_glue_clauses_ = value;
8932}
8933
8934// optional bool minimize_shared_clauses = 300 [default = true];
8936 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00200000U);
8937 return value;
8938}
8940 ::google::protobuf::internal::TSanWrite(&_impl_);
8941 _impl_.minimize_shared_clauses_ = true;
8942 ClearHasBit(_impl_._has_bits_[8],
8943 0x00200000U);
8945inline bool SatParameters::minimize_shared_clauses() const {
8946 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.minimize_shared_clauses)
8947 return _internal_minimize_shared_clauses();
8948}
8949inline void SatParameters::set_minimize_shared_clauses(bool value) {
8950 _internal_set_minimize_shared_clauses(value);
8951 SetHasBit(_impl_._has_bits_[8], 0x00200000U);
8952 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.minimize_shared_clauses)
8953}
8954inline bool SatParameters::_internal_minimize_shared_clauses() const {
8955 ::google::protobuf::internal::TSanRead(&_impl_);
8956 return _impl_.minimize_shared_clauses_;
8957}
8958inline void SatParameters::_internal_set_minimize_shared_clauses(bool value) {
8959 ::google::protobuf::internal::TSanWrite(&_impl_);
8960 _impl_.minimize_shared_clauses_ = value;
8961}
8962
8963// optional double share_glue_clauses_dtime = 322 [default = 1];
8965 bool value = CheckHasBit(_impl_._has_bits_[8], 0x80000000U);
8966 return value;
8967}
8969 ::google::protobuf::internal::TSanWrite(&_impl_);
8970 _impl_.share_glue_clauses_dtime_ = 1;
8971 ClearHasBit(_impl_._has_bits_[8],
8972 0x80000000U);
8974inline double SatParameters::share_glue_clauses_dtime() const {
8975 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.share_glue_clauses_dtime)
8976 return _internal_share_glue_clauses_dtime();
8977}
8978inline void SatParameters::set_share_glue_clauses_dtime(double value) {
8979 _internal_set_share_glue_clauses_dtime(value);
8980 SetHasBit(_impl_._has_bits_[8], 0x80000000U);
8981 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.share_glue_clauses_dtime)
8982}
8983inline double SatParameters::_internal_share_glue_clauses_dtime() const {
8984 ::google::protobuf::internal::TSanRead(&_impl_);
8985 return _impl_.share_glue_clauses_dtime_;
8986}
8987inline void SatParameters::_internal_set_share_glue_clauses_dtime(double value) {
8988 ::google::protobuf::internal::TSanWrite(&_impl_);
8989 _impl_.share_glue_clauses_dtime_ = value;
8990}
8991
8992// optional bool check_lrat_proof = 344 [default = false];
8993inline bool SatParameters::has_check_lrat_proof() const {
8994 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000004U);
8995 return value;
8996}
8998 ::google::protobuf::internal::TSanWrite(&_impl_);
8999 _impl_.check_lrat_proof_ = false;
9000 ClearHasBit(_impl_._has_bits_[4],
9001 0x00000004U);
9003inline bool SatParameters::check_lrat_proof() const {
9004 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.check_lrat_proof)
9005 return _internal_check_lrat_proof();
9006}
9007inline void SatParameters::set_check_lrat_proof(bool value) {
9008 _internal_set_check_lrat_proof(value);
9009 SetHasBit(_impl_._has_bits_[4], 0x00000004U);
9010 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.check_lrat_proof)
9011}
9012inline bool SatParameters::_internal_check_lrat_proof() const {
9013 ::google::protobuf::internal::TSanRead(&_impl_);
9014 return _impl_.check_lrat_proof_;
9015}
9016inline void SatParameters::_internal_set_check_lrat_proof(bool value) {
9017 ::google::protobuf::internal::TSanWrite(&_impl_);
9018 _impl_.check_lrat_proof_ = value;
9019}
9020
9021// optional bool check_merged_lrat_proof = 352 [default = false];
9023 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000100U);
9024 return value;
9025}
9027 ::google::protobuf::internal::TSanWrite(&_impl_);
9028 _impl_.check_merged_lrat_proof_ = false;
9029 ClearHasBit(_impl_._has_bits_[4],
9030 0x00000100U);
9032inline bool SatParameters::check_merged_lrat_proof() const {
9033 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.check_merged_lrat_proof)
9034 return _internal_check_merged_lrat_proof();
9035}
9036inline void SatParameters::set_check_merged_lrat_proof(bool value) {
9037 _internal_set_check_merged_lrat_proof(value);
9038 SetHasBit(_impl_._has_bits_[4], 0x00000100U);
9039 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.check_merged_lrat_proof)
9040}
9041inline bool SatParameters::_internal_check_merged_lrat_proof() const {
9042 ::google::protobuf::internal::TSanRead(&_impl_);
9043 return _impl_.check_merged_lrat_proof_;
9044}
9045inline void SatParameters::_internal_set_check_merged_lrat_proof(bool value) {
9046 ::google::protobuf::internal::TSanWrite(&_impl_);
9047 _impl_.check_merged_lrat_proof_ = value;
9048}
9049
9050// optional bool output_lrat_proof = 345 [default = false];
9051inline bool SatParameters::has_output_lrat_proof() const {
9052 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000008U);
9053 return value;
9054}
9056 ::google::protobuf::internal::TSanWrite(&_impl_);
9057 _impl_.output_lrat_proof_ = false;
9058 ClearHasBit(_impl_._has_bits_[4],
9059 0x00000008U);
9061inline bool SatParameters::output_lrat_proof() const {
9062 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.output_lrat_proof)
9063 return _internal_output_lrat_proof();
9064}
9065inline void SatParameters::set_output_lrat_proof(bool value) {
9066 _internal_set_output_lrat_proof(value);
9067 SetHasBit(_impl_._has_bits_[4], 0x00000008U);
9068 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.output_lrat_proof)
9069}
9070inline bool SatParameters::_internal_output_lrat_proof() const {
9071 ::google::protobuf::internal::TSanRead(&_impl_);
9072 return _impl_.output_lrat_proof_;
9073}
9074inline void SatParameters::_internal_set_output_lrat_proof(bool value) {
9075 ::google::protobuf::internal::TSanWrite(&_impl_);
9076 _impl_.output_lrat_proof_ = value;
9077}
9078
9079// optional bool check_drat_proof = 346 [default = false];
9080inline bool SatParameters::has_check_drat_proof() const {
9081 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000010U);
9082 return value;
9083}
9085 ::google::protobuf::internal::TSanWrite(&_impl_);
9086 _impl_.check_drat_proof_ = false;
9087 ClearHasBit(_impl_._has_bits_[4],
9088 0x00000010U);
9090inline bool SatParameters::check_drat_proof() const {
9091 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.check_drat_proof)
9092 return _internal_check_drat_proof();
9093}
9094inline void SatParameters::set_check_drat_proof(bool value) {
9095 _internal_set_check_drat_proof(value);
9096 SetHasBit(_impl_._has_bits_[4], 0x00000010U);
9097 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.check_drat_proof)
9098}
9099inline bool SatParameters::_internal_check_drat_proof() const {
9100 ::google::protobuf::internal::TSanRead(&_impl_);
9101 return _impl_.check_drat_proof_;
9102}
9103inline void SatParameters::_internal_set_check_drat_proof(bool value) {
9104 ::google::protobuf::internal::TSanWrite(&_impl_);
9105 _impl_.check_drat_proof_ = value;
9106}
9107
9108// optional bool output_drat_proof = 347 [default = false];
9109inline bool SatParameters::has_output_drat_proof() const {
9110 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000080U);
9111 return value;
9112}
9114 ::google::protobuf::internal::TSanWrite(&_impl_);
9115 _impl_.output_drat_proof_ = false;
9116 ClearHasBit(_impl_._has_bits_[4],
9117 0x00000080U);
9119inline bool SatParameters::output_drat_proof() const {
9120 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.output_drat_proof)
9121 return _internal_output_drat_proof();
9122}
9123inline void SatParameters::set_output_drat_proof(bool value) {
9124 _internal_set_output_drat_proof(value);
9125 SetHasBit(_impl_._has_bits_[4], 0x00000080U);
9126 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.output_drat_proof)
9127}
9128inline bool SatParameters::_internal_output_drat_proof() const {
9129 ::google::protobuf::internal::TSanRead(&_impl_);
9130 return _impl_.output_drat_proof_;
9131}
9132inline void SatParameters::_internal_set_output_drat_proof(bool value) {
9133 ::google::protobuf::internal::TSanWrite(&_impl_);
9134 _impl_.output_drat_proof_ = value;
9135}
9136
9137// optional double max_drat_time_in_seconds = 348 [default = inf];
9139 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00001000U);
9140 return value;
9141}
9143 ::google::protobuf::internal::TSanWrite(&_impl_);
9144 _impl_.max_drat_time_in_seconds_ = std::numeric_limits<double>::infinity();
9145 ClearHasBit(_impl_._has_bits_[9],
9146 0x00001000U);
9148inline double SatParameters::max_drat_time_in_seconds() const {
9149 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_drat_time_in_seconds)
9150 return _internal_max_drat_time_in_seconds();
9151}
9152inline void SatParameters::set_max_drat_time_in_seconds(double value) {
9153 _internal_set_max_drat_time_in_seconds(value);
9154 SetHasBit(_impl_._has_bits_[9], 0x00001000U);
9155 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_drat_time_in_seconds)
9156}
9157inline double SatParameters::_internal_max_drat_time_in_seconds() const {
9158 ::google::protobuf::internal::TSanRead(&_impl_);
9159 return _impl_.max_drat_time_in_seconds_;
9160}
9161inline void SatParameters::_internal_set_max_drat_time_in_seconds(double value) {
9162 ::google::protobuf::internal::TSanWrite(&_impl_);
9163 _impl_.max_drat_time_in_seconds_ = value;
9164}
9165
9166// optional bool debug_postsolve_with_full_solver = 162 [default = false];
9168 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000002U);
9169 return value;
9170}
9172 ::google::protobuf::internal::TSanWrite(&_impl_);
9173 _impl_.debug_postsolve_with_full_solver_ = false;
9174 ClearHasBit(_impl_._has_bits_[2],
9175 0x00000002U);
9178 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.debug_postsolve_with_full_solver)
9179 return _internal_debug_postsolve_with_full_solver();
9180}
9182 _internal_set_debug_postsolve_with_full_solver(value);
9183 SetHasBit(_impl_._has_bits_[2], 0x00000002U);
9184 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.debug_postsolve_with_full_solver)
9185}
9186inline bool SatParameters::_internal_debug_postsolve_with_full_solver() const {
9187 ::google::protobuf::internal::TSanRead(&_impl_);
9188 return _impl_.debug_postsolve_with_full_solver_;
9189}
9190inline void SatParameters::_internal_set_debug_postsolve_with_full_solver(bool value) {
9191 ::google::protobuf::internal::TSanWrite(&_impl_);
9192 _impl_.debug_postsolve_with_full_solver_ = value;
9193}
9194
9195// optional int32 debug_max_num_presolve_operations = 151 [default = 0];
9197 bool value = CheckHasBit(_impl_._has_bits_[1], 0x20000000U);
9198 return value;
9199}
9201 ::google::protobuf::internal::TSanWrite(&_impl_);
9202 _impl_.debug_max_num_presolve_operations_ = 0;
9203 ClearHasBit(_impl_._has_bits_[1],
9204 0x20000000U);
9206inline ::int32_t SatParameters::debug_max_num_presolve_operations() const {
9207 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.debug_max_num_presolve_operations)
9208 return _internal_debug_max_num_presolve_operations();
9209}
9210inline void SatParameters::set_debug_max_num_presolve_operations(::int32_t value) {
9211 _internal_set_debug_max_num_presolve_operations(value);
9212 SetHasBit(_impl_._has_bits_[1], 0x20000000U);
9213 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.debug_max_num_presolve_operations)
9214}
9215inline ::int32_t SatParameters::_internal_debug_max_num_presolve_operations() const {
9216 ::google::protobuf::internal::TSanRead(&_impl_);
9217 return _impl_.debug_max_num_presolve_operations_;
9218}
9219inline void SatParameters::_internal_set_debug_max_num_presolve_operations(::int32_t value) {
9220 ::google::protobuf::internal::TSanWrite(&_impl_);
9221 _impl_.debug_max_num_presolve_operations_ = value;
9222}
9223
9224// optional bool debug_crash_on_bad_hint = 195 [default = false];
9226 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00020000U);
9227 return value;
9228}
9230 ::google::protobuf::internal::TSanWrite(&_impl_);
9231 _impl_.debug_crash_on_bad_hint_ = false;
9232 ClearHasBit(_impl_._has_bits_[2],
9233 0x00020000U);
9235inline bool SatParameters::debug_crash_on_bad_hint() const {
9236 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.debug_crash_on_bad_hint)
9237 return _internal_debug_crash_on_bad_hint();
9238}
9239inline void SatParameters::set_debug_crash_on_bad_hint(bool value) {
9240 _internal_set_debug_crash_on_bad_hint(value);
9241 SetHasBit(_impl_._has_bits_[2], 0x00020000U);
9242 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.debug_crash_on_bad_hint)
9243}
9244inline bool SatParameters::_internal_debug_crash_on_bad_hint() const {
9245 ::google::protobuf::internal::TSanRead(&_impl_);
9246 return _impl_.debug_crash_on_bad_hint_;
9247}
9248inline void SatParameters::_internal_set_debug_crash_on_bad_hint(bool value) {
9249 ::google::protobuf::internal::TSanWrite(&_impl_);
9250 _impl_.debug_crash_on_bad_hint_ = value;
9251}
9252
9253// optional bool debug_crash_if_presolve_breaks_hint = 306 [default = false];
9255 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00400000U);
9256 return value;
9257}
9259 ::google::protobuf::internal::TSanWrite(&_impl_);
9260 _impl_.debug_crash_if_presolve_breaks_hint_ = false;
9261 ClearHasBit(_impl_._has_bits_[3],
9262 0x00400000U);
9265 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.debug_crash_if_presolve_breaks_hint)
9266 return _internal_debug_crash_if_presolve_breaks_hint();
9267}
9269 _internal_set_debug_crash_if_presolve_breaks_hint(value);
9270 SetHasBit(_impl_._has_bits_[3], 0x00400000U);
9271 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.debug_crash_if_presolve_breaks_hint)
9272}
9273inline bool SatParameters::_internal_debug_crash_if_presolve_breaks_hint() const {
9274 ::google::protobuf::internal::TSanRead(&_impl_);
9275 return _impl_.debug_crash_if_presolve_breaks_hint_;
9276}
9277inline void SatParameters::_internal_set_debug_crash_if_presolve_breaks_hint(bool value) {
9278 ::google::protobuf::internal::TSanWrite(&_impl_);
9279 _impl_.debug_crash_if_presolve_breaks_hint_ = value;
9280}
9281
9282// optional bool debug_crash_if_lrat_check_fails = 339 [default = false];
9284 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00000002U);
9285 return value;
9286}
9288 ::google::protobuf::internal::TSanWrite(&_impl_);
9289 _impl_.debug_crash_if_lrat_check_fails_ = false;
9290 ClearHasBit(_impl_._has_bits_[4],
9291 0x00000002U);
9294 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.debug_crash_if_lrat_check_fails)
9295 return _internal_debug_crash_if_lrat_check_fails();
9296}
9298 _internal_set_debug_crash_if_lrat_check_fails(value);
9299 SetHasBit(_impl_._has_bits_[4], 0x00000002U);
9300 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.debug_crash_if_lrat_check_fails)
9301}
9302inline bool SatParameters::_internal_debug_crash_if_lrat_check_fails() const {
9303 ::google::protobuf::internal::TSanRead(&_impl_);
9304 return _impl_.debug_crash_if_lrat_check_fails_;
9305}
9306inline void SatParameters::_internal_set_debug_crash_if_lrat_check_fails(bool value) {
9307 ::google::protobuf::internal::TSanWrite(&_impl_);
9308 _impl_.debug_crash_if_lrat_check_fails_ = value;
9309}
9310
9311// optional bool use_optimization_hints = 35 [default = true];
9313 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000020U);
9314 return value;
9315}
9317 ::google::protobuf::internal::TSanWrite(&_impl_);
9318 _impl_.use_optimization_hints_ = true;
9319 ClearHasBit(_impl_._has_bits_[0],
9320 0x00000020U);
9322inline bool SatParameters::use_optimization_hints() const {
9323 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_optimization_hints)
9324 return _internal_use_optimization_hints();
9325}
9326inline void SatParameters::set_use_optimization_hints(bool value) {
9327 _internal_set_use_optimization_hints(value);
9328 SetHasBit(_impl_._has_bits_[0], 0x00000020U);
9329 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_optimization_hints)
9330}
9331inline bool SatParameters::_internal_use_optimization_hints() const {
9332 ::google::protobuf::internal::TSanRead(&_impl_);
9333 return _impl_.use_optimization_hints_;
9334}
9335inline void SatParameters::_internal_set_use_optimization_hints(bool value) {
9336 ::google::protobuf::internal::TSanWrite(&_impl_);
9337 _impl_.use_optimization_hints_ = value;
9338}
9339
9340// optional int32 core_minimization_level = 50 [default = 2];
9342 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00004000U);
9343 return value;
9344}
9346 ::google::protobuf::internal::TSanWrite(&_impl_);
9347 _impl_.core_minimization_level_ = 2;
9348 ClearHasBit(_impl_._has_bits_[4],
9349 0x00004000U);
9351inline ::int32_t SatParameters::core_minimization_level() const {
9352 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.core_minimization_level)
9353 return _internal_core_minimization_level();
9354}
9355inline void SatParameters::set_core_minimization_level(::int32_t value) {
9356 _internal_set_core_minimization_level(value);
9357 SetHasBit(_impl_._has_bits_[4], 0x00004000U);
9358 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.core_minimization_level)
9359}
9360inline ::int32_t SatParameters::_internal_core_minimization_level() const {
9361 ::google::protobuf::internal::TSanRead(&_impl_);
9362 return _impl_.core_minimization_level_;
9363}
9364inline void SatParameters::_internal_set_core_minimization_level(::int32_t value) {
9365 ::google::protobuf::internal::TSanWrite(&_impl_);
9366 _impl_.core_minimization_level_ = value;
9367}
9368
9369// optional bool find_multiple_cores = 84 [default = true];
9370inline bool SatParameters::has_find_multiple_cores() const {
9371 bool value = CheckHasBit(_impl_._has_bits_[4], 0x80000000U);
9372 return value;
9373}
9375 ::google::protobuf::internal::TSanWrite(&_impl_);
9376 _impl_.find_multiple_cores_ = true;
9377 ClearHasBit(_impl_._has_bits_[4],
9378 0x80000000U);
9380inline bool SatParameters::find_multiple_cores() const {
9381 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.find_multiple_cores)
9382 return _internal_find_multiple_cores();
9383}
9384inline void SatParameters::set_find_multiple_cores(bool value) {
9385 _internal_set_find_multiple_cores(value);
9386 SetHasBit(_impl_._has_bits_[4], 0x80000000U);
9387 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.find_multiple_cores)
9388}
9389inline bool SatParameters::_internal_find_multiple_cores() const {
9390 ::google::protobuf::internal::TSanRead(&_impl_);
9391 return _impl_.find_multiple_cores_;
9392}
9393inline void SatParameters::_internal_set_find_multiple_cores(bool value) {
9394 ::google::protobuf::internal::TSanWrite(&_impl_);
9395 _impl_.find_multiple_cores_ = value;
9396}
9397
9398// optional bool cover_optimization = 89 [default = true];
9399inline bool SatParameters::has_cover_optimization() const {
9400 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000004U);
9401 return value;
9402}
9404 ::google::protobuf::internal::TSanWrite(&_impl_);
9405 _impl_.cover_optimization_ = true;
9406 ClearHasBit(_impl_._has_bits_[5],
9407 0x00000004U);
9409inline bool SatParameters::cover_optimization() const {
9410 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cover_optimization)
9411 return _internal_cover_optimization();
9412}
9413inline void SatParameters::set_cover_optimization(bool value) {
9414 _internal_set_cover_optimization(value);
9415 SetHasBit(_impl_._has_bits_[5], 0x00000004U);
9416 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cover_optimization)
9417}
9418inline bool SatParameters::_internal_cover_optimization() const {
9419 ::google::protobuf::internal::TSanRead(&_impl_);
9420 return _impl_.cover_optimization_;
9421}
9422inline void SatParameters::_internal_set_cover_optimization(bool value) {
9423 ::google::protobuf::internal::TSanWrite(&_impl_);
9424 _impl_.cover_optimization_ = value;
9425}
9426
9427// optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];
9429 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000001U);
9430 return value;
9431}
9433 ::google::protobuf::internal::TSanWrite(&_impl_);
9434 _impl_.max_sat_assumption_order_ = 0;
9435 ClearHasBit(_impl_._has_bits_[1],
9436 0x00000001U);
9438inline ::operations_research::sat::SatParameters_MaxSatAssumptionOrder SatParameters::max_sat_assumption_order() const {
9439 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_sat_assumption_order)
9440 return _internal_max_sat_assumption_order();
9441}
9443 _internal_set_max_sat_assumption_order(value);
9444 SetHasBit(_impl_._has_bits_[1], 0x00000001U);
9445 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_sat_assumption_order)
9446}
9447inline ::operations_research::sat::SatParameters_MaxSatAssumptionOrder SatParameters::_internal_max_sat_assumption_order() const {
9448 ::google::protobuf::internal::TSanRead(&_impl_);
9449 return static_cast<::operations_research::sat::SatParameters_MaxSatAssumptionOrder>(_impl_.max_sat_assumption_order_);
9450}
9451inline void SatParameters::_internal_set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value) {
9452 ::google::protobuf::internal::TSanWrite(&_impl_);
9453
9454 assert(::google::protobuf::internal::ValidateEnum(
9456 _impl_.max_sat_assumption_order_ = value;
9457}
9458
9459// optional bool max_sat_reverse_assumption_order = 52 [default = false];
9461 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000004U);
9462 return value;
9463}
9465 ::google::protobuf::internal::TSanWrite(&_impl_);
9466 _impl_.max_sat_reverse_assumption_order_ = false;
9467 ClearHasBit(_impl_._has_bits_[1],
9468 0x00000004U);
9471 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_sat_reverse_assumption_order)
9472 return _internal_max_sat_reverse_assumption_order();
9473}
9475 _internal_set_max_sat_reverse_assumption_order(value);
9476 SetHasBit(_impl_._has_bits_[1], 0x00000004U);
9477 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_sat_reverse_assumption_order)
9478}
9479inline bool SatParameters::_internal_max_sat_reverse_assumption_order() const {
9480 ::google::protobuf::internal::TSanRead(&_impl_);
9481 return _impl_.max_sat_reverse_assumption_order_;
9482}
9483inline void SatParameters::_internal_set_max_sat_reverse_assumption_order(bool value) {
9484 ::google::protobuf::internal::TSanWrite(&_impl_);
9485 _impl_.max_sat_reverse_assumption_order_ = value;
9486}
9487
9488// optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];
9490 bool value = CheckHasBit(_impl_._has_bits_[4], 0x00008000U);
9491 return value;
9492}
9494 ::google::protobuf::internal::TSanWrite(&_impl_);
9495 _impl_.max_sat_stratification_ = 1;
9496 ClearHasBit(_impl_._has_bits_[4],
9497 0x00008000U);
9499inline ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm SatParameters::max_sat_stratification() const {
9500 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_sat_stratification)
9501 return _internal_max_sat_stratification();
9502}
9504 _internal_set_max_sat_stratification(value);
9505 SetHasBit(_impl_._has_bits_[4], 0x00008000U);
9506 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_sat_stratification)
9507}
9508inline ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm SatParameters::_internal_max_sat_stratification() const {
9509 ::google::protobuf::internal::TSanRead(&_impl_);
9510 return static_cast<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm>(_impl_.max_sat_stratification_);
9511}
9512inline void SatParameters::_internal_set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value) {
9513 ::google::protobuf::internal::TSanWrite(&_impl_);
9514
9515 assert(::google::protobuf::internal::ValidateEnum(
9517 _impl_.max_sat_stratification_ = value;
9518}
9519
9520// optional double propagation_loop_detection_factor = 221 [default = 10];
9522 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000010U);
9523 return value;
9524}
9526 ::google::protobuf::internal::TSanWrite(&_impl_);
9527 _impl_.propagation_loop_detection_factor_ = 10;
9528 ClearHasBit(_impl_._has_bits_[7],
9529 0x00000010U);
9532 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.propagation_loop_detection_factor)
9533 return _internal_propagation_loop_detection_factor();
9534}
9536 _internal_set_propagation_loop_detection_factor(value);
9537 SetHasBit(_impl_._has_bits_[7], 0x00000010U);
9538 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.propagation_loop_detection_factor)
9539}
9540inline double SatParameters::_internal_propagation_loop_detection_factor() const {
9541 ::google::protobuf::internal::TSanRead(&_impl_);
9542 return _impl_.propagation_loop_detection_factor_;
9543}
9544inline void SatParameters::_internal_set_propagation_loop_detection_factor(double value) {
9545 ::google::protobuf::internal::TSanWrite(&_impl_);
9546 _impl_.propagation_loop_detection_factor_ = value;
9547}
9548
9549// optional bool use_precedences_in_disjunctive_constraint = 74 [default = true];
9551 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000080U);
9552 return value;
9553}
9555 ::google::protobuf::internal::TSanWrite(&_impl_);
9556 _impl_.use_precedences_in_disjunctive_constraint_ = true;
9557 ClearHasBit(_impl_._has_bits_[0],
9558 0x00000080U);
9561 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_precedences_in_disjunctive_constraint)
9562 return _internal_use_precedences_in_disjunctive_constraint();
9563}
9565 _internal_set_use_precedences_in_disjunctive_constraint(value);
9566 SetHasBit(_impl_._has_bits_[0], 0x00000080U);
9567 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_precedences_in_disjunctive_constraint)
9568}
9569inline bool SatParameters::_internal_use_precedences_in_disjunctive_constraint() const {
9570 ::google::protobuf::internal::TSanRead(&_impl_);
9571 return _impl_.use_precedences_in_disjunctive_constraint_;
9572}
9573inline void SatParameters::_internal_set_use_precedences_in_disjunctive_constraint(bool value) {
9574 ::google::protobuf::internal::TSanWrite(&_impl_);
9575 _impl_.use_precedences_in_disjunctive_constraint_ = value;
9576}
9577
9578// optional int32 transitive_precedences_work_limit = 327 [default = 1000000];
9580 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000002U);
9581 return value;
9582}
9584 ::google::protobuf::internal::TSanWrite(&_impl_);
9585 _impl_.transitive_precedences_work_limit_ = 1000000;
9586 ClearHasBit(_impl_._has_bits_[9],
9587 0x00000002U);
9589inline ::int32_t SatParameters::transitive_precedences_work_limit() const {
9590 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.transitive_precedences_work_limit)
9591 return _internal_transitive_precedences_work_limit();
9592}
9593inline void SatParameters::set_transitive_precedences_work_limit(::int32_t value) {
9594 _internal_set_transitive_precedences_work_limit(value);
9595 SetHasBit(_impl_._has_bits_[9], 0x00000002U);
9596 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.transitive_precedences_work_limit)
9597}
9598inline ::int32_t SatParameters::_internal_transitive_precedences_work_limit() const {
9599 ::google::protobuf::internal::TSanRead(&_impl_);
9600 return _impl_.transitive_precedences_work_limit_;
9601}
9602inline void SatParameters::_internal_set_transitive_precedences_work_limit(::int32_t value) {
9603 ::google::protobuf::internal::TSanWrite(&_impl_);
9604 _impl_.transitive_precedences_work_limit_ = value;
9605}
9606
9607// optional int32 max_size_to_create_precedence_literals_in_disjunctive = 229 [default = 60];
9609 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000200U);
9610 return value;
9611}
9613 ::google::protobuf::internal::TSanWrite(&_impl_);
9614 _impl_.max_size_to_create_precedence_literals_in_disjunctive_ = 60;
9615 ClearHasBit(_impl_._has_bits_[7],
9616 0x00000200U);
9619 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_size_to_create_precedence_literals_in_disjunctive)
9620 return _internal_max_size_to_create_precedence_literals_in_disjunctive();
9621}
9623 _internal_set_max_size_to_create_precedence_literals_in_disjunctive(value);
9624 SetHasBit(_impl_._has_bits_[7], 0x00000200U);
9625 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_size_to_create_precedence_literals_in_disjunctive)
9626}
9627inline ::int32_t SatParameters::_internal_max_size_to_create_precedence_literals_in_disjunctive() const {
9628 ::google::protobuf::internal::TSanRead(&_impl_);
9629 return _impl_.max_size_to_create_precedence_literals_in_disjunctive_;
9630}
9631inline void SatParameters::_internal_set_max_size_to_create_precedence_literals_in_disjunctive(::int32_t value) {
9632 ::google::protobuf::internal::TSanWrite(&_impl_);
9633 _impl_.max_size_to_create_precedence_literals_in_disjunctive_ = value;
9634}
9635
9636// optional bool use_strong_propagation_in_disjunctive = 230 [default = false];
9638 bool value = CheckHasBit(_impl_._has_bits_[2], 0x20000000U);
9639 return value;
9640}
9642 ::google::protobuf::internal::TSanWrite(&_impl_);
9643 _impl_.use_strong_propagation_in_disjunctive_ = false;
9644 ClearHasBit(_impl_._has_bits_[2],
9645 0x20000000U);
9648 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_strong_propagation_in_disjunctive)
9649 return _internal_use_strong_propagation_in_disjunctive();
9650}
9652 _internal_set_use_strong_propagation_in_disjunctive(value);
9653 SetHasBit(_impl_._has_bits_[2], 0x20000000U);
9654 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_strong_propagation_in_disjunctive)
9655}
9656inline bool SatParameters::_internal_use_strong_propagation_in_disjunctive() const {
9657 ::google::protobuf::internal::TSanRead(&_impl_);
9658 return _impl_.use_strong_propagation_in_disjunctive_;
9659}
9660inline void SatParameters::_internal_set_use_strong_propagation_in_disjunctive(bool value) {
9661 ::google::protobuf::internal::TSanWrite(&_impl_);
9662 _impl_.use_strong_propagation_in_disjunctive_ = value;
9663}
9664
9665// optional bool use_dynamic_precedence_in_disjunctive = 263 [default = false];
9667 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000020U);
9668 return value;
9669}
9671 ::google::protobuf::internal::TSanWrite(&_impl_);
9672 _impl_.use_dynamic_precedence_in_disjunctive_ = false;
9673 ClearHasBit(_impl_._has_bits_[3],
9674 0x00000020U);
9677 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_dynamic_precedence_in_disjunctive)
9678 return _internal_use_dynamic_precedence_in_disjunctive();
9679}
9681 _internal_set_use_dynamic_precedence_in_disjunctive(value);
9682 SetHasBit(_impl_._has_bits_[3], 0x00000020U);
9683 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_dynamic_precedence_in_disjunctive)
9684}
9685inline bool SatParameters::_internal_use_dynamic_precedence_in_disjunctive() const {
9686 ::google::protobuf::internal::TSanRead(&_impl_);
9687 return _impl_.use_dynamic_precedence_in_disjunctive_;
9688}
9689inline void SatParameters::_internal_set_use_dynamic_precedence_in_disjunctive(bool value) {
9690 ::google::protobuf::internal::TSanWrite(&_impl_);
9691 _impl_.use_dynamic_precedence_in_disjunctive_ = value;
9692}
9693
9694// optional bool use_dynamic_precedence_in_cumulative = 268 [default = false];
9696 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000040U);
9697 return value;
9698}
9700 ::google::protobuf::internal::TSanWrite(&_impl_);
9701 _impl_.use_dynamic_precedence_in_cumulative_ = false;
9702 ClearHasBit(_impl_._has_bits_[3],
9703 0x00000040U);
9706 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_dynamic_precedence_in_cumulative)
9707 return _internal_use_dynamic_precedence_in_cumulative();
9708}
9710 _internal_set_use_dynamic_precedence_in_cumulative(value);
9711 SetHasBit(_impl_._has_bits_[3], 0x00000040U);
9712 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_dynamic_precedence_in_cumulative)
9713}
9714inline bool SatParameters::_internal_use_dynamic_precedence_in_cumulative() const {
9715 ::google::protobuf::internal::TSanRead(&_impl_);
9716 return _impl_.use_dynamic_precedence_in_cumulative_;
9717}
9718inline void SatParameters::_internal_set_use_dynamic_precedence_in_cumulative(bool value) {
9719 ::google::protobuf::internal::TSanWrite(&_impl_);
9720 _impl_.use_dynamic_precedence_in_cumulative_ = value;
9721}
9722
9723// optional bool use_overload_checker_in_cumulative = 78 [default = false];
9725 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000400U);
9726 return value;
9727}
9729 ::google::protobuf::internal::TSanWrite(&_impl_);
9730 _impl_.use_overload_checker_in_cumulative_ = false;
9731 ClearHasBit(_impl_._has_bits_[1],
9732 0x00000400U);
9735 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_overload_checker_in_cumulative)
9736 return _internal_use_overload_checker_in_cumulative();
9737}
9739 _internal_set_use_overload_checker_in_cumulative(value);
9740 SetHasBit(_impl_._has_bits_[1], 0x00000400U);
9741 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_overload_checker_in_cumulative)
9742}
9743inline bool SatParameters::_internal_use_overload_checker_in_cumulative() const {
9744 ::google::protobuf::internal::TSanRead(&_impl_);
9745 return _impl_.use_overload_checker_in_cumulative_;
9746}
9747inline void SatParameters::_internal_set_use_overload_checker_in_cumulative(bool value) {
9748 ::google::protobuf::internal::TSanWrite(&_impl_);
9749 _impl_.use_overload_checker_in_cumulative_ = value;
9750}
9751
9752// optional bool use_conservative_scale_overload_checker = 286 [default = false];
9754 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00001000U);
9755 return value;
9756}
9758 ::google::protobuf::internal::TSanWrite(&_impl_);
9759 _impl_.use_conservative_scale_overload_checker_ = false;
9760 ClearHasBit(_impl_._has_bits_[3],
9761 0x00001000U);
9764 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_conservative_scale_overload_checker)
9765 return _internal_use_conservative_scale_overload_checker();
9766}
9768 _internal_set_use_conservative_scale_overload_checker(value);
9769 SetHasBit(_impl_._has_bits_[3], 0x00001000U);
9770 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_conservative_scale_overload_checker)
9771}
9772inline bool SatParameters::_internal_use_conservative_scale_overload_checker() const {
9773 ::google::protobuf::internal::TSanRead(&_impl_);
9774 return _impl_.use_conservative_scale_overload_checker_;
9775}
9776inline void SatParameters::_internal_set_use_conservative_scale_overload_checker(bool value) {
9777 ::google::protobuf::internal::TSanWrite(&_impl_);
9778 _impl_.use_conservative_scale_overload_checker_ = value;
9779}
9780
9781// optional bool use_timetable_edge_finding_in_cumulative = 79 [default = false];
9783 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00000800U);
9784 return value;
9785}
9787 ::google::protobuf::internal::TSanWrite(&_impl_);
9788 _impl_.use_timetable_edge_finding_in_cumulative_ = false;
9789 ClearHasBit(_impl_._has_bits_[1],
9790 0x00000800U);
9793 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_timetable_edge_finding_in_cumulative)
9794 return _internal_use_timetable_edge_finding_in_cumulative();
9795}
9797 _internal_set_use_timetable_edge_finding_in_cumulative(value);
9798 SetHasBit(_impl_._has_bits_[1], 0x00000800U);
9799 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_timetable_edge_finding_in_cumulative)
9800}
9801inline bool SatParameters::_internal_use_timetable_edge_finding_in_cumulative() const {
9802 ::google::protobuf::internal::TSanRead(&_impl_);
9803 return _impl_.use_timetable_edge_finding_in_cumulative_;
9804}
9805inline void SatParameters::_internal_set_use_timetable_edge_finding_in_cumulative(bool value) {
9806 ::google::protobuf::internal::TSanWrite(&_impl_);
9807 _impl_.use_timetable_edge_finding_in_cumulative_ = value;
9808}
9809
9810// optional int32 max_num_intervals_for_timetable_edge_finding = 260 [default = 100];
9812 bool value = CheckHasBit(_impl_._has_bits_[7], 0x01000000U);
9813 return value;
9814}
9816 ::google::protobuf::internal::TSanWrite(&_impl_);
9817 _impl_.max_num_intervals_for_timetable_edge_finding_ = 100;
9818 ClearHasBit(_impl_._has_bits_[7],
9819 0x01000000U);
9822 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_num_intervals_for_timetable_edge_finding)
9823 return _internal_max_num_intervals_for_timetable_edge_finding();
9824}
9826 _internal_set_max_num_intervals_for_timetable_edge_finding(value);
9827 SetHasBit(_impl_._has_bits_[7], 0x01000000U);
9828 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_num_intervals_for_timetable_edge_finding)
9829}
9830inline ::int32_t SatParameters::_internal_max_num_intervals_for_timetable_edge_finding() const {
9831 ::google::protobuf::internal::TSanRead(&_impl_);
9832 return _impl_.max_num_intervals_for_timetable_edge_finding_;
9833}
9834inline void SatParameters::_internal_set_max_num_intervals_for_timetable_edge_finding(::int32_t value) {
9835 ::google::protobuf::internal::TSanWrite(&_impl_);
9836 _impl_.max_num_intervals_for_timetable_edge_finding_ = value;
9837}
9838
9839// optional bool use_hard_precedences_in_cumulative = 215 [default = false];
9841 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00400000U);
9842 return value;
9843}
9845 ::google::protobuf::internal::TSanWrite(&_impl_);
9846 _impl_.use_hard_precedences_in_cumulative_ = false;
9847 ClearHasBit(_impl_._has_bits_[2],
9848 0x00400000U);
9851 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_hard_precedences_in_cumulative)
9852 return _internal_use_hard_precedences_in_cumulative();
9853}
9855 _internal_set_use_hard_precedences_in_cumulative(value);
9856 SetHasBit(_impl_._has_bits_[2], 0x00400000U);
9857 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_hard_precedences_in_cumulative)
9858}
9859inline bool SatParameters::_internal_use_hard_precedences_in_cumulative() const {
9860 ::google::protobuf::internal::TSanRead(&_impl_);
9861 return _impl_.use_hard_precedences_in_cumulative_;
9862}
9863inline void SatParameters::_internal_set_use_hard_precedences_in_cumulative(bool value) {
9864 ::google::protobuf::internal::TSanWrite(&_impl_);
9865 _impl_.use_hard_precedences_in_cumulative_ = value;
9866}
9867
9868// optional bool exploit_all_precedences = 220 [default = false];
9870 bool value = CheckHasBit(_impl_._has_bits_[2], 0x01000000U);
9871 return value;
9872}
9874 ::google::protobuf::internal::TSanWrite(&_impl_);
9875 _impl_.exploit_all_precedences_ = false;
9876 ClearHasBit(_impl_._has_bits_[2],
9877 0x01000000U);
9879inline bool SatParameters::exploit_all_precedences() const {
9880 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_all_precedences)
9881 return _internal_exploit_all_precedences();
9882}
9883inline void SatParameters::set_exploit_all_precedences(bool value) {
9884 _internal_set_exploit_all_precedences(value);
9885 SetHasBit(_impl_._has_bits_[2], 0x01000000U);
9886 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_all_precedences)
9887}
9888inline bool SatParameters::_internal_exploit_all_precedences() const {
9889 ::google::protobuf::internal::TSanRead(&_impl_);
9890 return _impl_.exploit_all_precedences_;
9891}
9892inline void SatParameters::_internal_set_exploit_all_precedences(bool value) {
9893 ::google::protobuf::internal::TSanWrite(&_impl_);
9894 _impl_.exploit_all_precedences_ = value;
9895}
9896
9897// optional bool use_disjunctive_constraint_in_cumulative = 80 [default = true];
9899 bool value = CheckHasBit(_impl_._has_bits_[4], 0x02000000U);
9900 return value;
9901}
9903 ::google::protobuf::internal::TSanWrite(&_impl_);
9904 _impl_.use_disjunctive_constraint_in_cumulative_ = true;
9905 ClearHasBit(_impl_._has_bits_[4],
9906 0x02000000U);
9909 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_disjunctive_constraint_in_cumulative)
9910 return _internal_use_disjunctive_constraint_in_cumulative();
9911}
9913 _internal_set_use_disjunctive_constraint_in_cumulative(value);
9914 SetHasBit(_impl_._has_bits_[4], 0x02000000U);
9915 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_disjunctive_constraint_in_cumulative)
9916}
9917inline bool SatParameters::_internal_use_disjunctive_constraint_in_cumulative() const {
9918 ::google::protobuf::internal::TSanRead(&_impl_);
9919 return _impl_.use_disjunctive_constraint_in_cumulative_;
9920}
9921inline void SatParameters::_internal_set_use_disjunctive_constraint_in_cumulative(bool value) {
9922 ::google::protobuf::internal::TSanWrite(&_impl_);
9923 _impl_.use_disjunctive_constraint_in_cumulative_ = value;
9924}
9925
9926// optional int32 no_overlap_2d_boolean_relations_limit = 321 [default = 10];
9928 bool value = CheckHasBit(_impl_._has_bits_[8], 0x40000000U);
9929 return value;
9930}
9932 ::google::protobuf::internal::TSanWrite(&_impl_);
9933 _impl_.no_overlap_2d_boolean_relations_limit_ = 10;
9934 ClearHasBit(_impl_._has_bits_[8],
9935 0x40000000U);
9938 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.no_overlap_2d_boolean_relations_limit)
9939 return _internal_no_overlap_2d_boolean_relations_limit();
9940}
9942 _internal_set_no_overlap_2d_boolean_relations_limit(value);
9943 SetHasBit(_impl_._has_bits_[8], 0x40000000U);
9944 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.no_overlap_2d_boolean_relations_limit)
9945}
9946inline ::int32_t SatParameters::_internal_no_overlap_2d_boolean_relations_limit() const {
9947 ::google::protobuf::internal::TSanRead(&_impl_);
9948 return _impl_.no_overlap_2d_boolean_relations_limit_;
9949}
9950inline void SatParameters::_internal_set_no_overlap_2d_boolean_relations_limit(::int32_t value) {
9951 ::google::protobuf::internal::TSanWrite(&_impl_);
9952 _impl_.no_overlap_2d_boolean_relations_limit_ = value;
9953}
9954
9955// optional bool use_timetabling_in_no_overlap_2d = 200 [default = false];
9957 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00100000U);
9958 return value;
9959}
9961 ::google::protobuf::internal::TSanWrite(&_impl_);
9962 _impl_.use_timetabling_in_no_overlap_2d_ = false;
9963 ClearHasBit(_impl_._has_bits_[2],
9964 0x00100000U);
9967 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_timetabling_in_no_overlap_2d)
9968 return _internal_use_timetabling_in_no_overlap_2d();
9969}
9971 _internal_set_use_timetabling_in_no_overlap_2d(value);
9972 SetHasBit(_impl_._has_bits_[2], 0x00100000U);
9973 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_timetabling_in_no_overlap_2d)
9974}
9975inline bool SatParameters::_internal_use_timetabling_in_no_overlap_2d() const {
9976 ::google::protobuf::internal::TSanRead(&_impl_);
9977 return _impl_.use_timetabling_in_no_overlap_2d_;
9978}
9979inline void SatParameters::_internal_set_use_timetabling_in_no_overlap_2d(bool value) {
9980 ::google::protobuf::internal::TSanWrite(&_impl_);
9981 _impl_.use_timetabling_in_no_overlap_2d_ = value;
9982}
9983
9984// optional bool use_energetic_reasoning_in_no_overlap_2d = 213 [default = false];
9986 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00200000U);
9987 return value;
9988}
9990 ::google::protobuf::internal::TSanWrite(&_impl_);
9991 _impl_.use_energetic_reasoning_in_no_overlap_2d_ = false;
9992 ClearHasBit(_impl_._has_bits_[2],
9993 0x00200000U);
9996 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_energetic_reasoning_in_no_overlap_2d)
9997 return _internal_use_energetic_reasoning_in_no_overlap_2d();
9998}
10000 _internal_set_use_energetic_reasoning_in_no_overlap_2d(value);
10001 SetHasBit(_impl_._has_bits_[2], 0x00200000U);
10002 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_energetic_reasoning_in_no_overlap_2d)
10003}
10004inline bool SatParameters::_internal_use_energetic_reasoning_in_no_overlap_2d() const {
10005 ::google::protobuf::internal::TSanRead(&_impl_);
10006 return _impl_.use_energetic_reasoning_in_no_overlap_2d_;
10007}
10008inline void SatParameters::_internal_set_use_energetic_reasoning_in_no_overlap_2d(bool value) {
10009 ::google::protobuf::internal::TSanWrite(&_impl_);
10010 _impl_.use_energetic_reasoning_in_no_overlap_2d_ = value;
10011}
10012
10013// optional bool use_area_energetic_reasoning_in_no_overlap_2d = 271 [default = false];
10015 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000080U);
10016 return value;
10017}
10019 ::google::protobuf::internal::TSanWrite(&_impl_);
10020 _impl_.use_area_energetic_reasoning_in_no_overlap_2d_ = false;
10021 ClearHasBit(_impl_._has_bits_[3],
10022 0x00000080U);
10025 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_area_energetic_reasoning_in_no_overlap_2d)
10026 return _internal_use_area_energetic_reasoning_in_no_overlap_2d();
10027}
10029 _internal_set_use_area_energetic_reasoning_in_no_overlap_2d(value);
10030 SetHasBit(_impl_._has_bits_[3], 0x00000080U);
10031 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_area_energetic_reasoning_in_no_overlap_2d)
10032}
10033inline bool SatParameters::_internal_use_area_energetic_reasoning_in_no_overlap_2d() const {
10034 ::google::protobuf::internal::TSanRead(&_impl_);
10035 return _impl_.use_area_energetic_reasoning_in_no_overlap_2d_;
10036}
10037inline void SatParameters::_internal_set_use_area_energetic_reasoning_in_no_overlap_2d(bool value) {
10038 ::google::protobuf::internal::TSanWrite(&_impl_);
10039 _impl_.use_area_energetic_reasoning_in_no_overlap_2d_ = value;
10040}
10041
10042// optional bool use_try_edge_reasoning_in_no_overlap_2d = 299 [default = false];
10044 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00040000U);
10045 return value;
10046}
10048 ::google::protobuf::internal::TSanWrite(&_impl_);
10049 _impl_.use_try_edge_reasoning_in_no_overlap_2d_ = false;
10050 ClearHasBit(_impl_._has_bits_[3],
10051 0x00040000U);
10054 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_try_edge_reasoning_in_no_overlap_2d)
10055 return _internal_use_try_edge_reasoning_in_no_overlap_2d();
10056}
10058 _internal_set_use_try_edge_reasoning_in_no_overlap_2d(value);
10059 SetHasBit(_impl_._has_bits_[3], 0x00040000U);
10060 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_try_edge_reasoning_in_no_overlap_2d)
10061}
10062inline bool SatParameters::_internal_use_try_edge_reasoning_in_no_overlap_2d() const {
10063 ::google::protobuf::internal::TSanRead(&_impl_);
10064 return _impl_.use_try_edge_reasoning_in_no_overlap_2d_;
10065}
10066inline void SatParameters::_internal_set_use_try_edge_reasoning_in_no_overlap_2d(bool value) {
10067 ::google::protobuf::internal::TSanWrite(&_impl_);
10068 _impl_.use_try_edge_reasoning_in_no_overlap_2d_ = value;
10069}
10070
10071// optional int32 max_pairs_pairwise_reasoning_in_no_overlap_2d = 276 [default = 1250];
10073 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000040U);
10074 return value;
10075}
10077 ::google::protobuf::internal::TSanWrite(&_impl_);
10078 _impl_.max_pairs_pairwise_reasoning_in_no_overlap_2d_ = 1250;
10079 ClearHasBit(_impl_._has_bits_[8],
10080 0x00000040U);
10083 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_pairs_pairwise_reasoning_in_no_overlap_2d)
10084 return _internal_max_pairs_pairwise_reasoning_in_no_overlap_2d();
10085}
10087 _internal_set_max_pairs_pairwise_reasoning_in_no_overlap_2d(value);
10088 SetHasBit(_impl_._has_bits_[8], 0x00000040U);
10089 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_pairs_pairwise_reasoning_in_no_overlap_2d)
10090}
10091inline ::int32_t SatParameters::_internal_max_pairs_pairwise_reasoning_in_no_overlap_2d() const {
10092 ::google::protobuf::internal::TSanRead(&_impl_);
10093 return _impl_.max_pairs_pairwise_reasoning_in_no_overlap_2d_;
10094}
10095inline void SatParameters::_internal_set_max_pairs_pairwise_reasoning_in_no_overlap_2d(::int32_t value) {
10096 ::google::protobuf::internal::TSanWrite(&_impl_);
10097 _impl_.max_pairs_pairwise_reasoning_in_no_overlap_2d_ = value;
10098}
10099
10100// optional int32 maximum_regions_to_split_in_disconnected_no_overlap_2d = 315 [default = 0];
10102 bool value = CheckHasBit(_impl_._has_bits_[3], 0x08000000U);
10103 return value;
10104}
10106 ::google::protobuf::internal::TSanWrite(&_impl_);
10107 _impl_.maximum_regions_to_split_in_disconnected_no_overlap_2d_ = 0;
10108 ClearHasBit(_impl_._has_bits_[3],
10109 0x08000000U);
10112 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.maximum_regions_to_split_in_disconnected_no_overlap_2d)
10113 return _internal_maximum_regions_to_split_in_disconnected_no_overlap_2d();
10114}
10116 _internal_set_maximum_regions_to_split_in_disconnected_no_overlap_2d(value);
10117 SetHasBit(_impl_._has_bits_[3], 0x08000000U);
10118 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.maximum_regions_to_split_in_disconnected_no_overlap_2d)
10119}
10120inline ::int32_t SatParameters::_internal_maximum_regions_to_split_in_disconnected_no_overlap_2d() const {
10121 ::google::protobuf::internal::TSanRead(&_impl_);
10122 return _impl_.maximum_regions_to_split_in_disconnected_no_overlap_2d_;
10123}
10124inline void SatParameters::_internal_set_maximum_regions_to_split_in_disconnected_no_overlap_2d(::int32_t value) {
10125 ::google::protobuf::internal::TSanWrite(&_impl_);
10126 _impl_.maximum_regions_to_split_in_disconnected_no_overlap_2d_ = value;
10127}
10128
10129// optional bool use_linear3_for_no_overlap_2d_precedences = 323 [default = true];
10131 bool value = CheckHasBit(_impl_._has_bits_[8], 0x01000000U);
10132 return value;
10133}
10135 ::google::protobuf::internal::TSanWrite(&_impl_);
10136 _impl_.use_linear3_for_no_overlap_2d_precedences_ = true;
10137 ClearHasBit(_impl_._has_bits_[8],
10138 0x01000000U);
10141 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_linear3_for_no_overlap_2d_precedences)
10142 return _internal_use_linear3_for_no_overlap_2d_precedences();
10143}
10145 _internal_set_use_linear3_for_no_overlap_2d_precedences(value);
10146 SetHasBit(_impl_._has_bits_[8], 0x01000000U);
10147 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_linear3_for_no_overlap_2d_precedences)
10148}
10149inline bool SatParameters::_internal_use_linear3_for_no_overlap_2d_precedences() const {
10150 ::google::protobuf::internal::TSanRead(&_impl_);
10151 return _impl_.use_linear3_for_no_overlap_2d_precedences_;
10152}
10153inline void SatParameters::_internal_set_use_linear3_for_no_overlap_2d_precedences(bool value) {
10154 ::google::protobuf::internal::TSanWrite(&_impl_);
10155 _impl_.use_linear3_for_no_overlap_2d_precedences_ = value;
10156}
10157
10158// optional bool use_dual_scheduling_heuristics = 214 [default = true];
10160 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000002U);
10161 return value;
10162}
10164 ::google::protobuf::internal::TSanWrite(&_impl_);
10165 _impl_.use_dual_scheduling_heuristics_ = true;
10166 ClearHasBit(_impl_._has_bits_[7],
10167 0x00000002U);
10170 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_dual_scheduling_heuristics)
10171 return _internal_use_dual_scheduling_heuristics();
10172}
10174 _internal_set_use_dual_scheduling_heuristics(value);
10175 SetHasBit(_impl_._has_bits_[7], 0x00000002U);
10176 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_dual_scheduling_heuristics)
10177}
10178inline bool SatParameters::_internal_use_dual_scheduling_heuristics() const {
10179 ::google::protobuf::internal::TSanRead(&_impl_);
10180 return _impl_.use_dual_scheduling_heuristics_;
10181}
10182inline void SatParameters::_internal_set_use_dual_scheduling_heuristics(bool value) {
10183 ::google::protobuf::internal::TSanWrite(&_impl_);
10184 _impl_.use_dual_scheduling_heuristics_ = value;
10185}
10186
10187// optional bool use_all_different_for_circuit = 311 [default = false];
10189 bool value = CheckHasBit(_impl_._has_bits_[3], 0x01000000U);
10190 return value;
10191}
10193 ::google::protobuf::internal::TSanWrite(&_impl_);
10194 _impl_.use_all_different_for_circuit_ = false;
10195 ClearHasBit(_impl_._has_bits_[3],
10196 0x01000000U);
10199 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_all_different_for_circuit)
10200 return _internal_use_all_different_for_circuit();
10201}
10203 _internal_set_use_all_different_for_circuit(value);
10204 SetHasBit(_impl_._has_bits_[3], 0x01000000U);
10205 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_all_different_for_circuit)
10206}
10207inline bool SatParameters::_internal_use_all_different_for_circuit() const {
10208 ::google::protobuf::internal::TSanRead(&_impl_);
10209 return _impl_.use_all_different_for_circuit_;
10210}
10211inline void SatParameters::_internal_set_use_all_different_for_circuit(bool value) {
10212 ::google::protobuf::internal::TSanWrite(&_impl_);
10213 _impl_.use_all_different_for_circuit_ = value;
10214}
10215
10216// optional int32 routing_cut_subset_size_for_binary_relation_bound = 312 [default = 0];
10218 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00200000U);
10219 return value;
10220}
10222 ::google::protobuf::internal::TSanWrite(&_impl_);
10223 _impl_.routing_cut_subset_size_for_binary_relation_bound_ = 0;
10224 ClearHasBit(_impl_._has_bits_[3],
10225 0x00200000U);
10228 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.routing_cut_subset_size_for_binary_relation_bound)
10229 return _internal_routing_cut_subset_size_for_binary_relation_bound();
10230}
10232 _internal_set_routing_cut_subset_size_for_binary_relation_bound(value);
10233 SetHasBit(_impl_._has_bits_[3], 0x00200000U);
10234 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.routing_cut_subset_size_for_binary_relation_bound)
10235}
10236inline ::int32_t SatParameters::_internal_routing_cut_subset_size_for_binary_relation_bound() const {
10237 ::google::protobuf::internal::TSanRead(&_impl_);
10238 return _impl_.routing_cut_subset_size_for_binary_relation_bound_;
10239}
10240inline void SatParameters::_internal_set_routing_cut_subset_size_for_binary_relation_bound(::int32_t value) {
10241 ::google::protobuf::internal::TSanWrite(&_impl_);
10242 _impl_.routing_cut_subset_size_for_binary_relation_bound_ = value;
10243}
10244
10245// optional int32 routing_cut_subset_size_for_tight_binary_relation_bound = 313 [default = 0];
10247 bool value = CheckHasBit(_impl_._has_bits_[3], 0x04000000U);
10248 return value;
10249}
10251 ::google::protobuf::internal::TSanWrite(&_impl_);
10252 _impl_.routing_cut_subset_size_for_tight_binary_relation_bound_ = 0;
10253 ClearHasBit(_impl_._has_bits_[3],
10254 0x04000000U);
10257 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.routing_cut_subset_size_for_tight_binary_relation_bound)
10258 return _internal_routing_cut_subset_size_for_tight_binary_relation_bound();
10259}
10261 _internal_set_routing_cut_subset_size_for_tight_binary_relation_bound(value);
10262 SetHasBit(_impl_._has_bits_[3], 0x04000000U);
10263 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.routing_cut_subset_size_for_tight_binary_relation_bound)
10264}
10265inline ::int32_t SatParameters::_internal_routing_cut_subset_size_for_tight_binary_relation_bound() const {
10266 ::google::protobuf::internal::TSanRead(&_impl_);
10267 return _impl_.routing_cut_subset_size_for_tight_binary_relation_bound_;
10268}
10269inline void SatParameters::_internal_set_routing_cut_subset_size_for_tight_binary_relation_bound(::int32_t value) {
10270 ::google::protobuf::internal::TSanWrite(&_impl_);
10271 _impl_.routing_cut_subset_size_for_tight_binary_relation_bound_ = value;
10272}
10273
10274// optional int32 routing_cut_subset_size_for_exact_binary_relation_bound = 316 [default = 8];
10276 bool value = CheckHasBit(_impl_._has_bits_[8], 0x02000000U);
10277 return value;
10278}
10280 ::google::protobuf::internal::TSanWrite(&_impl_);
10281 _impl_.routing_cut_subset_size_for_exact_binary_relation_bound_ = 8;
10282 ClearHasBit(_impl_._has_bits_[8],
10283 0x02000000U);
10286 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.routing_cut_subset_size_for_exact_binary_relation_bound)
10287 return _internal_routing_cut_subset_size_for_exact_binary_relation_bound();
10288}
10290 _internal_set_routing_cut_subset_size_for_exact_binary_relation_bound(value);
10291 SetHasBit(_impl_._has_bits_[8], 0x02000000U);
10292 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.routing_cut_subset_size_for_exact_binary_relation_bound)
10293}
10294inline ::int32_t SatParameters::_internal_routing_cut_subset_size_for_exact_binary_relation_bound() const {
10295 ::google::protobuf::internal::TSanRead(&_impl_);
10296 return _impl_.routing_cut_subset_size_for_exact_binary_relation_bound_;
10297}
10298inline void SatParameters::_internal_set_routing_cut_subset_size_for_exact_binary_relation_bound(::int32_t value) {
10299 ::google::protobuf::internal::TSanWrite(&_impl_);
10300 _impl_.routing_cut_subset_size_for_exact_binary_relation_bound_ = value;
10301}
10302
10303// optional int32 routing_cut_subset_size_for_shortest_paths_bound = 318 [default = 8];
10305 bool value = CheckHasBit(_impl_._has_bits_[8], 0x10000000U);
10306 return value;
10307}
10309 ::google::protobuf::internal::TSanWrite(&_impl_);
10310 _impl_.routing_cut_subset_size_for_shortest_paths_bound_ = 8;
10311 ClearHasBit(_impl_._has_bits_[8],
10312 0x10000000U);
10315 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.routing_cut_subset_size_for_shortest_paths_bound)
10316 return _internal_routing_cut_subset_size_for_shortest_paths_bound();
10317}
10319 _internal_set_routing_cut_subset_size_for_shortest_paths_bound(value);
10320 SetHasBit(_impl_._has_bits_[8], 0x10000000U);
10321 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.routing_cut_subset_size_for_shortest_paths_bound)
10322}
10323inline ::int32_t SatParameters::_internal_routing_cut_subset_size_for_shortest_paths_bound() const {
10324 ::google::protobuf::internal::TSanRead(&_impl_);
10325 return _impl_.routing_cut_subset_size_for_shortest_paths_bound_;
10326}
10327inline void SatParameters::_internal_set_routing_cut_subset_size_for_shortest_paths_bound(::int32_t value) {
10328 ::google::protobuf::internal::TSanWrite(&_impl_);
10329 _impl_.routing_cut_subset_size_for_shortest_paths_bound_ = value;
10330}
10331
10332// optional double routing_cut_dp_effort = 314 [default = 10000000];
10333inline bool SatParameters::has_routing_cut_dp_effort() const {
10334 bool value = CheckHasBit(_impl_._has_bits_[8], 0x04000000U);
10335 return value;
10336}
10338 ::google::protobuf::internal::TSanWrite(&_impl_);
10339 _impl_.routing_cut_dp_effort_ = 10000000;
10340 ClearHasBit(_impl_._has_bits_[8],
10341 0x04000000U);
10343inline double SatParameters::routing_cut_dp_effort() const {
10344 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.routing_cut_dp_effort)
10345 return _internal_routing_cut_dp_effort();
10346}
10347inline void SatParameters::set_routing_cut_dp_effort(double value) {
10348 _internal_set_routing_cut_dp_effort(value);
10349 SetHasBit(_impl_._has_bits_[8], 0x04000000U);
10350 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.routing_cut_dp_effort)
10351}
10352inline double SatParameters::_internal_routing_cut_dp_effort() const {
10353 ::google::protobuf::internal::TSanRead(&_impl_);
10354 return _impl_.routing_cut_dp_effort_;
10355}
10356inline void SatParameters::_internal_set_routing_cut_dp_effort(double value) {
10357 ::google::protobuf::internal::TSanWrite(&_impl_);
10358 _impl_.routing_cut_dp_effort_ = value;
10359}
10360
10361// optional int32 routing_cut_max_infeasible_path_length = 317 [default = 6];
10363 bool value = CheckHasBit(_impl_._has_bits_[8], 0x08000000U);
10364 return value;
10365}
10367 ::google::protobuf::internal::TSanWrite(&_impl_);
10368 _impl_.routing_cut_max_infeasible_path_length_ = 6;
10369 ClearHasBit(_impl_._has_bits_[8],
10370 0x08000000U);
10373 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.routing_cut_max_infeasible_path_length)
10374 return _internal_routing_cut_max_infeasible_path_length();
10375}
10377 _internal_set_routing_cut_max_infeasible_path_length(value);
10378 SetHasBit(_impl_._has_bits_[8], 0x08000000U);
10379 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.routing_cut_max_infeasible_path_length)
10380}
10381inline ::int32_t SatParameters::_internal_routing_cut_max_infeasible_path_length() const {
10382 ::google::protobuf::internal::TSanRead(&_impl_);
10383 return _impl_.routing_cut_max_infeasible_path_length_;
10384}
10385inline void SatParameters::_internal_set_routing_cut_max_infeasible_path_length(::int32_t value) {
10386 ::google::protobuf::internal::TSanWrite(&_impl_);
10387 _impl_.routing_cut_max_infeasible_path_length_ = value;
10388}
10389
10390// optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];
10391inline bool SatParameters::has_search_branching() const {
10392 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00002000U);
10393 return value;
10394}
10396 ::google::protobuf::internal::TSanWrite(&_impl_);
10397 _impl_.search_branching_ = 0;
10398 ClearHasBit(_impl_._has_bits_[1],
10399 0x00002000U);
10401inline ::operations_research::sat::SatParameters_SearchBranching SatParameters::search_branching() const {
10402 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.search_branching)
10403 return _internal_search_branching();
10404}
10406 _internal_set_search_branching(value);
10407 SetHasBit(_impl_._has_bits_[1], 0x00002000U);
10408 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.search_branching)
10409}
10410inline ::operations_research::sat::SatParameters_SearchBranching SatParameters::_internal_search_branching() const {
10411 ::google::protobuf::internal::TSanRead(&_impl_);
10412 return static_cast<::operations_research::sat::SatParameters_SearchBranching>(_impl_.search_branching_);
10413}
10414inline void SatParameters::_internal_set_search_branching(::operations_research::sat::SatParameters_SearchBranching value) {
10415 ::google::protobuf::internal::TSanWrite(&_impl_);
10416
10417 assert(::google::protobuf::internal::ValidateEnum(
10419 _impl_.search_branching_ = value;
10420}
10421
10422// optional int32 hint_conflict_limit = 153 [default = 10];
10423inline bool SatParameters::has_hint_conflict_limit() const {
10424 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000080U);
10425 return value;
10426}
10428 ::google::protobuf::internal::TSanWrite(&_impl_);
10429 _impl_.hint_conflict_limit_ = 10;
10430 ClearHasBit(_impl_._has_bits_[6],
10431 0x00000080U);
10433inline ::int32_t SatParameters::hint_conflict_limit() const {
10434 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.hint_conflict_limit)
10435 return _internal_hint_conflict_limit();
10436}
10437inline void SatParameters::set_hint_conflict_limit(::int32_t value) {
10438 _internal_set_hint_conflict_limit(value);
10439 SetHasBit(_impl_._has_bits_[6], 0x00000080U);
10440 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.hint_conflict_limit)
10441}
10442inline ::int32_t SatParameters::_internal_hint_conflict_limit() const {
10443 ::google::protobuf::internal::TSanRead(&_impl_);
10444 return _impl_.hint_conflict_limit_;
10445}
10446inline void SatParameters::_internal_set_hint_conflict_limit(::int32_t value) {
10447 ::google::protobuf::internal::TSanWrite(&_impl_);
10448 _impl_.hint_conflict_limit_ = value;
10449}
10450
10451// optional bool repair_hint = 167 [default = false];
10452inline bool SatParameters::has_repair_hint() const {
10453 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000004U);
10454 return value;
10455}
10457 ::google::protobuf::internal::TSanWrite(&_impl_);
10458 _impl_.repair_hint_ = false;
10459 ClearHasBit(_impl_._has_bits_[2],
10460 0x00000004U);
10462inline bool SatParameters::repair_hint() const {
10463 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.repair_hint)
10464 return _internal_repair_hint();
10465}
10466inline void SatParameters::set_repair_hint(bool value) {
10467 _internal_set_repair_hint(value);
10468 SetHasBit(_impl_._has_bits_[2], 0x00000004U);
10469 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.repair_hint)
10470}
10471inline bool SatParameters::_internal_repair_hint() const {
10472 ::google::protobuf::internal::TSanRead(&_impl_);
10473 return _impl_.repair_hint_;
10474}
10475inline void SatParameters::_internal_set_repair_hint(bool value) {
10476 ::google::protobuf::internal::TSanWrite(&_impl_);
10477 _impl_.repair_hint_ = value;
10478}
10479
10480// optional bool fix_variables_to_their_hinted_value = 192 [default = false];
10482 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00008000U);
10483 return value;
10484}
10486 ::google::protobuf::internal::TSanWrite(&_impl_);
10487 _impl_.fix_variables_to_their_hinted_value_ = false;
10488 ClearHasBit(_impl_._has_bits_[2],
10489 0x00008000U);
10492 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fix_variables_to_their_hinted_value)
10493 return _internal_fix_variables_to_their_hinted_value();
10494}
10496 _internal_set_fix_variables_to_their_hinted_value(value);
10497 SetHasBit(_impl_._has_bits_[2], 0x00008000U);
10498 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fix_variables_to_their_hinted_value)
10499}
10500inline bool SatParameters::_internal_fix_variables_to_their_hinted_value() const {
10501 ::google::protobuf::internal::TSanRead(&_impl_);
10502 return _impl_.fix_variables_to_their_hinted_value_;
10503}
10504inline void SatParameters::_internal_set_fix_variables_to_their_hinted_value(bool value) {
10505 ::google::protobuf::internal::TSanWrite(&_impl_);
10506 _impl_.fix_variables_to_their_hinted_value_ = value;
10507}
10508
10509// optional bool use_probing_search = 176 [default = false];
10510inline bool SatParameters::has_use_probing_search() const {
10511 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000080U);
10512 return value;
10513}
10515 ::google::protobuf::internal::TSanWrite(&_impl_);
10516 _impl_.use_probing_search_ = false;
10517 ClearHasBit(_impl_._has_bits_[2],
10518 0x00000080U);
10520inline bool SatParameters::use_probing_search() const {
10521 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_probing_search)
10522 return _internal_use_probing_search();
10523}
10524inline void SatParameters::set_use_probing_search(bool value) {
10525 _internal_set_use_probing_search(value);
10526 SetHasBit(_impl_._has_bits_[2], 0x00000080U);
10527 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_probing_search)
10528}
10529inline bool SatParameters::_internal_use_probing_search() const {
10530 ::google::protobuf::internal::TSanRead(&_impl_);
10531 return _impl_.use_probing_search_;
10532}
10533inline void SatParameters::_internal_set_use_probing_search(bool value) {
10534 ::google::protobuf::internal::TSanWrite(&_impl_);
10535 _impl_.use_probing_search_ = value;
10536}
10537
10538// optional bool use_extended_probing = 269 [default = true];
10539inline bool SatParameters::has_use_extended_probing() const {
10540 bool value = CheckHasBit(_impl_._has_bits_[7], 0x40000000U);
10541 return value;
10542}
10544 ::google::protobuf::internal::TSanWrite(&_impl_);
10545 _impl_.use_extended_probing_ = true;
10546 ClearHasBit(_impl_._has_bits_[7],
10547 0x40000000U);
10549inline bool SatParameters::use_extended_probing() const {
10550 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_extended_probing)
10551 return _internal_use_extended_probing();
10552}
10553inline void SatParameters::set_use_extended_probing(bool value) {
10554 _internal_set_use_extended_probing(value);
10555 SetHasBit(_impl_._has_bits_[7], 0x40000000U);
10556 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_extended_probing)
10557}
10558inline bool SatParameters::_internal_use_extended_probing() const {
10559 ::google::protobuf::internal::TSanRead(&_impl_);
10560 return _impl_.use_extended_probing_;
10561}
10562inline void SatParameters::_internal_set_use_extended_probing(bool value) {
10563 ::google::protobuf::internal::TSanWrite(&_impl_);
10564 _impl_.use_extended_probing_ = value;
10565}
10566
10567// optional int32 probing_num_combinations_limit = 272 [default = 20000];
10569 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000004U);
10570 return value;
10571}
10573 ::google::protobuf::internal::TSanWrite(&_impl_);
10574 _impl_.probing_num_combinations_limit_ = 20000;
10575 ClearHasBit(_impl_._has_bits_[8],
10576 0x00000004U);
10578inline ::int32_t SatParameters::probing_num_combinations_limit() const {
10579 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.probing_num_combinations_limit)
10580 return _internal_probing_num_combinations_limit();
10581}
10582inline void SatParameters::set_probing_num_combinations_limit(::int32_t value) {
10583 _internal_set_probing_num_combinations_limit(value);
10584 SetHasBit(_impl_._has_bits_[8], 0x00000004U);
10585 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.probing_num_combinations_limit)
10586}
10587inline ::int32_t SatParameters::_internal_probing_num_combinations_limit() const {
10588 ::google::protobuf::internal::TSanRead(&_impl_);
10589 return _impl_.probing_num_combinations_limit_;
10590}
10591inline void SatParameters::_internal_set_probing_num_combinations_limit(::int32_t value) {
10592 ::google::protobuf::internal::TSanWrite(&_impl_);
10593 _impl_.probing_num_combinations_limit_ = value;
10594}
10595
10596// optional double shaving_deterministic_time_in_probing_search = 204 [default = 0.001];
10598 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000004U);
10599 return value;
10600}
10602 ::google::protobuf::internal::TSanWrite(&_impl_);
10603 _impl_.shaving_deterministic_time_in_probing_search_ = 0.001;
10604 ClearHasBit(_impl_._has_bits_[7],
10605 0x00000004U);
10608 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shaving_deterministic_time_in_probing_search)
10609 return _internal_shaving_deterministic_time_in_probing_search();
10610}
10612 _internal_set_shaving_deterministic_time_in_probing_search(value);
10613 SetHasBit(_impl_._has_bits_[7], 0x00000004U);
10614 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shaving_deterministic_time_in_probing_search)
10615}
10616inline double SatParameters::_internal_shaving_deterministic_time_in_probing_search() const {
10617 ::google::protobuf::internal::TSanRead(&_impl_);
10618 return _impl_.shaving_deterministic_time_in_probing_search_;
10619}
10620inline void SatParameters::_internal_set_shaving_deterministic_time_in_probing_search(double value) {
10621 ::google::protobuf::internal::TSanWrite(&_impl_);
10622 _impl_.shaving_deterministic_time_in_probing_search_ = value;
10623}
10624
10625// optional double shaving_search_deterministic_time = 205 [default = 0.1];
10627 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000008U);
10628 return value;
10629}
10631 ::google::protobuf::internal::TSanWrite(&_impl_);
10632 _impl_.shaving_search_deterministic_time_ = 0.1;
10633 ClearHasBit(_impl_._has_bits_[7],
10634 0x00000008U);
10637 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shaving_search_deterministic_time)
10638 return _internal_shaving_search_deterministic_time();
10639}
10641 _internal_set_shaving_search_deterministic_time(value);
10642 SetHasBit(_impl_._has_bits_[7], 0x00000008U);
10643 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shaving_search_deterministic_time)
10644}
10645inline double SatParameters::_internal_shaving_search_deterministic_time() const {
10646 ::google::protobuf::internal::TSanRead(&_impl_);
10647 return _impl_.shaving_search_deterministic_time_;
10648}
10649inline void SatParameters::_internal_set_shaving_search_deterministic_time(double value) {
10650 ::google::protobuf::internal::TSanWrite(&_impl_);
10651 _impl_.shaving_search_deterministic_time_ = value;
10652}
10653
10654// optional int64 shaving_search_threshold = 290 [default = 64];
10656 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00004000U);
10657 return value;
10658}
10660 ::google::protobuf::internal::TSanWrite(&_impl_);
10661 _impl_.shaving_search_threshold_ = ::int64_t{64};
10662 ClearHasBit(_impl_._has_bits_[8],
10663 0x00004000U);
10665inline ::int64_t SatParameters::shaving_search_threshold() const {
10666 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shaving_search_threshold)
10667 return _internal_shaving_search_threshold();
10668}
10669inline void SatParameters::set_shaving_search_threshold(::int64_t value) {
10670 _internal_set_shaving_search_threshold(value);
10671 SetHasBit(_impl_._has_bits_[8], 0x00004000U);
10672 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shaving_search_threshold)
10673}
10674inline ::int64_t SatParameters::_internal_shaving_search_threshold() const {
10675 ::google::protobuf::internal::TSanRead(&_impl_);
10676 return _impl_.shaving_search_threshold_;
10677}
10678inline void SatParameters::_internal_set_shaving_search_threshold(::int64_t value) {
10679 ::google::protobuf::internal::TSanWrite(&_impl_);
10680 _impl_.shaving_search_threshold_ = value;
10681}
10682
10683// optional bool use_objective_lb_search = 228 [default = false];
10685 bool value = CheckHasBit(_impl_._has_bits_[2], 0x10000000U);
10686 return value;
10687}
10689 ::google::protobuf::internal::TSanWrite(&_impl_);
10690 _impl_.use_objective_lb_search_ = false;
10691 ClearHasBit(_impl_._has_bits_[2],
10692 0x10000000U);
10694inline bool SatParameters::use_objective_lb_search() const {
10695 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_objective_lb_search)
10696 return _internal_use_objective_lb_search();
10697}
10698inline void SatParameters::set_use_objective_lb_search(bool value) {
10699 _internal_set_use_objective_lb_search(value);
10700 SetHasBit(_impl_._has_bits_[2], 0x10000000U);
10701 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_objective_lb_search)
10702}
10703inline bool SatParameters::_internal_use_objective_lb_search() const {
10704 ::google::protobuf::internal::TSanRead(&_impl_);
10705 return _impl_.use_objective_lb_search_;
10706}
10707inline void SatParameters::_internal_set_use_objective_lb_search(bool value) {
10708 ::google::protobuf::internal::TSanWrite(&_impl_);
10709 _impl_.use_objective_lb_search_ = value;
10710}
10711
10712// optional bool use_objective_shaving_search = 253 [default = false];
10714 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000008U);
10715 return value;
10716}
10718 ::google::protobuf::internal::TSanWrite(&_impl_);
10719 _impl_.use_objective_shaving_search_ = false;
10720 ClearHasBit(_impl_._has_bits_[3],
10721 0x00000008U);
10724 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_objective_shaving_search)
10725 return _internal_use_objective_shaving_search();
10726}
10728 _internal_set_use_objective_shaving_search(value);
10729 SetHasBit(_impl_._has_bits_[3], 0x00000008U);
10730 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_objective_shaving_search)
10731}
10732inline bool SatParameters::_internal_use_objective_shaving_search() const {
10733 ::google::protobuf::internal::TSanRead(&_impl_);
10734 return _impl_.use_objective_shaving_search_;
10735}
10736inline void SatParameters::_internal_set_use_objective_shaving_search(bool value) {
10737 ::google::protobuf::internal::TSanWrite(&_impl_);
10738 _impl_.use_objective_shaving_search_ = value;
10739}
10740
10741// optional int32 variables_shaving_level = 289 [default = -1];
10743 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000200U);
10744 return value;
10745}
10747 ::google::protobuf::internal::TSanWrite(&_impl_);
10748 _impl_.variables_shaving_level_ = -1;
10749 ClearHasBit(_impl_._has_bits_[8],
10750 0x00000200U);
10752inline ::int32_t SatParameters::variables_shaving_level() const {
10753 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.variables_shaving_level)
10754 return _internal_variables_shaving_level();
10755}
10756inline void SatParameters::set_variables_shaving_level(::int32_t value) {
10757 _internal_set_variables_shaving_level(value);
10758 SetHasBit(_impl_._has_bits_[8], 0x00000200U);
10759 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.variables_shaving_level)
10760}
10761inline ::int32_t SatParameters::_internal_variables_shaving_level() const {
10762 ::google::protobuf::internal::TSanRead(&_impl_);
10763 return _impl_.variables_shaving_level_;
10764}
10765inline void SatParameters::_internal_set_variables_shaving_level(::int32_t value) {
10766 ::google::protobuf::internal::TSanWrite(&_impl_);
10767 _impl_.variables_shaving_level_ = value;
10768}
10769
10770// optional int64 pseudo_cost_reliability_threshold = 123 [default = 100];
10772 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00800000U);
10773 return value;
10774}
10776 ::google::protobuf::internal::TSanWrite(&_impl_);
10777 _impl_.pseudo_cost_reliability_threshold_ = ::int64_t{100};
10778 ClearHasBit(_impl_._has_bits_[5],
10779 0x00800000U);
10781inline ::int64_t SatParameters::pseudo_cost_reliability_threshold() const {
10782 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.pseudo_cost_reliability_threshold)
10783 return _internal_pseudo_cost_reliability_threshold();
10784}
10785inline void SatParameters::set_pseudo_cost_reliability_threshold(::int64_t value) {
10786 _internal_set_pseudo_cost_reliability_threshold(value);
10787 SetHasBit(_impl_._has_bits_[5], 0x00800000U);
10788 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.pseudo_cost_reliability_threshold)
10789}
10790inline ::int64_t SatParameters::_internal_pseudo_cost_reliability_threshold() const {
10791 ::google::protobuf::internal::TSanRead(&_impl_);
10792 return _impl_.pseudo_cost_reliability_threshold_;
10793}
10794inline void SatParameters::_internal_set_pseudo_cost_reliability_threshold(::int64_t value) {
10795 ::google::protobuf::internal::TSanWrite(&_impl_);
10796 _impl_.pseudo_cost_reliability_threshold_ = value;
10797}
10798
10799// optional bool optimize_with_core = 83 [default = false];
10800inline bool SatParameters::has_optimize_with_core() const {
10801 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00001000U);
10802 return value;
10803}
10805 ::google::protobuf::internal::TSanWrite(&_impl_);
10806 _impl_.optimize_with_core_ = false;
10807 ClearHasBit(_impl_._has_bits_[1],
10808 0x00001000U);
10810inline bool SatParameters::optimize_with_core() const {
10811 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.optimize_with_core)
10812 return _internal_optimize_with_core();
10813}
10814inline void SatParameters::set_optimize_with_core(bool value) {
10815 _internal_set_optimize_with_core(value);
10816 SetHasBit(_impl_._has_bits_[1], 0x00001000U);
10817 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.optimize_with_core)
10818}
10819inline bool SatParameters::_internal_optimize_with_core() const {
10820 ::google::protobuf::internal::TSanRead(&_impl_);
10821 return _impl_.optimize_with_core_;
10822}
10823inline void SatParameters::_internal_set_optimize_with_core(bool value) {
10824 ::google::protobuf::internal::TSanWrite(&_impl_);
10825 _impl_.optimize_with_core_ = value;
10826}
10827
10828// optional bool optimize_with_lb_tree_search = 188 [default = false];
10830 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00002000U);
10831 return value;
10832}
10834 ::google::protobuf::internal::TSanWrite(&_impl_);
10835 _impl_.optimize_with_lb_tree_search_ = false;
10836 ClearHasBit(_impl_._has_bits_[2],
10837 0x00002000U);
10840 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.optimize_with_lb_tree_search)
10841 return _internal_optimize_with_lb_tree_search();
10842}
10844 _internal_set_optimize_with_lb_tree_search(value);
10845 SetHasBit(_impl_._has_bits_[2], 0x00002000U);
10846 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.optimize_with_lb_tree_search)
10847}
10848inline bool SatParameters::_internal_optimize_with_lb_tree_search() const {
10849 ::google::protobuf::internal::TSanRead(&_impl_);
10850 return _impl_.optimize_with_lb_tree_search_;
10851}
10852inline void SatParameters::_internal_set_optimize_with_lb_tree_search(bool value) {
10853 ::google::protobuf::internal::TSanWrite(&_impl_);
10854 _impl_.optimize_with_lb_tree_search_ = value;
10855}
10856
10857// optional bool save_lp_basis_in_lb_tree_search = 284 [default = false];
10859 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000800U);
10860 return value;
10861}
10863 ::google::protobuf::internal::TSanWrite(&_impl_);
10864 _impl_.save_lp_basis_in_lb_tree_search_ = false;
10865 ClearHasBit(_impl_._has_bits_[3],
10866 0x00000800U);
10869 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.save_lp_basis_in_lb_tree_search)
10870 return _internal_save_lp_basis_in_lb_tree_search();
10871}
10873 _internal_set_save_lp_basis_in_lb_tree_search(value);
10874 SetHasBit(_impl_._has_bits_[3], 0x00000800U);
10875 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.save_lp_basis_in_lb_tree_search)
10876}
10877inline bool SatParameters::_internal_save_lp_basis_in_lb_tree_search() const {
10878 ::google::protobuf::internal::TSanRead(&_impl_);
10879 return _impl_.save_lp_basis_in_lb_tree_search_;
10880}
10881inline void SatParameters::_internal_set_save_lp_basis_in_lb_tree_search(bool value) {
10882 ::google::protobuf::internal::TSanWrite(&_impl_);
10883 _impl_.save_lp_basis_in_lb_tree_search_ = value;
10884}
10885
10886// optional int32 binary_search_num_conflicts = 99 [default = -1];
10888 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000200U);
10889 return value;
10890}
10892 ::google::protobuf::internal::TSanWrite(&_impl_);
10893 _impl_.binary_search_num_conflicts_ = -1;
10894 ClearHasBit(_impl_._has_bits_[5],
10895 0x00000200U);
10897inline ::int32_t SatParameters::binary_search_num_conflicts() const {
10898 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.binary_search_num_conflicts)
10899 return _internal_binary_search_num_conflicts();
10900}
10901inline void SatParameters::set_binary_search_num_conflicts(::int32_t value) {
10902 _internal_set_binary_search_num_conflicts(value);
10903 SetHasBit(_impl_._has_bits_[5], 0x00000200U);
10904 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.binary_search_num_conflicts)
10905}
10906inline ::int32_t SatParameters::_internal_binary_search_num_conflicts() const {
10907 ::google::protobuf::internal::TSanRead(&_impl_);
10908 return _impl_.binary_search_num_conflicts_;
10909}
10910inline void SatParameters::_internal_set_binary_search_num_conflicts(::int32_t value) {
10911 ::google::protobuf::internal::TSanWrite(&_impl_);
10912 _impl_.binary_search_num_conflicts_ = value;
10913}
10914
10915// optional bool optimize_with_max_hs = 85 [default = false];
10916inline bool SatParameters::has_optimize_with_max_hs() const {
10917 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00004000U);
10918 return value;
10919}
10921 ::google::protobuf::internal::TSanWrite(&_impl_);
10922 _impl_.optimize_with_max_hs_ = false;
10923 ClearHasBit(_impl_._has_bits_[1],
10924 0x00004000U);
10926inline bool SatParameters::optimize_with_max_hs() const {
10927 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.optimize_with_max_hs)
10928 return _internal_optimize_with_max_hs();
10929}
10930inline void SatParameters::set_optimize_with_max_hs(bool value) {
10931 _internal_set_optimize_with_max_hs(value);
10932 SetHasBit(_impl_._has_bits_[1], 0x00004000U);
10933 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.optimize_with_max_hs)
10934}
10935inline bool SatParameters::_internal_optimize_with_max_hs() const {
10936 ::google::protobuf::internal::TSanRead(&_impl_);
10937 return _impl_.optimize_with_max_hs_;
10938}
10939inline void SatParameters::_internal_set_optimize_with_max_hs(bool value) {
10940 ::google::protobuf::internal::TSanWrite(&_impl_);
10941 _impl_.optimize_with_max_hs_ = value;
10942}
10943
10944// optional bool use_feasibility_jump = 265 [default = true];
10945inline bool SatParameters::has_use_feasibility_jump() const {
10946 bool value = CheckHasBit(_impl_._has_bits_[7], 0x20000000U);
10947 return value;
10948}
10950 ::google::protobuf::internal::TSanWrite(&_impl_);
10951 _impl_.use_feasibility_jump_ = true;
10952 ClearHasBit(_impl_._has_bits_[7],
10953 0x20000000U);
10955inline bool SatParameters::use_feasibility_jump() const {
10956 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_feasibility_jump)
10957 return _internal_use_feasibility_jump();
10958}
10959inline void SatParameters::set_use_feasibility_jump(bool value) {
10960 _internal_set_use_feasibility_jump(value);
10961 SetHasBit(_impl_._has_bits_[7], 0x20000000U);
10962 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_feasibility_jump)
10963}
10964inline bool SatParameters::_internal_use_feasibility_jump() const {
10965 ::google::protobuf::internal::TSanRead(&_impl_);
10966 return _impl_.use_feasibility_jump_;
10967}
10968inline void SatParameters::_internal_set_use_feasibility_jump(bool value) {
10969 ::google::protobuf::internal::TSanWrite(&_impl_);
10970 _impl_.use_feasibility_jump_ = value;
10971}
10972
10973// optional bool use_ls_only = 240 [default = false];
10974inline bool SatParameters::has_use_ls_only() const {
10975 bool value = CheckHasBit(_impl_._has_bits_[2], 0x80000000U);
10976 return value;
10977}
10979 ::google::protobuf::internal::TSanWrite(&_impl_);
10980 _impl_.use_ls_only_ = false;
10981 ClearHasBit(_impl_._has_bits_[2],
10982 0x80000000U);
10984inline bool SatParameters::use_ls_only() const {
10985 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_ls_only)
10986 return _internal_use_ls_only();
10987}
10988inline void SatParameters::set_use_ls_only(bool value) {
10989 _internal_set_use_ls_only(value);
10990 SetHasBit(_impl_._has_bits_[2], 0x80000000U);
10991 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_ls_only)
10992}
10993inline bool SatParameters::_internal_use_ls_only() const {
10994 ::google::protobuf::internal::TSanRead(&_impl_);
10995 return _impl_.use_ls_only_;
10996}
10997inline void SatParameters::_internal_set_use_ls_only(bool value) {
10998 ::google::protobuf::internal::TSanWrite(&_impl_);
10999 _impl_.use_ls_only_ = value;
11000}
11001
11002// optional double feasibility_jump_decay = 242 [default = 0.95];
11004 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00010000U);
11005 return value;
11006}
11008 ::google::protobuf::internal::TSanWrite(&_impl_);
11009 _impl_.feasibility_jump_decay_ = 0.95;
11010 ClearHasBit(_impl_._has_bits_[7],
11011 0x00010000U);
11013inline double SatParameters::feasibility_jump_decay() const {
11014 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_decay)
11015 return _internal_feasibility_jump_decay();
11016}
11017inline void SatParameters::set_feasibility_jump_decay(double value) {
11018 _internal_set_feasibility_jump_decay(value);
11019 SetHasBit(_impl_._has_bits_[7], 0x00010000U);
11020 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_decay)
11021}
11022inline double SatParameters::_internal_feasibility_jump_decay() const {
11023 ::google::protobuf::internal::TSanRead(&_impl_);
11024 return _impl_.feasibility_jump_decay_;
11025}
11026inline void SatParameters::_internal_set_feasibility_jump_decay(double value) {
11027 ::google::protobuf::internal::TSanWrite(&_impl_);
11028 _impl_.feasibility_jump_decay_ = value;
11029}
11030
11031// optional int32 feasibility_jump_linearization_level = 257 [default = 2];
11033 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00200000U);
11034 return value;
11035}
11037 ::google::protobuf::internal::TSanWrite(&_impl_);
11038 _impl_.feasibility_jump_linearization_level_ = 2;
11039 ClearHasBit(_impl_._has_bits_[7],
11040 0x00200000U);
11043 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_linearization_level)
11044 return _internal_feasibility_jump_linearization_level();
11045}
11047 _internal_set_feasibility_jump_linearization_level(value);
11048 SetHasBit(_impl_._has_bits_[7], 0x00200000U);
11049 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_linearization_level)
11050}
11051inline ::int32_t SatParameters::_internal_feasibility_jump_linearization_level() const {
11052 ::google::protobuf::internal::TSanRead(&_impl_);
11053 return _impl_.feasibility_jump_linearization_level_;
11054}
11055inline void SatParameters::_internal_set_feasibility_jump_linearization_level(::int32_t value) {
11056 ::google::protobuf::internal::TSanWrite(&_impl_);
11057 _impl_.feasibility_jump_linearization_level_ = value;
11058}
11059
11060// optional int32 feasibility_jump_restart_factor = 258 [default = 1];
11062 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00400000U);
11063 return value;
11064}
11066 ::google::protobuf::internal::TSanWrite(&_impl_);
11067 _impl_.feasibility_jump_restart_factor_ = 1;
11068 ClearHasBit(_impl_._has_bits_[7],
11069 0x00400000U);
11071inline ::int32_t SatParameters::feasibility_jump_restart_factor() const {
11072 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_restart_factor)
11073 return _internal_feasibility_jump_restart_factor();
11074}
11075inline void SatParameters::set_feasibility_jump_restart_factor(::int32_t value) {
11076 _internal_set_feasibility_jump_restart_factor(value);
11077 SetHasBit(_impl_._has_bits_[7], 0x00400000U);
11078 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_restart_factor)
11079}
11080inline ::int32_t SatParameters::_internal_feasibility_jump_restart_factor() const {
11081 ::google::protobuf::internal::TSanRead(&_impl_);
11082 return _impl_.feasibility_jump_restart_factor_;
11083}
11084inline void SatParameters::_internal_set_feasibility_jump_restart_factor(::int32_t value) {
11085 ::google::protobuf::internal::TSanWrite(&_impl_);
11086 _impl_.feasibility_jump_restart_factor_ = value;
11087}
11088
11089// optional double feasibility_jump_batch_dtime = 292 [default = 0.1];
11091 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00008000U);
11092 return value;
11093}
11095 ::google::protobuf::internal::TSanWrite(&_impl_);
11096 _impl_.feasibility_jump_batch_dtime_ = 0.1;
11097 ClearHasBit(_impl_._has_bits_[8],
11098 0x00008000U);
11100inline double SatParameters::feasibility_jump_batch_dtime() const {
11101 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_batch_dtime)
11102 return _internal_feasibility_jump_batch_dtime();
11103}
11104inline void SatParameters::set_feasibility_jump_batch_dtime(double value) {
11105 _internal_set_feasibility_jump_batch_dtime(value);
11106 SetHasBit(_impl_._has_bits_[8], 0x00008000U);
11107 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_batch_dtime)
11108}
11109inline double SatParameters::_internal_feasibility_jump_batch_dtime() const {
11110 ::google::protobuf::internal::TSanRead(&_impl_);
11111 return _impl_.feasibility_jump_batch_dtime_;
11112}
11113inline void SatParameters::_internal_set_feasibility_jump_batch_dtime(double value) {
11114 ::google::protobuf::internal::TSanWrite(&_impl_);
11115 _impl_.feasibility_jump_batch_dtime_ = value;
11116}
11117
11118// optional double feasibility_jump_var_randomization_probability = 247 [default = 0.05];
11120 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00020000U);
11121 return value;
11122}
11124 ::google::protobuf::internal::TSanWrite(&_impl_);
11125 _impl_.feasibility_jump_var_randomization_probability_ = 0.05;
11126 ClearHasBit(_impl_._has_bits_[7],
11127 0x00020000U);
11130 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_var_randomization_probability)
11131 return _internal_feasibility_jump_var_randomization_probability();
11132}
11134 _internal_set_feasibility_jump_var_randomization_probability(value);
11135 SetHasBit(_impl_._has_bits_[7], 0x00020000U);
11136 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_var_randomization_probability)
11137}
11138inline double SatParameters::_internal_feasibility_jump_var_randomization_probability() const {
11139 ::google::protobuf::internal::TSanRead(&_impl_);
11140 return _impl_.feasibility_jump_var_randomization_probability_;
11141}
11142inline void SatParameters::_internal_set_feasibility_jump_var_randomization_probability(double value) {
11143 ::google::protobuf::internal::TSanWrite(&_impl_);
11144 _impl_.feasibility_jump_var_randomization_probability_ = value;
11145}
11146
11147// optional double feasibility_jump_var_perburbation_range_ratio = 248 [default = 0.2];
11149 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00040000U);
11150 return value;
11151}
11153 ::google::protobuf::internal::TSanWrite(&_impl_);
11154 _impl_.feasibility_jump_var_perburbation_range_ratio_ = 0.2;
11155 ClearHasBit(_impl_._has_bits_[7],
11156 0x00040000U);
11159 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_var_perburbation_range_ratio)
11160 return _internal_feasibility_jump_var_perburbation_range_ratio();
11161}
11163 _internal_set_feasibility_jump_var_perburbation_range_ratio(value);
11164 SetHasBit(_impl_._has_bits_[7], 0x00040000U);
11165 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_var_perburbation_range_ratio)
11166}
11167inline double SatParameters::_internal_feasibility_jump_var_perburbation_range_ratio() const {
11168 ::google::protobuf::internal::TSanRead(&_impl_);
11169 return _impl_.feasibility_jump_var_perburbation_range_ratio_;
11170}
11171inline void SatParameters::_internal_set_feasibility_jump_var_perburbation_range_ratio(double value) {
11172 ::google::protobuf::internal::TSanWrite(&_impl_);
11173 _impl_.feasibility_jump_var_perburbation_range_ratio_ = value;
11174}
11175
11176// optional bool feasibility_jump_enable_restarts = 250 [default = true];
11178 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00004000U);
11179 return value;
11180}
11182 ::google::protobuf::internal::TSanWrite(&_impl_);
11183 _impl_.feasibility_jump_enable_restarts_ = true;
11184 ClearHasBit(_impl_._has_bits_[7],
11185 0x00004000U);
11188 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_enable_restarts)
11189 return _internal_feasibility_jump_enable_restarts();
11190}
11192 _internal_set_feasibility_jump_enable_restarts(value);
11193 SetHasBit(_impl_._has_bits_[7], 0x00004000U);
11194 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_enable_restarts)
11195}
11196inline bool SatParameters::_internal_feasibility_jump_enable_restarts() const {
11197 ::google::protobuf::internal::TSanRead(&_impl_);
11198 return _impl_.feasibility_jump_enable_restarts_;
11199}
11200inline void SatParameters::_internal_set_feasibility_jump_enable_restarts(bool value) {
11201 ::google::protobuf::internal::TSanWrite(&_impl_);
11202 _impl_.feasibility_jump_enable_restarts_ = value;
11203}
11204
11205// optional int32 feasibility_jump_max_expanded_constraint_size = 264 [default = 500];
11207 bool value = CheckHasBit(_impl_._has_bits_[7], 0x08000000U);
11208 return value;
11209}
11211 ::google::protobuf::internal::TSanWrite(&_impl_);
11212 _impl_.feasibility_jump_max_expanded_constraint_size_ = 500;
11213 ClearHasBit(_impl_._has_bits_[7],
11214 0x08000000U);
11217 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.feasibility_jump_max_expanded_constraint_size)
11218 return _internal_feasibility_jump_max_expanded_constraint_size();
11219}
11221 _internal_set_feasibility_jump_max_expanded_constraint_size(value);
11222 SetHasBit(_impl_._has_bits_[7], 0x08000000U);
11223 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.feasibility_jump_max_expanded_constraint_size)
11224}
11225inline ::int32_t SatParameters::_internal_feasibility_jump_max_expanded_constraint_size() const {
11226 ::google::protobuf::internal::TSanRead(&_impl_);
11227 return _impl_.feasibility_jump_max_expanded_constraint_size_;
11228}
11229inline void SatParameters::_internal_set_feasibility_jump_max_expanded_constraint_size(::int32_t value) {
11230 ::google::protobuf::internal::TSanWrite(&_impl_);
11231 _impl_.feasibility_jump_max_expanded_constraint_size_ = value;
11232}
11233
11234// optional int32 num_violation_ls = 244 [default = 0];
11235inline bool SatParameters::has_num_violation_ls() const {
11236 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000002U);
11237 return value;
11238}
11240 ::google::protobuf::internal::TSanWrite(&_impl_);
11241 _impl_.num_violation_ls_ = 0;
11242 ClearHasBit(_impl_._has_bits_[3],
11243 0x00000002U);
11245inline ::int32_t SatParameters::num_violation_ls() const {
11246 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.num_violation_ls)
11247 return _internal_num_violation_ls();
11248}
11249inline void SatParameters::set_num_violation_ls(::int32_t value) {
11250 _internal_set_num_violation_ls(value);
11251 SetHasBit(_impl_._has_bits_[3], 0x00000002U);
11252 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.num_violation_ls)
11253}
11254inline ::int32_t SatParameters::_internal_num_violation_ls() const {
11255 ::google::protobuf::internal::TSanRead(&_impl_);
11256 return _impl_.num_violation_ls_;
11257}
11258inline void SatParameters::_internal_set_num_violation_ls(::int32_t value) {
11259 ::google::protobuf::internal::TSanWrite(&_impl_);
11260 _impl_.num_violation_ls_ = value;
11261}
11262
11263// optional int32 violation_ls_perturbation_period = 249 [default = 100];
11265 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00080000U);
11266 return value;
11267}
11269 ::google::protobuf::internal::TSanWrite(&_impl_);
11270 _impl_.violation_ls_perturbation_period_ = 100;
11271 ClearHasBit(_impl_._has_bits_[7],
11272 0x00080000U);
11274inline ::int32_t SatParameters::violation_ls_perturbation_period() const {
11275 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.violation_ls_perturbation_period)
11276 return _internal_violation_ls_perturbation_period();
11277}
11278inline void SatParameters::set_violation_ls_perturbation_period(::int32_t value) {
11279 _internal_set_violation_ls_perturbation_period(value);
11280 SetHasBit(_impl_._has_bits_[7], 0x00080000U);
11281 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.violation_ls_perturbation_period)
11282}
11283inline ::int32_t SatParameters::_internal_violation_ls_perturbation_period() const {
11284 ::google::protobuf::internal::TSanRead(&_impl_);
11285 return _impl_.violation_ls_perturbation_period_;
11286}
11287inline void SatParameters::_internal_set_violation_ls_perturbation_period(::int32_t value) {
11288 ::google::protobuf::internal::TSanWrite(&_impl_);
11289 _impl_.violation_ls_perturbation_period_ = value;
11290}
11291
11292// optional double violation_ls_compound_move_probability = 259 [default = 0.5];
11294 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00800000U);
11295 return value;
11296}
11298 ::google::protobuf::internal::TSanWrite(&_impl_);
11299 _impl_.violation_ls_compound_move_probability_ = 0.5;
11300 ClearHasBit(_impl_._has_bits_[7],
11301 0x00800000U);
11304 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.violation_ls_compound_move_probability)
11305 return _internal_violation_ls_compound_move_probability();
11306}
11308 _internal_set_violation_ls_compound_move_probability(value);
11309 SetHasBit(_impl_._has_bits_[7], 0x00800000U);
11310 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.violation_ls_compound_move_probability)
11311}
11312inline double SatParameters::_internal_violation_ls_compound_move_probability() const {
11313 ::google::protobuf::internal::TSanRead(&_impl_);
11314 return _impl_.violation_ls_compound_move_probability_;
11315}
11316inline void SatParameters::_internal_set_violation_ls_compound_move_probability(double value) {
11317 ::google::protobuf::internal::TSanWrite(&_impl_);
11318 _impl_.violation_ls_compound_move_probability_ = value;
11319}
11320
11321// optional int32 shared_tree_num_workers = 235 [default = -1];
11323 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000400U);
11324 return value;
11325}
11327 ::google::protobuf::internal::TSanWrite(&_impl_);
11328 _impl_.shared_tree_num_workers_ = -1;
11329 ClearHasBit(_impl_._has_bits_[7],
11330 0x00000400U);
11332inline ::int32_t SatParameters::shared_tree_num_workers() const {
11333 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_num_workers)
11334 return _internal_shared_tree_num_workers();
11335}
11336inline void SatParameters::set_shared_tree_num_workers(::int32_t value) {
11337 _internal_set_shared_tree_num_workers(value);
11338 SetHasBit(_impl_._has_bits_[7], 0x00000400U);
11339 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_num_workers)
11340}
11341inline ::int32_t SatParameters::_internal_shared_tree_num_workers() const {
11342 ::google::protobuf::internal::TSanRead(&_impl_);
11343 return _impl_.shared_tree_num_workers_;
11344}
11345inline void SatParameters::_internal_set_shared_tree_num_workers(::int32_t value) {
11346 ::google::protobuf::internal::TSanWrite(&_impl_);
11347 _impl_.shared_tree_num_workers_ = value;
11348}
11349
11350// optional bool use_shared_tree_search = 236 [default = false];
11352 bool value = CheckHasBit(_impl_._has_bits_[2], 0x40000000U);
11353 return value;
11354}
11356 ::google::protobuf::internal::TSanWrite(&_impl_);
11357 _impl_.use_shared_tree_search_ = false;
11358 ClearHasBit(_impl_._has_bits_[2],
11359 0x40000000U);
11361inline bool SatParameters::use_shared_tree_search() const {
11362 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_shared_tree_search)
11363 return _internal_use_shared_tree_search();
11364}
11365inline void SatParameters::set_use_shared_tree_search(bool value) {
11366 _internal_set_use_shared_tree_search(value);
11367 SetHasBit(_impl_._has_bits_[2], 0x40000000U);
11368 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_shared_tree_search)
11369}
11370inline bool SatParameters::_internal_use_shared_tree_search() const {
11371 ::google::protobuf::internal::TSanRead(&_impl_);
11372 return _impl_.use_shared_tree_search_;
11373}
11374inline void SatParameters::_internal_set_use_shared_tree_search(bool value) {
11375 ::google::protobuf::internal::TSanWrite(&_impl_);
11376 _impl_.use_shared_tree_search_ = value;
11377}
11378
11379// optional int32 shared_tree_worker_min_restarts_per_subtree = 282 [default = 1];
11381 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000080U);
11382 return value;
11383}
11385 ::google::protobuf::internal::TSanWrite(&_impl_);
11386 _impl_.shared_tree_worker_min_restarts_per_subtree_ = 1;
11387 ClearHasBit(_impl_._has_bits_[8],
11388 0x00000080U);
11391 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_worker_min_restarts_per_subtree)
11392 return _internal_shared_tree_worker_min_restarts_per_subtree();
11393}
11395 _internal_set_shared_tree_worker_min_restarts_per_subtree(value);
11396 SetHasBit(_impl_._has_bits_[8], 0x00000080U);
11397 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_worker_min_restarts_per_subtree)
11398}
11399inline ::int32_t SatParameters::_internal_shared_tree_worker_min_restarts_per_subtree() const {
11400 ::google::protobuf::internal::TSanRead(&_impl_);
11401 return _impl_.shared_tree_worker_min_restarts_per_subtree_;
11402}
11403inline void SatParameters::_internal_set_shared_tree_worker_min_restarts_per_subtree(::int32_t value) {
11404 ::google::protobuf::internal::TSanWrite(&_impl_);
11405 _impl_.shared_tree_worker_min_restarts_per_subtree_ = value;
11406}
11407
11408// optional bool shared_tree_worker_enable_trail_sharing = 295 [default = true];
11410 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00001000U);
11411 return value;
11412}
11414 ::google::protobuf::internal::TSanWrite(&_impl_);
11415 _impl_.shared_tree_worker_enable_trail_sharing_ = true;
11416 ClearHasBit(_impl_._has_bits_[8],
11417 0x00001000U);
11420 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_worker_enable_trail_sharing)
11421 return _internal_shared_tree_worker_enable_trail_sharing();
11422}
11424 _internal_set_shared_tree_worker_enable_trail_sharing(value);
11425 SetHasBit(_impl_._has_bits_[8], 0x00001000U);
11426 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_worker_enable_trail_sharing)
11427}
11428inline bool SatParameters::_internal_shared_tree_worker_enable_trail_sharing() const {
11429 ::google::protobuf::internal::TSanRead(&_impl_);
11430 return _impl_.shared_tree_worker_enable_trail_sharing_;
11431}
11432inline void SatParameters::_internal_set_shared_tree_worker_enable_trail_sharing(bool value) {
11433 ::google::protobuf::internal::TSanWrite(&_impl_);
11434 _impl_.shared_tree_worker_enable_trail_sharing_ = value;
11435}
11436
11437// optional bool shared_tree_worker_enable_phase_sharing = 304 [default = true];
11439 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00400000U);
11440 return value;
11441}
11443 ::google::protobuf::internal::TSanWrite(&_impl_);
11444 _impl_.shared_tree_worker_enable_phase_sharing_ = true;
11445 ClearHasBit(_impl_._has_bits_[8],
11446 0x00400000U);
11449 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_worker_enable_phase_sharing)
11450 return _internal_shared_tree_worker_enable_phase_sharing();
11451}
11453 _internal_set_shared_tree_worker_enable_phase_sharing(value);
11454 SetHasBit(_impl_._has_bits_[8], 0x00400000U);
11455 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_worker_enable_phase_sharing)
11456}
11457inline bool SatParameters::_internal_shared_tree_worker_enable_phase_sharing() const {
11458 ::google::protobuf::internal::TSanRead(&_impl_);
11459 return _impl_.shared_tree_worker_enable_phase_sharing_;
11460}
11461inline void SatParameters::_internal_set_shared_tree_worker_enable_phase_sharing(bool value) {
11462 ::google::protobuf::internal::TSanWrite(&_impl_);
11463 _impl_.shared_tree_worker_enable_phase_sharing_ = value;
11464}
11465
11466// optional double shared_tree_open_leaves_per_worker = 281 [default = 2];
11468 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000100U);
11469 return value;
11470}
11472 ::google::protobuf::internal::TSanWrite(&_impl_);
11473 _impl_.shared_tree_open_leaves_per_worker_ = 2;
11474 ClearHasBit(_impl_._has_bits_[8],
11475 0x00000100U);
11478 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_open_leaves_per_worker)
11479 return _internal_shared_tree_open_leaves_per_worker();
11480}
11482 _internal_set_shared_tree_open_leaves_per_worker(value);
11483 SetHasBit(_impl_._has_bits_[8], 0x00000100U);
11484 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_open_leaves_per_worker)
11485}
11486inline double SatParameters::_internal_shared_tree_open_leaves_per_worker() const {
11487 ::google::protobuf::internal::TSanRead(&_impl_);
11488 return _impl_.shared_tree_open_leaves_per_worker_;
11489}
11490inline void SatParameters::_internal_set_shared_tree_open_leaves_per_worker(double value) {
11491 ::google::protobuf::internal::TSanWrite(&_impl_);
11492 _impl_.shared_tree_open_leaves_per_worker_ = value;
11493}
11494
11495// optional int32 shared_tree_max_nodes_per_worker = 238 [default = 10000];
11497 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00008000U);
11498 return value;
11499}
11501 ::google::protobuf::internal::TSanWrite(&_impl_);
11502 _impl_.shared_tree_max_nodes_per_worker_ = 10000;
11503 ClearHasBit(_impl_._has_bits_[7],
11504 0x00008000U);
11506inline ::int32_t SatParameters::shared_tree_max_nodes_per_worker() const {
11507 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_max_nodes_per_worker)
11508 return _internal_shared_tree_max_nodes_per_worker();
11509}
11510inline void SatParameters::set_shared_tree_max_nodes_per_worker(::int32_t value) {
11511 _internal_set_shared_tree_max_nodes_per_worker(value);
11512 SetHasBit(_impl_._has_bits_[7], 0x00008000U);
11513 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_max_nodes_per_worker)
11514}
11515inline ::int32_t SatParameters::_internal_shared_tree_max_nodes_per_worker() const {
11516 ::google::protobuf::internal::TSanRead(&_impl_);
11517 return _impl_.shared_tree_max_nodes_per_worker_;
11518}
11519inline void SatParameters::_internal_set_shared_tree_max_nodes_per_worker(::int32_t value) {
11520 ::google::protobuf::internal::TSanWrite(&_impl_);
11521 _impl_.shared_tree_max_nodes_per_worker_ = value;
11522}
11523
11524// optional .operations_research.sat.SatParameters.SharedTreeSplitStrategy shared_tree_split_strategy = 239 [default = SPLIT_STRATEGY_AUTO];
11526 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000001U);
11527 return value;
11528}
11530 ::google::protobuf::internal::TSanWrite(&_impl_);
11531 _impl_.shared_tree_split_strategy_ = 0;
11532 ClearHasBit(_impl_._has_bits_[3],
11533 0x00000001U);
11535inline ::operations_research::sat::SatParameters_SharedTreeSplitStrategy SatParameters::shared_tree_split_strategy() const {
11536 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_split_strategy)
11537 return _internal_shared_tree_split_strategy();
11538}
11540 _internal_set_shared_tree_split_strategy(value);
11541 SetHasBit(_impl_._has_bits_[3], 0x00000001U);
11542 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_split_strategy)
11543}
11544inline ::operations_research::sat::SatParameters_SharedTreeSplitStrategy SatParameters::_internal_shared_tree_split_strategy() const {
11545 ::google::protobuf::internal::TSanRead(&_impl_);
11546 return static_cast<::operations_research::sat::SatParameters_SharedTreeSplitStrategy>(_impl_.shared_tree_split_strategy_);
11547}
11548inline void SatParameters::_internal_set_shared_tree_split_strategy(::operations_research::sat::SatParameters_SharedTreeSplitStrategy value) {
11549 ::google::protobuf::internal::TSanWrite(&_impl_);
11550
11551 assert(::google::protobuf::internal::ValidateEnum(
11553 _impl_.shared_tree_split_strategy_ = value;
11554}
11555
11556// optional int32 shared_tree_balance_tolerance = 305 [default = 1];
11558 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00020000U);
11559 return value;
11560}
11562 ::google::protobuf::internal::TSanWrite(&_impl_);
11563 _impl_.shared_tree_balance_tolerance_ = 1;
11564 ClearHasBit(_impl_._has_bits_[8],
11565 0x00020000U);
11567inline ::int32_t SatParameters::shared_tree_balance_tolerance() const {
11568 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_balance_tolerance)
11569 return _internal_shared_tree_balance_tolerance();
11570}
11571inline void SatParameters::set_shared_tree_balance_tolerance(::int32_t value) {
11572 _internal_set_shared_tree_balance_tolerance(value);
11573 SetHasBit(_impl_._has_bits_[8], 0x00020000U);
11574 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_balance_tolerance)
11575}
11576inline ::int32_t SatParameters::_internal_shared_tree_balance_tolerance() const {
11577 ::google::protobuf::internal::TSanRead(&_impl_);
11578 return _impl_.shared_tree_balance_tolerance_;
11579}
11580inline void SatParameters::_internal_set_shared_tree_balance_tolerance(::int32_t value) {
11581 ::google::protobuf::internal::TSanWrite(&_impl_);
11582 _impl_.shared_tree_balance_tolerance_ = value;
11583}
11584
11585// optional double shared_tree_split_min_dtime = 328 [default = 0.1];
11587 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000004U);
11588 return value;
11589}
11591 ::google::protobuf::internal::TSanWrite(&_impl_);
11592 _impl_.shared_tree_split_min_dtime_ = 0.1;
11593 ClearHasBit(_impl_._has_bits_[9],
11594 0x00000004U);
11596inline double SatParameters::shared_tree_split_min_dtime() const {
11597 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.shared_tree_split_min_dtime)
11598 return _internal_shared_tree_split_min_dtime();
11599}
11600inline void SatParameters::set_shared_tree_split_min_dtime(double value) {
11601 _internal_set_shared_tree_split_min_dtime(value);
11602 SetHasBit(_impl_._has_bits_[9], 0x00000004U);
11603 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.shared_tree_split_min_dtime)
11604}
11605inline double SatParameters::_internal_shared_tree_split_min_dtime() const {
11606 ::google::protobuf::internal::TSanRead(&_impl_);
11607 return _impl_.shared_tree_split_min_dtime_;
11608}
11609inline void SatParameters::_internal_set_shared_tree_split_min_dtime(double value) {
11610 ::google::protobuf::internal::TSanWrite(&_impl_);
11611 _impl_.shared_tree_split_min_dtime_ = value;
11612}
11613
11614// optional bool enumerate_all_solutions = 87 [default = false];
11616 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00008000U);
11617 return value;
11618}
11620 ::google::protobuf::internal::TSanWrite(&_impl_);
11621 _impl_.enumerate_all_solutions_ = false;
11622 ClearHasBit(_impl_._has_bits_[1],
11623 0x00008000U);
11625inline bool SatParameters::enumerate_all_solutions() const {
11626 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.enumerate_all_solutions)
11627 return _internal_enumerate_all_solutions();
11628}
11629inline void SatParameters::set_enumerate_all_solutions(bool value) {
11630 _internal_set_enumerate_all_solutions(value);
11631 SetHasBit(_impl_._has_bits_[1], 0x00008000U);
11632 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.enumerate_all_solutions)
11633}
11634inline bool SatParameters::_internal_enumerate_all_solutions() const {
11635 ::google::protobuf::internal::TSanRead(&_impl_);
11636 return _impl_.enumerate_all_solutions_;
11637}
11638inline void SatParameters::_internal_set_enumerate_all_solutions(bool value) {
11639 ::google::protobuf::internal::TSanWrite(&_impl_);
11640 _impl_.enumerate_all_solutions_ = value;
11641}
11642
11643// optional bool keep_all_feasible_solutions_in_presolve = 173 [default = false];
11645 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000010U);
11646 return value;
11647}
11649 ::google::protobuf::internal::TSanWrite(&_impl_);
11650 _impl_.keep_all_feasible_solutions_in_presolve_ = false;
11651 ClearHasBit(_impl_._has_bits_[2],
11652 0x00000010U);
11655 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.keep_all_feasible_solutions_in_presolve)
11656 return _internal_keep_all_feasible_solutions_in_presolve();
11657}
11659 _internal_set_keep_all_feasible_solutions_in_presolve(value);
11660 SetHasBit(_impl_._has_bits_[2], 0x00000010U);
11661 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.keep_all_feasible_solutions_in_presolve)
11662}
11663inline bool SatParameters::_internal_keep_all_feasible_solutions_in_presolve() const {
11664 ::google::protobuf::internal::TSanRead(&_impl_);
11665 return _impl_.keep_all_feasible_solutions_in_presolve_;
11666}
11667inline void SatParameters::_internal_set_keep_all_feasible_solutions_in_presolve(bool value) {
11668 ::google::protobuf::internal::TSanWrite(&_impl_);
11669 _impl_.keep_all_feasible_solutions_in_presolve_ = value;
11670}
11671
11672// optional bool fill_tightened_domains_in_response = 132 [default = false];
11674 bool value = CheckHasBit(_impl_._has_bits_[1], 0x02000000U);
11675 return value;
11676}
11678 ::google::protobuf::internal::TSanWrite(&_impl_);
11679 _impl_.fill_tightened_domains_in_response_ = false;
11680 ClearHasBit(_impl_._has_bits_[1],
11681 0x02000000U);
11684 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fill_tightened_domains_in_response)
11685 return _internal_fill_tightened_domains_in_response();
11686}
11688 _internal_set_fill_tightened_domains_in_response(value);
11689 SetHasBit(_impl_._has_bits_[1], 0x02000000U);
11690 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fill_tightened_domains_in_response)
11691}
11692inline bool SatParameters::_internal_fill_tightened_domains_in_response() const {
11693 ::google::protobuf::internal::TSanRead(&_impl_);
11694 return _impl_.fill_tightened_domains_in_response_;
11695}
11696inline void SatParameters::_internal_set_fill_tightened_domains_in_response(bool value) {
11697 ::google::protobuf::internal::TSanWrite(&_impl_);
11698 _impl_.fill_tightened_domains_in_response_ = value;
11699}
11700
11701// optional bool fill_additional_solutions_in_response = 194 [default = false];
11703 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00010000U);
11704 return value;
11705}
11707 ::google::protobuf::internal::TSanWrite(&_impl_);
11708 _impl_.fill_additional_solutions_in_response_ = false;
11709 ClearHasBit(_impl_._has_bits_[2],
11710 0x00010000U);
11713 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fill_additional_solutions_in_response)
11714 return _internal_fill_additional_solutions_in_response();
11715}
11717 _internal_set_fill_additional_solutions_in_response(value);
11718 SetHasBit(_impl_._has_bits_[2], 0x00010000U);
11719 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fill_additional_solutions_in_response)
11720}
11721inline bool SatParameters::_internal_fill_additional_solutions_in_response() const {
11722 ::google::protobuf::internal::TSanRead(&_impl_);
11723 return _impl_.fill_additional_solutions_in_response_;
11724}
11725inline void SatParameters::_internal_set_fill_additional_solutions_in_response(bool value) {
11726 ::google::protobuf::internal::TSanWrite(&_impl_);
11727 _impl_.fill_additional_solutions_in_response_ = value;
11728}
11729
11730// optional bool instantiate_all_variables = 106 [default = true];
11732 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000100U);
11733 return value;
11734}
11736 ::google::protobuf::internal::TSanWrite(&_impl_);
11737 _impl_.instantiate_all_variables_ = true;
11738 ClearHasBit(_impl_._has_bits_[5],
11739 0x00000100U);
11741inline bool SatParameters::instantiate_all_variables() const {
11742 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.instantiate_all_variables)
11743 return _internal_instantiate_all_variables();
11744}
11745inline void SatParameters::set_instantiate_all_variables(bool value) {
11746 _internal_set_instantiate_all_variables(value);
11747 SetHasBit(_impl_._has_bits_[5], 0x00000100U);
11748 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.instantiate_all_variables)
11749}
11750inline bool SatParameters::_internal_instantiate_all_variables() const {
11751 ::google::protobuf::internal::TSanRead(&_impl_);
11752 return _impl_.instantiate_all_variables_;
11753}
11754inline void SatParameters::_internal_set_instantiate_all_variables(bool value) {
11755 ::google::protobuf::internal::TSanWrite(&_impl_);
11756 _impl_.instantiate_all_variables_ = value;
11757}
11758
11759// optional bool auto_detect_greater_than_at_least_one_of = 95 [default = true];
11761 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000080U);
11762 return value;
11763}
11765 ::google::protobuf::internal::TSanWrite(&_impl_);
11766 _impl_.auto_detect_greater_than_at_least_one_of_ = true;
11767 ClearHasBit(_impl_._has_bits_[5],
11768 0x00000080U);
11771 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.auto_detect_greater_than_at_least_one_of)
11772 return _internal_auto_detect_greater_than_at_least_one_of();
11773}
11775 _internal_set_auto_detect_greater_than_at_least_one_of(value);
11776 SetHasBit(_impl_._has_bits_[5], 0x00000080U);
11777 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.auto_detect_greater_than_at_least_one_of)
11778}
11779inline bool SatParameters::_internal_auto_detect_greater_than_at_least_one_of() const {
11780 ::google::protobuf::internal::TSanRead(&_impl_);
11781 return _impl_.auto_detect_greater_than_at_least_one_of_;
11782}
11783inline void SatParameters::_internal_set_auto_detect_greater_than_at_least_one_of(bool value) {
11784 ::google::protobuf::internal::TSanWrite(&_impl_);
11785 _impl_.auto_detect_greater_than_at_least_one_of_ = value;
11786}
11787
11788// optional bool stop_after_first_solution = 98 [default = false];
11790 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00020000U);
11791 return value;
11792}
11794 ::google::protobuf::internal::TSanWrite(&_impl_);
11795 _impl_.stop_after_first_solution_ = false;
11796 ClearHasBit(_impl_._has_bits_[1],
11797 0x00020000U);
11799inline bool SatParameters::stop_after_first_solution() const {
11800 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.stop_after_first_solution)
11801 return _internal_stop_after_first_solution();
11802}
11803inline void SatParameters::set_stop_after_first_solution(bool value) {
11804 _internal_set_stop_after_first_solution(value);
11805 SetHasBit(_impl_._has_bits_[1], 0x00020000U);
11806 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.stop_after_first_solution)
11807}
11808inline bool SatParameters::_internal_stop_after_first_solution() const {
11809 ::google::protobuf::internal::TSanRead(&_impl_);
11810 return _impl_.stop_after_first_solution_;
11811}
11812inline void SatParameters::_internal_set_stop_after_first_solution(bool value) {
11813 ::google::protobuf::internal::TSanWrite(&_impl_);
11814 _impl_.stop_after_first_solution_ = value;
11815}
11816
11817// optional bool stop_after_presolve = 149 [default = false];
11818inline bool SatParameters::has_stop_after_presolve() const {
11819 bool value = CheckHasBit(_impl_._has_bits_[1], 0x80000000U);
11820 return value;
11821}
11823 ::google::protobuf::internal::TSanWrite(&_impl_);
11824 _impl_.stop_after_presolve_ = false;
11825 ClearHasBit(_impl_._has_bits_[1],
11826 0x80000000U);
11828inline bool SatParameters::stop_after_presolve() const {
11829 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.stop_after_presolve)
11830 return _internal_stop_after_presolve();
11831}
11832inline void SatParameters::set_stop_after_presolve(bool value) {
11833 _internal_set_stop_after_presolve(value);
11834 SetHasBit(_impl_._has_bits_[1], 0x80000000U);
11835 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.stop_after_presolve)
11836}
11837inline bool SatParameters::_internal_stop_after_presolve() const {
11838 ::google::protobuf::internal::TSanRead(&_impl_);
11839 return _impl_.stop_after_presolve_;
11840}
11841inline void SatParameters::_internal_set_stop_after_presolve(bool value) {
11842 ::google::protobuf::internal::TSanWrite(&_impl_);
11843 _impl_.stop_after_presolve_ = value;
11844}
11845
11846// optional bool stop_after_root_propagation = 252 [default = false];
11848 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000004U);
11849 return value;
11850}
11852 ::google::protobuf::internal::TSanWrite(&_impl_);
11853 _impl_.stop_after_root_propagation_ = false;
11854 ClearHasBit(_impl_._has_bits_[3],
11855 0x00000004U);
11858 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.stop_after_root_propagation)
11859 return _internal_stop_after_root_propagation();
11860}
11861inline void SatParameters::set_stop_after_root_propagation(bool value) {
11862 _internal_set_stop_after_root_propagation(value);
11863 SetHasBit(_impl_._has_bits_[3], 0x00000004U);
11864 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.stop_after_root_propagation)
11865}
11866inline bool SatParameters::_internal_stop_after_root_propagation() const {
11867 ::google::protobuf::internal::TSanRead(&_impl_);
11868 return _impl_.stop_after_root_propagation_;
11869}
11870inline void SatParameters::_internal_set_stop_after_root_propagation(bool value) {
11871 ::google::protobuf::internal::TSanWrite(&_impl_);
11872 _impl_.stop_after_root_propagation_ = value;
11873}
11874
11875// optional double lns_initial_difficulty = 307 [default = 0.5];
11877 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00080000U);
11878 return value;
11879}
11881 ::google::protobuf::internal::TSanWrite(&_impl_);
11882 _impl_.lns_initial_difficulty_ = 0.5;
11883 ClearHasBit(_impl_._has_bits_[8],
11884 0x00080000U);
11886inline double SatParameters::lns_initial_difficulty() const {
11887 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lns_initial_difficulty)
11888 return _internal_lns_initial_difficulty();
11889}
11890inline void SatParameters::set_lns_initial_difficulty(double value) {
11891 _internal_set_lns_initial_difficulty(value);
11892 SetHasBit(_impl_._has_bits_[8], 0x00080000U);
11893 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lns_initial_difficulty)
11894}
11895inline double SatParameters::_internal_lns_initial_difficulty() const {
11896 ::google::protobuf::internal::TSanRead(&_impl_);
11897 return _impl_.lns_initial_difficulty_;
11898}
11899inline void SatParameters::_internal_set_lns_initial_difficulty(double value) {
11900 ::google::protobuf::internal::TSanWrite(&_impl_);
11901 _impl_.lns_initial_difficulty_ = value;
11902}
11903
11904// optional double lns_initial_deterministic_limit = 308 [default = 0.1];
11906 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00100000U);
11907 return value;
11908}
11910 ::google::protobuf::internal::TSanWrite(&_impl_);
11911 _impl_.lns_initial_deterministic_limit_ = 0.1;
11912 ClearHasBit(_impl_._has_bits_[8],
11913 0x00100000U);
11916 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lns_initial_deterministic_limit)
11917 return _internal_lns_initial_deterministic_limit();
11918}
11920 _internal_set_lns_initial_deterministic_limit(value);
11921 SetHasBit(_impl_._has_bits_[8], 0x00100000U);
11922 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lns_initial_deterministic_limit)
11923}
11924inline double SatParameters::_internal_lns_initial_deterministic_limit() const {
11925 ::google::protobuf::internal::TSanRead(&_impl_);
11926 return _impl_.lns_initial_deterministic_limit_;
11927}
11928inline void SatParameters::_internal_set_lns_initial_deterministic_limit(double value) {
11929 ::google::protobuf::internal::TSanWrite(&_impl_);
11930 _impl_.lns_initial_deterministic_limit_ = value;
11931}
11932
11933// optional bool use_lns = 283 [default = true];
11934inline bool SatParameters::has_use_lns() const {
11935 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000400U);
11936 return value;
11937}
11938inline void SatParameters::clear_use_lns() {
11939 ::google::protobuf::internal::TSanWrite(&_impl_);
11940 _impl_.use_lns_ = true;
11941 ClearHasBit(_impl_._has_bits_[8],
11942 0x00000400U);
11944inline bool SatParameters::use_lns() const {
11945 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_lns)
11946 return _internal_use_lns();
11947}
11948inline void SatParameters::set_use_lns(bool value) {
11949 _internal_set_use_lns(value);
11950 SetHasBit(_impl_._has_bits_[8], 0x00000400U);
11951 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_lns)
11952}
11953inline bool SatParameters::_internal_use_lns() const {
11954 ::google::protobuf::internal::TSanRead(&_impl_);
11955 return _impl_.use_lns_;
11956}
11957inline void SatParameters::_internal_set_use_lns(bool value) {
11958 ::google::protobuf::internal::TSanWrite(&_impl_);
11959 _impl_.use_lns_ = value;
11960}
11961
11962// optional bool use_lns_only = 101 [default = false];
11963inline bool SatParameters::has_use_lns_only() const {
11964 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00100000U);
11965 return value;
11966}
11968 ::google::protobuf::internal::TSanWrite(&_impl_);
11969 _impl_.use_lns_only_ = false;
11970 ClearHasBit(_impl_._has_bits_[1],
11971 0x00100000U);
11973inline bool SatParameters::use_lns_only() const {
11974 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_lns_only)
11975 return _internal_use_lns_only();
11976}
11977inline void SatParameters::set_use_lns_only(bool value) {
11978 _internal_set_use_lns_only(value);
11979 SetHasBit(_impl_._has_bits_[1], 0x00100000U);
11980 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_lns_only)
11981}
11982inline bool SatParameters::_internal_use_lns_only() const {
11983 ::google::protobuf::internal::TSanRead(&_impl_);
11984 return _impl_.use_lns_only_;
11985}
11986inline void SatParameters::_internal_set_use_lns_only(bool value) {
11987 ::google::protobuf::internal::TSanWrite(&_impl_);
11988 _impl_.use_lns_only_ = value;
11989}
11990
11991// optional int32 solution_pool_size = 193 [default = 3];
11992inline bool SatParameters::has_solution_pool_size() const {
11993 bool value = CheckHasBit(_impl_._has_bits_[6], 0x04000000U);
11994 return value;
11995}
11997 ::google::protobuf::internal::TSanWrite(&_impl_);
11998 _impl_.solution_pool_size_ = 3;
11999 ClearHasBit(_impl_._has_bits_[6],
12000 0x04000000U);
12002inline ::int32_t SatParameters::solution_pool_size() const {
12003 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.solution_pool_size)
12004 return _internal_solution_pool_size();
12005}
12006inline void SatParameters::set_solution_pool_size(::int32_t value) {
12007 _internal_set_solution_pool_size(value);
12008 SetHasBit(_impl_._has_bits_[6], 0x04000000U);
12009 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.solution_pool_size)
12010}
12011inline ::int32_t SatParameters::_internal_solution_pool_size() const {
12012 ::google::protobuf::internal::TSanRead(&_impl_);
12013 return _impl_.solution_pool_size_;
12014}
12015inline void SatParameters::_internal_set_solution_pool_size(::int32_t value) {
12016 ::google::protobuf::internal::TSanWrite(&_impl_);
12017 _impl_.solution_pool_size_ = value;
12018}
12019
12020// optional int32 solution_pool_diversity_limit = 329 [default = 10];
12022 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000008U);
12023 return value;
12024}
12026 ::google::protobuf::internal::TSanWrite(&_impl_);
12027 _impl_.solution_pool_diversity_limit_ = 10;
12028 ClearHasBit(_impl_._has_bits_[9],
12029 0x00000008U);
12031inline ::int32_t SatParameters::solution_pool_diversity_limit() const {
12032 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.solution_pool_diversity_limit)
12033 return _internal_solution_pool_diversity_limit();
12034}
12035inline void SatParameters::set_solution_pool_diversity_limit(::int32_t value) {
12036 _internal_set_solution_pool_diversity_limit(value);
12037 SetHasBit(_impl_._has_bits_[9], 0x00000008U);
12038 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.solution_pool_diversity_limit)
12039}
12040inline ::int32_t SatParameters::_internal_solution_pool_diversity_limit() const {
12041 ::google::protobuf::internal::TSanRead(&_impl_);
12042 return _impl_.solution_pool_diversity_limit_;
12043}
12044inline void SatParameters::_internal_set_solution_pool_diversity_limit(::int32_t value) {
12045 ::google::protobuf::internal::TSanWrite(&_impl_);
12046 _impl_.solution_pool_diversity_limit_ = value;
12047}
12048
12049// optional int32 alternative_pool_size = 325 [default = 1];
12050inline bool SatParameters::has_alternative_pool_size() const {
12051 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000001U);
12052 return value;
12053}
12055 ::google::protobuf::internal::TSanWrite(&_impl_);
12056 _impl_.alternative_pool_size_ = 1;
12057 ClearHasBit(_impl_._has_bits_[9],
12058 0x00000001U);
12060inline ::int32_t SatParameters::alternative_pool_size() const {
12061 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.alternative_pool_size)
12062 return _internal_alternative_pool_size();
12063}
12064inline void SatParameters::set_alternative_pool_size(::int32_t value) {
12065 _internal_set_alternative_pool_size(value);
12066 SetHasBit(_impl_._has_bits_[9], 0x00000001U);
12067 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.alternative_pool_size)
12068}
12069inline ::int32_t SatParameters::_internal_alternative_pool_size() const {
12070 ::google::protobuf::internal::TSanRead(&_impl_);
12071 return _impl_.alternative_pool_size_;
12072}
12073inline void SatParameters::_internal_set_alternative_pool_size(::int32_t value) {
12074 ::google::protobuf::internal::TSanWrite(&_impl_);
12075 _impl_.alternative_pool_size_ = value;
12076}
12077
12078// optional bool use_rins_lns = 129 [default = true];
12079inline bool SatParameters::has_use_rins_lns() const {
12080 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00200000U);
12081 return value;
12082}
12084 ::google::protobuf::internal::TSanWrite(&_impl_);
12085 _impl_.use_rins_lns_ = true;
12086 ClearHasBit(_impl_._has_bits_[5],
12087 0x00200000U);
12089inline bool SatParameters::use_rins_lns() const {
12090 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_rins_lns)
12091 return _internal_use_rins_lns();
12092}
12093inline void SatParameters::set_use_rins_lns(bool value) {
12094 _internal_set_use_rins_lns(value);
12095 SetHasBit(_impl_._has_bits_[5], 0x00200000U);
12096 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_rins_lns)
12097}
12098inline bool SatParameters::_internal_use_rins_lns() const {
12099 ::google::protobuf::internal::TSanRead(&_impl_);
12100 return _impl_.use_rins_lns_;
12101}
12102inline void SatParameters::_internal_set_use_rins_lns(bool value) {
12103 ::google::protobuf::internal::TSanWrite(&_impl_);
12104 _impl_.use_rins_lns_ = value;
12105}
12106
12107// optional bool use_feasibility_pump = 164 [default = true];
12108inline bool SatParameters::has_use_feasibility_pump() const {
12109 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00008000U);
12110 return value;
12111}
12113 ::google::protobuf::internal::TSanWrite(&_impl_);
12114 _impl_.use_feasibility_pump_ = true;
12115 ClearHasBit(_impl_._has_bits_[6],
12116 0x00008000U);
12118inline bool SatParameters::use_feasibility_pump() const {
12119 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_feasibility_pump)
12120 return _internal_use_feasibility_pump();
12121}
12122inline void SatParameters::set_use_feasibility_pump(bool value) {
12123 _internal_set_use_feasibility_pump(value);
12124 SetHasBit(_impl_._has_bits_[6], 0x00008000U);
12125 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_feasibility_pump)
12126}
12127inline bool SatParameters::_internal_use_feasibility_pump() const {
12128 ::google::protobuf::internal::TSanRead(&_impl_);
12129 return _impl_.use_feasibility_pump_;
12130}
12131inline void SatParameters::_internal_set_use_feasibility_pump(bool value) {
12132 ::google::protobuf::internal::TSanWrite(&_impl_);
12133 _impl_.use_feasibility_pump_ = value;
12134}
12135
12136// optional bool use_lb_relax_lns = 255 [default = true];
12137inline bool SatParameters::has_use_lb_relax_lns() const {
12138 bool value = CheckHasBit(_impl_._has_bits_[7], 0x10000000U);
12139 return value;
12140}
12142 ::google::protobuf::internal::TSanWrite(&_impl_);
12143 _impl_.use_lb_relax_lns_ = true;
12144 ClearHasBit(_impl_._has_bits_[7],
12145 0x10000000U);
12147inline bool SatParameters::use_lb_relax_lns() const {
12148 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_lb_relax_lns)
12149 return _internal_use_lb_relax_lns();
12150}
12151inline void SatParameters::set_use_lb_relax_lns(bool value) {
12152 _internal_set_use_lb_relax_lns(value);
12153 SetHasBit(_impl_._has_bits_[7], 0x10000000U);
12154 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_lb_relax_lns)
12155}
12156inline bool SatParameters::_internal_use_lb_relax_lns() const {
12157 ::google::protobuf::internal::TSanRead(&_impl_);
12158 return _impl_.use_lb_relax_lns_;
12159}
12160inline void SatParameters::_internal_set_use_lb_relax_lns(bool value) {
12161 ::google::protobuf::internal::TSanWrite(&_impl_);
12162 _impl_.use_lb_relax_lns_ = value;
12163}
12164
12165// optional int32 lb_relax_num_workers_threshold = 296 [default = 16];
12167 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00010000U);
12168 return value;
12169}
12171 ::google::protobuf::internal::TSanWrite(&_impl_);
12172 _impl_.lb_relax_num_workers_threshold_ = 16;
12173 ClearHasBit(_impl_._has_bits_[8],
12174 0x00010000U);
12176inline ::int32_t SatParameters::lb_relax_num_workers_threshold() const {
12177 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lb_relax_num_workers_threshold)
12178 return _internal_lb_relax_num_workers_threshold();
12179}
12180inline void SatParameters::set_lb_relax_num_workers_threshold(::int32_t value) {
12181 _internal_set_lb_relax_num_workers_threshold(value);
12182 SetHasBit(_impl_._has_bits_[8], 0x00010000U);
12183 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lb_relax_num_workers_threshold)
12184}
12185inline ::int32_t SatParameters::_internal_lb_relax_num_workers_threshold() const {
12186 ::google::protobuf::internal::TSanRead(&_impl_);
12187 return _impl_.lb_relax_num_workers_threshold_;
12188}
12189inline void SatParameters::_internal_set_lb_relax_num_workers_threshold(::int32_t value) {
12190 ::google::protobuf::internal::TSanWrite(&_impl_);
12191 _impl_.lb_relax_num_workers_threshold_ = value;
12192}
12193
12194// optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];
12195inline bool SatParameters::has_fp_rounding() const {
12196 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00002000U);
12197 return value;
12198}
12200 ::google::protobuf::internal::TSanWrite(&_impl_);
12201 _impl_.fp_rounding_ = 2;
12202 ClearHasBit(_impl_._has_bits_[6],
12203 0x00002000U);
12205inline ::operations_research::sat::SatParameters_FPRoundingMethod SatParameters::fp_rounding() const {
12206 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.fp_rounding)
12207 return _internal_fp_rounding();
12208}
12210 _internal_set_fp_rounding(value);
12211 SetHasBit(_impl_._has_bits_[6], 0x00002000U);
12212 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.fp_rounding)
12213}
12214inline ::operations_research::sat::SatParameters_FPRoundingMethod SatParameters::_internal_fp_rounding() const {
12215 ::google::protobuf::internal::TSanRead(&_impl_);
12216 return static_cast<::operations_research::sat::SatParameters_FPRoundingMethod>(_impl_.fp_rounding_);
12217}
12218inline void SatParameters::_internal_set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value) {
12219 ::google::protobuf::internal::TSanWrite(&_impl_);
12220
12221 assert(::google::protobuf::internal::ValidateEnum(
12223 _impl_.fp_rounding_ = value;
12224}
12225
12226// optional bool diversify_lns_params = 137 [default = false];
12227inline bool SatParameters::has_diversify_lns_params() const {
12228 bool value = CheckHasBit(_impl_._has_bits_[1], 0x10000000U);
12229 return value;
12230}
12232 ::google::protobuf::internal::TSanWrite(&_impl_);
12233 _impl_.diversify_lns_params_ = false;
12234 ClearHasBit(_impl_._has_bits_[1],
12235 0x10000000U);
12237inline bool SatParameters::diversify_lns_params() const {
12238 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.diversify_lns_params)
12239 return _internal_diversify_lns_params();
12240}
12241inline void SatParameters::set_diversify_lns_params(bool value) {
12242 _internal_set_diversify_lns_params(value);
12243 SetHasBit(_impl_._has_bits_[1], 0x10000000U);
12244 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.diversify_lns_params)
12245}
12246inline bool SatParameters::_internal_diversify_lns_params() const {
12247 ::google::protobuf::internal::TSanRead(&_impl_);
12248 return _impl_.diversify_lns_params_;
12249}
12250inline void SatParameters::_internal_set_diversify_lns_params(bool value) {
12251 ::google::protobuf::internal::TSanWrite(&_impl_);
12252 _impl_.diversify_lns_params_ = value;
12253}
12254
12255// optional bool randomize_search = 103 [default = false];
12256inline bool SatParameters::has_randomize_search() const {
12257 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00200000U);
12258 return value;
12259}
12261 ::google::protobuf::internal::TSanWrite(&_impl_);
12262 _impl_.randomize_search_ = false;
12263 ClearHasBit(_impl_._has_bits_[1],
12264 0x00200000U);
12266inline bool SatParameters::randomize_search() const {
12267 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.randomize_search)
12268 return _internal_randomize_search();
12269}
12270inline void SatParameters::set_randomize_search(bool value) {
12271 _internal_set_randomize_search(value);
12272 SetHasBit(_impl_._has_bits_[1], 0x00200000U);
12273 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.randomize_search)
12274}
12275inline bool SatParameters::_internal_randomize_search() const {
12276 ::google::protobuf::internal::TSanRead(&_impl_);
12277 return _impl_.randomize_search_;
12278}
12279inline void SatParameters::_internal_set_randomize_search(bool value) {
12280 ::google::protobuf::internal::TSanWrite(&_impl_);
12281 _impl_.randomize_search_ = value;
12282}
12283
12284// optional int64 search_random_variable_pool_size = 104 [default = 0];
12286 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00080000U);
12287 return value;
12288}
12290 ::google::protobuf::internal::TSanWrite(&_impl_);
12291 _impl_.search_random_variable_pool_size_ = ::int64_t{0};
12292 ClearHasBit(_impl_._has_bits_[1],
12293 0x00080000U);
12295inline ::int64_t SatParameters::search_random_variable_pool_size() const {
12296 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.search_random_variable_pool_size)
12297 return _internal_search_random_variable_pool_size();
12298}
12299inline void SatParameters::set_search_random_variable_pool_size(::int64_t value) {
12300 _internal_set_search_random_variable_pool_size(value);
12301 SetHasBit(_impl_._has_bits_[1], 0x00080000U);
12302 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.search_random_variable_pool_size)
12303}
12304inline ::int64_t SatParameters::_internal_search_random_variable_pool_size() const {
12305 ::google::protobuf::internal::TSanRead(&_impl_);
12306 return _impl_.search_random_variable_pool_size_;
12307}
12308inline void SatParameters::_internal_set_search_random_variable_pool_size(::int64_t value) {
12309 ::google::protobuf::internal::TSanWrite(&_impl_);
12310 _impl_.search_random_variable_pool_size_ = value;
12311}
12312
12313// optional bool push_all_tasks_toward_start = 262 [default = false];
12315 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000010U);
12316 return value;
12317}
12319 ::google::protobuf::internal::TSanWrite(&_impl_);
12320 _impl_.push_all_tasks_toward_start_ = false;
12321 ClearHasBit(_impl_._has_bits_[3],
12322 0x00000010U);
12325 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.push_all_tasks_toward_start)
12326 return _internal_push_all_tasks_toward_start();
12327}
12328inline void SatParameters::set_push_all_tasks_toward_start(bool value) {
12329 _internal_set_push_all_tasks_toward_start(value);
12330 SetHasBit(_impl_._has_bits_[3], 0x00000010U);
12331 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.push_all_tasks_toward_start)
12332}
12333inline bool SatParameters::_internal_push_all_tasks_toward_start() const {
12334 ::google::protobuf::internal::TSanRead(&_impl_);
12335 return _impl_.push_all_tasks_toward_start_;
12336}
12337inline void SatParameters::_internal_set_push_all_tasks_toward_start(bool value) {
12338 ::google::protobuf::internal::TSanWrite(&_impl_);
12339 _impl_.push_all_tasks_toward_start_ = value;
12340}
12341
12342// optional bool use_optional_variables = 108 [default = false];
12344 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00400000U);
12345 return value;
12346}
12348 ::google::protobuf::internal::TSanWrite(&_impl_);
12349 _impl_.use_optional_variables_ = false;
12350 ClearHasBit(_impl_._has_bits_[1],
12351 0x00400000U);
12353inline bool SatParameters::use_optional_variables() const {
12354 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_optional_variables)
12355 return _internal_use_optional_variables();
12356}
12357inline void SatParameters::set_use_optional_variables(bool value) {
12358 _internal_set_use_optional_variables(value);
12359 SetHasBit(_impl_._has_bits_[1], 0x00400000U);
12360 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_optional_variables)
12361}
12362inline bool SatParameters::_internal_use_optional_variables() const {
12363 ::google::protobuf::internal::TSanRead(&_impl_);
12364 return _impl_.use_optional_variables_;
12365}
12366inline void SatParameters::_internal_set_use_optional_variables(bool value) {
12367 ::google::protobuf::internal::TSanWrite(&_impl_);
12368 _impl_.use_optional_variables_ = value;
12369}
12370
12371// optional bool use_exact_lp_reason = 109 [default = true];
12372inline bool SatParameters::has_use_exact_lp_reason() const {
12373 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00001000U);
12374 return value;
12375}
12377 ::google::protobuf::internal::TSanWrite(&_impl_);
12378 _impl_.use_exact_lp_reason_ = true;
12379 ClearHasBit(_impl_._has_bits_[5],
12380 0x00001000U);
12382inline bool SatParameters::use_exact_lp_reason() const {
12383 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_exact_lp_reason)
12384 return _internal_use_exact_lp_reason();
12385}
12386inline void SatParameters::set_use_exact_lp_reason(bool value) {
12387 _internal_set_use_exact_lp_reason(value);
12388 SetHasBit(_impl_._has_bits_[5], 0x00001000U);
12389 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_exact_lp_reason)
12390}
12391inline bool SatParameters::_internal_use_exact_lp_reason() const {
12392 ::google::protobuf::internal::TSanRead(&_impl_);
12393 return _impl_.use_exact_lp_reason_;
12394}
12395inline void SatParameters::_internal_set_use_exact_lp_reason(bool value) {
12396 ::google::protobuf::internal::TSanWrite(&_impl_);
12397 _impl_.use_exact_lp_reason_ = value;
12398}
12399
12400// optional bool use_combined_no_overlap = 133 [default = false];
12402 bool value = CheckHasBit(_impl_._has_bits_[1], 0x04000000U);
12403 return value;
12404}
12406 ::google::protobuf::internal::TSanWrite(&_impl_);
12407 _impl_.use_combined_no_overlap_ = false;
12408 ClearHasBit(_impl_._has_bits_[1],
12409 0x04000000U);
12411inline bool SatParameters::use_combined_no_overlap() const {
12412 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_combined_no_overlap)
12413 return _internal_use_combined_no_overlap();
12414}
12415inline void SatParameters::set_use_combined_no_overlap(bool value) {
12416 _internal_set_use_combined_no_overlap(value);
12417 SetHasBit(_impl_._has_bits_[1], 0x04000000U);
12418 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_combined_no_overlap)
12419}
12420inline bool SatParameters::_internal_use_combined_no_overlap() const {
12421 ::google::protobuf::internal::TSanRead(&_impl_);
12422 return _impl_.use_combined_no_overlap_;
12423}
12424inline void SatParameters::_internal_set_use_combined_no_overlap(bool value) {
12425 ::google::protobuf::internal::TSanWrite(&_impl_);
12426 _impl_.use_combined_no_overlap_ = value;
12427}
12428
12429// optional int32 at_most_one_max_expansion_size = 270 [default = 3];
12431 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000002U);
12432 return value;
12433}
12435 ::google::protobuf::internal::TSanWrite(&_impl_);
12436 _impl_.at_most_one_max_expansion_size_ = 3;
12437 ClearHasBit(_impl_._has_bits_[8],
12438 0x00000002U);
12440inline ::int32_t SatParameters::at_most_one_max_expansion_size() const {
12441 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.at_most_one_max_expansion_size)
12442 return _internal_at_most_one_max_expansion_size();
12443}
12444inline void SatParameters::set_at_most_one_max_expansion_size(::int32_t value) {
12445 _internal_set_at_most_one_max_expansion_size(value);
12446 SetHasBit(_impl_._has_bits_[8], 0x00000002U);
12447 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.at_most_one_max_expansion_size)
12448}
12449inline ::int32_t SatParameters::_internal_at_most_one_max_expansion_size() const {
12450 ::google::protobuf::internal::TSanRead(&_impl_);
12451 return _impl_.at_most_one_max_expansion_size_;
12452}
12453inline void SatParameters::_internal_set_at_most_one_max_expansion_size(::int32_t value) {
12454 ::google::protobuf::internal::TSanWrite(&_impl_);
12455 _impl_.at_most_one_max_expansion_size_ = value;
12456}
12457
12458// optional bool catch_sigint_signal = 135 [default = true];
12459inline bool SatParameters::has_catch_sigint_signal() const {
12460 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000001U);
12461 return value;
12462}
12464 ::google::protobuf::internal::TSanWrite(&_impl_);
12465 _impl_.catch_sigint_signal_ = true;
12466 ClearHasBit(_impl_._has_bits_[6],
12467 0x00000001U);
12469inline bool SatParameters::catch_sigint_signal() const {
12470 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.catch_sigint_signal)
12471 return _internal_catch_sigint_signal();
12472}
12473inline void SatParameters::set_catch_sigint_signal(bool value) {
12474 _internal_set_catch_sigint_signal(value);
12475 SetHasBit(_impl_._has_bits_[6], 0x00000001U);
12476 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.catch_sigint_signal)
12477}
12478inline bool SatParameters::_internal_catch_sigint_signal() const {
12479 ::google::protobuf::internal::TSanRead(&_impl_);
12480 return _impl_.catch_sigint_signal_;
12481}
12482inline void SatParameters::_internal_set_catch_sigint_signal(bool value) {
12483 ::google::protobuf::internal::TSanWrite(&_impl_);
12484 _impl_.catch_sigint_signal_ = value;
12485}
12486
12487// optional bool use_implied_bounds = 144 [default = true];
12488inline bool SatParameters::has_use_implied_bounds() const {
12489 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000002U);
12490 return value;
12491}
12493 ::google::protobuf::internal::TSanWrite(&_impl_);
12494 _impl_.use_implied_bounds_ = true;
12495 ClearHasBit(_impl_._has_bits_[6],
12496 0x00000002U);
12498inline bool SatParameters::use_implied_bounds() const {
12499 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_implied_bounds)
12500 return _internal_use_implied_bounds();
12501}
12502inline void SatParameters::set_use_implied_bounds(bool value) {
12503 _internal_set_use_implied_bounds(value);
12504 SetHasBit(_impl_._has_bits_[6], 0x00000002U);
12505 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_implied_bounds)
12506}
12507inline bool SatParameters::_internal_use_implied_bounds() const {
12508 ::google::protobuf::internal::TSanRead(&_impl_);
12509 return _impl_.use_implied_bounds_;
12510}
12511inline void SatParameters::_internal_set_use_implied_bounds(bool value) {
12512 ::google::protobuf::internal::TSanWrite(&_impl_);
12513 _impl_.use_implied_bounds_ = value;
12514}
12515
12516// optional bool polish_lp_solution = 175 [default = false];
12517inline bool SatParameters::has_polish_lp_solution() const {
12518 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000040U);
12519 return value;
12520}
12522 ::google::protobuf::internal::TSanWrite(&_impl_);
12523 _impl_.polish_lp_solution_ = false;
12524 ClearHasBit(_impl_._has_bits_[2],
12525 0x00000040U);
12527inline bool SatParameters::polish_lp_solution() const {
12528 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.polish_lp_solution)
12529 return _internal_polish_lp_solution();
12530}
12531inline void SatParameters::set_polish_lp_solution(bool value) {
12532 _internal_set_polish_lp_solution(value);
12533 SetHasBit(_impl_._has_bits_[2], 0x00000040U);
12534 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.polish_lp_solution)
12535}
12536inline bool SatParameters::_internal_polish_lp_solution() const {
12537 ::google::protobuf::internal::TSanRead(&_impl_);
12538 return _impl_.polish_lp_solution_;
12539}
12540inline void SatParameters::_internal_set_polish_lp_solution(bool value) {
12541 ::google::protobuf::internal::TSanWrite(&_impl_);
12542 _impl_.polish_lp_solution_ = value;
12543}
12544
12545// optional double lp_primal_tolerance = 266 [default = 1e-07];
12546inline bool SatParameters::has_lp_primal_tolerance() const {
12547 bool value = CheckHasBit(_impl_._has_bits_[7], 0x04000000U);
12548 return value;
12549}
12551 ::google::protobuf::internal::TSanWrite(&_impl_);
12552 _impl_.lp_primal_tolerance_ = 1e-07;
12553 ClearHasBit(_impl_._has_bits_[7],
12554 0x04000000U);
12556inline double SatParameters::lp_primal_tolerance() const {
12557 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lp_primal_tolerance)
12558 return _internal_lp_primal_tolerance();
12559}
12560inline void SatParameters::set_lp_primal_tolerance(double value) {
12561 _internal_set_lp_primal_tolerance(value);
12562 SetHasBit(_impl_._has_bits_[7], 0x04000000U);
12563 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lp_primal_tolerance)
12564}
12565inline double SatParameters::_internal_lp_primal_tolerance() const {
12566 ::google::protobuf::internal::TSanRead(&_impl_);
12567 return _impl_.lp_primal_tolerance_;
12568}
12569inline void SatParameters::_internal_set_lp_primal_tolerance(double value) {
12570 ::google::protobuf::internal::TSanWrite(&_impl_);
12571 _impl_.lp_primal_tolerance_ = value;
12572}
12573
12574// optional double lp_dual_tolerance = 267 [default = 1e-07];
12575inline bool SatParameters::has_lp_dual_tolerance() const {
12576 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00000001U);
12577 return value;
12578}
12580 ::google::protobuf::internal::TSanWrite(&_impl_);
12581 _impl_.lp_dual_tolerance_ = 1e-07;
12582 ClearHasBit(_impl_._has_bits_[8],
12583 0x00000001U);
12585inline double SatParameters::lp_dual_tolerance() const {
12586 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.lp_dual_tolerance)
12587 return _internal_lp_dual_tolerance();
12588}
12589inline void SatParameters::set_lp_dual_tolerance(double value) {
12590 _internal_set_lp_dual_tolerance(value);
12591 SetHasBit(_impl_._has_bits_[8], 0x00000001U);
12592 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.lp_dual_tolerance)
12593}
12594inline double SatParameters::_internal_lp_dual_tolerance() const {
12595 ::google::protobuf::internal::TSanRead(&_impl_);
12596 return _impl_.lp_dual_tolerance_;
12597}
12598inline void SatParameters::_internal_set_lp_dual_tolerance(double value) {
12599 ::google::protobuf::internal::TSanWrite(&_impl_);
12600 _impl_.lp_dual_tolerance_ = value;
12601}
12602
12603// optional bool convert_intervals = 177 [default = true];
12604inline bool SatParameters::has_convert_intervals() const {
12605 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00100000U);
12606 return value;
12607}
12609 ::google::protobuf::internal::TSanWrite(&_impl_);
12610 _impl_.convert_intervals_ = true;
12611 ClearHasBit(_impl_._has_bits_[6],
12612 0x00100000U);
12614inline bool SatParameters::convert_intervals() const {
12615 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.convert_intervals)
12616 return _internal_convert_intervals();
12617}
12618inline void SatParameters::set_convert_intervals(bool value) {
12619 _internal_set_convert_intervals(value);
12620 SetHasBit(_impl_._has_bits_[6], 0x00100000U);
12621 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.convert_intervals)
12622}
12623inline bool SatParameters::_internal_convert_intervals() const {
12624 ::google::protobuf::internal::TSanRead(&_impl_);
12625 return _impl_.convert_intervals_;
12626}
12627inline void SatParameters::_internal_set_convert_intervals(bool value) {
12628 ::google::protobuf::internal::TSanWrite(&_impl_);
12629 _impl_.convert_intervals_ = value;
12630}
12631
12632// optional int32 symmetry_level = 183 [default = 2];
12633inline bool SatParameters::has_symmetry_level() const {
12634 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00800000U);
12635 return value;
12636}
12638 ::google::protobuf::internal::TSanWrite(&_impl_);
12639 _impl_.symmetry_level_ = 2;
12640 ClearHasBit(_impl_._has_bits_[6],
12641 0x00800000U);
12643inline ::int32_t SatParameters::symmetry_level() const {
12644 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.symmetry_level)
12645 return _internal_symmetry_level();
12646}
12647inline void SatParameters::set_symmetry_level(::int32_t value) {
12648 _internal_set_symmetry_level(value);
12649 SetHasBit(_impl_._has_bits_[6], 0x00800000U);
12650 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.symmetry_level)
12651}
12652inline ::int32_t SatParameters::_internal_symmetry_level() const {
12653 ::google::protobuf::internal::TSanRead(&_impl_);
12654 return _impl_.symmetry_level_;
12655}
12656inline void SatParameters::_internal_set_symmetry_level(::int32_t value) {
12657 ::google::protobuf::internal::TSanWrite(&_impl_);
12658 _impl_.symmetry_level_ = value;
12659}
12660
12661// optional bool use_symmetry_in_lp = 301 [default = false];
12662inline bool SatParameters::has_use_symmetry_in_lp() const {
12663 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00080000U);
12664 return value;
12665}
12667 ::google::protobuf::internal::TSanWrite(&_impl_);
12668 _impl_.use_symmetry_in_lp_ = false;
12669 ClearHasBit(_impl_._has_bits_[3],
12670 0x00080000U);
12672inline bool SatParameters::use_symmetry_in_lp() const {
12673 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_symmetry_in_lp)
12674 return _internal_use_symmetry_in_lp();
12675}
12676inline void SatParameters::set_use_symmetry_in_lp(bool value) {
12677 _internal_set_use_symmetry_in_lp(value);
12678 SetHasBit(_impl_._has_bits_[3], 0x00080000U);
12679 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_symmetry_in_lp)
12680}
12681inline bool SatParameters::_internal_use_symmetry_in_lp() const {
12682 ::google::protobuf::internal::TSanRead(&_impl_);
12683 return _impl_.use_symmetry_in_lp_;
12684}
12685inline void SatParameters::_internal_set_use_symmetry_in_lp(bool value) {
12686 ::google::protobuf::internal::TSanWrite(&_impl_);
12687 _impl_.use_symmetry_in_lp_ = value;
12688}
12689
12690// optional bool keep_symmetry_in_presolve = 303 [default = false];
12692 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00100000U);
12693 return value;
12694}
12696 ::google::protobuf::internal::TSanWrite(&_impl_);
12697 _impl_.keep_symmetry_in_presolve_ = false;
12698 ClearHasBit(_impl_._has_bits_[3],
12699 0x00100000U);
12701inline bool SatParameters::keep_symmetry_in_presolve() const {
12702 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.keep_symmetry_in_presolve)
12703 return _internal_keep_symmetry_in_presolve();
12704}
12705inline void SatParameters::set_keep_symmetry_in_presolve(bool value) {
12706 _internal_set_keep_symmetry_in_presolve(value);
12707 SetHasBit(_impl_._has_bits_[3], 0x00100000U);
12708 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.keep_symmetry_in_presolve)
12709}
12710inline bool SatParameters::_internal_keep_symmetry_in_presolve() const {
12711 ::google::protobuf::internal::TSanRead(&_impl_);
12712 return _impl_.keep_symmetry_in_presolve_;
12713}
12714inline void SatParameters::_internal_set_keep_symmetry_in_presolve(bool value) {
12715 ::google::protobuf::internal::TSanWrite(&_impl_);
12716 _impl_.keep_symmetry_in_presolve_ = value;
12717}
12718
12719// optional double symmetry_detection_deterministic_time_limit = 302 [default = 1];
12721 bool value = CheckHasBit(_impl_._has_bits_[8], 0x00040000U);
12722 return value;
12723}
12725 ::google::protobuf::internal::TSanWrite(&_impl_);
12726 _impl_.symmetry_detection_deterministic_time_limit_ = 1;
12727 ClearHasBit(_impl_._has_bits_[8],
12728 0x00040000U);
12731 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.symmetry_detection_deterministic_time_limit)
12732 return _internal_symmetry_detection_deterministic_time_limit();
12733}
12735 _internal_set_symmetry_detection_deterministic_time_limit(value);
12736 SetHasBit(_impl_._has_bits_[8], 0x00040000U);
12737 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.symmetry_detection_deterministic_time_limit)
12738}
12739inline double SatParameters::_internal_symmetry_detection_deterministic_time_limit() const {
12740 ::google::protobuf::internal::TSanRead(&_impl_);
12741 return _impl_.symmetry_detection_deterministic_time_limit_;
12742}
12743inline void SatParameters::_internal_set_symmetry_detection_deterministic_time_limit(double value) {
12744 ::google::protobuf::internal::TSanWrite(&_impl_);
12745 _impl_.symmetry_detection_deterministic_time_limit_ = value;
12746}
12747
12748// optional bool new_linear_propagation = 224 [default = true];
12750 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000800U);
12751 return value;
12752}
12754 ::google::protobuf::internal::TSanWrite(&_impl_);
12755 _impl_.new_linear_propagation_ = true;
12756 ClearHasBit(_impl_._has_bits_[7],
12757 0x00000800U);
12759inline bool SatParameters::new_linear_propagation() const {
12760 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.new_linear_propagation)
12761 return _internal_new_linear_propagation();
12762}
12763inline void SatParameters::set_new_linear_propagation(bool value) {
12764 _internal_set_new_linear_propagation(value);
12765 SetHasBit(_impl_._has_bits_[7], 0x00000800U);
12766 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.new_linear_propagation)
12767}
12768inline bool SatParameters::_internal_new_linear_propagation() const {
12769 ::google::protobuf::internal::TSanRead(&_impl_);
12770 return _impl_.new_linear_propagation_;
12771}
12772inline void SatParameters::_internal_set_new_linear_propagation(bool value) {
12773 ::google::protobuf::internal::TSanWrite(&_impl_);
12774 _impl_.new_linear_propagation_ = value;
12775}
12776
12777// optional int32 linear_split_size = 256 [default = 100];
12778inline bool SatParameters::has_linear_split_size() const {
12779 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00100000U);
12780 return value;
12781}
12783 ::google::protobuf::internal::TSanWrite(&_impl_);
12784 _impl_.linear_split_size_ = 100;
12785 ClearHasBit(_impl_._has_bits_[7],
12786 0x00100000U);
12788inline ::int32_t SatParameters::linear_split_size() const {
12789 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.linear_split_size)
12790 return _internal_linear_split_size();
12791}
12792inline void SatParameters::set_linear_split_size(::int32_t value) {
12793 _internal_set_linear_split_size(value);
12794 SetHasBit(_impl_._has_bits_[7], 0x00100000U);
12795 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.linear_split_size)
12796}
12797inline ::int32_t SatParameters::_internal_linear_split_size() const {
12798 ::google::protobuf::internal::TSanRead(&_impl_);
12799 return _impl_.linear_split_size_;
12800}
12801inline void SatParameters::_internal_set_linear_split_size(::int32_t value) {
12802 ::google::protobuf::internal::TSanWrite(&_impl_);
12803 _impl_.linear_split_size_ = value;
12804}
12805
12806// optional int32 linearization_level = 90 [default = 1];
12807inline bool SatParameters::has_linearization_level() const {
12808 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000008U);
12809 return value;
12810}
12812 ::google::protobuf::internal::TSanWrite(&_impl_);
12813 _impl_.linearization_level_ = 1;
12814 ClearHasBit(_impl_._has_bits_[5],
12815 0x00000008U);
12817inline ::int32_t SatParameters::linearization_level() const {
12818 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.linearization_level)
12819 return _internal_linearization_level();
12820}
12821inline void SatParameters::set_linearization_level(::int32_t value) {
12822 _internal_set_linearization_level(value);
12823 SetHasBit(_impl_._has_bits_[5], 0x00000008U);
12824 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.linearization_level)
12825}
12826inline ::int32_t SatParameters::_internal_linearization_level() const {
12827 ::google::protobuf::internal::TSanRead(&_impl_);
12828 return _impl_.linearization_level_;
12829}
12830inline void SatParameters::_internal_set_linearization_level(::int32_t value) {
12831 ::google::protobuf::internal::TSanWrite(&_impl_);
12832 _impl_.linearization_level_ = value;
12833}
12834
12835// optional int32 boolean_encoding_level = 107 [default = 1];
12837 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000400U);
12838 return value;
12839}
12841 ::google::protobuf::internal::TSanWrite(&_impl_);
12842 _impl_.boolean_encoding_level_ = 1;
12843 ClearHasBit(_impl_._has_bits_[5],
12844 0x00000400U);
12846inline ::int32_t SatParameters::boolean_encoding_level() const {
12847 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.boolean_encoding_level)
12848 return _internal_boolean_encoding_level();
12849}
12850inline void SatParameters::set_boolean_encoding_level(::int32_t value) {
12851 _internal_set_boolean_encoding_level(value);
12852 SetHasBit(_impl_._has_bits_[5], 0x00000400U);
12853 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.boolean_encoding_level)
12854}
12855inline ::int32_t SatParameters::_internal_boolean_encoding_level() const {
12856 ::google::protobuf::internal::TSanRead(&_impl_);
12857 return _impl_.boolean_encoding_level_;
12858}
12859inline void SatParameters::_internal_set_boolean_encoding_level(::int32_t value) {
12860 ::google::protobuf::internal::TSanWrite(&_impl_);
12861 _impl_.boolean_encoding_level_ = value;
12862}
12863
12864// optional int32 max_domain_size_when_encoding_eq_neq_constraints = 191 [default = 16];
12866 bool value = CheckHasBit(_impl_._has_bits_[6], 0x02000000U);
12867 return value;
12868}
12870 ::google::protobuf::internal::TSanWrite(&_impl_);
12871 _impl_.max_domain_size_when_encoding_eq_neq_constraints_ = 16;
12872 ClearHasBit(_impl_._has_bits_[6],
12873 0x02000000U);
12876 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_domain_size_when_encoding_eq_neq_constraints)
12877 return _internal_max_domain_size_when_encoding_eq_neq_constraints();
12878}
12880 _internal_set_max_domain_size_when_encoding_eq_neq_constraints(value);
12881 SetHasBit(_impl_._has_bits_[6], 0x02000000U);
12882 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_domain_size_when_encoding_eq_neq_constraints)
12883}
12884inline ::int32_t SatParameters::_internal_max_domain_size_when_encoding_eq_neq_constraints() const {
12885 ::google::protobuf::internal::TSanRead(&_impl_);
12886 return _impl_.max_domain_size_when_encoding_eq_neq_constraints_;
12887}
12888inline void SatParameters::_internal_set_max_domain_size_when_encoding_eq_neq_constraints(::int32_t value) {
12889 ::google::protobuf::internal::TSanWrite(&_impl_);
12890 _impl_.max_domain_size_when_encoding_eq_neq_constraints_ = value;
12891}
12892
12893// optional int32 max_num_cuts = 91 [default = 10000];
12894inline bool SatParameters::has_max_num_cuts() const {
12895 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000010U);
12896 return value;
12897}
12899 ::google::protobuf::internal::TSanWrite(&_impl_);
12900 _impl_.max_num_cuts_ = 10000;
12901 ClearHasBit(_impl_._has_bits_[5],
12902 0x00000010U);
12904inline ::int32_t SatParameters::max_num_cuts() const {
12905 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_num_cuts)
12906 return _internal_max_num_cuts();
12907}
12908inline void SatParameters::set_max_num_cuts(::int32_t value) {
12909 _internal_set_max_num_cuts(value);
12910 SetHasBit(_impl_._has_bits_[5], 0x00000010U);
12911 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_num_cuts)
12912}
12913inline ::int32_t SatParameters::_internal_max_num_cuts() const {
12914 ::google::protobuf::internal::TSanRead(&_impl_);
12915 return _impl_.max_num_cuts_;
12916}
12917inline void SatParameters::_internal_set_max_num_cuts(::int32_t value) {
12918 ::google::protobuf::internal::TSanWrite(&_impl_);
12919 _impl_.max_num_cuts_ = value;
12920}
12921
12922// optional int32 cut_level = 196 [default = 1];
12923inline bool SatParameters::has_cut_level() const {
12924 bool value = CheckHasBit(_impl_._has_bits_[6], 0x20000000U);
12925 return value;
12926}
12927inline void SatParameters::clear_cut_level() {
12928 ::google::protobuf::internal::TSanWrite(&_impl_);
12929 _impl_.cut_level_ = 1;
12930 ClearHasBit(_impl_._has_bits_[6],
12931 0x20000000U);
12933inline ::int32_t SatParameters::cut_level() const {
12934 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_level)
12935 return _internal_cut_level();
12936}
12937inline void SatParameters::set_cut_level(::int32_t value) {
12938 _internal_set_cut_level(value);
12939 SetHasBit(_impl_._has_bits_[6], 0x20000000U);
12940 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_level)
12941}
12942inline ::int32_t SatParameters::_internal_cut_level() const {
12943 ::google::protobuf::internal::TSanRead(&_impl_);
12944 return _impl_.cut_level_;
12945}
12946inline void SatParameters::_internal_set_cut_level(::int32_t value) {
12947 ::google::protobuf::internal::TSanWrite(&_impl_);
12948 _impl_.cut_level_ = value;
12949}
12950
12951// optional bool only_add_cuts_at_level_zero = 92 [default = false];
12953 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00010000U);
12954 return value;
12955}
12957 ::google::protobuf::internal::TSanWrite(&_impl_);
12958 _impl_.only_add_cuts_at_level_zero_ = false;
12959 ClearHasBit(_impl_._has_bits_[1],
12960 0x00010000U);
12963 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.only_add_cuts_at_level_zero)
12964 return _internal_only_add_cuts_at_level_zero();
12965}
12966inline void SatParameters::set_only_add_cuts_at_level_zero(bool value) {
12967 _internal_set_only_add_cuts_at_level_zero(value);
12968 SetHasBit(_impl_._has_bits_[1], 0x00010000U);
12969 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.only_add_cuts_at_level_zero)
12970}
12971inline bool SatParameters::_internal_only_add_cuts_at_level_zero() const {
12972 ::google::protobuf::internal::TSanRead(&_impl_);
12973 return _impl_.only_add_cuts_at_level_zero_;
12974}
12975inline void SatParameters::_internal_set_only_add_cuts_at_level_zero(bool value) {
12976 ::google::protobuf::internal::TSanWrite(&_impl_);
12977 _impl_.only_add_cuts_at_level_zero_ = value;
12978}
12979
12980// optional bool add_objective_cut = 197 [default = false];
12981inline bool SatParameters::has_add_objective_cut() const {
12982 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00040000U);
12983 return value;
12984}
12986 ::google::protobuf::internal::TSanWrite(&_impl_);
12987 _impl_.add_objective_cut_ = false;
12988 ClearHasBit(_impl_._has_bits_[2],
12989 0x00040000U);
12991inline bool SatParameters::add_objective_cut() const {
12992 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_objective_cut)
12993 return _internal_add_objective_cut();
12994}
12995inline void SatParameters::set_add_objective_cut(bool value) {
12996 _internal_set_add_objective_cut(value);
12997 SetHasBit(_impl_._has_bits_[2], 0x00040000U);
12998 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_objective_cut)
12999}
13000inline bool SatParameters::_internal_add_objective_cut() const {
13001 ::google::protobuf::internal::TSanRead(&_impl_);
13002 return _impl_.add_objective_cut_;
13003}
13004inline void SatParameters::_internal_set_add_objective_cut(bool value) {
13005 ::google::protobuf::internal::TSanWrite(&_impl_);
13006 _impl_.add_objective_cut_ = value;
13007}
13008
13009// optional bool add_cg_cuts = 117 [default = true];
13010inline bool SatParameters::has_add_cg_cuts() const {
13011 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00080000U);
13012 return value;
13013}
13015 ::google::protobuf::internal::TSanWrite(&_impl_);
13016 _impl_.add_cg_cuts_ = true;
13017 ClearHasBit(_impl_._has_bits_[5],
13018 0x00080000U);
13020inline bool SatParameters::add_cg_cuts() const {
13021 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_cg_cuts)
13022 return _internal_add_cg_cuts();
13023}
13024inline void SatParameters::set_add_cg_cuts(bool value) {
13025 _internal_set_add_cg_cuts(value);
13026 SetHasBit(_impl_._has_bits_[5], 0x00080000U);
13027 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_cg_cuts)
13028}
13029inline bool SatParameters::_internal_add_cg_cuts() const {
13030 ::google::protobuf::internal::TSanRead(&_impl_);
13031 return _impl_.add_cg_cuts_;
13032}
13033inline void SatParameters::_internal_set_add_cg_cuts(bool value) {
13034 ::google::protobuf::internal::TSanWrite(&_impl_);
13035 _impl_.add_cg_cuts_ = value;
13036}
13037
13038// optional bool add_mir_cuts = 120 [default = true];
13039inline bool SatParameters::has_add_mir_cuts() const {
13040 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00100000U);
13041 return value;
13042}
13044 ::google::protobuf::internal::TSanWrite(&_impl_);
13045 _impl_.add_mir_cuts_ = true;
13046 ClearHasBit(_impl_._has_bits_[5],
13047 0x00100000U);
13049inline bool SatParameters::add_mir_cuts() const {
13050 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_mir_cuts)
13051 return _internal_add_mir_cuts();
13052}
13053inline void SatParameters::set_add_mir_cuts(bool value) {
13054 _internal_set_add_mir_cuts(value);
13055 SetHasBit(_impl_._has_bits_[5], 0x00100000U);
13056 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_mir_cuts)
13057}
13058inline bool SatParameters::_internal_add_mir_cuts() const {
13059 ::google::protobuf::internal::TSanRead(&_impl_);
13060 return _impl_.add_mir_cuts_;
13061}
13062inline void SatParameters::_internal_set_add_mir_cuts(bool value) {
13063 ::google::protobuf::internal::TSanWrite(&_impl_);
13064 _impl_.add_mir_cuts_ = value;
13065}
13066
13067// optional bool add_zero_half_cuts = 169 [default = true];
13068inline bool SatParameters::has_add_zero_half_cuts() const {
13069 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00020000U);
13070 return value;
13071}
13073 ::google::protobuf::internal::TSanWrite(&_impl_);
13074 _impl_.add_zero_half_cuts_ = true;
13075 ClearHasBit(_impl_._has_bits_[6],
13076 0x00020000U);
13078inline bool SatParameters::add_zero_half_cuts() const {
13079 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_zero_half_cuts)
13080 return _internal_add_zero_half_cuts();
13081}
13082inline void SatParameters::set_add_zero_half_cuts(bool value) {
13083 _internal_set_add_zero_half_cuts(value);
13084 SetHasBit(_impl_._has_bits_[6], 0x00020000U);
13085 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_zero_half_cuts)
13086}
13087inline bool SatParameters::_internal_add_zero_half_cuts() const {
13088 ::google::protobuf::internal::TSanRead(&_impl_);
13089 return _impl_.add_zero_half_cuts_;
13090}
13091inline void SatParameters::_internal_set_add_zero_half_cuts(bool value) {
13092 ::google::protobuf::internal::TSanWrite(&_impl_);
13093 _impl_.add_zero_half_cuts_ = value;
13094}
13095
13096// optional bool add_clique_cuts = 172 [default = true];
13097inline bool SatParameters::has_add_clique_cuts() const {
13098 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00080000U);
13099 return value;
13100}
13102 ::google::protobuf::internal::TSanWrite(&_impl_);
13103 _impl_.add_clique_cuts_ = true;
13104 ClearHasBit(_impl_._has_bits_[6],
13105 0x00080000U);
13107inline bool SatParameters::add_clique_cuts() const {
13108 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_clique_cuts)
13109 return _internal_add_clique_cuts();
13110}
13111inline void SatParameters::set_add_clique_cuts(bool value) {
13112 _internal_set_add_clique_cuts(value);
13113 SetHasBit(_impl_._has_bits_[6], 0x00080000U);
13114 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_clique_cuts)
13115}
13116inline bool SatParameters::_internal_add_clique_cuts() const {
13117 ::google::protobuf::internal::TSanRead(&_impl_);
13118 return _impl_.add_clique_cuts_;
13119}
13120inline void SatParameters::_internal_set_add_clique_cuts(bool value) {
13121 ::google::protobuf::internal::TSanWrite(&_impl_);
13122 _impl_.add_clique_cuts_ = value;
13123}
13124
13125// optional bool add_rlt_cuts = 279 [default = true];
13126inline bool SatParameters::has_add_rlt_cuts() const {
13127 bool value = CheckHasBit(_impl_._has_bits_[7], 0x80000000U);
13128 return value;
13129}
13131 ::google::protobuf::internal::TSanWrite(&_impl_);
13132 _impl_.add_rlt_cuts_ = true;
13133 ClearHasBit(_impl_._has_bits_[7],
13134 0x80000000U);
13136inline bool SatParameters::add_rlt_cuts() const {
13137 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_rlt_cuts)
13138 return _internal_add_rlt_cuts();
13139}
13140inline void SatParameters::set_add_rlt_cuts(bool value) {
13141 _internal_set_add_rlt_cuts(value);
13142 SetHasBit(_impl_._has_bits_[7], 0x80000000U);
13143 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_rlt_cuts)
13144}
13145inline bool SatParameters::_internal_add_rlt_cuts() const {
13146 ::google::protobuf::internal::TSanRead(&_impl_);
13147 return _impl_.add_rlt_cuts_;
13148}
13149inline void SatParameters::_internal_set_add_rlt_cuts(bool value) {
13150 ::google::protobuf::internal::TSanWrite(&_impl_);
13151 _impl_.add_rlt_cuts_ = value;
13152}
13153
13154// optional int32 max_all_diff_cut_size = 148 [default = 64];
13155inline bool SatParameters::has_max_all_diff_cut_size() const {
13156 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000040U);
13157 return value;
13158}
13160 ::google::protobuf::internal::TSanWrite(&_impl_);
13161 _impl_.max_all_diff_cut_size_ = 64;
13162 ClearHasBit(_impl_._has_bits_[6],
13163 0x00000040U);
13165inline ::int32_t SatParameters::max_all_diff_cut_size() const {
13166 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_all_diff_cut_size)
13167 return _internal_max_all_diff_cut_size();
13168}
13169inline void SatParameters::set_max_all_diff_cut_size(::int32_t value) {
13170 _internal_set_max_all_diff_cut_size(value);
13171 SetHasBit(_impl_._has_bits_[6], 0x00000040U);
13172 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_all_diff_cut_size)
13173}
13174inline ::int32_t SatParameters::_internal_max_all_diff_cut_size() const {
13175 ::google::protobuf::internal::TSanRead(&_impl_);
13176 return _impl_.max_all_diff_cut_size_;
13177}
13178inline void SatParameters::_internal_set_max_all_diff_cut_size(::int32_t value) {
13179 ::google::protobuf::internal::TSanWrite(&_impl_);
13180 _impl_.max_all_diff_cut_size_ = value;
13181}
13182
13183// optional bool add_lin_max_cuts = 152 [default = true];
13184inline bool SatParameters::has_add_lin_max_cuts() const {
13185 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000004U);
13186 return value;
13187}
13189 ::google::protobuf::internal::TSanWrite(&_impl_);
13190 _impl_.add_lin_max_cuts_ = true;
13191 ClearHasBit(_impl_._has_bits_[6],
13192 0x00000004U);
13194inline bool SatParameters::add_lin_max_cuts() const {
13195 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_lin_max_cuts)
13196 return _internal_add_lin_max_cuts();
13197}
13198inline void SatParameters::set_add_lin_max_cuts(bool value) {
13199 _internal_set_add_lin_max_cuts(value);
13200 SetHasBit(_impl_._has_bits_[6], 0x00000004U);
13201 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_lin_max_cuts)
13202}
13203inline bool SatParameters::_internal_add_lin_max_cuts() const {
13204 ::google::protobuf::internal::TSanRead(&_impl_);
13205 return _impl_.add_lin_max_cuts_;
13206}
13207inline void SatParameters::_internal_set_add_lin_max_cuts(bool value) {
13208 ::google::protobuf::internal::TSanWrite(&_impl_);
13209 _impl_.add_lin_max_cuts_ = value;
13210}
13211
13212// optional int32 max_integer_rounding_scaling = 119 [default = 600];
13214 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00010000U);
13215 return value;
13216}
13218 ::google::protobuf::internal::TSanWrite(&_impl_);
13219 _impl_.max_integer_rounding_scaling_ = 600;
13220 ClearHasBit(_impl_._has_bits_[5],
13221 0x00010000U);
13223inline ::int32_t SatParameters::max_integer_rounding_scaling() const {
13224 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_integer_rounding_scaling)
13225 return _internal_max_integer_rounding_scaling();
13226}
13227inline void SatParameters::set_max_integer_rounding_scaling(::int32_t value) {
13228 _internal_set_max_integer_rounding_scaling(value);
13229 SetHasBit(_impl_._has_bits_[5], 0x00010000U);
13230 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_integer_rounding_scaling)
13231}
13232inline ::int32_t SatParameters::_internal_max_integer_rounding_scaling() const {
13233 ::google::protobuf::internal::TSanRead(&_impl_);
13234 return _impl_.max_integer_rounding_scaling_;
13235}
13236inline void SatParameters::_internal_set_max_integer_rounding_scaling(::int32_t value) {
13237 ::google::protobuf::internal::TSanWrite(&_impl_);
13238 _impl_.max_integer_rounding_scaling_ = value;
13239}
13240
13241// optional bool add_lp_constraints_lazily = 112 [default = true];
13243 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00002000U);
13244 return value;
13245}
13247 ::google::protobuf::internal::TSanWrite(&_impl_);
13248 _impl_.add_lp_constraints_lazily_ = true;
13249 ClearHasBit(_impl_._has_bits_[5],
13250 0x00002000U);
13252inline bool SatParameters::add_lp_constraints_lazily() const {
13253 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.add_lp_constraints_lazily)
13254 return _internal_add_lp_constraints_lazily();
13255}
13256inline void SatParameters::set_add_lp_constraints_lazily(bool value) {
13257 _internal_set_add_lp_constraints_lazily(value);
13258 SetHasBit(_impl_._has_bits_[5], 0x00002000U);
13259 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.add_lp_constraints_lazily)
13260}
13261inline bool SatParameters::_internal_add_lp_constraints_lazily() const {
13262 ::google::protobuf::internal::TSanRead(&_impl_);
13263 return _impl_.add_lp_constraints_lazily_;
13264}
13265inline void SatParameters::_internal_set_add_lp_constraints_lazily(bool value) {
13266 ::google::protobuf::internal::TSanWrite(&_impl_);
13267 _impl_.add_lp_constraints_lazily_ = value;
13268}
13269
13270// optional int32 root_lp_iterations = 227 [default = 2000];
13271inline bool SatParameters::has_root_lp_iterations() const {
13272 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000040U);
13273 return value;
13274}
13276 ::google::protobuf::internal::TSanWrite(&_impl_);
13277 _impl_.root_lp_iterations_ = 2000;
13278 ClearHasBit(_impl_._has_bits_[7],
13279 0x00000040U);
13281inline ::int32_t SatParameters::root_lp_iterations() const {
13282 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.root_lp_iterations)
13283 return _internal_root_lp_iterations();
13284}
13285inline void SatParameters::set_root_lp_iterations(::int32_t value) {
13286 _internal_set_root_lp_iterations(value);
13287 SetHasBit(_impl_._has_bits_[7], 0x00000040U);
13288 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.root_lp_iterations)
13289}
13290inline ::int32_t SatParameters::_internal_root_lp_iterations() const {
13291 ::google::protobuf::internal::TSanRead(&_impl_);
13292 return _impl_.root_lp_iterations_;
13293}
13294inline void SatParameters::_internal_set_root_lp_iterations(::int32_t value) {
13295 ::google::protobuf::internal::TSanWrite(&_impl_);
13296 _impl_.root_lp_iterations_ = value;
13297}
13298
13299// optional double min_orthogonality_for_lp_constraints = 115 [default = 0.05];
13301 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00020000U);
13302 return value;
13303}
13305 ::google::protobuf::internal::TSanWrite(&_impl_);
13306 _impl_.min_orthogonality_for_lp_constraints_ = 0.05;
13307 ClearHasBit(_impl_._has_bits_[5],
13308 0x00020000U);
13311 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.min_orthogonality_for_lp_constraints)
13312 return _internal_min_orthogonality_for_lp_constraints();
13313}
13315 _internal_set_min_orthogonality_for_lp_constraints(value);
13316 SetHasBit(_impl_._has_bits_[5], 0x00020000U);
13317 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.min_orthogonality_for_lp_constraints)
13318}
13319inline double SatParameters::_internal_min_orthogonality_for_lp_constraints() const {
13320 ::google::protobuf::internal::TSanRead(&_impl_);
13321 return _impl_.min_orthogonality_for_lp_constraints_;
13322}
13323inline void SatParameters::_internal_set_min_orthogonality_for_lp_constraints(double value) {
13324 ::google::protobuf::internal::TSanWrite(&_impl_);
13325 _impl_.min_orthogonality_for_lp_constraints_ = value;
13326}
13327
13328// optional int32 max_cut_rounds_at_level_zero = 154 [default = 1];
13330 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000100U);
13331 return value;
13332}
13334 ::google::protobuf::internal::TSanWrite(&_impl_);
13335 _impl_.max_cut_rounds_at_level_zero_ = 1;
13336 ClearHasBit(_impl_._has_bits_[6],
13337 0x00000100U);
13339inline ::int32_t SatParameters::max_cut_rounds_at_level_zero() const {
13340 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_cut_rounds_at_level_zero)
13341 return _internal_max_cut_rounds_at_level_zero();
13342}
13343inline void SatParameters::set_max_cut_rounds_at_level_zero(::int32_t value) {
13344 _internal_set_max_cut_rounds_at_level_zero(value);
13345 SetHasBit(_impl_._has_bits_[6], 0x00000100U);
13346 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_cut_rounds_at_level_zero)
13347}
13348inline ::int32_t SatParameters::_internal_max_cut_rounds_at_level_zero() const {
13349 ::google::protobuf::internal::TSanRead(&_impl_);
13350 return _impl_.max_cut_rounds_at_level_zero_;
13351}
13352inline void SatParameters::_internal_set_max_cut_rounds_at_level_zero(::int32_t value) {
13353 ::google::protobuf::internal::TSanWrite(&_impl_);
13354 _impl_.max_cut_rounds_at_level_zero_ = value;
13355}
13356
13357// optional int32 max_consecutive_inactive_count = 121 [default = 100];
13359 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00400000U);
13360 return value;
13361}
13363 ::google::protobuf::internal::TSanWrite(&_impl_);
13364 _impl_.max_consecutive_inactive_count_ = 100;
13365 ClearHasBit(_impl_._has_bits_[5],
13366 0x00400000U);
13368inline ::int32_t SatParameters::max_consecutive_inactive_count() const {
13369 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.max_consecutive_inactive_count)
13370 return _internal_max_consecutive_inactive_count();
13371}
13372inline void SatParameters::set_max_consecutive_inactive_count(::int32_t value) {
13373 _internal_set_max_consecutive_inactive_count(value);
13374 SetHasBit(_impl_._has_bits_[5], 0x00400000U);
13375 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.max_consecutive_inactive_count)
13376}
13377inline ::int32_t SatParameters::_internal_max_consecutive_inactive_count() const {
13378 ::google::protobuf::internal::TSanRead(&_impl_);
13379 return _impl_.max_consecutive_inactive_count_;
13380}
13381inline void SatParameters::_internal_set_max_consecutive_inactive_count(::int32_t value) {
13382 ::google::protobuf::internal::TSanWrite(&_impl_);
13383 _impl_.max_consecutive_inactive_count_ = value;
13384}
13385
13386// optional double cut_max_active_count_value = 155 [default = 10000000000];
13388 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000200U);
13389 return value;
13390}
13392 ::google::protobuf::internal::TSanWrite(&_impl_);
13393 _impl_.cut_max_active_count_value_ = 10000000000;
13394 ClearHasBit(_impl_._has_bits_[6],
13395 0x00000200U);
13397inline double SatParameters::cut_max_active_count_value() const {
13398 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_max_active_count_value)
13399 return _internal_cut_max_active_count_value();
13400}
13401inline void SatParameters::set_cut_max_active_count_value(double value) {
13402 _internal_set_cut_max_active_count_value(value);
13403 SetHasBit(_impl_._has_bits_[6], 0x00000200U);
13404 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_max_active_count_value)
13405}
13406inline double SatParameters::_internal_cut_max_active_count_value() const {
13407 ::google::protobuf::internal::TSanRead(&_impl_);
13408 return _impl_.cut_max_active_count_value_;
13409}
13410inline void SatParameters::_internal_set_cut_max_active_count_value(double value) {
13411 ::google::protobuf::internal::TSanWrite(&_impl_);
13412 _impl_.cut_max_active_count_value_ = value;
13413}
13414
13415// optional double cut_active_count_decay = 156 [default = 0.8];
13417 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00000400U);
13418 return value;
13419}
13421 ::google::protobuf::internal::TSanWrite(&_impl_);
13422 _impl_.cut_active_count_decay_ = 0.8;
13423 ClearHasBit(_impl_._has_bits_[6],
13424 0x00000400U);
13426inline double SatParameters::cut_active_count_decay() const {
13427 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_active_count_decay)
13428 return _internal_cut_active_count_decay();
13429}
13430inline void SatParameters::set_cut_active_count_decay(double value) {
13431 _internal_set_cut_active_count_decay(value);
13432 SetHasBit(_impl_._has_bits_[6], 0x00000400U);
13433 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_active_count_decay)
13434}
13435inline double SatParameters::_internal_cut_active_count_decay() const {
13436 ::google::protobuf::internal::TSanRead(&_impl_);
13437 return _impl_.cut_active_count_decay_;
13438}
13439inline void SatParameters::_internal_set_cut_active_count_decay(double value) {
13440 ::google::protobuf::internal::TSanWrite(&_impl_);
13441 _impl_.cut_active_count_decay_ = value;
13442}
13443
13444// optional int32 cut_cleanup_target = 157 [default = 1000];
13445inline bool SatParameters::has_cut_cleanup_target() const {
13446 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00001000U);
13447 return value;
13448}
13450 ::google::protobuf::internal::TSanWrite(&_impl_);
13451 _impl_.cut_cleanup_target_ = 1000;
13452 ClearHasBit(_impl_._has_bits_[6],
13453 0x00001000U);
13455inline ::int32_t SatParameters::cut_cleanup_target() const {
13456 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.cut_cleanup_target)
13457 return _internal_cut_cleanup_target();
13458}
13459inline void SatParameters::set_cut_cleanup_target(::int32_t value) {
13460 _internal_set_cut_cleanup_target(value);
13461 SetHasBit(_impl_._has_bits_[6], 0x00001000U);
13462 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.cut_cleanup_target)
13463}
13464inline ::int32_t SatParameters::_internal_cut_cleanup_target() const {
13465 ::google::protobuf::internal::TSanRead(&_impl_);
13466 return _impl_.cut_cleanup_target_;
13467}
13468inline void SatParameters::_internal_set_cut_cleanup_target(::int32_t value) {
13469 ::google::protobuf::internal::TSanWrite(&_impl_);
13470 _impl_.cut_cleanup_target_ = value;
13471}
13472
13473// optional int32 new_constraints_batch_size = 122 [default = 50];
13475 bool value = CheckHasBit(_impl_._has_bits_[5], 0x02000000U);
13476 return value;
13477}
13479 ::google::protobuf::internal::TSanWrite(&_impl_);
13480 _impl_.new_constraints_batch_size_ = 50;
13481 ClearHasBit(_impl_._has_bits_[5],
13482 0x02000000U);
13484inline ::int32_t SatParameters::new_constraints_batch_size() const {
13485 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.new_constraints_batch_size)
13486 return _internal_new_constraints_batch_size();
13487}
13488inline void SatParameters::set_new_constraints_batch_size(::int32_t value) {
13489 _internal_set_new_constraints_batch_size(value);
13490 SetHasBit(_impl_._has_bits_[5], 0x02000000U);
13491 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.new_constraints_batch_size)
13492}
13493inline ::int32_t SatParameters::_internal_new_constraints_batch_size() const {
13494 ::google::protobuf::internal::TSanRead(&_impl_);
13495 return _impl_.new_constraints_batch_size_;
13496}
13497inline void SatParameters::_internal_set_new_constraints_batch_size(::int32_t value) {
13498 ::google::protobuf::internal::TSanWrite(&_impl_);
13499 _impl_.new_constraints_batch_size_ = value;
13500}
13501
13502// optional bool exploit_integer_lp_solution = 94 [default = true];
13504 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00000040U);
13505 return value;
13506}
13508 ::google::protobuf::internal::TSanWrite(&_impl_);
13509 _impl_.exploit_integer_lp_solution_ = true;
13510 ClearHasBit(_impl_._has_bits_[5],
13511 0x00000040U);
13514 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_integer_lp_solution)
13515 return _internal_exploit_integer_lp_solution();
13516}
13517inline void SatParameters::set_exploit_integer_lp_solution(bool value) {
13518 _internal_set_exploit_integer_lp_solution(value);
13519 SetHasBit(_impl_._has_bits_[5], 0x00000040U);
13520 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_integer_lp_solution)
13521}
13522inline bool SatParameters::_internal_exploit_integer_lp_solution() const {
13523 ::google::protobuf::internal::TSanRead(&_impl_);
13524 return _impl_.exploit_integer_lp_solution_;
13525}
13526inline void SatParameters::_internal_set_exploit_integer_lp_solution(bool value) {
13527 ::google::protobuf::internal::TSanWrite(&_impl_);
13528 _impl_.exploit_integer_lp_solution_ = value;
13529}
13530
13531// optional bool exploit_all_lp_solution = 116 [default = true];
13533 bool value = CheckHasBit(_impl_._has_bits_[5], 0x00040000U);
13534 return value;
13535}
13537 ::google::protobuf::internal::TSanWrite(&_impl_);
13538 _impl_.exploit_all_lp_solution_ = true;
13539 ClearHasBit(_impl_._has_bits_[5],
13540 0x00040000U);
13542inline bool SatParameters::exploit_all_lp_solution() const {
13543 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_all_lp_solution)
13544 return _internal_exploit_all_lp_solution();
13545}
13546inline void SatParameters::set_exploit_all_lp_solution(bool value) {
13547 _internal_set_exploit_all_lp_solution(value);
13548 SetHasBit(_impl_._has_bits_[5], 0x00040000U);
13549 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_all_lp_solution)
13550}
13551inline bool SatParameters::_internal_exploit_all_lp_solution() const {
13552 ::google::protobuf::internal::TSanRead(&_impl_);
13553 return _impl_.exploit_all_lp_solution_;
13554}
13555inline void SatParameters::_internal_set_exploit_all_lp_solution(bool value) {
13556 ::google::protobuf::internal::TSanWrite(&_impl_);
13557 _impl_.exploit_all_lp_solution_ = value;
13558}
13559
13560// optional bool exploit_best_solution = 130 [default = false];
13561inline bool SatParameters::has_exploit_best_solution() const {
13562 bool value = CheckHasBit(_impl_._has_bits_[1], 0x00800000U);
13563 return value;
13564}
13566 ::google::protobuf::internal::TSanWrite(&_impl_);
13567 _impl_.exploit_best_solution_ = false;
13568 ClearHasBit(_impl_._has_bits_[1],
13569 0x00800000U);
13571inline bool SatParameters::exploit_best_solution() const {
13572 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_best_solution)
13573 return _internal_exploit_best_solution();
13574}
13575inline void SatParameters::set_exploit_best_solution(bool value) {
13576 _internal_set_exploit_best_solution(value);
13577 SetHasBit(_impl_._has_bits_[1], 0x00800000U);
13578 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_best_solution)
13579}
13580inline bool SatParameters::_internal_exploit_best_solution() const {
13581 ::google::protobuf::internal::TSanRead(&_impl_);
13582 return _impl_.exploit_best_solution_;
13583}
13584inline void SatParameters::_internal_set_exploit_best_solution(bool value) {
13585 ::google::protobuf::internal::TSanWrite(&_impl_);
13586 _impl_.exploit_best_solution_ = value;
13587}
13588
13589// optional bool exploit_relaxation_solution = 161 [default = false];
13591 bool value = CheckHasBit(_impl_._has_bits_[2], 0x00000001U);
13592 return value;
13593}
13595 ::google::protobuf::internal::TSanWrite(&_impl_);
13596 _impl_.exploit_relaxation_solution_ = false;
13597 ClearHasBit(_impl_._has_bits_[2],
13598 0x00000001U);
13601 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_relaxation_solution)
13602 return _internal_exploit_relaxation_solution();
13603}
13604inline void SatParameters::set_exploit_relaxation_solution(bool value) {
13605 _internal_set_exploit_relaxation_solution(value);
13606 SetHasBit(_impl_._has_bits_[2], 0x00000001U);
13607 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_relaxation_solution)
13608}
13609inline bool SatParameters::_internal_exploit_relaxation_solution() const {
13610 ::google::protobuf::internal::TSanRead(&_impl_);
13611 return _impl_.exploit_relaxation_solution_;
13612}
13613inline void SatParameters::_internal_set_exploit_relaxation_solution(bool value) {
13614 ::google::protobuf::internal::TSanWrite(&_impl_);
13615 _impl_.exploit_relaxation_solution_ = value;
13616}
13617
13618// optional bool exploit_objective = 131 [default = true];
13619inline bool SatParameters::has_exploit_objective() const {
13620 bool value = CheckHasBit(_impl_._has_bits_[5], 0x80000000U);
13621 return value;
13622}
13624 ::google::protobuf::internal::TSanWrite(&_impl_);
13625 _impl_.exploit_objective_ = true;
13626 ClearHasBit(_impl_._has_bits_[5],
13627 0x80000000U);
13629inline bool SatParameters::exploit_objective() const {
13630 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.exploit_objective)
13631 return _internal_exploit_objective();
13632}
13633inline void SatParameters::set_exploit_objective(bool value) {
13634 _internal_set_exploit_objective(value);
13635 SetHasBit(_impl_._has_bits_[5], 0x80000000U);
13636 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.exploit_objective)
13637}
13638inline bool SatParameters::_internal_exploit_objective() const {
13639 ::google::protobuf::internal::TSanRead(&_impl_);
13640 return _impl_.exploit_objective_;
13641}
13642inline void SatParameters::_internal_set_exploit_objective(bool value) {
13643 ::google::protobuf::internal::TSanWrite(&_impl_);
13644 _impl_.exploit_objective_ = value;
13645}
13646
13647// optional bool detect_linearized_product = 277 [default = false];
13649 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000100U);
13650 return value;
13651}
13653 ::google::protobuf::internal::TSanWrite(&_impl_);
13654 _impl_.detect_linearized_product_ = false;
13655 ClearHasBit(_impl_._has_bits_[3],
13656 0x00000100U);
13658inline bool SatParameters::detect_linearized_product() const {
13659 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.detect_linearized_product)
13660 return _internal_detect_linearized_product();
13661}
13662inline void SatParameters::set_detect_linearized_product(bool value) {
13663 _internal_set_detect_linearized_product(value);
13664 SetHasBit(_impl_._has_bits_[3], 0x00000100U);
13665 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.detect_linearized_product)
13666}
13667inline bool SatParameters::_internal_detect_linearized_product() const {
13668 ::google::protobuf::internal::TSanRead(&_impl_);
13669 return _impl_.detect_linearized_product_;
13670}
13671inline void SatParameters::_internal_set_detect_linearized_product(bool value) {
13672 ::google::protobuf::internal::TSanWrite(&_impl_);
13673 _impl_.detect_linearized_product_ = value;
13674}
13675
13676// optional bool use_new_integer_conflict_resolution = 336 [default = false];
13678 bool value = CheckHasBit(_impl_._has_bits_[3], 0x80000000U);
13679 return value;
13680}
13682 ::google::protobuf::internal::TSanWrite(&_impl_);
13683 _impl_.use_new_integer_conflict_resolution_ = false;
13684 ClearHasBit(_impl_._has_bits_[3],
13685 0x80000000U);
13688 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.use_new_integer_conflict_resolution)
13689 return _internal_use_new_integer_conflict_resolution();
13690}
13692 _internal_set_use_new_integer_conflict_resolution(value);
13693 SetHasBit(_impl_._has_bits_[3], 0x80000000U);
13694 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.use_new_integer_conflict_resolution)
13695}
13696inline bool SatParameters::_internal_use_new_integer_conflict_resolution() const {
13697 ::google::protobuf::internal::TSanRead(&_impl_);
13698 return _impl_.use_new_integer_conflict_resolution_;
13699}
13700inline void SatParameters::_internal_set_use_new_integer_conflict_resolution(bool value) {
13701 ::google::protobuf::internal::TSanWrite(&_impl_);
13702 _impl_.use_new_integer_conflict_resolution_ = value;
13703}
13704
13705// optional bool create_1uip_boolean_during_icr = 341 [default = true];
13707 bool value = CheckHasBit(_impl_._has_bits_[9], 0x00000100U);
13708 return value;
13709}
13711 ::google::protobuf::internal::TSanWrite(&_impl_);
13712 _impl_.create_1uip_boolean_during_icr_ = true;
13713 ClearHasBit(_impl_._has_bits_[9],
13714 0x00000100U);
13717 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.create_1uip_boolean_during_icr)
13718 return _internal_create_1uip_boolean_during_icr();
13719}
13721 _internal_set_create_1uip_boolean_during_icr(value);
13722 SetHasBit(_impl_._has_bits_[9], 0x00000100U);
13723 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.create_1uip_boolean_during_icr)
13724}
13725inline bool SatParameters::_internal_create_1uip_boolean_during_icr() const {
13726 ::google::protobuf::internal::TSanRead(&_impl_);
13727 return _impl_.create_1uip_boolean_during_icr_;
13728}
13729inline void SatParameters::_internal_set_create_1uip_boolean_during_icr(bool value) {
13730 ::google::protobuf::internal::TSanWrite(&_impl_);
13731 _impl_.create_1uip_boolean_during_icr_ = value;
13732}
13733
13734// optional double mip_max_bound = 124 [default = 10000000];
13735inline bool SatParameters::has_mip_max_bound() const {
13736 bool value = CheckHasBit(_impl_._has_bits_[5], 0x01000000U);
13737 return value;
13738}
13740 ::google::protobuf::internal::TSanWrite(&_impl_);
13741 _impl_.mip_max_bound_ = 10000000;
13742 ClearHasBit(_impl_._has_bits_[5],
13743 0x01000000U);
13745inline double SatParameters::mip_max_bound() const {
13746 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_max_bound)
13747 return _internal_mip_max_bound();
13748}
13749inline void SatParameters::set_mip_max_bound(double value) {
13750 _internal_set_mip_max_bound(value);
13751 SetHasBit(_impl_._has_bits_[5], 0x01000000U);
13752 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_max_bound)
13753}
13754inline double SatParameters::_internal_mip_max_bound() const {
13755 ::google::protobuf::internal::TSanRead(&_impl_);
13756 return _impl_.mip_max_bound_;
13757}
13758inline void SatParameters::_internal_set_mip_max_bound(double value) {
13759 ::google::protobuf::internal::TSanWrite(&_impl_);
13760 _impl_.mip_max_bound_ = value;
13761}
13762
13763// optional double mip_var_scaling = 125 [default = 1];
13764inline bool SatParameters::has_mip_var_scaling() const {
13765 bool value = CheckHasBit(_impl_._has_bits_[5], 0x08000000U);
13766 return value;
13767}
13769 ::google::protobuf::internal::TSanWrite(&_impl_);
13770 _impl_.mip_var_scaling_ = 1;
13771 ClearHasBit(_impl_._has_bits_[5],
13772 0x08000000U);
13774inline double SatParameters::mip_var_scaling() const {
13775 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_var_scaling)
13776 return _internal_mip_var_scaling();
13777}
13778inline void SatParameters::set_mip_var_scaling(double value) {
13779 _internal_set_mip_var_scaling(value);
13780 SetHasBit(_impl_._has_bits_[5], 0x08000000U);
13781 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_var_scaling)
13782}
13783inline double SatParameters::_internal_mip_var_scaling() const {
13784 ::google::protobuf::internal::TSanRead(&_impl_);
13785 return _impl_.mip_var_scaling_;
13786}
13787inline void SatParameters::_internal_set_mip_var_scaling(double value) {
13788 ::google::protobuf::internal::TSanWrite(&_impl_);
13789 _impl_.mip_var_scaling_ = value;
13790}
13791
13792// optional bool mip_scale_large_domain = 225 [default = false];
13794 bool value = CheckHasBit(_impl_._has_bits_[2], 0x08000000U);
13795 return value;
13796}
13798 ::google::protobuf::internal::TSanWrite(&_impl_);
13799 _impl_.mip_scale_large_domain_ = false;
13800 ClearHasBit(_impl_._has_bits_[2],
13801 0x08000000U);
13803inline bool SatParameters::mip_scale_large_domain() const {
13804 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_scale_large_domain)
13805 return _internal_mip_scale_large_domain();
13806}
13807inline void SatParameters::set_mip_scale_large_domain(bool value) {
13808 _internal_set_mip_scale_large_domain(value);
13809 SetHasBit(_impl_._has_bits_[2], 0x08000000U);
13810 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_scale_large_domain)
13811}
13812inline bool SatParameters::_internal_mip_scale_large_domain() const {
13813 ::google::protobuf::internal::TSanRead(&_impl_);
13814 return _impl_.mip_scale_large_domain_;
13815}
13816inline void SatParameters::_internal_set_mip_scale_large_domain(bool value) {
13817 ::google::protobuf::internal::TSanWrite(&_impl_);
13818 _impl_.mip_scale_large_domain_ = value;
13819}
13820
13821// optional bool mip_automatically_scale_variables = 166 [default = true];
13823 bool value = CheckHasBit(_impl_._has_bits_[6], 0x00010000U);
13824 return value;
13825}
13827 ::google::protobuf::internal::TSanWrite(&_impl_);
13828 _impl_.mip_automatically_scale_variables_ = true;
13829 ClearHasBit(_impl_._has_bits_[6],
13830 0x00010000U);
13833 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_automatically_scale_variables)
13834 return _internal_mip_automatically_scale_variables();
13835}
13837 _internal_set_mip_automatically_scale_variables(value);
13838 SetHasBit(_impl_._has_bits_[6], 0x00010000U);
13839 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_automatically_scale_variables)
13840}
13841inline bool SatParameters::_internal_mip_automatically_scale_variables() const {
13842 ::google::protobuf::internal::TSanRead(&_impl_);
13843 return _impl_.mip_automatically_scale_variables_;
13844}
13845inline void SatParameters::_internal_set_mip_automatically_scale_variables(bool value) {
13846 ::google::protobuf::internal::TSanWrite(&_impl_);
13847 _impl_.mip_automatically_scale_variables_ = value;
13848}
13849
13850// optional bool only_solve_ip = 222 [default = false];
13851inline bool SatParameters::has_only_solve_ip() const {
13852 bool value = CheckHasBit(_impl_._has_bits_[2], 0x02000000U);
13853 return value;
13854}
13856 ::google::protobuf::internal::TSanWrite(&_impl_);
13857 _impl_.only_solve_ip_ = false;
13858 ClearHasBit(_impl_._has_bits_[2],
13859 0x02000000U);
13861inline bool SatParameters::only_solve_ip() const {
13862 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.only_solve_ip)
13863 return _internal_only_solve_ip();
13864}
13865inline void SatParameters::set_only_solve_ip(bool value) {
13866 _internal_set_only_solve_ip(value);
13867 SetHasBit(_impl_._has_bits_[2], 0x02000000U);
13868 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.only_solve_ip)
13869}
13870inline bool SatParameters::_internal_only_solve_ip() const {
13871 ::google::protobuf::internal::TSanRead(&_impl_);
13872 return _impl_.only_solve_ip_;
13873}
13874inline void SatParameters::_internal_set_only_solve_ip(bool value) {
13875 ::google::protobuf::internal::TSanWrite(&_impl_);
13876 _impl_.only_solve_ip_ = value;
13877}
13878
13879// optional double mip_wanted_precision = 126 [default = 1e-06];
13880inline bool SatParameters::has_mip_wanted_precision() const {
13881 bool value = CheckHasBit(_impl_._has_bits_[5], 0x10000000U);
13882 return value;
13883}
13885 ::google::protobuf::internal::TSanWrite(&_impl_);
13886 _impl_.mip_wanted_precision_ = 1e-06;
13887 ClearHasBit(_impl_._has_bits_[5],
13888 0x10000000U);
13890inline double SatParameters::mip_wanted_precision() const {
13891 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_wanted_precision)
13892 return _internal_mip_wanted_precision();
13893}
13894inline void SatParameters::set_mip_wanted_precision(double value) {
13895 _internal_set_mip_wanted_precision(value);
13896 SetHasBit(_impl_._has_bits_[5], 0x10000000U);
13897 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_wanted_precision)
13898}
13899inline double SatParameters::_internal_mip_wanted_precision() const {
13900 ::google::protobuf::internal::TSanRead(&_impl_);
13901 return _impl_.mip_wanted_precision_;
13902}
13903inline void SatParameters::_internal_set_mip_wanted_precision(double value) {
13904 ::google::protobuf::internal::TSanWrite(&_impl_);
13905 _impl_.mip_wanted_precision_ = value;
13906}
13907
13908// optional int32 mip_max_activity_exponent = 127 [default = 53];
13910 bool value = CheckHasBit(_impl_._has_bits_[5], 0x04000000U);
13911 return value;
13912}
13914 ::google::protobuf::internal::TSanWrite(&_impl_);
13915 _impl_.mip_max_activity_exponent_ = 53;
13916 ClearHasBit(_impl_._has_bits_[5],
13917 0x04000000U);
13919inline ::int32_t SatParameters::mip_max_activity_exponent() const {
13920 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_max_activity_exponent)
13921 return _internal_mip_max_activity_exponent();
13922}
13923inline void SatParameters::set_mip_max_activity_exponent(::int32_t value) {
13924 _internal_set_mip_max_activity_exponent(value);
13925 SetHasBit(_impl_._has_bits_[5], 0x04000000U);
13926 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_max_activity_exponent)
13927}
13928inline ::int32_t SatParameters::_internal_mip_max_activity_exponent() const {
13929 ::google::protobuf::internal::TSanRead(&_impl_);
13930 return _impl_.mip_max_activity_exponent_;
13931}
13932inline void SatParameters::_internal_set_mip_max_activity_exponent(::int32_t value) {
13933 ::google::protobuf::internal::TSanWrite(&_impl_);
13934 _impl_.mip_max_activity_exponent_ = value;
13935}
13936
13937// optional double mip_check_precision = 128 [default = 0.0001];
13938inline bool SatParameters::has_mip_check_precision() const {
13939 bool value = CheckHasBit(_impl_._has_bits_[5], 0x20000000U);
13940 return value;
13941}
13943 ::google::protobuf::internal::TSanWrite(&_impl_);
13944 _impl_.mip_check_precision_ = 0.0001;
13945 ClearHasBit(_impl_._has_bits_[5],
13946 0x20000000U);
13948inline double SatParameters::mip_check_precision() const {
13949 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_check_precision)
13950 return _internal_mip_check_precision();
13951}
13952inline void SatParameters::set_mip_check_precision(double value) {
13953 _internal_set_mip_check_precision(value);
13954 SetHasBit(_impl_._has_bits_[5], 0x20000000U);
13955 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_check_precision)
13956}
13957inline double SatParameters::_internal_mip_check_precision() const {
13958 ::google::protobuf::internal::TSanRead(&_impl_);
13959 return _impl_.mip_check_precision_;
13960}
13961inline void SatParameters::_internal_set_mip_check_precision(double value) {
13962 ::google::protobuf::internal::TSanWrite(&_impl_);
13963 _impl_.mip_check_precision_ = value;
13964}
13965
13966// optional bool mip_compute_true_objective_bound = 198 [default = true];
13968 bool value = CheckHasBit(_impl_._has_bits_[6], 0x40000000U);
13969 return value;
13970}
13972 ::google::protobuf::internal::TSanWrite(&_impl_);
13973 _impl_.mip_compute_true_objective_bound_ = true;
13974 ClearHasBit(_impl_._has_bits_[6],
13975 0x40000000U);
13978 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_compute_true_objective_bound)
13979 return _internal_mip_compute_true_objective_bound();
13980}
13982 _internal_set_mip_compute_true_objective_bound(value);
13983 SetHasBit(_impl_._has_bits_[6], 0x40000000U);
13984 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_compute_true_objective_bound)
13985}
13986inline bool SatParameters::_internal_mip_compute_true_objective_bound() const {
13987 ::google::protobuf::internal::TSanRead(&_impl_);
13988 return _impl_.mip_compute_true_objective_bound_;
13989}
13990inline void SatParameters::_internal_set_mip_compute_true_objective_bound(bool value) {
13991 ::google::protobuf::internal::TSanWrite(&_impl_);
13992 _impl_.mip_compute_true_objective_bound_ = value;
13993}
13994
13995// optional double mip_max_valid_magnitude = 199 [default = 1e+20];
13997 bool value = CheckHasBit(_impl_._has_bits_[6], 0x08000000U);
13998 return value;
13999}
14001 ::google::protobuf::internal::TSanWrite(&_impl_);
14002 _impl_.mip_max_valid_magnitude_ = 1e+20;
14003 ClearHasBit(_impl_._has_bits_[6],
14004 0x08000000U);
14006inline double SatParameters::mip_max_valid_magnitude() const {
14007 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_max_valid_magnitude)
14008 return _internal_mip_max_valid_magnitude();
14009}
14010inline void SatParameters::set_mip_max_valid_magnitude(double value) {
14011 _internal_set_mip_max_valid_magnitude(value);
14012 SetHasBit(_impl_._has_bits_[6], 0x08000000U);
14013 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_max_valid_magnitude)
14014}
14015inline double SatParameters::_internal_mip_max_valid_magnitude() const {
14016 ::google::protobuf::internal::TSanRead(&_impl_);
14017 return _impl_.mip_max_valid_magnitude_;
14018}
14019inline void SatParameters::_internal_set_mip_max_valid_magnitude(double value) {
14020 ::google::protobuf::internal::TSanWrite(&_impl_);
14021 _impl_.mip_max_valid_magnitude_ = value;
14022}
14023
14024// optional bool mip_treat_high_magnitude_bounds_as_infinity = 278 [default = false];
14026 bool value = CheckHasBit(_impl_._has_bits_[3], 0x00000200U);
14027 return value;
14028}
14030 ::google::protobuf::internal::TSanWrite(&_impl_);
14031 _impl_.mip_treat_high_magnitude_bounds_as_infinity_ = false;
14032 ClearHasBit(_impl_._has_bits_[3],
14033 0x00000200U);
14036 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_treat_high_magnitude_bounds_as_infinity)
14037 return _internal_mip_treat_high_magnitude_bounds_as_infinity();
14038}
14040 _internal_set_mip_treat_high_magnitude_bounds_as_infinity(value);
14041 SetHasBit(_impl_._has_bits_[3], 0x00000200U);
14042 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_treat_high_magnitude_bounds_as_infinity)
14043}
14044inline bool SatParameters::_internal_mip_treat_high_magnitude_bounds_as_infinity() const {
14045 ::google::protobuf::internal::TSanRead(&_impl_);
14046 return _impl_.mip_treat_high_magnitude_bounds_as_infinity_;
14047}
14048inline void SatParameters::_internal_set_mip_treat_high_magnitude_bounds_as_infinity(bool value) {
14049 ::google::protobuf::internal::TSanWrite(&_impl_);
14050 _impl_.mip_treat_high_magnitude_bounds_as_infinity_ = value;
14051}
14052
14053// optional double mip_drop_tolerance = 232 [default = 1e-16];
14054inline bool SatParameters::has_mip_drop_tolerance() const {
14055 bool value = CheckHasBit(_impl_._has_bits_[7], 0x00000100U);
14056 return value;
14057}
14059 ::google::protobuf::internal::TSanWrite(&_impl_);
14060 _impl_.mip_drop_tolerance_ = 1e-16;
14061 ClearHasBit(_impl_._has_bits_[7],
14062 0x00000100U);
14064inline double SatParameters::mip_drop_tolerance() const {
14065 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_drop_tolerance)
14066 return _internal_mip_drop_tolerance();
14067}
14068inline void SatParameters::set_mip_drop_tolerance(double value) {
14069 _internal_set_mip_drop_tolerance(value);
14070 SetHasBit(_impl_._has_bits_[7], 0x00000100U);
14071 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_drop_tolerance)
14072}
14073inline double SatParameters::_internal_mip_drop_tolerance() const {
14074 ::google::protobuf::internal::TSanRead(&_impl_);
14075 return _impl_.mip_drop_tolerance_;
14076}
14077inline void SatParameters::_internal_set_mip_drop_tolerance(double value) {
14078 ::google::protobuf::internal::TSanWrite(&_impl_);
14079 _impl_.mip_drop_tolerance_ = value;
14080}
14081
14082// optional int32 mip_presolve_level = 261 [default = 2];
14083inline bool SatParameters::has_mip_presolve_level() const {
14084 bool value = CheckHasBit(_impl_._has_bits_[7], 0x02000000U);
14085 return value;
14086}
14088 ::google::protobuf::internal::TSanWrite(&_impl_);
14089 _impl_.mip_presolve_level_ = 2;
14090 ClearHasBit(_impl_._has_bits_[7],
14091 0x02000000U);
14093inline ::int32_t SatParameters::mip_presolve_level() const {
14094 // @@protoc_insertion_point(field_get:operations_research.sat.SatParameters.mip_presolve_level)
14095 return _internal_mip_presolve_level();
14096}
14097inline void SatParameters::set_mip_presolve_level(::int32_t value) {
14098 _internal_set_mip_presolve_level(value);
14099 SetHasBit(_impl_._has_bits_[7], 0x02000000U);
14100 // @@protoc_insertion_point(field_set:operations_research.sat.SatParameters.mip_presolve_level)
14101}
14102inline ::int32_t SatParameters::_internal_mip_presolve_level() const {
14103 ::google::protobuf::internal::TSanRead(&_impl_);
14104 return _impl_.mip_presolve_level_;
14105}
14106inline void SatParameters::_internal_set_mip_presolve_level(::int32_t value) {
14107 ::google::protobuf::internal::TSanWrite(&_impl_);
14108 _impl_.mip_presolve_level_ = value;
14109}
14110
14111#ifdef __GNUC__
14112#pragma GCC diagnostic pop
14113#endif // __GNUC__
14114
14115// @@protoc_insertion_point(namespace_scope)
14116} // namespace sat
14117} // namespace operations_research
14118
14119
14120namespace google {
14121namespace protobuf {
14122
14123template <>
14124struct is_proto_enum<::operations_research::sat::SatParameters_VariableOrder> : std::true_type {};
14125template <>
14126inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_VariableOrder>() {
14127 return ::operations_research::sat::SatParameters_VariableOrder_descriptor();
14128}
14129template <>
14130struct is_proto_enum<::operations_research::sat::SatParameters_Polarity> : std::true_type {};
14131template <>
14132inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_Polarity>() {
14133 return ::operations_research::sat::SatParameters_Polarity_descriptor();
14134}
14135template <>
14136struct is_proto_enum<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm> : std::true_type {};
14137template <>
14139 return ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm_descriptor();
14140}
14141template <>
14142struct is_proto_enum<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm> : std::true_type {};
14143template <>
14145 return ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm_descriptor();
14146}
14147template <>
14148struct is_proto_enum<::operations_research::sat::SatParameters_ClauseOrdering> : std::true_type {};
14149template <>
14150inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_ClauseOrdering>() {
14151 return ::operations_research::sat::SatParameters_ClauseOrdering_descriptor();
14152}
14153template <>
14154struct is_proto_enum<::operations_research::sat::SatParameters_RestartAlgorithm> : std::true_type {};
14155template <>
14156inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_RestartAlgorithm>() {
14157 return ::operations_research::sat::SatParameters_RestartAlgorithm_descriptor();
14158}
14159template <>
14160struct is_proto_enum<::operations_research::sat::SatParameters_MaxSatAssumptionOrder> : std::true_type {};
14161template <>
14162inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_MaxSatAssumptionOrder>() {
14163 return ::operations_research::sat::SatParameters_MaxSatAssumptionOrder_descriptor();
14164}
14165template <>
14166struct is_proto_enum<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm> : std::true_type {};
14167template <>
14169 return ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm_descriptor();
14170}
14171template <>
14172struct is_proto_enum<::operations_research::sat::SatParameters_SearchBranching> : std::true_type {};
14173template <>
14174inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_SearchBranching>() {
14175 return ::operations_research::sat::SatParameters_SearchBranching_descriptor();
14176}
14177template <>
14178struct is_proto_enum<::operations_research::sat::SatParameters_SharedTreeSplitStrategy> : std::true_type {};
14179template <>
14181 return ::operations_research::sat::SatParameters_SharedTreeSplitStrategy_descriptor();
14182}
14183template <>
14184struct is_proto_enum<::operations_research::sat::SatParameters_FPRoundingMethod> : std::true_type {};
14185template <>
14186inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_FPRoundingMethod>() {
14187 return ::operations_research::sat::SatParameters_FPRoundingMethod_descriptor();
14188}
14190} // namespace protobuf
14191} // namespace google
14192
14193// @@protoc_insertion_point(global_scope)
14194
14195#include "google/protobuf/port_undef.inc"
14196
14197#endif // ortools_2fsat_2fsat_5fparameters_2eproto_2epb_2eh
SatParameters_RestartAlgorithm RestartAlgorithm
const ::std::string & ignore_subsolvers(int index) const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL MaxSatAssumptionOrder_descriptor()
::int32_t max_size_to_create_precedence_literals_in_disjunctive() const
::int32_t max_num_intervals_for_timetable_edge_finding() const
friend class ::google::protobuf::MessageLite
void set_max_num_deterministic_batches(::int32_t value)
::std::string *PROTOBUF_NONNULL mutable_filter_subsolvers(int index)
void set_shared_tree_split_strategy(::operations_research::sat::SatParameters_SharedTreeSplitStrategy value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL ClauseOrdering_descriptor()
void set_routing_cut_subset_size_for_exact_binary_relation_bound(::int32_t value)
::int32_t routing_cut_subset_size_for_shortest_paths_bound() const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL Polarity_descriptor()
void set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value)
::std::string *PROTOBUF_NULLABLE release_log_prefix()
void set_feasibility_jump_max_expanded_constraint_size(::int32_t value)
::std::string *PROTOBUF_NONNULL mutable_ignore_subsolvers(int index)
void Swap(SatParameters *PROTOBUF_NONNULL other)
void set_routing_cut_subset_size_for_shortest_paths_bound(::int32_t value)
::std::string *PROTOBUF_NONNULL mutable_default_restart_algorithms()
const ::operations_research::sat::SatParameters & subsolver_params(int index) const
void set_feasibility_jump_var_perburbation_range_ratio(double value)
void set_symmetry_detection_deterministic_time_limit(double value)
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_DISCREPANCY
const ::google::protobuf::RepeatedPtrField<::std::string > & subsolvers() const
::google::protobuf::RepeatedField< int > *PROTOBUF_NONNULL mutable_restart_algorithms()
static bool MaxSatStratificationAlgorithm_IsValid(int value)
static constexpr RestartAlgorithm FIXED_RESTART
void set_search_branching(::operations_research::sat::SatParameters_SearchBranching value)
void set_glucose_decay_increment_period(::int32_t value)
static constexpr ClauseOrdering CLAUSE_LBD
static constexpr SearchBranching PARTIAL_FIXED_SEARCH
void set_use_area_energetic_reasoning_in_no_overlap_2d(bool value)
static bool SharedTreeSplitStrategy_IsValid(int value)
static bool MaxSatAssumptionOrder_IsValid(int value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RestartAlgorithm_descriptor()
::int32_t routing_cut_subset_size_for_exact_binary_relation_bound() const
SatParameters_ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm
::std::string *PROTOBUF_NONNULL add_filter_subsolvers()
void set_feasibility_jump_restart_factor(::int32_t value)
void set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value)
PROTOBUF_CONSTEXPR SatParameters(::google::protobuf::internal::ConstantInitialized)
static constexpr SearchBranching PORTFOLIO_SEARCH
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_filter_subsolvers()
void set_presolve_probing_deterministic_time_limit(double value)
void set_extra_subsolvers(int index, Arg_ &&value, Args_... args)
void set_inprocessing_minimization_use_conflict_analysis(bool value)
void set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL FPRoundingMethod_descriptor()
static bool ConflictMinimizationAlgorithm_IsValid(int value)
::operations_research::sat::SatParameters_MaxSatAssumptionOrder max_sat_assumption_order() const
::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm max_sat_stratification() const
void set_routing_cut_subset_size_for_tight_binary_relation_bound(::int32_t value)
static constexpr MaxSatAssumptionOrder ORDER_ASSUMPTION_BY_WEIGHT
void set_default_restart_algorithms(Arg_ &&arg, Args_... args)
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_BALANCED_TREE
static constexpr MaxSatAssumptionOrder ORDER_ASSUMPTION_BY_DEPTH
const ::std::string & extra_subsolvers(int index) const
void set_ignore_subsolvers(int index, Arg_ &&value, Args_... args)
void set_restart_algorithms(int index, ::operations_research::sat::SatParameters_RestartAlgorithm value)
void set_restart_running_window_size(::int32_t value)
void set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value)
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_subsolvers()
void set_allocated_log_prefix(::std::string *PROTOBUF_NULLABLE value)
void set_max_size_to_create_precedence_literals_in_disjunctive(::int32_t value)
const ::std::string & default_restart_algorithms() const
::operations_research::sat::SatParameters_ClauseOrdering clause_cleanup_ordering() const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL BinaryMinizationAlgorithm_descriptor()
::std::string *PROTOBUF_NONNULL add_subsolvers()
void set_initial_polarity(::operations_research::sat::SatParameters_Polarity value)
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
void set_num_conflicts_before_strategy_changes(::int32_t value)
void set_pseudo_cost_reliability_threshold(::int64_t value)
void set_allocated_default_restart_algorithms(::std::string *PROTOBUF_NULLABLE value)
static constexpr int ConflictMinimizationAlgorithm_ARRAYSIZE
::operations_research::sat::SatParameters_BinaryMinizationAlgorithm binary_minimization_algorithm() const
::int32_t max_pairs_pairwise_reasoning_in_no_overlap_2d() const
void set_extra_subsumption_during_conflict_analysis(bool value)
void CopyFrom(const SatParameters &from)
::int32_t max_domain_size_when_encoding_eq_neq_constraints() const
void set_clause_cleanup_period_increment(::int32_t value)
::int32_t routing_cut_subset_size_for_binary_relation_bound() const
void add_restart_algorithms(::operations_research::sat::SatParameters_RestartAlgorithm value)
static constexpr RestartAlgorithm DL_MOVING_AVERAGE_RESTART
void set_violation_ls_compound_move_probability(double value)
const ::std::string & log_prefix() const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL ConflictMinimizationAlgorithm_descriptor()
static constexpr FPRoundingMethod LOCK_BASED
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_extra_subsolvers()
void set_max_domain_size_for_linear2_expansion(::int32_t value)
static constexpr FPRoundingMethod PROPAGATION_ASSISTED
::operations_research::sat::SatParameters_RestartAlgorithm restart_algorithms(int index) const
void set_routing_cut_subset_size_for_binary_relation_bound(::int32_t value)
void set_shared_tree_worker_min_restarts_per_subtree(::int32_t value)
void set_routing_cut_max_infeasible_path_length(::int32_t value)
static constexpr SearchBranching RANDOMIZED_SEARCH
const ::google::protobuf::RepeatedPtrField<::std::string > & filter_subsolvers() const
const ::google::protobuf::RepeatedPtrField<::std::string > & ignore_subsolvers() const
SatParameters_MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm
::operations_research::sat::SatParameters_FPRoundingMethod fp_rounding() const
void set_feasibility_jump_linearization_level(::int32_t value)
SatParameters_SharedTreeSplitStrategy SharedTreeSplitStrategy
SatParameters_VariableOrder VariableOrder
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_ignore_subsolvers()
::int32_t routing_cut_subset_size_for_tight_binary_relation_bound() const
void set_inprocessing_minimization_use_all_orderings(bool value)
void set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value)
void set_presolve_substitution_level(::int32_t value)
void set_debug_max_num_presolve_operations(::int32_t value)
static constexpr int BinaryMinizationAlgorithm_ARRAYSIZE
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SearchBranching_descriptor()
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_DESCENT
void set_eagerly_subsume_last_n_conflicts(::int32_t value)
void set_shaving_deterministic_time_in_probing_search(double value)
void set_probing_num_combinations_limit(::int32_t value)
::operations_research::sat::SatParameters *PROTOBUF_NONNULL add_subsolver_params()
void set_shared_tree_max_nodes_per_worker(::int32_t value)
SatParameters_SearchBranching SearchBranching
static constexpr SearchBranching FIXED_SEARCH
::operations_research::sat::SatParameters_VariableOrder preferred_variable_order() const
void set_max_pairs_pairwise_reasoning_in_no_overlap_2d(::int32_t value)
static constexpr FPRoundingMethod ACTIVE_LOCK_BASED
static constexpr ConflictMinimizationAlgorithm SIMPLE
void set_filter_subsolvers(int index, Arg_ &&value, Args_... args)
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_ASCENT
const ::std::string & subsolvers(int index) const
static constexpr SearchBranching PSEUDO_COST_SEARCH
static bool BinaryMinizationAlgorithm_IsValid(int value)
::std::string *PROTOBUF_NULLABLE release_default_restart_algorithms()
void set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value)
SatParameters_ClauseOrdering ClauseOrdering
void set_subsolvers(int index, Arg_ &&value, Args_... args)
void set_at_most_one_max_expansion_size(::int32_t value)
void set_encode_complex_linear_constraint_with_integer(bool value)
void set_feasibility_jump_var_randomization_probability(double value)
void set_decision_subsumption_during_conflict_analysis(bool value)
void set_transitive_precedences_work_limit(::int32_t value)
static constexpr int MaxSatStratificationAlgorithm_ARRAYSIZE
void set_shared_tree_balance_tolerance(::int32_t value)
void set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value)
::operations_research::sat::SatParameters *PROTOBUF_NONNULL mutable_subsolver_params(int index)
::operations_research::sat::SatParameters_SharedTreeSplitStrategy shared_tree_split_strategy() const
void set_maximum_regions_to_split_in_disconnected_no_overlap_2d(::int32_t value)
::operations_research::sat::SatParameters_Polarity initial_polarity() const
SatParameters_BinaryMinizationAlgorithm BinaryMinizationAlgorithm
::std::string *PROTOBUF_NULLABLE release_name()
void set_violation_ls_perturbation_period(::int32_t value)
static constexpr SearchBranching HINT_SEARCH
::int32_t feasibility_jump_max_expanded_constraint_size() const
const ::std::string & filter_subsolvers(int index) const
static constexpr RestartAlgorithm LBD_MOVING_AVERAGE_RESTART
::operations_research::sat::SatParameters_SearchBranching search_branching() const
SatParameters_FPRoundingMethod FPRoundingMethod
SatParameters_MaxSatAssumptionOrder MaxSatAssumptionOrder
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_OBJECTIVE_LB
::std::string *PROTOBUF_NONNULL add_ignore_subsolvers()
static constexpr VariableOrder IN_RANDOM_ORDER
void set_solution_pool_diversity_limit(::int32_t value)
::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters > *PROTOBUF_NONNULL mutable_subsolver_params()
void set_max_lin_max_size_for_expansion(::int32_t value)
const ::google::protobuf::RepeatedPtrField<::std::string > & extra_subsolvers() const
const ::google::protobuf::RepeatedField< int > & restart_algorithms() const
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_FIRST_PROPOSAL
SatParameters & operator=(const SatParameters &from)
void set_max_num_intervals_for_timetable_edge_finding(::int32_t value)
::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm minimization_algorithm() const
::std::string *PROTOBUF_NONNULL mutable_extra_subsolvers(int index)
::std::string *PROTOBUF_NONNULL mutable_name()
static constexpr VariableOrder IN_REVERSE_ORDER
const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters > & subsolver_params() const
void set_name(Arg_ &&arg, Args_... args)
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_FROM_UIP
static constexpr SearchBranching PORTFOLIO_WITH_QUICK_RESTART_SEARCH
void set_no_overlap_2d_boolean_relations_limit(::int32_t value)
void set_blocking_restart_window_size(::int32_t value)
static constexpr SearchBranching LP_SEARCH
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::int32_t maximum_regions_to_split_in_disconnected_no_overlap_2d() const
static constexpr RestartAlgorithm LUBY_RESTART
::std::string *PROTOBUF_NONNULL add_extra_subsolvers()
static constexpr int SharedTreeSplitStrategy_ARRAYSIZE
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SharedTreeSplitStrategy_descriptor()
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL MaxSatStratificationAlgorithm_descriptor()
void set_max_consecutive_inactive_count(::int32_t value)
void set_max_domain_size_when_encoding_eq_neq_constraints(::int32_t value)
void set_lb_relax_num_workers_threshold(::int32_t value)
::std::string *PROTOBUF_NONNULL mutable_log_prefix()
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL VariableOrder_descriptor()
::std::string *PROTOBUF_NONNULL mutable_subsolvers(int index)
void set_search_random_variable_pool_size(::int64_t value)
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_FROM_UIP_AND_DECISIONS
void set_presolve_inclusion_work_limit(::int64_t value)
void set_chronological_backtrack_min_conflicts(::int32_t value)
static constexpr ConflictMinimizationAlgorithm RECURSIVE
void set_log_prefix(Arg_ &&arg, Args_... args)
::absl::string_view GetAnyMessageName()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_FPRoundingMethod >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_MaxSatAssumptionOrder >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_SharedTreeSplitStrategy >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_ClauseOrdering >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_VariableOrder >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_Polarity >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_SearchBranching >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm >()
const EnumDescriptor *PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::sat::SatParameters_RestartAlgorithm >()
@ SatParameters_MaxSatStratificationAlgorithm_STRATIFICATION_DESCENT
@ SatParameters_MaxSatStratificationAlgorithm_STRATIFICATION_NONE
@ SatParameters_MaxSatStratificationAlgorithm_STRATIFICATION_ASCENT
constexpr SatParameters_VariableOrder SatParameters_VariableOrder_VariableOrder_MAX
bool SatParameters_SharedTreeSplitStrategy_IsValid(int value)
const ::std::string & SatParameters_Polarity_Name(T value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_FPRoundingMethod_descriptor()
PROTOBUF_CONSTINIT const uint32_t SatParameters_SearchBranching_internal_data_[]
bool SatParameters_SearchBranching_Parse(::absl::string_view name, SatParameters_SearchBranching *PROTOBUF_NONNULL value)
constexpr SatParameters_FPRoundingMethod SatParameters_FPRoundingMethod_FPRoundingMethod_MAX
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_SharedTreeSplitStrategy_descriptor()
bool SatParameters_RestartAlgorithm_Parse(::absl::string_view name, SatParameters_RestartAlgorithm *PROTOBUF_NONNULL value)
PROTOBUF_CONSTINIT const uint32_t SatParameters_ClauseOrdering_internal_data_[]
const ::std::string & SatParameters_VariableOrder_Name(T value)
bool SatParameters_MaxSatStratificationAlgorithm_Parse(::absl::string_view name, SatParameters_MaxSatStratificationAlgorithm *PROTOBUF_NONNULL value)
constexpr SatParameters_VariableOrder SatParameters_VariableOrder_VariableOrder_MIN
constexpr SatParameters_ConflictMinimizationAlgorithm SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_MAX
constexpr SatParameters_SharedTreeSplitStrategy SatParameters_SharedTreeSplitStrategy_SharedTreeSplitStrategy_MAX
bool SatParameters_FPRoundingMethod_IsValid(int value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_MaxSatStratificationAlgorithm_descriptor()
constexpr int SatParameters_VariableOrder_VariableOrder_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t SatParameters_BinaryMinizationAlgorithm_internal_data_[]
constexpr int SatParameters_SearchBranching_SearchBranching_ARRAYSIZE
bool SatParameters_BinaryMinizationAlgorithm_IsValid(int value)
@ SatParameters_BinaryMinizationAlgorithm_NO_BINARY_MINIMIZATION
@ SatParameters_BinaryMinizationAlgorithm_BINARY_MINIMIZATION_FROM_UIP_AND_DECISIONS
@ SatParameters_BinaryMinizationAlgorithm_BINARY_MINIMIZATION_FROM_UIP
bool SatParameters_MaxSatAssumptionOrder_IsValid(int value)
PROTOBUF_CONSTINIT const uint32_t SatParameters_MaxSatAssumptionOrder_internal_data_[]
bool SatParameters_Polarity_IsValid(int value)
constexpr int SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t SatParameters_VariableOrder_internal_data_[]
constexpr SatParameters_MaxSatStratificationAlgorithm SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_MIN
bool SatParameters_MaxSatStratificationAlgorithm_IsValid(int value)
const ::std::string & SatParameters_ClauseOrdering_Name(T value)
constexpr int SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_ARRAYSIZE
bool SatParameters_ConflictMinimizationAlgorithm_Parse(::absl::string_view name, SatParameters_ConflictMinimizationAlgorithm *PROTOBUF_NONNULL value)
const ::std::string & SatParameters_SearchBranching_Name(T value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_RestartAlgorithm_descriptor()
bool SatParameters_MaxSatAssumptionOrder_Parse(::absl::string_view name, SatParameters_MaxSatAssumptionOrder *PROTOBUF_NONNULL value)
constexpr SatParameters_ClauseOrdering SatParameters_ClauseOrdering_ClauseOrdering_MIN
bool SatParameters_VariableOrder_IsValid(int value)
@ SatParameters_MaxSatAssumptionOrder_ORDER_ASSUMPTION_BY_WEIGHT
@ SatParameters_MaxSatAssumptionOrder_ORDER_ASSUMPTION_BY_DEPTH
@ SatParameters_MaxSatAssumptionOrder_DEFAULT_ASSUMPTION_ORDER
constexpr SatParameters_Polarity SatParameters_Polarity_Polarity_MAX
bool SatParameters_BinaryMinizationAlgorithm_Parse(::absl::string_view name, SatParameters_BinaryMinizationAlgorithm *PROTOBUF_NONNULL value)
constexpr int SatParameters_FPRoundingMethod_FPRoundingMethod_ARRAYSIZE
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SatParameters_class_data_
const ::std::string & SatParameters_RestartAlgorithm_Name(T value)
constexpr int SatParameters_Polarity_Polarity_ARRAYSIZE
constexpr SatParameters_MaxSatStratificationAlgorithm SatParameters_MaxSatStratificationAlgorithm_MaxSatStratificationAlgorithm_MAX
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SatParametersDefaultTypeInternal _SatParameters_default_instance_
constexpr SatParameters_RestartAlgorithm SatParameters_RestartAlgorithm_RestartAlgorithm_MIN
constexpr int SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_ARRAYSIZE
constexpr SatParameters_FPRoundingMethod SatParameters_FPRoundingMethod_FPRoundingMethod_MIN
bool SatParameters_SearchBranching_IsValid(int value)
bool SatParameters_ConflictMinimizationAlgorithm_IsValid(int value)
PROTOBUF_CONSTINIT const uint32_t SatParameters_FPRoundingMethod_internal_data_[]
constexpr SatParameters_BinaryMinizationAlgorithm SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_MAX
constexpr SatParameters_RestartAlgorithm SatParameters_RestartAlgorithm_RestartAlgorithm_MAX
constexpr int SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_ARRAYSIZE
bool SatParameters_ClauseOrdering_Parse(::absl::string_view name, SatParameters_ClauseOrdering *PROTOBUF_NONNULL value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_VariableOrder_descriptor()
const ::std::string & SatParameters_ConflictMinimizationAlgorithm_Name(T value)
bool SatParameters_ClauseOrdering_IsValid(int value)
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_ClauseOrdering_descriptor()
const ::std::string & SatParameters_BinaryMinizationAlgorithm_Name(T value)
constexpr int SatParameters_SharedTreeSplitStrategy_SharedTreeSplitStrategy_ARRAYSIZE
bool SatParameters_VariableOrder_Parse(::absl::string_view name, SatParameters_VariableOrder *PROTOBUF_NONNULL value)
bool SatParameters_FPRoundingMethod_Parse(::absl::string_view name, SatParameters_FPRoundingMethod *PROTOBUF_NONNULL value)
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_BALANCED_TREE
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_DISCREPANCY
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_OBJECTIVE_LB
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_FIRST_PROPOSAL
const ::std::string & SatParameters_FPRoundingMethod_Name(T value)
bool SatParameters_RestartAlgorithm_IsValid(int value)
constexpr SatParameters_BinaryMinizationAlgorithm SatParameters_BinaryMinizationAlgorithm_BinaryMinizationAlgorithm_MIN
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_BinaryMinizationAlgorithm_descriptor()
constexpr SatParameters_SharedTreeSplitStrategy SatParameters_SharedTreeSplitStrategy_SharedTreeSplitStrategy_MIN
const ::std::string & SatParameters_MaxSatStratificationAlgorithm_Name(T value)
constexpr SatParameters_SearchBranching SatParameters_SearchBranching_SearchBranching_MIN
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_SearchBranching_descriptor()
const ::std::string & SatParameters_SharedTreeSplitStrategy_Name(T value)
constexpr SatParameters_SearchBranching SatParameters_SearchBranching_SearchBranching_MAX
bool SatParameters_Polarity_Parse(::absl::string_view name, SatParameters_Polarity *PROTOBUF_NONNULL value)
constexpr SatParameters_ClauseOrdering SatParameters_ClauseOrdering_ClauseOrdering_MAX
PROTOBUF_CONSTINIT const uint32_t SatParameters_SharedTreeSplitStrategy_internal_data_[]
constexpr SatParameters_MaxSatAssumptionOrder SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_MAX
constexpr SatParameters_ConflictMinimizationAlgorithm SatParameters_ConflictMinimizationAlgorithm_ConflictMinimizationAlgorithm_MIN
constexpr int SatParameters_RestartAlgorithm_RestartAlgorithm_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t SatParameters_RestartAlgorithm_internal_data_[]
bool SatParameters_SharedTreeSplitStrategy_Parse(::absl::string_view name, SatParameters_SharedTreeSplitStrategy *PROTOBUF_NONNULL value)
PROTOBUF_CONSTINIT const uint32_t SatParameters_Polarity_internal_data_[]
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_MaxSatAssumptionOrder_descriptor()
constexpr SatParameters_MaxSatAssumptionOrder SatParameters_MaxSatAssumptionOrder_MaxSatAssumptionOrder_MIN
constexpr int SatParameters_ClauseOrdering_ClauseOrdering_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t SatParameters_MaxSatStratificationAlgorithm_internal_data_[]
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_Polarity_descriptor()
@ SatParameters_SearchBranching_PORTFOLIO_WITH_QUICK_RESTART_SEARCH
PROTOBUF_CONSTINIT const uint32_t SatParameters_ConflictMinimizationAlgorithm_internal_data_[]
const ::std::string & SatParameters_MaxSatAssumptionOrder_Name(T value)
constexpr SatParameters_Polarity SatParameters_Polarity_Polarity_MIN
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SatParameters_ConflictMinimizationAlgorithm_descriptor()
OR-Tools root namespace.
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fsat_2fsat_5fparameters_2eproto