6#ifndef ortools_2fsat_2fsat_5fparameters_2eproto_2epb_2eh
7#define ortools_2fsat_2fsat_5fparameters_2eproto_2epb_2eh
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"
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"
30#include "google/protobuf/extension_set.h"
31#include "google/protobuf/generated_enum_reflection.h"
32#include "google/protobuf/unknown_field_set.h"
36#include "google/protobuf/port_def.inc"
38#define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fsat_5fparameters_2eproto OR_PROTO_DLL
89internal::EnumTraitsT<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm_internal_data_>
90 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_BinaryMinizationAlgorithm>;
92internal::EnumTraitsT<::operations_research::sat::SatParameters_ClauseOrdering_internal_data_>
93 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_ClauseOrdering>;
95internal::EnumTraitsT<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm_internal_data_>
96 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm>;
98internal::EnumTraitsT<::operations_research::sat::SatParameters_FPRoundingMethod_internal_data_>
99 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_FPRoundingMethod>;
101internal::EnumTraitsT<::operations_research::sat::SatParameters_MaxSatAssumptionOrder_internal_data_>
102 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_MaxSatAssumptionOrder>;
104internal::EnumTraitsT<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm_internal_data_>
105 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm>;
107internal::EnumTraitsT<::operations_research::sat::SatParameters_Polarity_internal_data_>
108 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_Polarity>;
110internal::EnumTraitsT<::operations_research::sat::SatParameters_RestartAlgorithm_internal_data_>
111 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_RestartAlgorithm>;
113internal::EnumTraitsT<::operations_research::sat::SatParameters_SearchBranching_internal_data_>
114 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_SearchBranching>;
116internal::EnumTraitsT<::operations_research::sat::SatParameters_SharedTreeSplitStrategy_internal_data_>
117 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_SharedTreeSplitStrategy>;
119internal::EnumTraitsT<::operations_research::sat::SatParameters_VariableOrder_internal_data_>
120 internal::EnumTraitsImpl::value<::operations_research::sat::SatParameters_VariableOrder>;
138 return 0 <= value && value <= 2;
144 static_assert(::std::is_same<T, SatParameters_VariableOrder>::value ||
145 ::std::is_integral<T>::value,
146 "Incorrect type passed to VariableOrder_Name().");
151 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_VariableOrder_descriptor, 0, 2>(
152 static_cast<int>(value));
171 return 0 <= value && value <= 2;
177 static_assert(::std::is_same<T, SatParameters_Polarity>::value ||
178 ::std::is_integral<T>::value,
179 "Incorrect type passed to Polarity_Name().");
184 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_Polarity_descriptor, 0, 2>(
185 static_cast<int>(value));
204 return 0 <= value && value <= 2;
210 static_assert(::std::is_same<T, SatParameters_ConflictMinimizationAlgorithm>::value ||
211 ::std::is_integral<T>::value,
212 "Incorrect type passed to ConflictMinimizationAlgorithm_Name().");
217 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_ConflictMinimizationAlgorithm_descriptor, 0, 2>(
218 static_cast<int>(value));
237 return 0 <= value && value <= 5 && ((35u >> value) & 1) != 0;
243 static_assert(::std::is_same<T, SatParameters_BinaryMinizationAlgorithm>::value ||
244 ::std::is_integral<T>::value,
245 "Incorrect type passed to BinaryMinizationAlgorithm_Name().");
250 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_BinaryMinizationAlgorithm_descriptor, 0, 5>(
251 static_cast<int>(value));
269 return 0 <= value && value <= 1;
275 static_assert(::std::is_same<T, SatParameters_ClauseOrdering>::value ||
276 ::std::is_integral<T>::value,
277 "Incorrect type passed to ClauseOrdering_Name().");
282 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_ClauseOrdering_descriptor, 0, 1>(
283 static_cast<int>(value));
304 return 0 <= value && value <= 4;
310 static_assert(::std::is_same<T, SatParameters_RestartAlgorithm>::value ||
311 ::std::is_integral<T>::value,
312 "Incorrect type passed to RestartAlgorithm_Name().");
317 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_RestartAlgorithm_descriptor, 0, 4>(
318 static_cast<int>(value));
337 return 0 <= value && value <= 2;
343 static_assert(::std::is_same<T, SatParameters_MaxSatAssumptionOrder>::value ||
344 ::std::is_integral<T>::value,
345 "Incorrect type passed to MaxSatAssumptionOrder_Name().");
350 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_MaxSatAssumptionOrder_descriptor, 0, 2>(
351 static_cast<int>(value));
370 return 0 <= value && value <= 2;
376 static_assert(::std::is_same<T, SatParameters_MaxSatStratificationAlgorithm>::value ||
377 ::std::is_integral<T>::value,
378 "Incorrect type passed to MaxSatStratificationAlgorithm_Name().");
383 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_MaxSatStratificationAlgorithm_descriptor, 0, 2>(
384 static_cast<int>(value));
409 return 0 <= value && value <= 8;
415 static_assert(::std::is_same<T, SatParameters_SearchBranching>::value ||
416 ::std::is_integral<T>::value,
417 "Incorrect type passed to SearchBranching_Name().");
422 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_SearchBranching_descriptor, 0, 8>(
423 static_cast<int>(value));
444 return 0 <= value && value <= 4;
450 static_assert(::std::is_same<T, SatParameters_SharedTreeSplitStrategy>::value ||
451 ::std::is_integral<T>::value,
452 "Incorrect type passed to SharedTreeSplitStrategy_Name().");
457 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_SharedTreeSplitStrategy_descriptor, 0, 4>(
458 static_cast<int>(value));
478 return 0 <= value && value <= 3;
484 static_assert(::std::is_same<T, SatParameters_FPRoundingMethod>::value ||
485 ::std::is_integral<T>::value,
486 "Incorrect type passed to FPRoundingMethod_Name().");
491 return ::google::protobuf::internal::NameOfDenseEnum<SatParameters_FPRoundingMethod_descriptor, 0, 3>(
492 static_cast<int>(value));
505class OR_PROTO_DLL SatParameters final :
public ::google::protobuf::Message
511#if defined(PROTOBUF_CUSTOM_VTABLE)
512 void operator delete(
SatParameters* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
514 ::google::protobuf::internal::SizedDelete(msg,
sizeof(
SatParameters));
518 template <
typename =
void>
519 explicit PROTOBUF_CONSTEXPR
SatParameters(::google::protobuf::internal::ConstantInitialized);
529 if (
this == &from)
return *
this;
530 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
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);
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>();
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;
560 static constexpr int kIndexInFileMessages = 0;
563 if (other ==
this)
return;
564 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
567 ::google::protobuf::internal::GenericSwap(
this, other);
570 void UnsafeArenaSwap(SatParameters* PROTOBUF_NONNULL other) {
571 if (other ==
this)
return;
572 ABSL_DCHECK(GetArena() == other->GetArena());
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;
583 using ::google::protobuf::Message::MergeFrom;
584 void MergeFrom(
const SatParameters& from) { SatParameters::MergeImpl(*
this, from); }
587 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
588 const ::google::protobuf::MessageLite& from_msg);
594 ABSL_ATTRIBUTE_REINITIALIZES
void Clear() PROTOBUF_FINAL;
595 #if defined(PROTOBUF_CUSTOM_VTABLE)
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);
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);
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;
615 int GetCachedSize()
const {
return _impl_._cached_size_.Get(); }
618 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
622 template <
typename T>
624 static ::absl::string_view FullMessageName() {
return "operations_research.sat.SatParameters"; }
626 explicit SatParameters(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
629 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
SatParameters&& from) noexcept
631 *
this = ::std::move(from);
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_();
640 static constexpr auto InternalGenerateClassData_();
642 ::
google::protobuf::Metadata GetMetadata() const;
644 using VariableOrder = SatParameters_VariableOrder;
645 static constexpr VariableOrder IN_ORDER = SatParameters_VariableOrder_IN_ORDER;
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) {
678 template <
typename T>
679 static inline const ::std::string& Polarity_Name(T value) {
682 static inline bool Polarity_Parse(
683 ::absl::string_view name, Polarity* PROTOBUF_NONNULL value) {
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) {
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) {
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) {
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) {
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) {
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) {
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) {
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) {
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) {
888 kPreferredVariableOrderFieldNumber = 1,
889 kClauseCleanupTargetFieldNumber = 13,
1210 ::int32_t _internal_clause_cleanup_target()
const;
1211 void _internal_set_clause_cleanup_target(::int32_t value);
1221 double _internal_random_polarity_ratio()
const;
1222 void _internal_set_random_polarity_ratio(
double value);
1232 bool _internal_log_search_progress()
const;
1233 void _internal_set_log_search_progress(
bool value);
1243 bool _internal_use_pb_resolution()
const;
1244 void _internal_set_use_pb_resolution(
bool value);
1254 bool _internal_use_optimization_hints()
const;
1255 void _internal_set_use_optimization_hints(
bool value);
1265 bool _internal_use_phase_saving()
const;
1266 void _internal_set_use_phase_saving(
bool value);
1276 bool _internal_use_precedences_in_disjunctive_constraint()
const;
1277 void _internal_set_use_precedences_in_disjunctive_constraint(
bool value);
1309 double _internal_variable_activity_decay()
const;
1310 void _internal_set_variable_activity_decay(
double value);
1320 double _internal_max_variable_activity_value()
const;
1321 void _internal_set_max_variable_activity_value(
double value);
1331 double _internal_clause_activity_decay()
const;
1332 void _internal_set_clause_activity_decay(
double value);
1342 ::int32_t _internal_clause_cleanup_period()
const;
1343 void _internal_set_clause_cleanup_period(::int32_t value);
1353 ::int32_t _internal_glucose_decay_increment_period()
const;
1354 void _internal_set_glucose_decay_increment_period(::int32_t value);
1364 double _internal_max_clause_activity_value()
const;
1365 void _internal_set_max_clause_activity_value(
double value);
1375 double _internal_glucose_max_decay()
const;
1376 void _internal_set_glucose_max_decay(
double value);
1386 double _internal_glucose_decay_increment()
const;
1387 void _internal_set_glucose_decay_increment(
double value);
1397 ::int32_t _internal_restart_period()
const;
1398 void _internal_set_restart_period(::int32_t value);
1408 ::int32_t _internal_random_seed()
const;
1409 void _internal_set_random_seed(::int32_t value);
1419 double _internal_max_time_in_seconds()
const;
1420 void _internal_set_max_time_in_seconds(
double value);
1430 ::int64_t _internal_max_number_of_conflicts()
const;
1431 void _internal_set_max_number_of_conflicts(::int64_t value);
1437 int _internal_restart_algorithms_size()
const;
1449 const ::google::protobuf::RepeatedField<int>& _internal_restart_algorithms()
const;
1450 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL _internal_mutable_restart_algorithms();
1456 int _internal_subsolvers_size()
const;
1460 const ::std::string&
subsolvers(
int index)
const;
1462 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1465 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1467 const ::google::protobuf::RepeatedPtrField<::std::string>&
subsolvers()
const;
1468 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
mutable_subsolvers();
1471 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_subsolvers()
const;
1472 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_subsolvers();
1478 int _internal_ignore_subsolvers_size()
const;
1484 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1487 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1489 const ::google::protobuf::RepeatedPtrField<::std::string>&
ignore_subsolvers()
const;
1493 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_ignore_subsolvers()
const;
1494 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_ignore_subsolvers();
1500 int _internal_subsolver_params_size()
const;
1505 ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>* PROTOBUF_NONNULL
mutable_subsolver_params();
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();
1511 const ::operations_research::sat::SatParameters&
subsolver_params(
int index)
const;
1513 const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters>&
subsolver_params()
const;
1517 int _internal_extra_subsolvers_size()
const;
1523 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1526 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1528 const ::google::protobuf::RepeatedPtrField<::std::string>&
extra_subsolvers()
const;
1532 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_extra_subsolvers()
const;
1533 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_extra_subsolvers();
1539 int _internal_filter_subsolvers_size()
const;
1545 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1548 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1550 const ::google::protobuf::RepeatedPtrField<::std::string>&
filter_subsolvers()
const;
1554 const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_filter_subsolvers()
const;
1555 ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_filter_subsolvers();
1562 template <
typename Arg_ = const ::std::string&,
typename... Args_>
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();
1577 const ::std::string&
name()
const;
1578 template <
typename Arg_ = const ::std::string&,
typename... Args_>
1579 void set_name(Arg_&& arg, Args_... args);
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();
1594 template <
typename Arg_ = const ::std::string&,
typename... Args_>
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();
1613 double _internal_random_branches_ratio()
const;
1614 void _internal_set_random_branches_ratio(
double value);
1635 bool _internal_minimize_reduction_during_pb_resolution()
const;
1636 void _internal_set_minimize_reduction_during_pb_resolution(
bool value);
1646 bool _internal_max_sat_reverse_assumption_order()
const;
1647 void _internal_set_max_sat_reverse_assumption_order(
bool value);
1657 bool _internal_use_blocking_restart()
const;
1658 void _internal_set_use_blocking_restart(
bool value);
1668 bool _internal_use_erwa_heuristic()
const;
1669 void _internal_set_use_erwa_heuristic(
bool value);
1690 ::int32_t _internal_num_conflicts_before_strategy_changes()
const;
1691 void _internal_set_num_conflicts_before_strategy_changes(::int32_t value);
1701 double _internal_strategy_change_increase_ratio()
const;
1702 void _internal_set_strategy_change_increase_ratio(
double value);
1712 double _internal_initial_variables_activity()
const;
1713 void _internal_set_initial_variables_activity(
double value);
1723 bool _internal_also_bump_variables_in_conflict_reasons()
const;
1724 void _internal_set_also_bump_variables_in_conflict_reasons(
bool value);
1734 bool _internal_use_overload_checker_in_cumulative()
const;
1735 void _internal_set_use_overload_checker_in_cumulative(
bool value);
1745 bool _internal_use_timetable_edge_finding_in_cumulative()
const;
1746 void _internal_set_use_timetable_edge_finding_in_cumulative(
bool value);
1756 bool _internal_optimize_with_core()
const;
1757 void _internal_set_optimize_with_core(
bool value);
1778 bool _internal_optimize_with_max_hs()
const;
1779 void _internal_set_optimize_with_max_hs(
bool value);
1789 bool _internal_enumerate_all_solutions()
const;
1790 void _internal_set_enumerate_all_solutions(
bool value);
1800 bool _internal_only_add_cuts_at_level_zero()
const;
1801 void _internal_set_only_add_cuts_at_level_zero(
bool value);
1811 bool _internal_stop_after_first_solution()
const;
1812 void _internal_set_stop_after_first_solution(
bool value);
1822 ::int32_t _internal_num_search_workers()
const;
1823 void _internal_set_num_search_workers(::int32_t value);
1833 ::int64_t _internal_search_random_variable_pool_size()
const;
1834 void _internal_set_search_random_variable_pool_size(::int64_t value);
1844 bool _internal_use_lns_only()
const;
1845 void _internal_set_use_lns_only(
bool value);
1855 bool _internal_randomize_search()
const;
1856 void _internal_set_randomize_search(
bool value);
1866 bool _internal_use_optional_variables()
const;
1867 void _internal_set_use_optional_variables(
bool value);
1877 bool _internal_exploit_best_solution()
const;
1878 void _internal_set_exploit_best_solution(
bool value);
1888 ::int32_t _internal_interleave_batch_size()
const;
1889 void _internal_set_interleave_batch_size(::int32_t value);
1899 bool _internal_fill_tightened_domains_in_response()
const;
1900 void _internal_set_fill_tightened_domains_in_response(
bool value);
1910 bool _internal_use_combined_no_overlap()
const;
1911 void _internal_set_use_combined_no_overlap(
bool value);
1921 bool _internal_interleave_search()
const;
1922 void _internal_set_interleave_search(
bool value);
1932 bool _internal_diversify_lns_params()
const;
1933 void _internal_set_diversify_lns_params(
bool value);
1943 ::int32_t _internal_debug_max_num_presolve_operations()
const;
1944 void _internal_set_debug_max_num_presolve_operations(::int32_t value);
1954 double _internal_relative_gap_limit()
const;
1955 void _internal_set_relative_gap_limit(
double value);
1965 bool _internal_stop_after_presolve()
const;
1966 void _internal_set_stop_after_presolve(
bool value);
1976 bool _internal_exploit_relaxation_solution()
const;
1977 void _internal_set_exploit_relaxation_solution(
bool value);
1987 bool _internal_debug_postsolve_with_full_solver()
const;
1988 void _internal_set_debug_postsolve_with_full_solver(
bool value);
1998 bool _internal_repair_hint()
const;
1999 void _internal_set_repair_hint(
bool value);
2009 bool _internal_expand_alldiff_constraints()
const;
2010 void _internal_set_expand_alldiff_constraints(
bool value);
2020 bool _internal_keep_all_feasible_solutions_in_presolve()
const;
2021 void _internal_set_keep_all_feasible_solutions_in_presolve(
bool value);
2031 bool _internal_presolve_extract_integer_enforcement()
const;
2032 void _internal_set_presolve_extract_integer_enforcement(
bool value);
2042 bool _internal_polish_lp_solution()
const;
2043 void _internal_set_polish_lp_solution(
bool value);
2053 bool _internal_use_probing_search()
const;
2054 void _internal_set_use_probing_search(
bool value);
2064 bool _internal_permute_variable_randomly()
const;
2065 void _internal_set_permute_variable_randomly(
bool value);
2075 bool _internal_permute_presolve_constraint_order()
const;
2076 void _internal_set_permute_presolve_constraint_order(
bool value);
2086 bool _internal_use_absl_random()
const;
2087 void _internal_set_use_absl_random(
bool value);
2097 bool _internal_disable_constraint_expansion()
const;
2098 void _internal_set_disable_constraint_expansion(
bool value);
2108 bool _internal_log_to_response()
const;
2109 void _internal_set_log_to_response(
bool value);
2119 bool _internal_optimize_with_lb_tree_search()
const;
2120 void _internal_set_optimize_with_lb_tree_search(
bool value);
2130 bool _internal_log_subsolver_statistics()
const;
2131 void _internal_set_log_subsolver_statistics(
bool value);
2141 bool _internal_fix_variables_to_their_hinted_value()
const;
2142 void _internal_set_fix_variables_to_their_hinted_value(
bool value);
2152 bool _internal_fill_additional_solutions_in_response()
const;
2153 void _internal_set_fill_additional_solutions_in_response(
bool value);
2163 bool _internal_debug_crash_on_bad_hint()
const;
2164 void _internal_set_debug_crash_on_bad_hint(
bool value);
2174 bool _internal_add_objective_cut()
const;
2175 void _internal_set_add_objective_cut(
bool value);
2185 ::int32_t _internal_num_workers()
const;
2186 void _internal_set_num_workers(::int32_t value);
2196 bool _internal_use_timetabling_in_no_overlap_2d()
const;
2197 void _internal_set_use_timetabling_in_no_overlap_2d(
bool value);
2207 bool _internal_use_energetic_reasoning_in_no_overlap_2d()
const;
2208 void _internal_set_use_energetic_reasoning_in_no_overlap_2d(
bool value);
2218 bool _internal_use_hard_precedences_in_cumulative()
const;
2219 void _internal_set_use_hard_precedences_in_cumulative(
bool value);
2229 bool _internal_detect_table_with_cost()
const;
2230 void _internal_set_detect_table_with_cost(
bool value);
2240 bool _internal_exploit_all_precedences()
const;
2241 void _internal_set_exploit_all_precedences(
bool value);
2251 bool _internal_only_solve_ip()
const;
2252 void _internal_set_only_solve_ip(
bool value);
2262 bool _internal_encode_complex_linear_constraint_with_integer()
const;
2263 void _internal_set_encode_complex_linear_constraint_with_integer(
bool value);
2273 bool _internal_mip_scale_large_domain()
const;
2274 void _internal_set_mip_scale_large_domain(
bool value);
2284 bool _internal_use_objective_lb_search()
const;
2285 void _internal_set_use_objective_lb_search(
bool value);
2295 bool _internal_use_strong_propagation_in_disjunctive()
const;
2296 void _internal_set_use_strong_propagation_in_disjunctive(
bool value);
2306 bool _internal_use_shared_tree_search()
const;
2307 void _internal_set_use_shared_tree_search(
bool value);
2317 bool _internal_use_ls_only()
const;
2318 void _internal_set_use_ls_only(
bool value);
2339 ::int32_t _internal_num_violation_ls()
const;
2340 void _internal_set_num_violation_ls(::int32_t value);
2350 bool _internal_stop_after_root_propagation()
const;
2351 void _internal_set_stop_after_root_propagation(
bool value);
2361 bool _internal_use_objective_shaving_search()
const;
2362 void _internal_set_use_objective_shaving_search(
bool value);
2372 bool _internal_push_all_tasks_toward_start()
const;
2373 void _internal_set_push_all_tasks_toward_start(
bool value);
2383 bool _internal_use_dynamic_precedence_in_disjunctive()
const;
2384 void _internal_set_use_dynamic_precedence_in_disjunctive(
bool value);
2394 bool _internal_use_dynamic_precedence_in_cumulative()
const;
2395 void _internal_set_use_dynamic_precedence_in_cumulative(
bool value);
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);
2416 bool _internal_detect_linearized_product()
const;
2417 void _internal_set_detect_linearized_product(
bool value);
2427 bool _internal_mip_treat_high_magnitude_bounds_as_infinity()
const;
2428 void _internal_set_mip_treat_high_magnitude_bounds_as_infinity(
bool value);
2438 ::int32_t _internal_max_lin_max_size_for_expansion()
const;
2439 void _internal_set_max_lin_max_size_for_expansion(::int32_t value);
2449 bool _internal_save_lp_basis_in_lb_tree_search()
const;
2450 void _internal_set_save_lp_basis_in_lb_tree_search(
bool value);
2460 bool _internal_use_conservative_scale_overload_checker()
const;
2461 void _internal_set_use_conservative_scale_overload_checker(
bool value);
2471 bool _internal_encode_cumulative_as_reservoir()
const;
2472 void _internal_set_encode_cumulative_as_reservoir(
bool value);
2482 bool _internal_expand_reservoir_using_circuit()
const;
2483 void _internal_set_expand_reservoir_using_circuit(
bool value);
2493 ::int32_t _internal_max_num_deterministic_batches()
const;
2494 void _internal_set_max_num_deterministic_batches(::int32_t value);
2504 ::int32_t _internal_num_full_subsolvers()
const;
2505 void _internal_set_num_full_subsolvers(::int32_t value);
2515 bool _internal_inprocessing_minimization_use_all_orderings()
const;
2516 void _internal_set_inprocessing_minimization_use_all_orderings(
bool value);
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);
2537 bool _internal_use_symmetry_in_lp()
const;
2538 void _internal_set_use_symmetry_in_lp(
bool value);
2548 bool _internal_keep_symmetry_in_presolve()
const;
2549 void _internal_set_keep_symmetry_in_presolve(
bool value);
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);
2570 bool _internal_debug_crash_if_presolve_breaks_hint()
const;
2571 void _internal_set_debug_crash_if_presolve_breaks_hint(
bool value);
2581 bool _internal_polarity_exploit_ls_hints()
const;
2582 void _internal_set_polarity_exploit_ls_hints(
bool value);
2592 bool _internal_use_all_different_for_circuit()
const;
2593 void _internal_set_use_all_different_for_circuit(
bool value);
2603 bool _internal_filter_sat_postsolve_clauses()
const;
2604 void _internal_set_filter_sat_postsolve_clauses(
bool value);
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);
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);
2636 bool _internal_share_linear2_bounds()
const;
2637 void _internal_set_share_linear2_bounds(
bool value);
2647 bool _internal_use_chronological_backtracking()
const;
2648 void _internal_set_use_chronological_backtracking(
bool value);
2658 bool _internal_load_at_most_ones_in_sat_presolve()
const;
2659 void _internal_set_load_at_most_ones_in_sat_presolve(
bool value);
2669 bool _internal_use_new_integer_conflict_resolution()
const;
2670 void _internal_set_use_new_integer_conflict_resolution(
bool value);
2680 ::int32_t _internal_clause_cleanup_period_increment()
const;
2681 void _internal_set_clause_cleanup_period_increment(::int32_t value);
2691 bool _internal_debug_crash_if_lrat_check_fails()
const;
2692 void _internal_set_debug_crash_if_lrat_check_fails(
bool value);
2702 bool _internal_check_lrat_proof()
const;
2703 void _internal_set_check_lrat_proof(
bool value);
2713 bool _internal_output_lrat_proof()
const;
2714 void _internal_set_output_lrat_proof(
bool value);
2724 bool _internal_check_drat_proof()
const;
2725 void _internal_set_check_drat_proof(
bool value);
2735 ::int32_t _internal_clause_cleanup_lbd_tier1()
const;
2736 void _internal_set_clause_cleanup_lbd_tier1(::int32_t value);
2746 ::int32_t _internal_clause_cleanup_lbd_tier2()
const;
2747 void _internal_set_clause_cleanup_lbd_tier2(::int32_t value);
2757 bool _internal_output_drat_proof()
const;
2758 void _internal_set_output_drat_proof(
bool value);
2768 bool _internal_check_merged_lrat_proof()
const;
2769 void _internal_set_check_merged_lrat_proof(
bool value);
2779 bool _internal_inprocessing_use_sat_sweeping()
const;
2780 void _internal_set_inprocessing_use_sat_sweeping(
bool value);
2790 ::int64_t _internal_max_memory_in_mb()
const;
2791 void _internal_set_max_memory_in_mb(::int64_t value);
2812 ::int32_t _internal_pb_cleanup_increment()
const;
2813 void _internal_set_pb_cleanup_increment(::int32_t value);
2823 double _internal_pb_cleanup_ratio()
const;
2824 void _internal_set_pb_cleanup_ratio(
double value);
2834 ::int32_t _internal_core_minimization_level()
const;
2835 void _internal_set_core_minimization_level(::int32_t value);
2856 ::int32_t _internal_presolve_bve_threshold()
const;
2857 void _internal_set_presolve_bve_threshold(::int32_t value);
2867 ::int32_t _internal_presolve_bve_clause_weight()
const;
2868 void _internal_set_presolve_bve_clause_weight(::int32_t value);
2878 double _internal_presolve_probing_deterministic_time_limit()
const;
2879 void _internal_set_presolve_probing_deterministic_time_limit(
double value);
2889 ::int32_t _internal_clause_cleanup_lbd_bound()
const;
2890 void _internal_set_clause_cleanup_lbd_bound(::int32_t value);
2900 ::int32_t _internal_restart_running_window_size()
const;
2901 void _internal_set_restart_running_window_size(::int32_t value);
2911 double _internal_restart_dl_average_ratio()
const;
2912 void _internal_set_restart_dl_average_ratio(
double value);
2922 bool _internal_count_assumption_levels_in_lbd()
const;
2923 void _internal_set_count_assumption_levels_in_lbd(
bool value);
2933 bool _internal_subsumption_during_conflict_analysis()
const;
2934 void _internal_set_subsumption_during_conflict_analysis(
bool value);
2944 bool _internal_presolve_use_bva()
const;
2945 void _internal_set_presolve_use_bva(
bool value);
2955 bool _internal_use_disjunctive_constraint_in_cumulative()
const;
2956 void _internal_set_use_disjunctive_constraint_in_cumulative(
bool value);
2966 ::int32_t _internal_blocking_restart_window_size()
const;
2967 void _internal_set_blocking_restart_window_size(::int32_t value);
2977 double _internal_blocking_restart_multiplier()
const;
2978 void _internal_set_blocking_restart_multiplier(
double value);
2988 double _internal_max_deterministic_time()
const;
2989 void _internal_set_max_deterministic_time(
double value);
2999 double _internal_restart_lbd_average_ratio()
const;
3000 void _internal_set_restart_lbd_average_ratio(
double value);
3010 ::int32_t _internal_presolve_bva_threshold()
const;
3011 void _internal_set_presolve_bva_threshold(::int32_t value);
3021 bool _internal_find_multiple_cores()
const;
3022 void _internal_set_find_multiple_cores(
bool value);
3032 bool _internal_cp_model_presolve()
const;
3033 void _internal_set_cp_model_presolve(
bool value);
3043 bool _internal_presolve_blocked_clause()
const;
3044 void _internal_set_presolve_blocked_clause(
bool value);
3054 bool _internal_cover_optimization()
const;
3055 void _internal_set_cover_optimization(
bool value);
3065 ::int32_t _internal_linearization_level()
const;
3066 void _internal_set_linearization_level(::int32_t value);
3076 ::int32_t _internal_max_num_cuts()
const;
3077 void _internal_set_max_num_cuts(::int32_t value);
3087 bool _internal_cp_model_use_sat_presolve()
const;
3088 void _internal_set_cp_model_use_sat_presolve(
bool value);
3098 bool _internal_exploit_integer_lp_solution()
const;
3099 void _internal_set_exploit_integer_lp_solution(
bool value);
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);
3120 bool _internal_instantiate_all_variables()
const;
3121 void _internal_set_instantiate_all_variables(
bool value);
3131 ::int32_t _internal_binary_search_num_conflicts()
const;
3132 void _internal_set_binary_search_num_conflicts(::int32_t value);
3142 ::int32_t _internal_boolean_encoding_level()
const;
3143 void _internal_set_boolean_encoding_level(::int32_t value);
3153 ::int32_t _internal_cp_model_probing_level()
const;
3154 void _internal_set_cp_model_probing_level(::int32_t value);
3164 bool _internal_use_exact_lp_reason()
const;
3165 void _internal_set_use_exact_lp_reason(
bool value);
3175 bool _internal_add_lp_constraints_lazily()
const;
3176 void _internal_set_add_lp_constraints_lazily(
bool value);
3186 bool _internal_share_objective_bounds()
const;
3187 void _internal_set_share_objective_bounds(
bool value);
3197 bool _internal_share_level_zero_bounds()
const;
3198 void _internal_set_share_level_zero_bounds(
bool value);
3208 ::int32_t _internal_max_integer_rounding_scaling()
const;
3209 void _internal_set_max_integer_rounding_scaling(::int32_t value);
3219 double _internal_min_orthogonality_for_lp_constraints()
const;
3220 void _internal_set_min_orthogonality_for_lp_constraints(
double value);
3230 bool _internal_exploit_all_lp_solution()
const;
3231 void _internal_set_exploit_all_lp_solution(
bool value);
3241 bool _internal_add_cg_cuts()
const;
3242 void _internal_set_add_cg_cuts(
bool value);
3252 bool _internal_add_mir_cuts()
const;
3253 void _internal_set_add_mir_cuts(
bool value);
3263 bool _internal_use_rins_lns()
const;
3264 void _internal_set_use_rins_lns(
bool value);
3274 ::int32_t _internal_max_consecutive_inactive_count()
const;
3275 void _internal_set_max_consecutive_inactive_count(::int32_t value);
3285 ::int64_t _internal_pseudo_cost_reliability_threshold()
const;
3286 void _internal_set_pseudo_cost_reliability_threshold(::int64_t value);
3296 double _internal_mip_max_bound()
const;
3297 void _internal_set_mip_max_bound(
double value);
3307 ::int32_t _internal_new_constraints_batch_size()
const;
3308 void _internal_set_new_constraints_batch_size(::int32_t value);
3318 ::int32_t _internal_mip_max_activity_exponent()
const;
3319 void _internal_set_mip_max_activity_exponent(::int32_t value);
3329 double _internal_mip_var_scaling()
const;
3330 void _internal_set_mip_var_scaling(
double value);
3340 double _internal_mip_wanted_precision()
const;
3341 void _internal_set_mip_wanted_precision(
double value);
3351 double _internal_mip_check_precision()
const;
3352 void _internal_set_mip_check_precision(
double value);
3362 ::int32_t _internal_max_presolve_iterations()
const;
3363 void _internal_set_max_presolve_iterations(::int32_t value);
3373 bool _internal_exploit_objective()
const;
3374 void _internal_set_exploit_objective(
bool value);
3384 bool _internal_catch_sigint_signal()
const;
3385 void _internal_set_catch_sigint_signal(
bool value);
3395 bool _internal_use_implied_bounds()
const;
3396 void _internal_set_use_implied_bounds(
bool value);
3406 bool _internal_add_lin_max_cuts()
const;
3407 void _internal_set_add_lin_max_cuts(
bool value);
3417 double _internal_merge_no_overlap_work_limit()
const;
3418 void _internal_set_merge_no_overlap_work_limit(
double value);
3428 double _internal_merge_at_most_one_work_limit()
const;
3429 void _internal_set_merge_at_most_one_work_limit(
double value);
3439 ::int32_t _internal_presolve_substitution_level()
const;
3440 void _internal_set_presolve_substitution_level(::int32_t value);
3450 ::int32_t _internal_max_all_diff_cut_size()
const;
3451 void _internal_set_max_all_diff_cut_size(::int32_t value);
3461 ::int32_t _internal_hint_conflict_limit()
const;
3462 void _internal_set_hint_conflict_limit(::int32_t value);
3472 ::int32_t _internal_max_cut_rounds_at_level_zero()
const;
3473 void _internal_set_max_cut_rounds_at_level_zero(::int32_t value);
3483 double _internal_cut_max_active_count_value()
const;
3484 void _internal_set_cut_max_active_count_value(
double value);
3494 double _internal_cut_active_count_decay()
const;
3495 void _internal_set_cut_active_count_decay(
double value);
3505 double _internal_absolute_gap_limit()
const;
3506 void _internal_set_absolute_gap_limit(
double value);
3516 ::int32_t _internal_cut_cleanup_target()
const;
3517 void _internal_set_cut_cleanup_target(::int32_t value);
3538 bool _internal_use_sat_inprocessing()
const;
3539 void _internal_set_use_sat_inprocessing(
bool value);
3549 bool _internal_use_feasibility_pump()
const;
3550 void _internal_set_use_feasibility_pump(
bool value);
3560 bool _internal_mip_automatically_scale_variables()
const;
3561 void _internal_set_mip_automatically_scale_variables(
bool value);
3571 bool _internal_add_zero_half_cuts()
const;
3572 void _internal_set_add_zero_half_cuts(
bool value);
3582 ::int32_t _internal_polarity_rephase_increment()
const;
3583 void _internal_set_polarity_rephase_increment(::int32_t value);
3593 bool _internal_add_clique_cuts()
const;
3594 void _internal_set_add_clique_cuts(
bool value);
3604 bool _internal_convert_intervals()
const;
3605 void _internal_set_convert_intervals(
bool value);
3615 bool _internal_expand_reservoir_constraints()
const;
3616 void _internal_set_expand_reservoir_constraints(
bool value);
3626 bool _internal_log_to_stdout()
const;
3627 void _internal_set_log_to_stdout(
bool value);
3637 ::int32_t _internal_symmetry_level()
const;
3638 void _internal_set_symmetry_level(::int32_t value);
3648 double _internal_clause_cleanup_ratio()
const;
3649 void _internal_set_clause_cleanup_ratio(
double value);
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);
3670 ::int32_t _internal_solution_pool_size()
const;
3671 void _internal_set_solution_pool_size(::int32_t value);
3681 double _internal_mip_max_valid_magnitude()
const;
3682 void _internal_set_mip_max_valid_magnitude(
double value);
3692 ::int64_t _internal_presolve_inclusion_work_limit()
const;
3693 void _internal_set_presolve_inclusion_work_limit(::int64_t value);
3703 ::int32_t _internal_cut_level()
const;
3704 void _internal_set_cut_level(::int32_t value);
3714 bool _internal_mip_compute_true_objective_bound()
const;
3715 void _internal_set_mip_compute_true_objective_bound(
bool value);
3725 bool _internal_ignore_names()
const;
3726 void _internal_set_ignore_names(
bool value);
3736 bool _internal_share_binary_clauses()
const;
3737 void _internal_set_share_binary_clauses(
bool value);
3747 bool _internal_use_dual_scheduling_heuristics()
const;
3748 void _internal_set_use_dual_scheduling_heuristics(
bool value);
3758 double _internal_shaving_deterministic_time_in_probing_search()
const;
3759 void _internal_set_shaving_deterministic_time_in_probing_search(
double value);
3769 double _internal_shaving_search_deterministic_time()
const;
3770 void _internal_set_shaving_search_deterministic_time(
double value);
3780 double _internal_propagation_loop_detection_factor()
const;
3781 void _internal_set_propagation_loop_detection_factor(
double value);
3791 ::int32_t _internal_table_compression_level()
const;
3792 void _internal_set_table_compression_level(::int32_t value);
3802 ::int32_t _internal_root_lp_iterations()
const;
3803 void _internal_set_root_lp_iterations(::int32_t value);
3813 double _internal_probing_deterministic_time_limit()
const;
3814 void _internal_set_probing_deterministic_time_limit(
double value);
3824 double _internal_mip_drop_tolerance()
const;
3825 void _internal_set_mip_drop_tolerance(
double value);
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);
3846 ::int32_t _internal_shared_tree_num_workers()
const;
3847 void _internal_set_shared_tree_num_workers(::int32_t value);
3857 bool _internal_new_linear_propagation()
const;
3858 void _internal_set_new_linear_propagation(
bool value);
3868 bool _internal_infer_all_diffs()
const;
3869 void _internal_set_infer_all_diffs(
bool value);
3879 bool _internal_find_big_linear_overlap()
const;
3880 void _internal_set_find_big_linear_overlap(
bool value);
3890 bool _internal_feasibility_jump_enable_restarts()
const;
3891 void _internal_set_feasibility_jump_enable_restarts(
bool value);
3901 ::int32_t _internal_shared_tree_max_nodes_per_worker()
const;
3902 void _internal_set_shared_tree_max_nodes_per_worker(::int32_t value);
3912 double _internal_feasibility_jump_decay()
const;
3913 void _internal_set_feasibility_jump_decay(
double value);
3923 double _internal_feasibility_jump_var_randomization_probability()
const;
3924 void _internal_set_feasibility_jump_var_randomization_probability(
double value);
3934 double _internal_feasibility_jump_var_perburbation_range_ratio()
const;
3935 void _internal_set_feasibility_jump_var_perburbation_range_ratio(
double value);
3945 ::int32_t _internal_violation_ls_perturbation_period()
const;
3946 void _internal_set_violation_ls_perturbation_period(::int32_t value);
3956 ::int32_t _internal_linear_split_size()
const;
3957 void _internal_set_linear_split_size(::int32_t value);
3967 ::int32_t _internal_feasibility_jump_linearization_level()
const;
3968 void _internal_set_feasibility_jump_linearization_level(::int32_t value);
3978 ::int32_t _internal_feasibility_jump_restart_factor()
const;
3979 void _internal_set_feasibility_jump_restart_factor(::int32_t value);
3989 double _internal_violation_ls_compound_move_probability()
const;
3990 void _internal_set_violation_ls_compound_move_probability(
double value);
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);
4011 ::int32_t _internal_mip_presolve_level()
const;
4012 void _internal_set_mip_presolve_level(::int32_t value);
4022 double _internal_lp_primal_tolerance()
const;
4023 void _internal_set_lp_primal_tolerance(
double value);
4033 ::int32_t _internal_feasibility_jump_max_expanded_constraint_size()
const;
4034 void _internal_set_feasibility_jump_max_expanded_constraint_size(::int32_t value);
4044 bool _internal_use_lb_relax_lns()
const;
4045 void _internal_set_use_lb_relax_lns(
bool value);
4055 bool _internal_use_feasibility_jump()
const;
4056 void _internal_set_use_feasibility_jump(
bool value);
4066 bool _internal_use_extended_probing()
const;
4067 void _internal_set_use_extended_probing(
bool value);
4077 bool _internal_add_rlt_cuts()
const;
4078 void _internal_set_add_rlt_cuts(
bool value);
4088 double _internal_lp_dual_tolerance()
const;
4089 void _internal_set_lp_dual_tolerance(
double value);
4099 ::int32_t _internal_at_most_one_max_expansion_size()
const;
4100 void _internal_set_at_most_one_max_expansion_size(::int32_t value);
4110 ::int32_t _internal_probing_num_combinations_limit()
const;
4111 void _internal_set_probing_num_combinations_limit(::int32_t value);
4121 double _internal_inprocessing_dtime_ratio()
const;
4122 void _internal_set_inprocessing_dtime_ratio(
double value);
4132 double _internal_inprocessing_probing_dtime()
const;
4133 void _internal_set_inprocessing_probing_dtime(
double value);
4143 double _internal_inprocessing_minimization_dtime()
const;
4144 void _internal_set_inprocessing_minimization_dtime(
double value);
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);
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);
4176 double _internal_shared_tree_open_leaves_per_worker()
const;
4177 void _internal_set_shared_tree_open_leaves_per_worker(
double value);
4187 ::int32_t _internal_variables_shaving_level()
const;
4188 void _internal_set_variables_shaving_level(::int32_t value);
4198 bool _internal_use_lns()
const;
4199 void _internal_set_use_lns(
bool value);
4209 bool _internal_share_glue_clauses()
const;
4210 void _internal_set_share_glue_clauses(
bool value);
4220 bool _internal_shared_tree_worker_enable_trail_sharing()
const;
4221 void _internal_set_shared_tree_worker_enable_trail_sharing(
bool value);
4231 bool _internal_inprocessing_minimization_use_conflict_analysis()
const;
4232 void _internal_set_inprocessing_minimization_use_conflict_analysis(
bool value);
4242 ::int64_t _internal_shaving_search_threshold()
const;
4243 void _internal_set_shaving_search_threshold(::int64_t value);
4253 double _internal_feasibility_jump_batch_dtime()
const;
4254 void _internal_set_feasibility_jump_batch_dtime(
double value);
4264 ::int32_t _internal_lb_relax_num_workers_threshold()
const;
4265 void _internal_set_lb_relax_num_workers_threshold(::int32_t value);
4275 ::int32_t _internal_shared_tree_balance_tolerance()
const;
4276 void _internal_set_shared_tree_balance_tolerance(::int32_t value);
4286 double _internal_symmetry_detection_deterministic_time_limit()
const;
4287 void _internal_set_symmetry_detection_deterministic_time_limit(
double value);
4297 double _internal_lns_initial_difficulty()
const;
4298 void _internal_set_lns_initial_difficulty(
double value);
4308 double _internal_lns_initial_deterministic_limit()
const;
4309 void _internal_set_lns_initial_deterministic_limit(
double value);
4319 bool _internal_minimize_shared_clauses()
const;
4320 void _internal_set_minimize_shared_clauses(
bool value);
4330 bool _internal_shared_tree_worker_enable_phase_sharing()
const;
4331 void _internal_set_shared_tree_worker_enable_phase_sharing(
bool value);
4341 bool _internal_remove_fixed_variables_early()
const;
4342 void _internal_set_remove_fixed_variables_early(
bool value);
4352 bool _internal_use_linear3_for_no_overlap_2d_precedences()
const;
4353 void _internal_set_use_linear3_for_no_overlap_2d_precedences(
bool value);
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);
4374 double _internal_routing_cut_dp_effort()
const;
4375 void _internal_set_routing_cut_dp_effort(
double value);
4385 ::int32_t _internal_routing_cut_max_infeasible_path_length()
const;
4386 void _internal_set_routing_cut_max_infeasible_path_length(::int32_t value);
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);
4407 ::int32_t _internal_max_alldiff_domain_size()
const;
4408 void _internal_set_max_alldiff_domain_size(::int32_t value);
4418 ::int32_t _internal_no_overlap_2d_boolean_relations_limit()
const;
4419 void _internal_set_no_overlap_2d_boolean_relations_limit(::int32_t value);
4429 double _internal_share_glue_clauses_dtime()
const;
4430 void _internal_set_share_glue_clauses_dtime(
double value);
4440 ::int32_t _internal_alternative_pool_size()
const;
4441 void _internal_set_alternative_pool_size(::int32_t value);
4451 ::int32_t _internal_transitive_precedences_work_limit()
const;
4452 void _internal_set_transitive_precedences_work_limit(::int32_t value);
4462 double _internal_shared_tree_split_min_dtime()
const;
4463 void _internal_set_shared_tree_split_min_dtime(
double value);
4473 ::int32_t _internal_solution_pool_diversity_limit()
const;
4474 void _internal_set_solution_pool_diversity_limit(::int32_t value);
4484 ::int32_t _internal_max_backjump_levels()
const;
4485 void _internal_set_max_backjump_levels(::int32_t value);
4495 ::int32_t _internal_chronological_backtrack_min_conflicts()
const;
4496 void _internal_set_chronological_backtrack_min_conflicts(::int32_t value);
4506 ::int32_t _internal_max_domain_size_for_linear2_expansion()
const;
4507 void _internal_set_max_domain_size_for_linear2_expansion(::int32_t value);
4517 bool _internal_find_clauses_that_are_exactly_one()
const;
4518 void _internal_set_find_clauses_that_are_exactly_one(
bool value);
4528 bool _internal_create_1uip_boolean_during_icr()
const;
4529 void _internal_set_create_1uip_boolean_during_icr(
bool value);
4539 bool _internal_inprocessing_use_congruence_closure()
const;
4540 void _internal_set_inprocessing_use_congruence_closure(
bool value);
4550 bool _internal_extra_subsumption_during_conflict_analysis()
const;
4551 void _internal_set_extra_subsumption_during_conflict_analysis(
bool value);
4561 ::int32_t _internal_eagerly_subsume_last_n_conflicts()
const;
4562 void _internal_set_eagerly_subsume_last_n_conflicts(::int32_t value);
4572 double _internal_max_drat_time_in_seconds()
const;
4573 void _internal_set_max_drat_time_in_seconds(
double value);
4583 bool _internal_decision_subsumption_during_conflict_analysis()
const;
4584 void _internal_set_decision_subsumption_during_conflict_analysis(
bool value);
4594 bool _internal_subsume_during_vivification()
const;
4595 void _internal_set_subsume_during_vivification(
bool value);
4601 friend class ::google::protobuf::internal::TcParser;
4602 static const ::google::protobuf::internal::TcParseTable<5, 303,
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;
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,
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_;
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_;
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_;
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_;
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_;
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_;
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_;
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_;
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
4930 union { Impl_ _impl_; };
4931 friend struct ::TableStruct_ortools_2fsat_2fsat_5fparameters_2eproto;
4945#pragma GCC diagnostic push
4946#pragma GCC diagnostic ignored "-Wstrict-aliasing"
4954 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x20000000U);
4958 ::google::protobuf::internal::TSanWrite(&
_impl_);
4959 _impl_.name_.ClearToEmpty();
4960 ClearHasBit(
_impl_._has_bits_[0],
4964 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4966 return _internal_name();
4968template <
typename Arg_,
typename... Args_>
4970 ::google::protobuf::internal::TSanWrite(&
_impl_);
4971 SetHasBit(
_impl_._has_bits_[0], 0x20000000U);
4972 _impl_.name_.Set(
static_cast<Arg_&&
>(arg), args..., GetArena());
4976 ABSL_ATTRIBUTE_LIFETIME_BOUND {
4977 SetHasBit(
_impl_._has_bits_[0], 0x20000000U);
4978 ::std::string* _s = _internal_mutable_name();
4982inline const ::std::string& SatParameters::_internal_name()
const {
4983 ::google::protobuf::internal::TSanRead(&
_impl_);
4984 return _impl_.name_.Get();
4986inline void SatParameters::_internal_set_name(const ::std::string& value) {
4987 ::google::protobuf::internal::TSanWrite(&
_impl_);
4988 _impl_.name_.Set(value, GetArena());
4990inline ::std::string* PROTOBUF_NONNULL SatParameters::_internal_mutable_name() {
4991 ::google::protobuf::internal::TSanWrite(&
_impl_);
4992 return _impl_.name_.Mutable( GetArena());
4995 ::google::protobuf::internal::TSanWrite(&
_impl_);
4997 if (!CheckHasBit(
_impl_._has_bits_[0], 0x20000000U)) {
5000 ClearHasBit(
_impl_._has_bits_[0], 0x20000000U);
5001 auto* released =
_impl_.name_.Release();
5002 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
5003 _impl_.name_.Set(
"", GetArena());
5008 ::google::protobuf::internal::TSanWrite(&
_impl_);
5009 if (value !=
nullptr) {
5010 SetHasBit(
_impl_._has_bits_[0], 0x20000000U);
5012 ClearHasBit(
_impl_._has_bits_[0], 0x20000000U);
5014 _impl_.name_.SetAllocated(value, GetArena());
5015 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() &&
_impl_.name_.IsDefault()) {
5016 _impl_.name_.Set(
"", GetArena());
5023 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000001U);
5027 ::google::protobuf::internal::TSanWrite(&
_impl_);
5028 _impl_.preferred_variable_order_ = 0;
5029 ClearHasBit(
_impl_._has_bits_[0],
5034 return _internal_preferred_variable_order();
5037 _internal_set_preferred_variable_order(value);
5038 SetHasBit(
_impl_._has_bits_[0], 0x00000001U);
5041inline ::operations_research::sat::SatParameters_VariableOrder SatParameters::_internal_preferred_variable_order()
const {
5042 ::google::protobuf::internal::TSanRead(&
_impl_);
5046 ::google::protobuf::internal::TSanWrite(&
_impl_);
5048 assert(::google::protobuf::internal::ValidateEnum(
5050 _impl_.preferred_variable_order_ = value;
5055 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000100U);
5059 ::google::protobuf::internal::TSanWrite(&
_impl_);
5060 _impl_.initial_polarity_ = 1;
5061 ClearHasBit(
_impl_._has_bits_[0],
5066 return _internal_initial_polarity();
5069 _internal_set_initial_polarity(value);
5070 SetHasBit(
_impl_._has_bits_[0], 0x00000100U);
5073inline ::operations_research::sat::SatParameters_Polarity SatParameters::_internal_initial_polarity()
const {
5074 ::google::protobuf::internal::TSanRead(&
_impl_);
5078 ::google::protobuf::internal::TSanWrite(&
_impl_);
5080 assert(::google::protobuf::internal::ValidateEnum(
5082 _impl_.initial_polarity_ = value;
5087 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000040U);
5091 ::google::protobuf::internal::TSanWrite(&
_impl_);
5092 _impl_.use_phase_saving_ =
true;
5093 ClearHasBit(
_impl_._has_bits_[0],
5098 return _internal_use_phase_saving();
5101 _internal_set_use_phase_saving(value);
5102 SetHasBit(
_impl_._has_bits_[0], 0x00000040U);
5105inline bool SatParameters::_internal_use_phase_saving()
const {
5106 ::google::protobuf::internal::TSanRead(&
_impl_);
5107 return _impl_.use_phase_saving_;
5109inline void SatParameters::_internal_set_use_phase_saving(
bool value) {
5110 ::google::protobuf::internal::TSanWrite(&
_impl_);
5111 _impl_.use_phase_saving_ = value;
5116 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00040000U);
5120 ::google::protobuf::internal::TSanWrite(&
_impl_);
5121 _impl_.polarity_rephase_increment_ = 1000;
5122 ClearHasBit(
_impl_._has_bits_[6],
5127 return _internal_polarity_rephase_increment();
5130 _internal_set_polarity_rephase_increment(value);
5131 SetHasBit(
_impl_._has_bits_[6], 0x00040000U);
5134inline ::int32_t SatParameters::_internal_polarity_rephase_increment()
const {
5135 ::google::protobuf::internal::TSanRead(&
_impl_);
5136 return _impl_.polarity_rephase_increment_;
5138inline void SatParameters::_internal_set_polarity_rephase_increment(::int32_t value) {
5139 ::google::protobuf::internal::TSanWrite(&
_impl_);
5140 _impl_.polarity_rephase_increment_ = value;
5145 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00800000U);
5149 ::google::protobuf::internal::TSanWrite(&
_impl_);
5150 _impl_.polarity_exploit_ls_hints_ =
false;
5151 ClearHasBit(
_impl_._has_bits_[3],
5156 return _internal_polarity_exploit_ls_hints();
5159 _internal_set_polarity_exploit_ls_hints(value);
5160 SetHasBit(
_impl_._has_bits_[3], 0x00800000U);
5163inline bool SatParameters::_internal_polarity_exploit_ls_hints()
const {
5164 ::google::protobuf::internal::TSanRead(&
_impl_);
5165 return _impl_.polarity_exploit_ls_hints_;
5167inline void SatParameters::_internal_set_polarity_exploit_ls_hints(
bool value) {
5168 ::google::protobuf::internal::TSanWrite(&
_impl_);
5169 _impl_.polarity_exploit_ls_hints_ = value;
5174 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000004U);
5178 ::google::protobuf::internal::TSanWrite(&
_impl_);
5179 _impl_.random_polarity_ratio_ = 0;
5180 ClearHasBit(
_impl_._has_bits_[0],
5185 return _internal_random_polarity_ratio();
5188 _internal_set_random_polarity_ratio(value);
5189 SetHasBit(
_impl_._has_bits_[0], 0x00000004U);
5192inline double SatParameters::_internal_random_polarity_ratio()
const {
5193 ::google::protobuf::internal::TSanRead(&
_impl_);
5194 return _impl_.random_polarity_ratio_;
5196inline void SatParameters::_internal_set_random_polarity_ratio(
double value) {
5197 ::google::protobuf::internal::TSanWrite(&
_impl_);
5198 _impl_.random_polarity_ratio_ = value;
5203 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x80000000U);
5207 ::google::protobuf::internal::TSanWrite(&
_impl_);
5208 _impl_.random_branches_ratio_ = 0;
5209 ClearHasBit(
_impl_._has_bits_[0],
5214 return _internal_random_branches_ratio();
5217 _internal_set_random_branches_ratio(value);
5218 SetHasBit(
_impl_._has_bits_[0], 0x80000000U);
5221inline double SatParameters::_internal_random_branches_ratio()
const {
5222 ::google::protobuf::internal::TSanRead(&
_impl_);
5223 return _impl_.random_branches_ratio_;
5225inline void SatParameters::_internal_set_random_branches_ratio(
double value) {
5226 ::google::protobuf::internal::TSanWrite(&
_impl_);
5227 _impl_.random_branches_ratio_ = value;
5232 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000010U);
5236 ::google::protobuf::internal::TSanWrite(&
_impl_);
5237 _impl_.use_erwa_heuristic_ =
false;
5238 ClearHasBit(
_impl_._has_bits_[1],
5243 return _internal_use_erwa_heuristic();
5246 _internal_set_use_erwa_heuristic(value);
5247 SetHasBit(
_impl_._has_bits_[1], 0x00000010U);
5250inline bool SatParameters::_internal_use_erwa_heuristic()
const {
5251 ::google::protobuf::internal::TSanRead(&
_impl_);
5252 return _impl_.use_erwa_heuristic_;
5254inline void SatParameters::_internal_set_use_erwa_heuristic(
bool value) {
5255 ::google::protobuf::internal::TSanWrite(&
_impl_);
5256 _impl_.use_erwa_heuristic_ = value;
5261 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000100U);
5265 ::google::protobuf::internal::TSanWrite(&
_impl_);
5266 _impl_.initial_variables_activity_ = 0;
5267 ClearHasBit(
_impl_._has_bits_[1],
5272 return _internal_initial_variables_activity();
5275 _internal_set_initial_variables_activity(value);
5276 SetHasBit(
_impl_._has_bits_[1], 0x00000100U);
5279inline double SatParameters::_internal_initial_variables_activity()
const {
5280 ::google::protobuf::internal::TSanRead(&
_impl_);
5281 return _impl_.initial_variables_activity_;
5283inline void SatParameters::_internal_set_initial_variables_activity(
double value) {
5284 ::google::protobuf::internal::TSanWrite(&
_impl_);
5285 _impl_.initial_variables_activity_ = value;
5290 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000200U);
5294 ::google::protobuf::internal::TSanWrite(&
_impl_);
5295 _impl_.also_bump_variables_in_conflict_reasons_ =
false;
5296 ClearHasBit(
_impl_._has_bits_[1],
5301 return _internal_also_bump_variables_in_conflict_reasons();
5304 _internal_set_also_bump_variables_in_conflict_reasons(value);
5305 SetHasBit(
_impl_._has_bits_[1], 0x00000200U);
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_;
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;
5319 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000200U);
5323 ::google::protobuf::internal::TSanWrite(&
_impl_);
5324 _impl_.minimization_algorithm_ = 2;
5325 ClearHasBit(
_impl_._has_bits_[0],
5330 return _internal_minimization_algorithm();
5333 _internal_set_minimization_algorithm(value);
5334 SetHasBit(
_impl_._has_bits_[0], 0x00000200U);
5337inline ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm SatParameters::_internal_minimization_algorithm()
const {
5338 ::google::protobuf::internal::TSanRead(&
_impl_);
5342 ::google::protobuf::internal::TSanWrite(&
_impl_);
5344 assert(::google::protobuf::internal::ValidateEnum(
5346 _impl_.minimization_algorithm_ = value;
5351 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000800U);
5355 ::google::protobuf::internal::TSanWrite(&
_impl_);
5356 _impl_.binary_minimization_algorithm_ = 5;
5357 ClearHasBit(
_impl_._has_bits_[4],
5362 return _internal_binary_minimization_algorithm();
5365 _internal_set_binary_minimization_algorithm(value);
5366 SetHasBit(
_impl_._has_bits_[4], 0x00000800U);
5369inline ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm SatParameters::_internal_binary_minimization_algorithm()
const {
5370 ::google::protobuf::internal::TSanRead(&
_impl_);
5374 ::google::protobuf::internal::TSanWrite(&
_impl_);
5376 assert(::google::protobuf::internal::ValidateEnum(
5378 _impl_.binary_minimization_algorithm_ = value;
5383 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00800000U);
5387 ::google::protobuf::internal::TSanWrite(&
_impl_);
5388 _impl_.subsumption_during_conflict_analysis_ =
true;
5389 ClearHasBit(
_impl_._has_bits_[4],
5394 return _internal_subsumption_during_conflict_analysis();
5397 _internal_set_subsumption_during_conflict_analysis(value);
5398 SetHasBit(
_impl_._has_bits_[4], 0x00800000U);
5401inline bool SatParameters::_internal_subsumption_during_conflict_analysis()
const {
5402 ::google::protobuf::internal::TSanRead(&
_impl_);
5403 return _impl_.subsumption_during_conflict_analysis_;
5405inline void SatParameters::_internal_set_subsumption_during_conflict_analysis(
bool value) {
5406 ::google::protobuf::internal::TSanWrite(&
_impl_);
5407 _impl_.subsumption_during_conflict_analysis_ = value;
5412 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000400U);
5416 ::google::protobuf::internal::TSanWrite(&
_impl_);
5417 _impl_.extra_subsumption_during_conflict_analysis_ =
true;
5418 ClearHasBit(
_impl_._has_bits_[9],
5423 return _internal_extra_subsumption_during_conflict_analysis();
5426 _internal_set_extra_subsumption_during_conflict_analysis(value);
5427 SetHasBit(
_impl_._has_bits_[9], 0x00000400U);
5430inline bool SatParameters::_internal_extra_subsumption_during_conflict_analysis()
const {
5431 ::google::protobuf::internal::TSanRead(&
_impl_);
5432 return _impl_.extra_subsumption_during_conflict_analysis_;
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;
5441 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00002000U);
5445 ::google::protobuf::internal::TSanWrite(&
_impl_);
5446 _impl_.decision_subsumption_during_conflict_analysis_ =
true;
5447 ClearHasBit(
_impl_._has_bits_[9],
5452 return _internal_decision_subsumption_during_conflict_analysis();
5455 _internal_set_decision_subsumption_during_conflict_analysis(value);
5456 SetHasBit(
_impl_._has_bits_[9], 0x00002000U);
5459inline bool SatParameters::_internal_decision_subsumption_during_conflict_analysis()
const {
5460 ::google::protobuf::internal::TSanRead(&
_impl_);
5461 return _impl_.decision_subsumption_during_conflict_analysis_;
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;
5470 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000800U);
5474 ::google::protobuf::internal::TSanWrite(&
_impl_);
5475 _impl_.eagerly_subsume_last_n_conflicts_ = 4;
5476 ClearHasBit(
_impl_._has_bits_[9],
5481 return _internal_eagerly_subsume_last_n_conflicts();
5484 _internal_set_eagerly_subsume_last_n_conflicts(value);
5485 SetHasBit(
_impl_._has_bits_[9], 0x00000800U);
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_;
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;
5499 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00004000U);
5503 ::google::protobuf::internal::TSanWrite(&
_impl_);
5504 _impl_.subsume_during_vivification_ =
true;
5505 ClearHasBit(
_impl_._has_bits_[9],
5510 return _internal_subsume_during_vivification();
5513 _internal_set_subsume_during_vivification(value);
5514 SetHasBit(
_impl_._has_bits_[9], 0x00004000U);
5517inline bool SatParameters::_internal_subsume_during_vivification()
const {
5518 ::google::protobuf::internal::TSanRead(&
_impl_);
5519 return _impl_.subsume_during_vivification_;
5521inline void SatParameters::_internal_set_subsume_during_vivification(
bool value) {
5522 ::google::protobuf::internal::TSanWrite(&
_impl_);
5523 _impl_.subsume_during_vivification_ = value;
5528 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x20000000U);
5532 ::google::protobuf::internal::TSanWrite(&
_impl_);
5533 _impl_.use_chronological_backtracking_ =
false;
5534 ClearHasBit(
_impl_._has_bits_[3],
5539 return _internal_use_chronological_backtracking();
5542 _internal_set_use_chronological_backtracking(value);
5543 SetHasBit(
_impl_._has_bits_[3], 0x20000000U);
5546inline bool SatParameters::_internal_use_chronological_backtracking()
const {
5547 ::google::protobuf::internal::TSanRead(&
_impl_);
5548 return _impl_.use_chronological_backtracking_;
5550inline void SatParameters::_internal_set_use_chronological_backtracking(
bool value) {
5551 ::google::protobuf::internal::TSanWrite(&
_impl_);
5552 _impl_.use_chronological_backtracking_ = value;
5557 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000010U);
5561 ::google::protobuf::internal::TSanWrite(&
_impl_);
5562 _impl_.max_backjump_levels_ = 50;
5563 ClearHasBit(
_impl_._has_bits_[9],
5568 return _internal_max_backjump_levels();
5571 _internal_set_max_backjump_levels(value);
5572 SetHasBit(
_impl_._has_bits_[9], 0x00000010U);
5575inline ::int32_t SatParameters::_internal_max_backjump_levels()
const {
5576 ::google::protobuf::internal::TSanRead(&
_impl_);
5577 return _impl_.max_backjump_levels_;
5579inline void SatParameters::_internal_set_max_backjump_levels(::int32_t value) {
5580 ::google::protobuf::internal::TSanWrite(&
_impl_);
5581 _impl_.max_backjump_levels_ = value;
5586 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000020U);
5590 ::google::protobuf::internal::TSanWrite(&
_impl_);
5591 _impl_.chronological_backtrack_min_conflicts_ = 1000;
5592 ClearHasBit(
_impl_._has_bits_[9],
5597 return _internal_chronological_backtrack_min_conflicts();
5600 _internal_set_chronological_backtrack_min_conflicts(value);
5601 SetHasBit(
_impl_._has_bits_[9], 0x00000020U);
5604inline ::int32_t SatParameters::_internal_chronological_backtrack_min_conflicts()
const {
5605 ::google::protobuf::internal::TSanRead(&
_impl_);
5606 return _impl_.chronological_backtrack_min_conflicts_;
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;
5615 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00002000U);
5619 ::google::protobuf::internal::TSanWrite(&
_impl_);
5620 _impl_.clause_cleanup_period_ = 10000;
5621 ClearHasBit(
_impl_._has_bits_[0],
5626 return _internal_clause_cleanup_period();
5629 _internal_set_clause_cleanup_period(value);
5630 SetHasBit(
_impl_._has_bits_[0], 0x00002000U);
5633inline ::int32_t SatParameters::_internal_clause_cleanup_period()
const {
5634 ::google::protobuf::internal::TSanRead(&
_impl_);
5635 return _impl_.clause_cleanup_period_;
5637inline void SatParameters::_internal_set_clause_cleanup_period(::int32_t value) {
5638 ::google::protobuf::internal::TSanWrite(&
_impl_);
5639 _impl_.clause_cleanup_period_ = value;
5644 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000001U);
5648 ::google::protobuf::internal::TSanWrite(&
_impl_);
5649 _impl_.clause_cleanup_period_increment_ = 0;
5650 ClearHasBit(
_impl_._has_bits_[4],
5655 return _internal_clause_cleanup_period_increment();
5658 _internal_set_clause_cleanup_period_increment(value);
5659 SetHasBit(
_impl_._has_bits_[4], 0x00000001U);
5662inline ::int32_t SatParameters::_internal_clause_cleanup_period_increment()
const {
5663 ::google::protobuf::internal::TSanRead(&
_impl_);
5664 return _impl_.clause_cleanup_period_increment_;
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;
5673 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000002U);
5677 ::google::protobuf::internal::TSanWrite(&
_impl_);
5678 _impl_.clause_cleanup_target_ = 0;
5679 ClearHasBit(
_impl_._has_bits_[0],
5684 return _internal_clause_cleanup_target();
5687 _internal_set_clause_cleanup_target(value);
5688 SetHasBit(
_impl_._has_bits_[0], 0x00000002U);
5691inline ::int32_t SatParameters::_internal_clause_cleanup_target()
const {
5692 ::google::protobuf::internal::TSanRead(&
_impl_);
5693 return _impl_.clause_cleanup_target_;
5695inline void SatParameters::_internal_set_clause_cleanup_target(::int32_t value) {
5696 ::google::protobuf::internal::TSanWrite(&
_impl_);
5697 _impl_.clause_cleanup_target_ = value;
5702 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x01000000U);
5706 ::google::protobuf::internal::TSanWrite(&
_impl_);
5707 _impl_.clause_cleanup_ratio_ = 0.5;
5708 ClearHasBit(
_impl_._has_bits_[6],
5713 return _internal_clause_cleanup_ratio();
5716 _internal_set_clause_cleanup_ratio(value);
5717 SetHasBit(
_impl_._has_bits_[6], 0x01000000U);
5720inline double SatParameters::_internal_clause_cleanup_ratio()
const {
5721 ::google::protobuf::internal::TSanRead(&
_impl_);
5722 return _impl_.clause_cleanup_ratio_;
5724inline void SatParameters::_internal_set_clause_cleanup_ratio(
double value) {
5725 ::google::protobuf::internal::TSanWrite(&
_impl_);
5726 _impl_.clause_cleanup_ratio_ = value;
5731 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00080000U);
5735 ::google::protobuf::internal::TSanWrite(&
_impl_);
5736 _impl_.clause_cleanup_lbd_bound_ = 5;
5737 ClearHasBit(
_impl_._has_bits_[4],
5742 return _internal_clause_cleanup_lbd_bound();
5745 _internal_set_clause_cleanup_lbd_bound(value);
5746 SetHasBit(
_impl_._has_bits_[4], 0x00080000U);
5749inline ::int32_t SatParameters::_internal_clause_cleanup_lbd_bound()
const {
5750 ::google::protobuf::internal::TSanRead(&
_impl_);
5751 return _impl_.clause_cleanup_lbd_bound_;
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;
5760 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000020U);
5764 ::google::protobuf::internal::TSanWrite(&
_impl_);
5765 _impl_.clause_cleanup_lbd_tier1_ = 0;
5766 ClearHasBit(
_impl_._has_bits_[4],
5771 return _internal_clause_cleanup_lbd_tier1();
5774 _internal_set_clause_cleanup_lbd_tier1(value);
5775 SetHasBit(
_impl_._has_bits_[4], 0x00000020U);
5778inline ::int32_t SatParameters::_internal_clause_cleanup_lbd_tier1()
const {
5779 ::google::protobuf::internal::TSanRead(&
_impl_);
5780 return _impl_.clause_cleanup_lbd_tier1_;
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;
5789 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000040U);
5793 ::google::protobuf::internal::TSanWrite(&
_impl_);
5794 _impl_.clause_cleanup_lbd_tier2_ = 0;
5795 ClearHasBit(
_impl_._has_bits_[4],
5800 return _internal_clause_cleanup_lbd_tier2();
5803 _internal_set_clause_cleanup_lbd_tier2(value);
5804 SetHasBit(
_impl_._has_bits_[4], 0x00000040U);
5807inline ::int32_t SatParameters::_internal_clause_cleanup_lbd_tier2()
const {
5808 ::google::protobuf::internal::TSanRead(&
_impl_);
5809 return _impl_.clause_cleanup_lbd_tier2_;
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;
5818 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000020U);
5822 ::google::protobuf::internal::TSanWrite(&
_impl_);
5823 _impl_.clause_cleanup_ordering_ = 0;
5824 ClearHasBit(
_impl_._has_bits_[1],
5829 return _internal_clause_cleanup_ordering();
5832 _internal_set_clause_cleanup_ordering(value);
5833 SetHasBit(
_impl_._has_bits_[1], 0x00000020U);
5836inline ::operations_research::sat::SatParameters_ClauseOrdering SatParameters::_internal_clause_cleanup_ordering()
const {
5837 ::google::protobuf::internal::TSanRead(&
_impl_);
5841 ::google::protobuf::internal::TSanWrite(&
_impl_);
5843 assert(::google::protobuf::internal::ValidateEnum(
5845 _impl_.clause_cleanup_ordering_ = value;
5850 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00001000U);
5854 ::google::protobuf::internal::TSanWrite(&
_impl_);
5855 _impl_.pb_cleanup_increment_ = 200;
5856 ClearHasBit(
_impl_._has_bits_[4],
5861 return _internal_pb_cleanup_increment();
5864 _internal_set_pb_cleanup_increment(value);
5865 SetHasBit(
_impl_._has_bits_[4], 0x00001000U);
5868inline ::int32_t SatParameters::_internal_pb_cleanup_increment()
const {
5869 ::google::protobuf::internal::TSanRead(&
_impl_);
5870 return _impl_.pb_cleanup_increment_;
5872inline void SatParameters::_internal_set_pb_cleanup_increment(::int32_t value) {
5873 ::google::protobuf::internal::TSanWrite(&
_impl_);
5874 _impl_.pb_cleanup_increment_ = value;
5879 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00002000U);
5883 ::google::protobuf::internal::TSanWrite(&
_impl_);
5884 _impl_.pb_cleanup_ratio_ = 0.5;
5885 ClearHasBit(
_impl_._has_bits_[4],
5890 return _internal_pb_cleanup_ratio();
5893 _internal_set_pb_cleanup_ratio(value);
5894 SetHasBit(
_impl_._has_bits_[4], 0x00002000U);
5897inline double SatParameters::_internal_pb_cleanup_ratio()
const {
5898 ::google::protobuf::internal::TSanRead(&
_impl_);
5899 return _impl_.pb_cleanup_ratio_;
5901inline void SatParameters::_internal_set_pb_cleanup_ratio(
double value) {
5902 ::google::protobuf::internal::TSanWrite(&
_impl_);
5903 _impl_.pb_cleanup_ratio_ = value;
5908 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000400U);
5912 ::google::protobuf::internal::TSanWrite(&
_impl_);
5913 _impl_.variable_activity_decay_ = 0.8;
5914 ClearHasBit(
_impl_._has_bits_[0],
5919 return _internal_variable_activity_decay();
5922 _internal_set_variable_activity_decay(value);
5923 SetHasBit(
_impl_._has_bits_[0], 0x00000400U);
5926inline double SatParameters::_internal_variable_activity_decay()
const {
5927 ::google::protobuf::internal::TSanRead(&
_impl_);
5928 return _impl_.variable_activity_decay_;
5930inline void SatParameters::_internal_set_variable_activity_decay(
double value) {
5931 ::google::protobuf::internal::TSanWrite(&
_impl_);
5932 _impl_.variable_activity_decay_ = value;
5937 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000800U);
5941 ::google::protobuf::internal::TSanWrite(&
_impl_);
5942 _impl_.max_variable_activity_value_ = 1e+100;
5943 ClearHasBit(
_impl_._has_bits_[0],
5948 return _internal_max_variable_activity_value();
5951 _internal_set_max_variable_activity_value(value);
5952 SetHasBit(
_impl_._has_bits_[0], 0x00000800U);
5955inline double SatParameters::_internal_max_variable_activity_value()
const {
5956 ::google::protobuf::internal::TSanRead(&
_impl_);
5957 return _impl_.max_variable_activity_value_;
5959inline void SatParameters::_internal_set_max_variable_activity_value(
double value) {
5960 ::google::protobuf::internal::TSanWrite(&
_impl_);
5961 _impl_.max_variable_activity_value_ = value;
5966 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00010000U);
5970 ::google::protobuf::internal::TSanWrite(&
_impl_);
5971 _impl_.glucose_max_decay_ = 0.95;
5972 ClearHasBit(
_impl_._has_bits_[0],
5977 return _internal_glucose_max_decay();
5980 _internal_set_glucose_max_decay(value);
5981 SetHasBit(
_impl_._has_bits_[0], 0x00010000U);
5984inline double SatParameters::_internal_glucose_max_decay()
const {
5985 ::google::protobuf::internal::TSanRead(&
_impl_);
5986 return _impl_.glucose_max_decay_;
5988inline void SatParameters::_internal_set_glucose_max_decay(
double value) {
5989 ::google::protobuf::internal::TSanWrite(&
_impl_);
5990 _impl_.glucose_max_decay_ = value;
5995 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00020000U);
5999 ::google::protobuf::internal::TSanWrite(&
_impl_);
6000 _impl_.glucose_decay_increment_ = 0.01;
6001 ClearHasBit(
_impl_._has_bits_[0],
6006 return _internal_glucose_decay_increment();
6009 _internal_set_glucose_decay_increment(value);
6010 SetHasBit(
_impl_._has_bits_[0], 0x00020000U);
6013inline double SatParameters::_internal_glucose_decay_increment()
const {
6014 ::google::protobuf::internal::TSanRead(&
_impl_);
6015 return _impl_.glucose_decay_increment_;
6017inline void SatParameters::_internal_set_glucose_decay_increment(
double value) {
6018 ::google::protobuf::internal::TSanWrite(&
_impl_);
6019 _impl_.glucose_decay_increment_ = value;
6024 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00004000U);
6028 ::google::protobuf::internal::TSanWrite(&
_impl_);
6029 _impl_.glucose_decay_increment_period_ = 5000;
6030 ClearHasBit(
_impl_._has_bits_[0],
6035 return _internal_glucose_decay_increment_period();
6038 _internal_set_glucose_decay_increment_period(value);
6039 SetHasBit(
_impl_._has_bits_[0], 0x00004000U);
6042inline ::int32_t SatParameters::_internal_glucose_decay_increment_period()
const {
6043 ::google::protobuf::internal::TSanRead(&
_impl_);
6044 return _impl_.glucose_decay_increment_period_;
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;
6053 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00001000U);
6057 ::google::protobuf::internal::TSanWrite(&
_impl_);
6058 _impl_.clause_activity_decay_ = 0.999;
6059 ClearHasBit(
_impl_._has_bits_[0],
6064 return _internal_clause_activity_decay();
6067 _internal_set_clause_activity_decay(value);
6068 SetHasBit(
_impl_._has_bits_[0], 0x00001000U);
6071inline double SatParameters::_internal_clause_activity_decay()
const {
6072 ::google::protobuf::internal::TSanRead(&
_impl_);
6073 return _impl_.clause_activity_decay_;
6075inline void SatParameters::_internal_set_clause_activity_decay(
double value) {
6076 ::google::protobuf::internal::TSanWrite(&
_impl_);
6077 _impl_.clause_activity_decay_ = value;
6082 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00008000U);
6086 ::google::protobuf::internal::TSanWrite(&
_impl_);
6087 _impl_.max_clause_activity_value_ = 1e+20;
6088 ClearHasBit(
_impl_._has_bits_[0],
6093 return _internal_max_clause_activity_value();
6096 _internal_set_max_clause_activity_value(value);
6097 SetHasBit(
_impl_._has_bits_[0], 0x00008000U);
6100inline double SatParameters::_internal_max_clause_activity_value()
const {
6101 ::google::protobuf::internal::TSanRead(&
_impl_);
6102 return _impl_.max_clause_activity_value_;
6104inline void SatParameters::_internal_set_max_clause_activity_value(
double value) {
6105 ::google::protobuf::internal::TSanWrite(&
_impl_);
6106 _impl_.max_clause_activity_value_ = value;
6110inline int SatParameters::_internal_restart_algorithms_size()
const {
6111 return _internal_restart_algorithms().size();
6114 return _internal_restart_algorithms_size();
6117 ::google::protobuf::internal::TSanWrite(&
_impl_);
6119 ClearHasBitForRepeated(
_impl_._has_bits_[0],
6128 assert(::google::protobuf::internal::ValidateEnum(
6130 _internal_mutable_restart_algorithms()->Set(index, value);
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);
6143 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6145 return _internal_restart_algorithms();
6148 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6149 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x00400000U);
6151 ::google::protobuf::internal::TSanWrite(&
_impl_);
6152 return _internal_mutable_restart_algorithms();
6154inline const ::google::protobuf::RepeatedField<int>& SatParameters::_internal_restart_algorithms()
6156 ::google::protobuf::internal::TSanRead(&
_impl_);
6157 return _impl_.restart_algorithms_;
6159inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL
6160SatParameters::_internal_mutable_restart_algorithms() {
6161 ::google::protobuf::internal::TSanRead(&
_impl_);
6162 return &
_impl_.restart_algorithms_;
6167 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x10000000U);
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],
6177 ABSL_ATTRIBUTE_LIFETIME_BOUND {
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();
6184template <
typename Arg_,
typename... 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());
6192 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6193 SetHasBit(
_impl_._has_bits_[0], 0x10000000U);
6194 ::std::string* _s = _internal_mutable_default_restart_algorithms();
6198inline const ::std::string& SatParameters::_internal_default_restart_algorithms()
const {
6199 ::google::protobuf::internal::TSanRead(&
_impl_);
6200 return _impl_.default_restart_algorithms_.Get();
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());
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());
6211 ::google::protobuf::internal::TSanWrite(&
_impl_);
6213 if (!CheckHasBit(
_impl_._has_bits_[0], 0x10000000U)) {
6216 ClearHasBit(
_impl_._has_bits_[0], 0x10000000U);
6217 return _impl_.default_restart_algorithms_.Release();
6220 ::google::protobuf::internal::TSanWrite(&
_impl_);
6221 if (value !=
nullptr) {
6222 SetHasBit(
_impl_._has_bits_[0], 0x10000000U);
6224 ClearHasBit(
_impl_._has_bits_[0], 0x10000000U);
6226 _impl_.default_restart_algorithms_.SetAllocated(value, GetArena());
6232 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00040000U);
6236 ::google::protobuf::internal::TSanWrite(&
_impl_);
6237 _impl_.restart_period_ = 50;
6238 ClearHasBit(
_impl_._has_bits_[0],
6243 return _internal_restart_period();
6246 _internal_set_restart_period(value);
6247 SetHasBit(
_impl_._has_bits_[0], 0x00040000U);
6250inline ::int32_t SatParameters::_internal_restart_period()
const {
6251 ::google::protobuf::internal::TSanRead(&
_impl_);
6252 return _impl_.restart_period_;
6254inline void SatParameters::_internal_set_restart_period(::int32_t value) {
6255 ::google::protobuf::internal::TSanWrite(&
_impl_);
6256 _impl_.restart_period_ = value;
6261 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00100000U);
6265 ::google::protobuf::internal::TSanWrite(&
_impl_);
6266 _impl_.restart_running_window_size_ = 50;
6267 ClearHasBit(
_impl_._has_bits_[4],
6272 return _internal_restart_running_window_size();
6275 _internal_set_restart_running_window_size(value);
6276 SetHasBit(
_impl_._has_bits_[4], 0x00100000U);
6279inline ::int32_t SatParameters::_internal_restart_running_window_size()
const {
6280 ::google::protobuf::internal::TSanRead(&
_impl_);
6281 return _impl_.restart_running_window_size_;
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;
6290 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00200000U);
6294 ::google::protobuf::internal::TSanWrite(&
_impl_);
6295 _impl_.restart_dl_average_ratio_ = 1;
6296 ClearHasBit(
_impl_._has_bits_[4],
6301 return _internal_restart_dl_average_ratio();
6304 _internal_set_restart_dl_average_ratio(value);
6305 SetHasBit(
_impl_._has_bits_[4], 0x00200000U);
6308inline double SatParameters::_internal_restart_dl_average_ratio()
const {
6309 ::google::protobuf::internal::TSanRead(&
_impl_);
6310 return _impl_.restart_dl_average_ratio_;
6312inline void SatParameters::_internal_set_restart_dl_average_ratio(
double value) {
6313 ::google::protobuf::internal::TSanWrite(&
_impl_);
6314 _impl_.restart_dl_average_ratio_ = value;
6319 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x20000000U);
6323 ::google::protobuf::internal::TSanWrite(&
_impl_);
6324 _impl_.restart_lbd_average_ratio_ = 1;
6325 ClearHasBit(
_impl_._has_bits_[4],
6330 return _internal_restart_lbd_average_ratio();
6333 _internal_set_restart_lbd_average_ratio(value);
6334 SetHasBit(
_impl_._has_bits_[4], 0x20000000U);
6337inline double SatParameters::_internal_restart_lbd_average_ratio()
const {
6338 ::google::protobuf::internal::TSanRead(&
_impl_);
6339 return _impl_.restart_lbd_average_ratio_;
6341inline void SatParameters::_internal_set_restart_lbd_average_ratio(
double value) {
6342 ::google::protobuf::internal::TSanWrite(&
_impl_);
6343 _impl_.restart_lbd_average_ratio_ = value;
6348 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000008U);
6352 ::google::protobuf::internal::TSanWrite(&
_impl_);
6353 _impl_.use_blocking_restart_ =
false;
6354 ClearHasBit(
_impl_._has_bits_[1],
6359 return _internal_use_blocking_restart();
6362 _internal_set_use_blocking_restart(value);
6363 SetHasBit(
_impl_._has_bits_[1], 0x00000008U);
6366inline bool SatParameters::_internal_use_blocking_restart()
const {
6367 ::google::protobuf::internal::TSanRead(&
_impl_);
6368 return _impl_.use_blocking_restart_;
6370inline void SatParameters::_internal_set_use_blocking_restart(
bool value) {
6371 ::google::protobuf::internal::TSanWrite(&
_impl_);
6372 _impl_.use_blocking_restart_ = value;
6377 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x04000000U);
6381 ::google::protobuf::internal::TSanWrite(&
_impl_);
6382 _impl_.blocking_restart_window_size_ = 5000;
6383 ClearHasBit(
_impl_._has_bits_[4],
6388 return _internal_blocking_restart_window_size();
6391 _internal_set_blocking_restart_window_size(value);
6392 SetHasBit(
_impl_._has_bits_[4], 0x04000000U);
6395inline ::int32_t SatParameters::_internal_blocking_restart_window_size()
const {
6396 ::google::protobuf::internal::TSanRead(&
_impl_);
6397 return _impl_.blocking_restart_window_size_;
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;
6406 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x08000000U);
6410 ::google::protobuf::internal::TSanWrite(&
_impl_);
6411 _impl_.blocking_restart_multiplier_ = 1.4;
6412 ClearHasBit(
_impl_._has_bits_[4],
6417 return _internal_blocking_restart_multiplier();
6420 _internal_set_blocking_restart_multiplier(value);
6421 SetHasBit(
_impl_._has_bits_[4], 0x08000000U);
6424inline double SatParameters::_internal_blocking_restart_multiplier()
const {
6425 ::google::protobuf::internal::TSanRead(&
_impl_);
6426 return _impl_.blocking_restart_multiplier_;
6428inline void SatParameters::_internal_set_blocking_restart_multiplier(
double value) {
6429 ::google::protobuf::internal::TSanWrite(&
_impl_);
6430 _impl_.blocking_restart_multiplier_ = value;
6435 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000040U);
6439 ::google::protobuf::internal::TSanWrite(&
_impl_);
6440 _impl_.num_conflicts_before_strategy_changes_ = 0;
6441 ClearHasBit(
_impl_._has_bits_[1],
6446 return _internal_num_conflicts_before_strategy_changes();
6449 _internal_set_num_conflicts_before_strategy_changes(value);
6450 SetHasBit(
_impl_._has_bits_[1], 0x00000040U);
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_;
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;
6464 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000080U);
6468 ::google::protobuf::internal::TSanWrite(&
_impl_);
6469 _impl_.strategy_change_increase_ratio_ = 0;
6470 ClearHasBit(
_impl_._has_bits_[1],
6475 return _internal_strategy_change_increase_ratio();
6478 _internal_set_strategy_change_increase_ratio(value);
6479 SetHasBit(
_impl_._has_bits_[1], 0x00000080U);
6482inline double SatParameters::_internal_strategy_change_increase_ratio()
const {
6483 ::google::protobuf::internal::TSanRead(&
_impl_);
6484 return _impl_.strategy_change_increase_ratio_;
6486inline void SatParameters::_internal_set_strategy_change_increase_ratio(
double value) {
6487 ::google::protobuf::internal::TSanWrite(&
_impl_);
6488 _impl_.strategy_change_increase_ratio_ = value;
6493 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00100000U);
6497 ::google::protobuf::internal::TSanWrite(&
_impl_);
6498 _impl_.max_time_in_seconds_ = std::numeric_limits<double>::infinity();
6499 ClearHasBit(
_impl_._has_bits_[0],
6504 return _internal_max_time_in_seconds();
6507 _internal_set_max_time_in_seconds(value);
6508 SetHasBit(
_impl_._has_bits_[0], 0x00100000U);
6511inline double SatParameters::_internal_max_time_in_seconds()
const {
6512 ::google::protobuf::internal::TSanRead(&
_impl_);
6513 return _impl_.max_time_in_seconds_;
6515inline void SatParameters::_internal_set_max_time_in_seconds(
double value) {
6516 ::google::protobuf::internal::TSanWrite(&
_impl_);
6517 _impl_.max_time_in_seconds_ = value;
6522 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x10000000U);
6526 ::google::protobuf::internal::TSanWrite(&
_impl_);
6527 _impl_.max_deterministic_time_ = std::numeric_limits<double>::infinity();
6528 ClearHasBit(
_impl_._has_bits_[4],
6533 return _internal_max_deterministic_time();
6536 _internal_set_max_deterministic_time(value);
6537 SetHasBit(
_impl_._has_bits_[4], 0x10000000U);
6540inline double SatParameters::_internal_max_deterministic_time()
const {
6541 ::google::protobuf::internal::TSanRead(&
_impl_);
6542 return _impl_.max_deterministic_time_;
6544inline void SatParameters::_internal_set_max_deterministic_time(
double value) {
6545 ::google::protobuf::internal::TSanWrite(&
_impl_);
6546 _impl_.max_deterministic_time_ = value;
6551 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00008000U);
6555 ::google::protobuf::internal::TSanWrite(&
_impl_);
6556 _impl_.max_num_deterministic_batches_ = 0;
6557 ClearHasBit(
_impl_._has_bits_[3],
6562 return _internal_max_num_deterministic_batches();
6565 _internal_set_max_num_deterministic_batches(value);
6566 SetHasBit(
_impl_._has_bits_[3], 0x00008000U);
6569inline ::int32_t SatParameters::_internal_max_num_deterministic_batches()
const {
6570 ::google::protobuf::internal::TSanRead(&
_impl_);
6571 return _impl_.max_num_deterministic_batches_;
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;
6580 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00200000U);
6584 ::google::protobuf::internal::TSanWrite(&
_impl_);
6585 _impl_.max_number_of_conflicts_ = ::int64_t{9223372036854775807};
6586 ClearHasBit(
_impl_._has_bits_[0],
6591 return _internal_max_number_of_conflicts();
6594 _internal_set_max_number_of_conflicts(value);
6595 SetHasBit(
_impl_._has_bits_[0], 0x00200000U);
6598inline ::int64_t SatParameters::_internal_max_number_of_conflicts()
const {
6599 ::google::protobuf::internal::TSanRead(&
_impl_);
6600 return _impl_.max_number_of_conflicts_;
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;
6609 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000400U);
6613 ::google::protobuf::internal::TSanWrite(&
_impl_);
6614 _impl_.max_memory_in_mb_ = ::int64_t{10000};
6615 ClearHasBit(
_impl_._has_bits_[4],
6620 return _internal_max_memory_in_mb();
6623 _internal_set_max_memory_in_mb(value);
6624 SetHasBit(
_impl_._has_bits_[4], 0x00000400U);
6627inline ::int64_t SatParameters::_internal_max_memory_in_mb()
const {
6628 ::google::protobuf::internal::TSanRead(&
_impl_);
6629 return _impl_.max_memory_in_mb_;
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;
6638 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000800U);
6642 ::google::protobuf::internal::TSanWrite(&
_impl_);
6643 _impl_.absolute_gap_limit_ = 0.0001;
6644 ClearHasBit(
_impl_._has_bits_[6],
6649 return _internal_absolute_gap_limit();
6652 _internal_set_absolute_gap_limit(value);
6653 SetHasBit(
_impl_._has_bits_[6], 0x00000800U);
6656inline double SatParameters::_internal_absolute_gap_limit()
const {
6657 ::google::protobuf::internal::TSanRead(&
_impl_);
6658 return _impl_.absolute_gap_limit_;
6660inline void SatParameters::_internal_set_absolute_gap_limit(
double value) {
6661 ::google::protobuf::internal::TSanWrite(&
_impl_);
6662 _impl_.absolute_gap_limit_ = value;
6667 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x40000000U);
6671 ::google::protobuf::internal::TSanWrite(&
_impl_);
6672 _impl_.relative_gap_limit_ = 0;
6673 ClearHasBit(
_impl_._has_bits_[1],
6678 return _internal_relative_gap_limit();
6681 _internal_set_relative_gap_limit(value);
6682 SetHasBit(
_impl_._has_bits_[1], 0x40000000U);
6685inline double SatParameters::_internal_relative_gap_limit()
const {
6686 ::google::protobuf::internal::TSanRead(&
_impl_);
6687 return _impl_.relative_gap_limit_;
6689inline void SatParameters::_internal_set_relative_gap_limit(
double value) {
6690 ::google::protobuf::internal::TSanWrite(&
_impl_);
6691 _impl_.relative_gap_limit_ = value;
6696 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00080000U);
6700 ::google::protobuf::internal::TSanWrite(&
_impl_);
6702 ClearHasBit(
_impl_._has_bits_[0],
6707 return _internal_random_seed();
6710 _internal_set_random_seed(value);
6711 SetHasBit(
_impl_._has_bits_[0], 0x00080000U);
6714inline ::int32_t SatParameters::_internal_random_seed()
const {
6715 ::google::protobuf::internal::TSanRead(&
_impl_);
6716 return _impl_.random_seed_;
6718inline void SatParameters::_internal_set_random_seed(::int32_t value) {
6719 ::google::protobuf::internal::TSanWrite(&
_impl_);
6720 _impl_.random_seed_ = value;
6725 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000100U);
6729 ::google::protobuf::internal::TSanWrite(&
_impl_);
6730 _impl_.permute_variable_randomly_ =
false;
6731 ClearHasBit(
_impl_._has_bits_[2],
6736 return _internal_permute_variable_randomly();
6739 _internal_set_permute_variable_randomly(value);
6740 SetHasBit(
_impl_._has_bits_[2], 0x00000100U);
6743inline bool SatParameters::_internal_permute_variable_randomly()
const {
6744 ::google::protobuf::internal::TSanRead(&
_impl_);
6745 return _impl_.permute_variable_randomly_;
6747inline void SatParameters::_internal_set_permute_variable_randomly(
bool value) {
6748 ::google::protobuf::internal::TSanWrite(&
_impl_);
6749 _impl_.permute_variable_randomly_ = value;
6754 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000200U);
6758 ::google::protobuf::internal::TSanWrite(&
_impl_);
6759 _impl_.permute_presolve_constraint_order_ =
false;
6760 ClearHasBit(
_impl_._has_bits_[2],
6765 return _internal_permute_presolve_constraint_order();
6768 _internal_set_permute_presolve_constraint_order(value);
6769 SetHasBit(
_impl_._has_bits_[2], 0x00000200U);
6772inline bool SatParameters::_internal_permute_presolve_constraint_order()
const {
6773 ::google::protobuf::internal::TSanRead(&
_impl_);
6774 return _impl_.permute_presolve_constraint_order_;
6776inline void SatParameters::_internal_set_permute_presolve_constraint_order(
bool value) {
6777 ::google::protobuf::internal::TSanWrite(&
_impl_);
6778 _impl_.permute_presolve_constraint_order_ = value;
6783 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000400U);
6787 ::google::protobuf::internal::TSanWrite(&
_impl_);
6788 _impl_.use_absl_random_ =
false;
6789 ClearHasBit(
_impl_._has_bits_[2],
6794 return _internal_use_absl_random();
6797 _internal_set_use_absl_random(value);
6798 SetHasBit(
_impl_._has_bits_[2], 0x00000400U);
6801inline bool SatParameters::_internal_use_absl_random()
const {
6802 ::google::protobuf::internal::TSanRead(&
_impl_);
6803 return _impl_.use_absl_random_;
6805inline void SatParameters::_internal_set_use_absl_random(
bool value) {
6806 ::google::protobuf::internal::TSanWrite(&
_impl_);
6807 _impl_.use_absl_random_ = value;
6812 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000008U);
6816 ::google::protobuf::internal::TSanWrite(&
_impl_);
6817 _impl_.log_search_progress_ =
false;
6818 ClearHasBit(
_impl_._has_bits_[0],
6823 return _internal_log_search_progress();
6826 _internal_set_log_search_progress(value);
6827 SetHasBit(
_impl_._has_bits_[0], 0x00000008U);
6830inline bool SatParameters::_internal_log_search_progress()
const {
6831 ::google::protobuf::internal::TSanRead(&
_impl_);
6832 return _impl_.log_search_progress_;
6834inline void SatParameters::_internal_set_log_search_progress(
bool value) {
6835 ::google::protobuf::internal::TSanWrite(&
_impl_);
6836 _impl_.log_search_progress_ = value;
6841 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00004000U);
6845 ::google::protobuf::internal::TSanWrite(&
_impl_);
6846 _impl_.log_subsolver_statistics_ =
false;
6847 ClearHasBit(
_impl_._has_bits_[2],
6852 return _internal_log_subsolver_statistics();
6855 _internal_set_log_subsolver_statistics(value);
6856 SetHasBit(
_impl_._has_bits_[2], 0x00004000U);
6859inline bool SatParameters::_internal_log_subsolver_statistics()
const {
6860 ::google::protobuf::internal::TSanRead(&
_impl_);
6861 return _impl_.log_subsolver_statistics_;
6863inline void SatParameters::_internal_set_log_subsolver_statistics(
bool value) {
6864 ::google::protobuf::internal::TSanWrite(&
_impl_);
6865 _impl_.log_subsolver_statistics_ = value;
6870 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x40000000U);
6874 ::google::protobuf::internal::TSanWrite(&
_impl_);
6875 _impl_.log_prefix_.ClearToEmpty();
6876 ClearHasBit(
_impl_._has_bits_[0],
6880 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6882 return _internal_log_prefix();
6884template <
typename Arg_,
typename... 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());
6892 ABSL_ATTRIBUTE_LIFETIME_BOUND {
6893 SetHasBit(
_impl_._has_bits_[0], 0x40000000U);
6894 ::std::string* _s = _internal_mutable_log_prefix();
6898inline const ::std::string& SatParameters::_internal_log_prefix()
const {
6899 ::google::protobuf::internal::TSanRead(&
_impl_);
6900 return _impl_.log_prefix_.Get();
6902inline void SatParameters::_internal_set_log_prefix(const ::std::string& value) {
6903 ::google::protobuf::internal::TSanWrite(&
_impl_);
6904 _impl_.log_prefix_.Set(value, GetArena());
6906inline ::std::string* PROTOBUF_NONNULL SatParameters::_internal_mutable_log_prefix() {
6907 ::google::protobuf::internal::TSanWrite(&
_impl_);
6908 return _impl_.log_prefix_.Mutable( GetArena());
6911 ::google::protobuf::internal::TSanWrite(&
_impl_);
6913 if (!CheckHasBit(
_impl_._has_bits_[0], 0x40000000U)) {
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());
6924 ::google::protobuf::internal::TSanWrite(&
_impl_);
6925 if (value !=
nullptr) {
6926 SetHasBit(
_impl_._has_bits_[0], 0x40000000U);
6928 ClearHasBit(
_impl_._has_bits_[0], 0x40000000U);
6930 _impl_.log_prefix_.SetAllocated(value, GetArena());
6931 if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() &&
_impl_.log_prefix_.IsDefault()) {
6932 _impl_.log_prefix_.Set(
"", GetArena());
6939 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00400000U);
6943 ::google::protobuf::internal::TSanWrite(&
_impl_);
6944 _impl_.log_to_stdout_ =
true;
6945 ClearHasBit(
_impl_._has_bits_[6],
6950 return _internal_log_to_stdout();
6953 _internal_set_log_to_stdout(value);
6954 SetHasBit(
_impl_._has_bits_[6], 0x00400000U);
6957inline bool SatParameters::_internal_log_to_stdout()
const {
6958 ::google::protobuf::internal::TSanRead(&
_impl_);
6959 return _impl_.log_to_stdout_;
6961inline void SatParameters::_internal_set_log_to_stdout(
bool value) {
6962 ::google::protobuf::internal::TSanWrite(&
_impl_);
6963 _impl_.log_to_stdout_ = value;
6968 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00001000U);
6972 ::google::protobuf::internal::TSanWrite(&
_impl_);
6973 _impl_.log_to_response_ =
false;
6974 ClearHasBit(
_impl_._has_bits_[2],
6979 return _internal_log_to_response();
6982 _internal_set_log_to_response(value);
6983 SetHasBit(
_impl_._has_bits_[2], 0x00001000U);
6986inline bool SatParameters::_internal_log_to_response()
const {
6987 ::google::protobuf::internal::TSanRead(&
_impl_);
6988 return _impl_.log_to_response_;
6990inline void SatParameters::_internal_set_log_to_response(
bool value) {
6991 ::google::protobuf::internal::TSanWrite(&
_impl_);
6992 _impl_.log_to_response_ = value;
6997 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000010U);
7001 ::google::protobuf::internal::TSanWrite(&
_impl_);
7002 _impl_.use_pb_resolution_ =
false;
7003 ClearHasBit(
_impl_._has_bits_[0],
7008 return _internal_use_pb_resolution();
7011 _internal_set_use_pb_resolution(value);
7012 SetHasBit(
_impl_._has_bits_[0], 0x00000010U);
7015inline bool SatParameters::_internal_use_pb_resolution()
const {
7016 ::google::protobuf::internal::TSanRead(&
_impl_);
7017 return _impl_.use_pb_resolution_;
7019inline void SatParameters::_internal_set_use_pb_resolution(
bool value) {
7020 ::google::protobuf::internal::TSanWrite(&
_impl_);
7021 _impl_.use_pb_resolution_ = value;
7026 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000002U);
7030 ::google::protobuf::internal::TSanWrite(&
_impl_);
7031 _impl_.minimize_reduction_during_pb_resolution_ =
false;
7032 ClearHasBit(
_impl_._has_bits_[1],
7037 return _internal_minimize_reduction_during_pb_resolution();
7040 _internal_set_minimize_reduction_during_pb_resolution(value);
7041 SetHasBit(
_impl_._has_bits_[1], 0x00000002U);
7044inline bool SatParameters::_internal_minimize_reduction_during_pb_resolution()
const {
7045 ::google::protobuf::internal::TSanRead(&
_impl_);
7046 return _impl_.minimize_reduction_during_pb_resolution_;
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;
7055 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00400000U);
7059 ::google::protobuf::internal::TSanWrite(&
_impl_);
7060 _impl_.count_assumption_levels_in_lbd_ =
true;
7061 ClearHasBit(
_impl_._has_bits_[4],
7066 return _internal_count_assumption_levels_in_lbd();
7069 _internal_set_count_assumption_levels_in_lbd(value);
7070 SetHasBit(
_impl_._has_bits_[4], 0x00400000U);
7073inline bool SatParameters::_internal_count_assumption_levels_in_lbd()
const {
7074 ::google::protobuf::internal::TSanRead(&
_impl_);
7075 return _impl_.count_assumption_levels_in_lbd_;
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;
7084 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00010000U);
7088 ::google::protobuf::internal::TSanWrite(&
_impl_);
7089 _impl_.presolve_bve_threshold_ = 500;
7090 ClearHasBit(
_impl_._has_bits_[4],
7095 return _internal_presolve_bve_threshold();
7098 _internal_set_presolve_bve_threshold(value);
7099 SetHasBit(
_impl_._has_bits_[4], 0x00010000U);
7102inline ::int32_t SatParameters::_internal_presolve_bve_threshold()
const {
7103 ::google::protobuf::internal::TSanRead(&
_impl_);
7104 return _impl_.presolve_bve_threshold_;
7106inline void SatParameters::_internal_set_presolve_bve_threshold(::int32_t value) {
7107 ::google::protobuf::internal::TSanWrite(&
_impl_);
7108 _impl_.presolve_bve_threshold_ = value;
7113 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x02000000U);
7117 ::google::protobuf::internal::TSanWrite(&
_impl_);
7118 _impl_.filter_sat_postsolve_clauses_ =
false;
7119 ClearHasBit(
_impl_._has_bits_[3],
7124 return _internal_filter_sat_postsolve_clauses();
7127 _internal_set_filter_sat_postsolve_clauses(value);
7128 SetHasBit(
_impl_._has_bits_[3], 0x02000000U);
7131inline bool SatParameters::_internal_filter_sat_postsolve_clauses()
const {
7132 ::google::protobuf::internal::TSanRead(&
_impl_);
7133 return _impl_.filter_sat_postsolve_clauses_;
7135inline void SatParameters::_internal_set_filter_sat_postsolve_clauses(
bool value) {
7136 ::google::protobuf::internal::TSanWrite(&
_impl_);
7137 _impl_.filter_sat_postsolve_clauses_ = value;
7142 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00020000U);
7146 ::google::protobuf::internal::TSanWrite(&
_impl_);
7147 _impl_.presolve_bve_clause_weight_ = 3;
7148 ClearHasBit(
_impl_._has_bits_[4],
7153 return _internal_presolve_bve_clause_weight();
7156 _internal_set_presolve_bve_clause_weight(value);
7157 SetHasBit(
_impl_._has_bits_[4], 0x00020000U);
7160inline ::int32_t SatParameters::_internal_presolve_bve_clause_weight()
const {
7161 ::google::protobuf::internal::TSanRead(&
_impl_);
7162 return _impl_.presolve_bve_clause_weight_;
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;
7171 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000080U);
7175 ::google::protobuf::internal::TSanWrite(&
_impl_);
7176 _impl_.probing_deterministic_time_limit_ = 1;
7177 ClearHasBit(
_impl_._has_bits_[7],
7182 return _internal_probing_deterministic_time_limit();
7185 _internal_set_probing_deterministic_time_limit(value);
7186 SetHasBit(
_impl_._has_bits_[7], 0x00000080U);
7189inline double SatParameters::_internal_probing_deterministic_time_limit()
const {
7190 ::google::protobuf::internal::TSanRead(&
_impl_);
7191 return _impl_.probing_deterministic_time_limit_;
7193inline void SatParameters::_internal_set_probing_deterministic_time_limit(
double value) {
7194 ::google::protobuf::internal::TSanWrite(&
_impl_);
7195 _impl_.probing_deterministic_time_limit_ = value;
7200 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00040000U);
7204 ::google::protobuf::internal::TSanWrite(&
_impl_);
7205 _impl_.presolve_probing_deterministic_time_limit_ = 30;
7206 ClearHasBit(
_impl_._has_bits_[4],
7211 return _internal_presolve_probing_deterministic_time_limit();
7214 _internal_set_presolve_probing_deterministic_time_limit(value);
7215 SetHasBit(
_impl_._has_bits_[4], 0x00040000U);
7218inline double SatParameters::_internal_presolve_probing_deterministic_time_limit()
const {
7219 ::google::protobuf::internal::TSanRead(&
_impl_);
7220 return _impl_.presolve_probing_deterministic_time_limit_;
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;
7229 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000002U);
7233 ::google::protobuf::internal::TSanWrite(&
_impl_);
7234 _impl_.presolve_blocked_clause_ =
true;
7235 ClearHasBit(
_impl_._has_bits_[5],
7240 return _internal_presolve_blocked_clause();
7243 _internal_set_presolve_blocked_clause(value);
7244 SetHasBit(
_impl_._has_bits_[5], 0x00000002U);
7247inline bool SatParameters::_internal_presolve_blocked_clause()
const {
7248 ::google::protobuf::internal::TSanRead(&
_impl_);
7249 return _impl_.presolve_blocked_clause_;
7251inline void SatParameters::_internal_set_presolve_blocked_clause(
bool value) {
7252 ::google::protobuf::internal::TSanWrite(&
_impl_);
7253 _impl_.presolve_blocked_clause_ = value;
7258 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x01000000U);
7262 ::google::protobuf::internal::TSanWrite(&
_impl_);
7263 _impl_.presolve_use_bva_ =
true;
7264 ClearHasBit(
_impl_._has_bits_[4],
7269 return _internal_presolve_use_bva();
7272 _internal_set_presolve_use_bva(value);
7273 SetHasBit(
_impl_._has_bits_[4], 0x01000000U);
7276inline bool SatParameters::_internal_presolve_use_bva()
const {
7277 ::google::protobuf::internal::TSanRead(&
_impl_);
7278 return _impl_.presolve_use_bva_;
7280inline void SatParameters::_internal_set_presolve_use_bva(
bool value) {
7281 ::google::protobuf::internal::TSanWrite(&
_impl_);
7282 _impl_.presolve_use_bva_ = value;
7287 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x40000000U);
7291 ::google::protobuf::internal::TSanWrite(&
_impl_);
7292 _impl_.presolve_bva_threshold_ = 1;
7293 ClearHasBit(
_impl_._has_bits_[4],
7298 return _internal_presolve_bva_threshold();
7301 _internal_set_presolve_bva_threshold(value);
7302 SetHasBit(
_impl_._has_bits_[4], 0x40000000U);
7305inline ::int32_t SatParameters::_internal_presolve_bva_threshold()
const {
7306 ::google::protobuf::internal::TSanRead(&
_impl_);
7307 return _impl_.presolve_bva_threshold_;
7309inline void SatParameters::_internal_set_presolve_bva_threshold(::int32_t value) {
7310 ::google::protobuf::internal::TSanWrite(&
_impl_);
7311 _impl_.presolve_bva_threshold_ = value;
7316 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x40000000U);
7320 ::google::protobuf::internal::TSanWrite(&
_impl_);
7321 _impl_.max_presolve_iterations_ = 3;
7322 ClearHasBit(
_impl_._has_bits_[5],
7327 return _internal_max_presolve_iterations();
7330 _internal_set_max_presolve_iterations(value);
7331 SetHasBit(
_impl_._has_bits_[5], 0x40000000U);
7334inline ::int32_t SatParameters::_internal_max_presolve_iterations()
const {
7335 ::google::protobuf::internal::TSanRead(&
_impl_);
7336 return _impl_.max_presolve_iterations_;
7338inline void SatParameters::_internal_set_max_presolve_iterations(::int32_t value) {
7339 ::google::protobuf::internal::TSanWrite(&
_impl_);
7340 _impl_.max_presolve_iterations_ = value;
7345 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000001U);
7349 ::google::protobuf::internal::TSanWrite(&
_impl_);
7350 _impl_.cp_model_presolve_ =
true;
7351 ClearHasBit(
_impl_._has_bits_[5],
7356 return _internal_cp_model_presolve();
7359 _internal_set_cp_model_presolve(value);
7360 SetHasBit(
_impl_._has_bits_[5], 0x00000001U);
7363inline bool SatParameters::_internal_cp_model_presolve()
const {
7364 ::google::protobuf::internal::TSanRead(&
_impl_);
7365 return _impl_.cp_model_presolve_;
7367inline void SatParameters::_internal_set_cp_model_presolve(
bool value) {
7368 ::google::protobuf::internal::TSanWrite(&
_impl_);
7369 _impl_.cp_model_presolve_ = value;
7374 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000800U);
7378 ::google::protobuf::internal::TSanWrite(&
_impl_);
7379 _impl_.cp_model_probing_level_ = 2;
7380 ClearHasBit(
_impl_._has_bits_[5],
7385 return _internal_cp_model_probing_level();
7388 _internal_set_cp_model_probing_level(value);
7389 SetHasBit(
_impl_._has_bits_[5], 0x00000800U);
7392inline ::int32_t SatParameters::_internal_cp_model_probing_level()
const {
7393 ::google::protobuf::internal::TSanRead(&
_impl_);
7394 return _impl_.cp_model_probing_level_;
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;
7403 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000020U);
7407 ::google::protobuf::internal::TSanWrite(&
_impl_);
7408 _impl_.cp_model_use_sat_presolve_ =
true;
7409 ClearHasBit(
_impl_._has_bits_[5],
7414 return _internal_cp_model_use_sat_presolve();
7417 _internal_set_cp_model_use_sat_presolve(value);
7418 SetHasBit(
_impl_._has_bits_[5], 0x00000020U);
7421inline bool SatParameters::_internal_cp_model_use_sat_presolve()
const {
7422 ::google::protobuf::internal::TSanRead(&
_impl_);
7423 return _impl_.cp_model_use_sat_presolve_;
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;
7432 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x40000000U);
7436 ::google::protobuf::internal::TSanWrite(&
_impl_);
7437 _impl_.load_at_most_ones_in_sat_presolve_ =
false;
7438 ClearHasBit(
_impl_._has_bits_[3],
7443 return _internal_load_at_most_ones_in_sat_presolve();
7446 _internal_set_load_at_most_ones_in_sat_presolve(value);
7447 SetHasBit(
_impl_._has_bits_[3], 0x40000000U);
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_;
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;
7461 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00800000U);
7465 ::google::protobuf::internal::TSanWrite(&
_impl_);
7466 _impl_.remove_fixed_variables_early_ =
true;
7467 ClearHasBit(
_impl_._has_bits_[8],
7472 return _internal_remove_fixed_variables_early();
7475 _internal_set_remove_fixed_variables_early(value);
7476 SetHasBit(
_impl_._has_bits_[8], 0x00800000U);
7479inline bool SatParameters::_internal_remove_fixed_variables_early()
const {
7480 ::google::protobuf::internal::TSanRead(&
_impl_);
7481 return _impl_.remove_fixed_variables_early_;
7483inline void SatParameters::_internal_set_remove_fixed_variables_early(
bool value) {
7484 ::google::protobuf::internal::TSanWrite(&
_impl_);
7485 _impl_.remove_fixed_variables_early_ = value;
7490 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00800000U);
7494 ::google::protobuf::internal::TSanWrite(&
_impl_);
7495 _impl_.detect_table_with_cost_ =
false;
7496 ClearHasBit(
_impl_._has_bits_[2],
7501 return _internal_detect_table_with_cost();
7504 _internal_set_detect_table_with_cost(value);
7505 SetHasBit(
_impl_._has_bits_[2], 0x00800000U);
7508inline bool SatParameters::_internal_detect_table_with_cost()
const {
7509 ::google::protobuf::internal::TSanRead(&
_impl_);
7510 return _impl_.detect_table_with_cost_;
7512inline void SatParameters::_internal_set_detect_table_with_cost(
bool value) {
7513 ::google::protobuf::internal::TSanWrite(&
_impl_);
7514 _impl_.detect_table_with_cost_ = value;
7519 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000020U);
7523 ::google::protobuf::internal::TSanWrite(&
_impl_);
7524 _impl_.table_compression_level_ = 2;
7525 ClearHasBit(
_impl_._has_bits_[7],
7530 return _internal_table_compression_level();
7533 _internal_set_table_compression_level(value);
7534 SetHasBit(
_impl_._has_bits_[7], 0x00000020U);
7537inline ::int32_t SatParameters::_internal_table_compression_level()
const {
7538 ::google::protobuf::internal::TSanRead(&
_impl_);
7539 return _impl_.table_compression_level_;
7541inline void SatParameters::_internal_set_table_compression_level(::int32_t value) {
7542 ::google::protobuf::internal::TSanWrite(&
_impl_);
7543 _impl_.table_compression_level_ = value;
7548 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000008U);
7552 ::google::protobuf::internal::TSanWrite(&
_impl_);
7553 _impl_.expand_alldiff_constraints_ =
false;
7554 ClearHasBit(
_impl_._has_bits_[2],
7559 return _internal_expand_alldiff_constraints();
7562 _internal_set_expand_alldiff_constraints(value);
7563 SetHasBit(
_impl_._has_bits_[2], 0x00000008U);
7566inline bool SatParameters::_internal_expand_alldiff_constraints()
const {
7567 ::google::protobuf::internal::TSanRead(&
_impl_);
7568 return _impl_.expand_alldiff_constraints_;
7570inline void SatParameters::_internal_set_expand_alldiff_constraints(
bool value) {
7571 ::google::protobuf::internal::TSanWrite(&
_impl_);
7572 _impl_.expand_alldiff_constraints_ = value;
7577 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x20000000U);
7581 ::google::protobuf::internal::TSanWrite(&
_impl_);
7582 _impl_.max_alldiff_domain_size_ = 256;
7583 ClearHasBit(
_impl_._has_bits_[8],
7588 return _internal_max_alldiff_domain_size();
7591 _internal_set_max_alldiff_domain_size(value);
7592 SetHasBit(
_impl_._has_bits_[8], 0x20000000U);
7595inline ::int32_t SatParameters::_internal_max_alldiff_domain_size()
const {
7596 ::google::protobuf::internal::TSanRead(&
_impl_);
7597 return _impl_.max_alldiff_domain_size_;
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;
7606 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00200000U);
7610 ::google::protobuf::internal::TSanWrite(&
_impl_);
7611 _impl_.expand_reservoir_constraints_ =
true;
7612 ClearHasBit(
_impl_._has_bits_[6],
7617 return _internal_expand_reservoir_constraints();
7620 _internal_set_expand_reservoir_constraints(value);
7621 SetHasBit(
_impl_._has_bits_[6], 0x00200000U);
7624inline bool SatParameters::_internal_expand_reservoir_constraints()
const {
7625 ::google::protobuf::internal::TSanRead(&
_impl_);
7626 return _impl_.expand_reservoir_constraints_;
7628inline void SatParameters::_internal_set_expand_reservoir_constraints(
bool value) {
7629 ::google::protobuf::internal::TSanWrite(&
_impl_);
7630 _impl_.expand_reservoir_constraints_ = value;
7635 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000040U);
7639 ::google::protobuf::internal::TSanWrite(&
_impl_);
7640 _impl_.max_domain_size_for_linear2_expansion_ = 8;
7641 ClearHasBit(
_impl_._has_bits_[9],
7646 return _internal_max_domain_size_for_linear2_expansion();
7649 _internal_set_max_domain_size_for_linear2_expansion(value);
7650 SetHasBit(
_impl_._has_bits_[9], 0x00000040U);
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_;
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;
7664 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00004000U);
7668 ::google::protobuf::internal::TSanWrite(&
_impl_);
7669 _impl_.expand_reservoir_using_circuit_ =
false;
7670 ClearHasBit(
_impl_._has_bits_[3],
7675 return _internal_expand_reservoir_using_circuit();
7678 _internal_set_expand_reservoir_using_circuit(value);
7679 SetHasBit(
_impl_._has_bits_[3], 0x00004000U);
7682inline bool SatParameters::_internal_expand_reservoir_using_circuit()
const {
7683 ::google::protobuf::internal::TSanRead(&
_impl_);
7684 return _impl_.expand_reservoir_using_circuit_;
7686inline void SatParameters::_internal_set_expand_reservoir_using_circuit(
bool value) {
7687 ::google::protobuf::internal::TSanWrite(&
_impl_);
7688 _impl_.expand_reservoir_using_circuit_ = value;
7693 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00002000U);
7697 ::google::protobuf::internal::TSanWrite(&
_impl_);
7698 _impl_.encode_cumulative_as_reservoir_ =
false;
7699 ClearHasBit(
_impl_._has_bits_[3],
7704 return _internal_encode_cumulative_as_reservoir();
7707 _internal_set_encode_cumulative_as_reservoir(value);
7708 SetHasBit(
_impl_._has_bits_[3], 0x00002000U);
7711inline bool SatParameters::_internal_encode_cumulative_as_reservoir()
const {
7712 ::google::protobuf::internal::TSanRead(&
_impl_);
7713 return _impl_.encode_cumulative_as_reservoir_;
7715inline void SatParameters::_internal_set_encode_cumulative_as_reservoir(
bool value) {
7716 ::google::protobuf::internal::TSanWrite(&
_impl_);
7717 _impl_.encode_cumulative_as_reservoir_ = value;
7722 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000400U);
7726 ::google::protobuf::internal::TSanWrite(&
_impl_);
7727 _impl_.max_lin_max_size_for_expansion_ = 0;
7728 ClearHasBit(
_impl_._has_bits_[3],
7733 return _internal_max_lin_max_size_for_expansion();
7736 _internal_set_max_lin_max_size_for_expansion(value);
7737 SetHasBit(
_impl_._has_bits_[3], 0x00000400U);
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_;
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;
7751 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000800U);
7755 ::google::protobuf::internal::TSanWrite(&
_impl_);
7756 _impl_.disable_constraint_expansion_ =
false;
7757 ClearHasBit(
_impl_._has_bits_[2],
7762 return _internal_disable_constraint_expansion();
7765 _internal_set_disable_constraint_expansion(value);
7766 SetHasBit(
_impl_._has_bits_[2], 0x00000800U);
7769inline bool SatParameters::_internal_disable_constraint_expansion()
const {
7770 ::google::protobuf::internal::TSanRead(&
_impl_);
7771 return _impl_.disable_constraint_expansion_;
7773inline void SatParameters::_internal_set_disable_constraint_expansion(
bool value) {
7774 ::google::protobuf::internal::TSanWrite(&
_impl_);
7775 _impl_.disable_constraint_expansion_ = value;
7780 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x04000000U);
7784 ::google::protobuf::internal::TSanWrite(&
_impl_);
7785 _impl_.encode_complex_linear_constraint_with_integer_ =
false;
7786 ClearHasBit(
_impl_._has_bits_[2],
7791 return _internal_encode_complex_linear_constraint_with_integer();
7794 _internal_set_encode_complex_linear_constraint_with_integer(value);
7795 SetHasBit(
_impl_._has_bits_[2], 0x04000000U);
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_;
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;
7809 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000008U);
7813 ::google::protobuf::internal::TSanWrite(&
_impl_);
7814 _impl_.merge_no_overlap_work_limit_ = 1000000000000;
7815 ClearHasBit(
_impl_._has_bits_[6],
7820 return _internal_merge_no_overlap_work_limit();
7823 _internal_set_merge_no_overlap_work_limit(value);
7824 SetHasBit(
_impl_._has_bits_[6], 0x00000008U);
7827inline double SatParameters::_internal_merge_no_overlap_work_limit()
const {
7828 ::google::protobuf::internal::TSanRead(&
_impl_);
7829 return _impl_.merge_no_overlap_work_limit_;
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;
7838 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000010U);
7842 ::google::protobuf::internal::TSanWrite(&
_impl_);
7843 _impl_.merge_at_most_one_work_limit_ = 100000000;
7844 ClearHasBit(
_impl_._has_bits_[6],
7849 return _internal_merge_at_most_one_work_limit();
7852 _internal_set_merge_at_most_one_work_limit(value);
7853 SetHasBit(
_impl_._has_bits_[6], 0x00000010U);
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_;
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;
7867 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000020U);
7871 ::google::protobuf::internal::TSanWrite(&
_impl_);
7872 _impl_.presolve_substitution_level_ = 1;
7873 ClearHasBit(
_impl_._has_bits_[6],
7878 return _internal_presolve_substitution_level();
7881 _internal_set_presolve_substitution_level(value);
7882 SetHasBit(
_impl_._has_bits_[6], 0x00000020U);
7885inline ::int32_t SatParameters::_internal_presolve_substitution_level()
const {
7886 ::google::protobuf::internal::TSanRead(&
_impl_);
7887 return _impl_.presolve_substitution_level_;
7889inline void SatParameters::_internal_set_presolve_substitution_level(::int32_t value) {
7890 ::google::protobuf::internal::TSanWrite(&
_impl_);
7891 _impl_.presolve_substitution_level_ = value;
7896 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000020U);
7900 ::google::protobuf::internal::TSanWrite(&
_impl_);
7901 _impl_.presolve_extract_integer_enforcement_ =
false;
7902 ClearHasBit(
_impl_._has_bits_[2],
7907 return _internal_presolve_extract_integer_enforcement();
7910 _internal_set_presolve_extract_integer_enforcement(value);
7911 SetHasBit(
_impl_._has_bits_[2], 0x00000020U);
7914inline bool SatParameters::_internal_presolve_extract_integer_enforcement()
const {
7915 ::google::protobuf::internal::TSanRead(&
_impl_);
7916 return _impl_.presolve_extract_integer_enforcement_;
7918inline void SatParameters::_internal_set_presolve_extract_integer_enforcement(
bool value) {
7919 ::google::protobuf::internal::TSanWrite(&
_impl_);
7920 _impl_.presolve_extract_integer_enforcement_ = value;
7925 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x10000000U);
7929 ::google::protobuf::internal::TSanWrite(&
_impl_);
7930 _impl_.presolve_inclusion_work_limit_ = ::int64_t{100000000};
7931 ClearHasBit(
_impl_._has_bits_[6],
7936 return _internal_presolve_inclusion_work_limit();
7939 _internal_set_presolve_inclusion_work_limit(value);
7940 SetHasBit(
_impl_._has_bits_[6], 0x10000000U);
7943inline ::int64_t SatParameters::_internal_presolve_inclusion_work_limit()
const {
7944 ::google::protobuf::internal::TSanRead(&
_impl_);
7945 return _impl_.presolve_inclusion_work_limit_;
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;
7954 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x80000000U);
7958 ::google::protobuf::internal::TSanWrite(&
_impl_);
7959 _impl_.ignore_names_ =
true;
7960 ClearHasBit(
_impl_._has_bits_[6],
7965 return _internal_ignore_names();
7968 _internal_set_ignore_names(value);
7969 SetHasBit(
_impl_._has_bits_[6], 0x80000000U);
7972inline bool SatParameters::_internal_ignore_names()
const {
7973 ::google::protobuf::internal::TSanRead(&
_impl_);
7974 return _impl_.ignore_names_;
7976inline void SatParameters::_internal_set_ignore_names(
bool value) {
7977 ::google::protobuf::internal::TSanWrite(&
_impl_);
7978 _impl_.ignore_names_ = value;
7983 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00001000U);
7987 ::google::protobuf::internal::TSanWrite(&
_impl_);
7988 _impl_.infer_all_diffs_ =
true;
7989 ClearHasBit(
_impl_._has_bits_[7],
7994 return _internal_infer_all_diffs();
7997 _internal_set_infer_all_diffs(value);
7998 SetHasBit(
_impl_._has_bits_[7], 0x00001000U);
8001inline bool SatParameters::_internal_infer_all_diffs()
const {
8002 ::google::protobuf::internal::TSanRead(&
_impl_);
8003 return _impl_.infer_all_diffs_;
8005inline void SatParameters::_internal_set_infer_all_diffs(
bool value) {
8006 ::google::protobuf::internal::TSanWrite(&
_impl_);
8007 _impl_.infer_all_diffs_ = value;
8012 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00002000U);
8016 ::google::protobuf::internal::TSanWrite(&
_impl_);
8017 _impl_.find_big_linear_overlap_ =
true;
8018 ClearHasBit(
_impl_._has_bits_[7],
8023 return _internal_find_big_linear_overlap();
8026 _internal_set_find_big_linear_overlap(value);
8027 SetHasBit(
_impl_._has_bits_[7], 0x00002000U);
8030inline bool SatParameters::_internal_find_big_linear_overlap()
const {
8031 ::google::protobuf::internal::TSanRead(&
_impl_);
8032 return _impl_.find_big_linear_overlap_;
8034inline void SatParameters::_internal_set_find_big_linear_overlap(
bool value) {
8035 ::google::protobuf::internal::TSanWrite(&
_impl_);
8036 _impl_.find_big_linear_overlap_ = value;
8041 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000080U);
8045 ::google::protobuf::internal::TSanWrite(&
_impl_);
8046 _impl_.find_clauses_that_are_exactly_one_ =
true;
8047 ClearHasBit(
_impl_._has_bits_[9],
8052 return _internal_find_clauses_that_are_exactly_one();
8055 _internal_set_find_clauses_that_are_exactly_one(value);
8056 SetHasBit(
_impl_._has_bits_[9], 0x00000080U);
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_;
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;
8070 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00004000U);
8074 ::google::protobuf::internal::TSanWrite(&
_impl_);
8075 _impl_.use_sat_inprocessing_ =
true;
8076 ClearHasBit(
_impl_._has_bits_[6],
8081 return _internal_use_sat_inprocessing();
8084 _internal_set_use_sat_inprocessing(value);
8085 SetHasBit(
_impl_._has_bits_[6], 0x00004000U);
8088inline bool SatParameters::_internal_use_sat_inprocessing()
const {
8089 ::google::protobuf::internal::TSanRead(&
_impl_);
8090 return _impl_.use_sat_inprocessing_;
8092inline void SatParameters::_internal_set_use_sat_inprocessing(
bool value) {
8093 ::google::protobuf::internal::TSanWrite(&
_impl_);
8094 _impl_.use_sat_inprocessing_ = value;
8099 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000008U);
8103 ::google::protobuf::internal::TSanWrite(&
_impl_);
8104 _impl_.inprocessing_dtime_ratio_ = 0.2;
8105 ClearHasBit(
_impl_._has_bits_[8],
8110 return _internal_inprocessing_dtime_ratio();
8113 _internal_set_inprocessing_dtime_ratio(value);
8114 SetHasBit(
_impl_._has_bits_[8], 0x00000008U);
8117inline double SatParameters::_internal_inprocessing_dtime_ratio()
const {
8118 ::google::protobuf::internal::TSanRead(&
_impl_);
8119 return _impl_.inprocessing_dtime_ratio_;
8121inline void SatParameters::_internal_set_inprocessing_dtime_ratio(
double value) {
8122 ::google::protobuf::internal::TSanWrite(&
_impl_);
8123 _impl_.inprocessing_dtime_ratio_ = value;
8128 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000010U);
8132 ::google::protobuf::internal::TSanWrite(&
_impl_);
8133 _impl_.inprocessing_probing_dtime_ = 1;
8134 ClearHasBit(
_impl_._has_bits_[8],
8139 return _internal_inprocessing_probing_dtime();
8142 _internal_set_inprocessing_probing_dtime(value);
8143 SetHasBit(
_impl_._has_bits_[8], 0x00000010U);
8146inline double SatParameters::_internal_inprocessing_probing_dtime()
const {
8147 ::google::protobuf::internal::TSanRead(&
_impl_);
8148 return _impl_.inprocessing_probing_dtime_;
8150inline void SatParameters::_internal_set_inprocessing_probing_dtime(
double value) {
8151 ::google::protobuf::internal::TSanWrite(&
_impl_);
8152 _impl_.inprocessing_probing_dtime_ = value;
8157 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000020U);
8161 ::google::protobuf::internal::TSanWrite(&
_impl_);
8162 _impl_.inprocessing_minimization_dtime_ = 1;
8163 ClearHasBit(
_impl_._has_bits_[8],
8168 return _internal_inprocessing_minimization_dtime();
8171 _internal_set_inprocessing_minimization_dtime(value);
8172 SetHasBit(
_impl_._has_bits_[8], 0x00000020U);
8175inline double SatParameters::_internal_inprocessing_minimization_dtime()
const {
8176 ::google::protobuf::internal::TSanRead(&
_impl_);
8177 return _impl_.inprocessing_minimization_dtime_;
8179inline void SatParameters::_internal_set_inprocessing_minimization_dtime(
double value) {
8180 ::google::protobuf::internal::TSanWrite(&
_impl_);
8181 _impl_.inprocessing_minimization_dtime_ = value;
8186 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00002000U);
8190 ::google::protobuf::internal::TSanWrite(&
_impl_);
8191 _impl_.inprocessing_minimization_use_conflict_analysis_ =
true;
8192 ClearHasBit(
_impl_._has_bits_[8],
8197 return _internal_inprocessing_minimization_use_conflict_analysis();
8200 _internal_set_inprocessing_minimization_use_conflict_analysis(value);
8201 SetHasBit(
_impl_._has_bits_[8], 0x00002000U);
8204inline bool SatParameters::_internal_inprocessing_minimization_use_conflict_analysis()
const {
8205 ::google::protobuf::internal::TSanRead(&
_impl_);
8206 return _impl_.inprocessing_minimization_use_conflict_analysis_;
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;
8215 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00020000U);
8219 ::google::protobuf::internal::TSanWrite(&
_impl_);
8220 _impl_.inprocessing_minimization_use_all_orderings_ =
false;
8221 ClearHasBit(
_impl_._has_bits_[3],
8226 return _internal_inprocessing_minimization_use_all_orderings();
8229 _internal_set_inprocessing_minimization_use_all_orderings(value);
8230 SetHasBit(
_impl_._has_bits_[3], 0x00020000U);
8233inline bool SatParameters::_internal_inprocessing_minimization_use_all_orderings()
const {
8234 ::google::protobuf::internal::TSanRead(&
_impl_);
8235 return _impl_.inprocessing_minimization_use_all_orderings_;
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;
8244 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000200U);
8248 ::google::protobuf::internal::TSanWrite(&
_impl_);
8249 _impl_.inprocessing_use_congruence_closure_ =
true;
8250 ClearHasBit(
_impl_._has_bits_[9],
8255 return _internal_inprocessing_use_congruence_closure();
8258 _internal_set_inprocessing_use_congruence_closure(value);
8259 SetHasBit(
_impl_._has_bits_[9], 0x00000200U);
8262inline bool SatParameters::_internal_inprocessing_use_congruence_closure()
const {
8263 ::google::protobuf::internal::TSanRead(&
_impl_);
8264 return _impl_.inprocessing_use_congruence_closure_;
8266inline void SatParameters::_internal_set_inprocessing_use_congruence_closure(
bool value) {
8267 ::google::protobuf::internal::TSanWrite(&
_impl_);
8268 _impl_.inprocessing_use_congruence_closure_ = value;
8273 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000200U);
8277 ::google::protobuf::internal::TSanWrite(&
_impl_);
8278 _impl_.inprocessing_use_sat_sweeping_ =
false;
8279 ClearHasBit(
_impl_._has_bits_[4],
8284 return _internal_inprocessing_use_sat_sweeping();
8287 _internal_set_inprocessing_use_sat_sweeping(value);
8288 SetHasBit(
_impl_._has_bits_[4], 0x00000200U);
8291inline bool SatParameters::_internal_inprocessing_use_sat_sweeping()
const {
8292 ::google::protobuf::internal::TSanRead(&
_impl_);
8293 return _impl_.inprocessing_use_sat_sweeping_;
8295inline void SatParameters::_internal_set_inprocessing_use_sat_sweeping(
bool value) {
8296 ::google::protobuf::internal::TSanWrite(&
_impl_);
8297 _impl_.inprocessing_use_sat_sweeping_ = value;
8302 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00080000U);
8306 ::google::protobuf::internal::TSanWrite(&
_impl_);
8308 ClearHasBit(
_impl_._has_bits_[2],
8313 return _internal_num_workers();
8316 _internal_set_num_workers(value);
8317 SetHasBit(
_impl_._has_bits_[2], 0x00080000U);
8320inline ::int32_t SatParameters::_internal_num_workers()
const {
8321 ::google::protobuf::internal::TSanRead(&
_impl_);
8322 return _impl_.num_workers_;
8324inline void SatParameters::_internal_set_num_workers(::int32_t value) {
8325 ::google::protobuf::internal::TSanWrite(&
_impl_);
8326 _impl_.num_workers_ = value;
8331 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00040000U);
8335 ::google::protobuf::internal::TSanWrite(&
_impl_);
8336 _impl_.num_search_workers_ = 0;
8337 ClearHasBit(
_impl_._has_bits_[1],
8342 return _internal_num_search_workers();
8345 _internal_set_num_search_workers(value);
8346 SetHasBit(
_impl_._has_bits_[1], 0x00040000U);
8349inline ::int32_t SatParameters::_internal_num_search_workers()
const {
8350 ::google::protobuf::internal::TSanRead(&
_impl_);
8351 return _impl_.num_search_workers_;
8353inline void SatParameters::_internal_set_num_search_workers(::int32_t value) {
8354 ::google::protobuf::internal::TSanWrite(&
_impl_);
8355 _impl_.num_search_workers_ = value;
8360 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00010000U);
8364 ::google::protobuf::internal::TSanWrite(&
_impl_);
8365 _impl_.num_full_subsolvers_ = 0;
8366 ClearHasBit(
_impl_._has_bits_[3],
8371 return _internal_num_full_subsolvers();
8374 _internal_set_num_full_subsolvers(value);
8375 SetHasBit(
_impl_._has_bits_[3], 0x00010000U);
8378inline ::int32_t SatParameters::_internal_num_full_subsolvers()
const {
8379 ::google::protobuf::internal::TSanRead(&
_impl_);
8380 return _impl_.num_full_subsolvers_;
8382inline void SatParameters::_internal_set_num_full_subsolvers(::int32_t value) {
8383 ::google::protobuf::internal::TSanWrite(&
_impl_);
8384 _impl_.num_full_subsolvers_ = value;
8388inline int SatParameters::_internal_subsolvers_size()
const {
8389 return _internal_subsolvers().size();
8392 return _internal_subsolvers_size();
8395 ::google::protobuf::internal::TSanWrite(&
_impl_);
8397 ClearHasBitForRepeated(
_impl_._has_bits_[0],
8401 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8402 ::google::protobuf::internal::TSanWrite(&
_impl_);
8404 _internal_mutable_subsolvers()->InternalAddWithArena(
8405 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8406 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x00800000U);
8411 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8413 return _internal_subsolvers().Get(index);
8416 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8418 return _internal_mutable_subsolvers()->Mutable(index);
8420template <
typename Arg_,
typename... Args_>
8422 ::google::protobuf::internal::AssignToString(*_internal_mutable_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8426template <
typename Arg_,
typename... 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),
8433 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x00800000U);
8437 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8439 return _internal_subsolvers();
8441inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8443 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x00800000U);
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_;
8453inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8454SatParameters::_internal_mutable_subsolvers() {
8455 ::google::protobuf::internal::TSanRead(&
_impl_);
8456 return &
_impl_.subsolvers_;
8460inline int SatParameters::_internal_extra_subsolvers_size()
const {
8461 return _internal_extra_subsolvers().size();
8464 return _internal_extra_subsolvers_size();
8467 ::google::protobuf::internal::TSanWrite(&
_impl_);
8469 ClearHasBitForRepeated(
_impl_._has_bits_[0],
8473 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8474 ::google::protobuf::internal::TSanWrite(&
_impl_);
8476 _internal_mutable_extra_subsolvers()->InternalAddWithArena(
8477 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8478 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x04000000U);
8483 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8485 return _internal_extra_subsolvers().Get(index);
8488 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8490 return _internal_mutable_extra_subsolvers()->Mutable(index);
8492template <
typename Arg_,
typename... Args_>
8494 ::google::protobuf::internal::AssignToString(*_internal_mutable_extra_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8498template <
typename Arg_,
typename... 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),
8505 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x04000000U);
8509 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8511 return _internal_extra_subsolvers();
8513inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8515 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x04000000U);
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_;
8525inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8526SatParameters::_internal_mutable_extra_subsolvers() {
8527 ::google::protobuf::internal::TSanRead(&
_impl_);
8528 return &
_impl_.extra_subsolvers_;
8532inline int SatParameters::_internal_ignore_subsolvers_size()
const {
8533 return _internal_ignore_subsolvers().size();
8536 return _internal_ignore_subsolvers_size();
8539 ::google::protobuf::internal::TSanWrite(&
_impl_);
8541 ClearHasBitForRepeated(
_impl_._has_bits_[0],
8545 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8546 ::google::protobuf::internal::TSanWrite(&
_impl_);
8548 _internal_mutable_ignore_subsolvers()->InternalAddWithArena(
8549 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8550 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x01000000U);
8555 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8557 return _internal_ignore_subsolvers().Get(index);
8560 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8562 return _internal_mutable_ignore_subsolvers()->Mutable(index);
8564template <
typename Arg_,
typename... Args_>
8566 ::google::protobuf::internal::AssignToString(*_internal_mutable_ignore_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8570template <
typename Arg_,
typename... 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),
8577 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x01000000U);
8581 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8583 return _internal_ignore_subsolvers();
8585inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8587 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x01000000U);
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_;
8597inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8598SatParameters::_internal_mutable_ignore_subsolvers() {
8599 ::google::protobuf::internal::TSanRead(&
_impl_);
8600 return &
_impl_.ignore_subsolvers_;
8604inline int SatParameters::_internal_filter_subsolvers_size()
const {
8605 return _internal_filter_subsolvers().size();
8608 return _internal_filter_subsolvers_size();
8611 ::google::protobuf::internal::TSanWrite(&
_impl_);
8613 ClearHasBitForRepeated(
_impl_._has_bits_[0],
8617 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8618 ::google::protobuf::internal::TSanWrite(&
_impl_);
8620 _internal_mutable_filter_subsolvers()->InternalAddWithArena(
8621 ::google::protobuf::MessageLite::internal_visibility(), GetArena());
8622 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x08000000U);
8627 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8629 return _internal_filter_subsolvers().Get(index);
8632 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8634 return _internal_mutable_filter_subsolvers()->Mutable(index);
8636template <
typename Arg_,
typename... Args_>
8638 ::google::protobuf::internal::AssignToString(*_internal_mutable_filter_subsolvers()->Mutable(index), ::std::forward<Arg_>(value),
8642template <
typename Arg_,
typename... 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),
8649 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x08000000U);
8653 const ABSL_ATTRIBUTE_LIFETIME_BOUND {
8655 return _internal_filter_subsolvers();
8657inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8659 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x08000000U);
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_;
8669inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
8670SatParameters::_internal_mutable_filter_subsolvers() {
8671 ::google::protobuf::internal::TSanRead(&
_impl_);
8672 return &
_impl_.filter_subsolvers_;
8676inline int SatParameters::_internal_subsolver_params_size()
const {
8677 return _internal_subsolver_params().size();
8680 return _internal_subsolver_params_size();
8683 ::google::protobuf::internal::TSanWrite(&
_impl_);
8685 ClearHasBitForRepeated(
_impl_._has_bits_[0],
8689 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8691 return _internal_mutable_subsolver_params()->Mutable(index);
8694 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8695 SetHasBitForRepeated(
_impl_._has_bits_[0], 0x02000000U);
8697 ::google::protobuf::internal::TSanWrite(&
_impl_);
8698 return _internal_mutable_subsolver_params();
8701 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8703 return _internal_subsolver_params().Get(index);
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);
8716 ABSL_ATTRIBUTE_LIFETIME_BOUND {
8718 return _internal_subsolver_params();
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_;
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_;
8733 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x08000000U);
8737 ::google::protobuf::internal::TSanWrite(&
_impl_);
8738 _impl_.interleave_search_ =
false;
8739 ClearHasBit(
_impl_._has_bits_[1],
8744 return _internal_interleave_search();
8747 _internal_set_interleave_search(value);
8748 SetHasBit(
_impl_._has_bits_[1], 0x08000000U);
8751inline bool SatParameters::_internal_interleave_search()
const {
8752 ::google::protobuf::internal::TSanRead(&
_impl_);
8753 return _impl_.interleave_search_;
8755inline void SatParameters::_internal_set_interleave_search(
bool value) {
8756 ::google::protobuf::internal::TSanWrite(&
_impl_);
8757 _impl_.interleave_search_ = value;
8762 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x01000000U);
8766 ::google::protobuf::internal::TSanWrite(&
_impl_);
8767 _impl_.interleave_batch_size_ = 0;
8768 ClearHasBit(
_impl_._has_bits_[1],
8773 return _internal_interleave_batch_size();
8776 _internal_set_interleave_batch_size(value);
8777 SetHasBit(
_impl_._has_bits_[1], 0x01000000U);
8780inline ::int32_t SatParameters::_internal_interleave_batch_size()
const {
8781 ::google::protobuf::internal::TSanRead(&
_impl_);
8782 return _impl_.interleave_batch_size_;
8784inline void SatParameters::_internal_set_interleave_batch_size(::int32_t value) {
8785 ::google::protobuf::internal::TSanWrite(&
_impl_);
8786 _impl_.interleave_batch_size_ = value;
8791 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00004000U);
8795 ::google::protobuf::internal::TSanWrite(&
_impl_);
8796 _impl_.share_objective_bounds_ =
true;
8797 ClearHasBit(
_impl_._has_bits_[5],
8802 return _internal_share_objective_bounds();
8805 _internal_set_share_objective_bounds(value);
8806 SetHasBit(
_impl_._has_bits_[5], 0x00004000U);
8809inline bool SatParameters::_internal_share_objective_bounds()
const {
8810 ::google::protobuf::internal::TSanRead(&
_impl_);
8811 return _impl_.share_objective_bounds_;
8813inline void SatParameters::_internal_set_share_objective_bounds(
bool value) {
8814 ::google::protobuf::internal::TSanWrite(&
_impl_);
8815 _impl_.share_objective_bounds_ = value;
8820 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00008000U);
8824 ::google::protobuf::internal::TSanWrite(&
_impl_);
8825 _impl_.share_level_zero_bounds_ =
true;
8826 ClearHasBit(
_impl_._has_bits_[5],
8831 return _internal_share_level_zero_bounds();
8834 _internal_set_share_level_zero_bounds(value);
8835 SetHasBit(
_impl_._has_bits_[5], 0x00008000U);
8838inline bool SatParameters::_internal_share_level_zero_bounds()
const {
8839 ::google::protobuf::internal::TSanRead(&
_impl_);
8840 return _impl_.share_level_zero_bounds_;
8842inline void SatParameters::_internal_set_share_level_zero_bounds(
bool value) {
8843 ::google::protobuf::internal::TSanWrite(&
_impl_);
8844 _impl_.share_level_zero_bounds_ = value;
8849 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x10000000U);
8853 ::google::protobuf::internal::TSanWrite(&
_impl_);
8854 _impl_.share_linear2_bounds_ =
false;
8855 ClearHasBit(
_impl_._has_bits_[3],
8860 return _internal_share_linear2_bounds();
8863 _internal_set_share_linear2_bounds(value);
8864 SetHasBit(
_impl_._has_bits_[3], 0x10000000U);
8867inline bool SatParameters::_internal_share_linear2_bounds()
const {
8868 ::google::protobuf::internal::TSanRead(&
_impl_);
8869 return _impl_.share_linear2_bounds_;
8871inline void SatParameters::_internal_set_share_linear2_bounds(
bool value) {
8872 ::google::protobuf::internal::TSanWrite(&
_impl_);
8873 _impl_.share_linear2_bounds_ = value;
8878 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000001U);
8882 ::google::protobuf::internal::TSanWrite(&
_impl_);
8883 _impl_.share_binary_clauses_ =
true;
8884 ClearHasBit(
_impl_._has_bits_[7],
8889 return _internal_share_binary_clauses();
8892 _internal_set_share_binary_clauses(value);
8893 SetHasBit(
_impl_._has_bits_[7], 0x00000001U);
8896inline bool SatParameters::_internal_share_binary_clauses()
const {
8897 ::google::protobuf::internal::TSanRead(&
_impl_);
8898 return _impl_.share_binary_clauses_;
8900inline void SatParameters::_internal_set_share_binary_clauses(
bool value) {
8901 ::google::protobuf::internal::TSanWrite(&
_impl_);
8902 _impl_.share_binary_clauses_ = value;
8907 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000800U);
8911 ::google::protobuf::internal::TSanWrite(&
_impl_);
8912 _impl_.share_glue_clauses_ =
true;
8913 ClearHasBit(
_impl_._has_bits_[8],
8918 return _internal_share_glue_clauses();
8921 _internal_set_share_glue_clauses(value);
8922 SetHasBit(
_impl_._has_bits_[8], 0x00000800U);
8925inline bool SatParameters::_internal_share_glue_clauses()
const {
8926 ::google::protobuf::internal::TSanRead(&
_impl_);
8927 return _impl_.share_glue_clauses_;
8929inline void SatParameters::_internal_set_share_glue_clauses(
bool value) {
8930 ::google::protobuf::internal::TSanWrite(&
_impl_);
8931 _impl_.share_glue_clauses_ = value;
8936 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00200000U);
8940 ::google::protobuf::internal::TSanWrite(&
_impl_);
8941 _impl_.minimize_shared_clauses_ =
true;
8942 ClearHasBit(
_impl_._has_bits_[8],
8947 return _internal_minimize_shared_clauses();
8950 _internal_set_minimize_shared_clauses(value);
8951 SetHasBit(
_impl_._has_bits_[8], 0x00200000U);
8954inline bool SatParameters::_internal_minimize_shared_clauses()
const {
8955 ::google::protobuf::internal::TSanRead(&
_impl_);
8956 return _impl_.minimize_shared_clauses_;
8958inline void SatParameters::_internal_set_minimize_shared_clauses(
bool value) {
8959 ::google::protobuf::internal::TSanWrite(&
_impl_);
8960 _impl_.minimize_shared_clauses_ = value;
8965 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x80000000U);
8969 ::google::protobuf::internal::TSanWrite(&
_impl_);
8970 _impl_.share_glue_clauses_dtime_ = 1;
8971 ClearHasBit(
_impl_._has_bits_[8],
8976 return _internal_share_glue_clauses_dtime();
8979 _internal_set_share_glue_clauses_dtime(value);
8980 SetHasBit(
_impl_._has_bits_[8], 0x80000000U);
8983inline double SatParameters::_internal_share_glue_clauses_dtime()
const {
8984 ::google::protobuf::internal::TSanRead(&
_impl_);
8985 return _impl_.share_glue_clauses_dtime_;
8987inline void SatParameters::_internal_set_share_glue_clauses_dtime(
double value) {
8988 ::google::protobuf::internal::TSanWrite(&
_impl_);
8989 _impl_.share_glue_clauses_dtime_ = value;
8994 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000004U);
8998 ::google::protobuf::internal::TSanWrite(&
_impl_);
8999 _impl_.check_lrat_proof_ =
false;
9000 ClearHasBit(
_impl_._has_bits_[4],
9005 return _internal_check_lrat_proof();
9008 _internal_set_check_lrat_proof(value);
9009 SetHasBit(
_impl_._has_bits_[4], 0x00000004U);
9012inline bool SatParameters::_internal_check_lrat_proof()
const {
9013 ::google::protobuf::internal::TSanRead(&
_impl_);
9014 return _impl_.check_lrat_proof_;
9016inline void SatParameters::_internal_set_check_lrat_proof(
bool value) {
9017 ::google::protobuf::internal::TSanWrite(&
_impl_);
9018 _impl_.check_lrat_proof_ = value;
9023 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000100U);
9027 ::google::protobuf::internal::TSanWrite(&
_impl_);
9028 _impl_.check_merged_lrat_proof_ =
false;
9029 ClearHasBit(
_impl_._has_bits_[4],
9034 return _internal_check_merged_lrat_proof();
9037 _internal_set_check_merged_lrat_proof(value);
9038 SetHasBit(
_impl_._has_bits_[4], 0x00000100U);
9041inline bool SatParameters::_internal_check_merged_lrat_proof()
const {
9042 ::google::protobuf::internal::TSanRead(&
_impl_);
9043 return _impl_.check_merged_lrat_proof_;
9045inline void SatParameters::_internal_set_check_merged_lrat_proof(
bool value) {
9046 ::google::protobuf::internal::TSanWrite(&
_impl_);
9047 _impl_.check_merged_lrat_proof_ = value;
9052 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000008U);
9056 ::google::protobuf::internal::TSanWrite(&
_impl_);
9057 _impl_.output_lrat_proof_ =
false;
9058 ClearHasBit(
_impl_._has_bits_[4],
9063 return _internal_output_lrat_proof();
9066 _internal_set_output_lrat_proof(value);
9067 SetHasBit(
_impl_._has_bits_[4], 0x00000008U);
9070inline bool SatParameters::_internal_output_lrat_proof()
const {
9071 ::google::protobuf::internal::TSanRead(&
_impl_);
9072 return _impl_.output_lrat_proof_;
9074inline void SatParameters::_internal_set_output_lrat_proof(
bool value) {
9075 ::google::protobuf::internal::TSanWrite(&
_impl_);
9076 _impl_.output_lrat_proof_ = value;
9081 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000010U);
9085 ::google::protobuf::internal::TSanWrite(&
_impl_);
9086 _impl_.check_drat_proof_ =
false;
9087 ClearHasBit(
_impl_._has_bits_[4],
9092 return _internal_check_drat_proof();
9095 _internal_set_check_drat_proof(value);
9096 SetHasBit(
_impl_._has_bits_[4], 0x00000010U);
9099inline bool SatParameters::_internal_check_drat_proof()
const {
9100 ::google::protobuf::internal::TSanRead(&
_impl_);
9101 return _impl_.check_drat_proof_;
9103inline void SatParameters::_internal_set_check_drat_proof(
bool value) {
9104 ::google::protobuf::internal::TSanWrite(&
_impl_);
9105 _impl_.check_drat_proof_ = value;
9110 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000080U);
9114 ::google::protobuf::internal::TSanWrite(&
_impl_);
9115 _impl_.output_drat_proof_ =
false;
9116 ClearHasBit(
_impl_._has_bits_[4],
9121 return _internal_output_drat_proof();
9124 _internal_set_output_drat_proof(value);
9125 SetHasBit(
_impl_._has_bits_[4], 0x00000080U);
9128inline bool SatParameters::_internal_output_drat_proof()
const {
9129 ::google::protobuf::internal::TSanRead(&
_impl_);
9130 return _impl_.output_drat_proof_;
9132inline void SatParameters::_internal_set_output_drat_proof(
bool value) {
9133 ::google::protobuf::internal::TSanWrite(&
_impl_);
9134 _impl_.output_drat_proof_ = value;
9139 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00001000U);
9143 ::google::protobuf::internal::TSanWrite(&
_impl_);
9144 _impl_.max_drat_time_in_seconds_ = std::numeric_limits<double>::infinity();
9145 ClearHasBit(
_impl_._has_bits_[9],
9150 return _internal_max_drat_time_in_seconds();
9153 _internal_set_max_drat_time_in_seconds(value);
9154 SetHasBit(
_impl_._has_bits_[9], 0x00001000U);
9157inline double SatParameters::_internal_max_drat_time_in_seconds()
const {
9158 ::google::protobuf::internal::TSanRead(&
_impl_);
9159 return _impl_.max_drat_time_in_seconds_;
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;
9168 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000002U);
9172 ::google::protobuf::internal::TSanWrite(&
_impl_);
9173 _impl_.debug_postsolve_with_full_solver_ =
false;
9174 ClearHasBit(
_impl_._has_bits_[2],
9179 return _internal_debug_postsolve_with_full_solver();
9182 _internal_set_debug_postsolve_with_full_solver(value);
9183 SetHasBit(
_impl_._has_bits_[2], 0x00000002U);
9186inline bool SatParameters::_internal_debug_postsolve_with_full_solver()
const {
9187 ::google::protobuf::internal::TSanRead(&
_impl_);
9188 return _impl_.debug_postsolve_with_full_solver_;
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;
9197 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x20000000U);
9201 ::google::protobuf::internal::TSanWrite(&
_impl_);
9202 _impl_.debug_max_num_presolve_operations_ = 0;
9203 ClearHasBit(
_impl_._has_bits_[1],
9208 return _internal_debug_max_num_presolve_operations();
9211 _internal_set_debug_max_num_presolve_operations(value);
9212 SetHasBit(
_impl_._has_bits_[1], 0x20000000U);
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_;
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;
9226 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00020000U);
9230 ::google::protobuf::internal::TSanWrite(&
_impl_);
9231 _impl_.debug_crash_on_bad_hint_ =
false;
9232 ClearHasBit(
_impl_._has_bits_[2],
9237 return _internal_debug_crash_on_bad_hint();
9240 _internal_set_debug_crash_on_bad_hint(value);
9241 SetHasBit(
_impl_._has_bits_[2], 0x00020000U);
9244inline bool SatParameters::_internal_debug_crash_on_bad_hint()
const {
9245 ::google::protobuf::internal::TSanRead(&
_impl_);
9246 return _impl_.debug_crash_on_bad_hint_;
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;
9255 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00400000U);
9259 ::google::protobuf::internal::TSanWrite(&
_impl_);
9260 _impl_.debug_crash_if_presolve_breaks_hint_ =
false;
9261 ClearHasBit(
_impl_._has_bits_[3],
9266 return _internal_debug_crash_if_presolve_breaks_hint();
9269 _internal_set_debug_crash_if_presolve_breaks_hint(value);
9270 SetHasBit(
_impl_._has_bits_[3], 0x00400000U);
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_;
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;
9284 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00000002U);
9288 ::google::protobuf::internal::TSanWrite(&
_impl_);
9289 _impl_.debug_crash_if_lrat_check_fails_ =
false;
9290 ClearHasBit(
_impl_._has_bits_[4],
9295 return _internal_debug_crash_if_lrat_check_fails();
9298 _internal_set_debug_crash_if_lrat_check_fails(value);
9299 SetHasBit(
_impl_._has_bits_[4], 0x00000002U);
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_;
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;
9313 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000020U);
9317 ::google::protobuf::internal::TSanWrite(&
_impl_);
9318 _impl_.use_optimization_hints_ =
true;
9319 ClearHasBit(
_impl_._has_bits_[0],
9324 return _internal_use_optimization_hints();
9327 _internal_set_use_optimization_hints(value);
9328 SetHasBit(
_impl_._has_bits_[0], 0x00000020U);
9331inline bool SatParameters::_internal_use_optimization_hints()
const {
9332 ::google::protobuf::internal::TSanRead(&
_impl_);
9333 return _impl_.use_optimization_hints_;
9335inline void SatParameters::_internal_set_use_optimization_hints(
bool value) {
9336 ::google::protobuf::internal::TSanWrite(&
_impl_);
9337 _impl_.use_optimization_hints_ = value;
9342 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00004000U);
9346 ::google::protobuf::internal::TSanWrite(&
_impl_);
9347 _impl_.core_minimization_level_ = 2;
9348 ClearHasBit(
_impl_._has_bits_[4],
9353 return _internal_core_minimization_level();
9356 _internal_set_core_minimization_level(value);
9357 SetHasBit(
_impl_._has_bits_[4], 0x00004000U);
9360inline ::int32_t SatParameters::_internal_core_minimization_level()
const {
9361 ::google::protobuf::internal::TSanRead(&
_impl_);
9362 return _impl_.core_minimization_level_;
9364inline void SatParameters::_internal_set_core_minimization_level(::int32_t value) {
9365 ::google::protobuf::internal::TSanWrite(&
_impl_);
9366 _impl_.core_minimization_level_ = value;
9371 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x80000000U);
9375 ::google::protobuf::internal::TSanWrite(&
_impl_);
9376 _impl_.find_multiple_cores_ =
true;
9377 ClearHasBit(
_impl_._has_bits_[4],
9382 return _internal_find_multiple_cores();
9385 _internal_set_find_multiple_cores(value);
9386 SetHasBit(
_impl_._has_bits_[4], 0x80000000U);
9389inline bool SatParameters::_internal_find_multiple_cores()
const {
9390 ::google::protobuf::internal::TSanRead(&
_impl_);
9391 return _impl_.find_multiple_cores_;
9393inline void SatParameters::_internal_set_find_multiple_cores(
bool value) {
9394 ::google::protobuf::internal::TSanWrite(&
_impl_);
9395 _impl_.find_multiple_cores_ = value;
9400 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000004U);
9404 ::google::protobuf::internal::TSanWrite(&
_impl_);
9405 _impl_.cover_optimization_ =
true;
9406 ClearHasBit(
_impl_._has_bits_[5],
9411 return _internal_cover_optimization();
9414 _internal_set_cover_optimization(value);
9415 SetHasBit(
_impl_._has_bits_[5], 0x00000004U);
9418inline bool SatParameters::_internal_cover_optimization()
const {
9419 ::google::protobuf::internal::TSanRead(&
_impl_);
9420 return _impl_.cover_optimization_;
9422inline void SatParameters::_internal_set_cover_optimization(
bool value) {
9423 ::google::protobuf::internal::TSanWrite(&
_impl_);
9424 _impl_.cover_optimization_ = value;
9429 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000001U);
9433 ::google::protobuf::internal::TSanWrite(&
_impl_);
9434 _impl_.max_sat_assumption_order_ = 0;
9435 ClearHasBit(
_impl_._has_bits_[1],
9440 return _internal_max_sat_assumption_order();
9443 _internal_set_max_sat_assumption_order(value);
9444 SetHasBit(
_impl_._has_bits_[1], 0x00000001U);
9447inline ::operations_research::sat::SatParameters_MaxSatAssumptionOrder SatParameters::_internal_max_sat_assumption_order()
const {
9448 ::google::protobuf::internal::TSanRead(&
_impl_);
9452 ::google::protobuf::internal::TSanWrite(&
_impl_);
9454 assert(::google::protobuf::internal::ValidateEnum(
9456 _impl_.max_sat_assumption_order_ = value;
9461 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000004U);
9465 ::google::protobuf::internal::TSanWrite(&
_impl_);
9466 _impl_.max_sat_reverse_assumption_order_ =
false;
9467 ClearHasBit(
_impl_._has_bits_[1],
9472 return _internal_max_sat_reverse_assumption_order();
9475 _internal_set_max_sat_reverse_assumption_order(value);
9476 SetHasBit(
_impl_._has_bits_[1], 0x00000004U);
9479inline bool SatParameters::_internal_max_sat_reverse_assumption_order()
const {
9480 ::google::protobuf::internal::TSanRead(&
_impl_);
9481 return _impl_.max_sat_reverse_assumption_order_;
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;
9490 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x00008000U);
9494 ::google::protobuf::internal::TSanWrite(&
_impl_);
9495 _impl_.max_sat_stratification_ = 1;
9496 ClearHasBit(
_impl_._has_bits_[4],
9501 return _internal_max_sat_stratification();
9504 _internal_set_max_sat_stratification(value);
9505 SetHasBit(
_impl_._has_bits_[4], 0x00008000U);
9508inline ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm SatParameters::_internal_max_sat_stratification()
const {
9509 ::google::protobuf::internal::TSanRead(&
_impl_);
9513 ::google::protobuf::internal::TSanWrite(&
_impl_);
9515 assert(::google::protobuf::internal::ValidateEnum(
9517 _impl_.max_sat_stratification_ = value;
9522 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000010U);
9526 ::google::protobuf::internal::TSanWrite(&
_impl_);
9527 _impl_.propagation_loop_detection_factor_ = 10;
9528 ClearHasBit(
_impl_._has_bits_[7],
9533 return _internal_propagation_loop_detection_factor();
9536 _internal_set_propagation_loop_detection_factor(value);
9537 SetHasBit(
_impl_._has_bits_[7], 0x00000010U);
9540inline double SatParameters::_internal_propagation_loop_detection_factor()
const {
9541 ::google::protobuf::internal::TSanRead(&
_impl_);
9542 return _impl_.propagation_loop_detection_factor_;
9544inline void SatParameters::_internal_set_propagation_loop_detection_factor(
double value) {
9545 ::google::protobuf::internal::TSanWrite(&
_impl_);
9546 _impl_.propagation_loop_detection_factor_ = value;
9551 bool value = CheckHasBit(
_impl_._has_bits_[0], 0x00000080U);
9555 ::google::protobuf::internal::TSanWrite(&
_impl_);
9556 _impl_.use_precedences_in_disjunctive_constraint_ =
true;
9557 ClearHasBit(
_impl_._has_bits_[0],
9562 return _internal_use_precedences_in_disjunctive_constraint();
9565 _internal_set_use_precedences_in_disjunctive_constraint(value);
9566 SetHasBit(
_impl_._has_bits_[0], 0x00000080U);
9569inline bool SatParameters::_internal_use_precedences_in_disjunctive_constraint()
const {
9570 ::google::protobuf::internal::TSanRead(&
_impl_);
9571 return _impl_.use_precedences_in_disjunctive_constraint_;
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;
9580 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000002U);
9584 ::google::protobuf::internal::TSanWrite(&
_impl_);
9585 _impl_.transitive_precedences_work_limit_ = 1000000;
9586 ClearHasBit(
_impl_._has_bits_[9],
9591 return _internal_transitive_precedences_work_limit();
9594 _internal_set_transitive_precedences_work_limit(value);
9595 SetHasBit(
_impl_._has_bits_[9], 0x00000002U);
9598inline ::int32_t SatParameters::_internal_transitive_precedences_work_limit()
const {
9599 ::google::protobuf::internal::TSanRead(&
_impl_);
9600 return _impl_.transitive_precedences_work_limit_;
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;
9609 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000200U);
9613 ::google::protobuf::internal::TSanWrite(&
_impl_);
9614 _impl_.max_size_to_create_precedence_literals_in_disjunctive_ = 60;
9615 ClearHasBit(
_impl_._has_bits_[7],
9620 return _internal_max_size_to_create_precedence_literals_in_disjunctive();
9623 _internal_set_max_size_to_create_precedence_literals_in_disjunctive(value);
9624 SetHasBit(
_impl_._has_bits_[7], 0x00000200U);
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_;
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;
9638 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x20000000U);
9642 ::google::protobuf::internal::TSanWrite(&
_impl_);
9643 _impl_.use_strong_propagation_in_disjunctive_ =
false;
9644 ClearHasBit(
_impl_._has_bits_[2],
9649 return _internal_use_strong_propagation_in_disjunctive();
9652 _internal_set_use_strong_propagation_in_disjunctive(value);
9653 SetHasBit(
_impl_._has_bits_[2], 0x20000000U);
9656inline bool SatParameters::_internal_use_strong_propagation_in_disjunctive()
const {
9657 ::google::protobuf::internal::TSanRead(&
_impl_);
9658 return _impl_.use_strong_propagation_in_disjunctive_;
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;
9667 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000020U);
9671 ::google::protobuf::internal::TSanWrite(&
_impl_);
9672 _impl_.use_dynamic_precedence_in_disjunctive_ =
false;
9673 ClearHasBit(
_impl_._has_bits_[3],
9678 return _internal_use_dynamic_precedence_in_disjunctive();
9681 _internal_set_use_dynamic_precedence_in_disjunctive(value);
9682 SetHasBit(
_impl_._has_bits_[3], 0x00000020U);
9685inline bool SatParameters::_internal_use_dynamic_precedence_in_disjunctive()
const {
9686 ::google::protobuf::internal::TSanRead(&
_impl_);
9687 return _impl_.use_dynamic_precedence_in_disjunctive_;
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;
9696 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000040U);
9700 ::google::protobuf::internal::TSanWrite(&
_impl_);
9701 _impl_.use_dynamic_precedence_in_cumulative_ =
false;
9702 ClearHasBit(
_impl_._has_bits_[3],
9707 return _internal_use_dynamic_precedence_in_cumulative();
9710 _internal_set_use_dynamic_precedence_in_cumulative(value);
9711 SetHasBit(
_impl_._has_bits_[3], 0x00000040U);
9714inline bool SatParameters::_internal_use_dynamic_precedence_in_cumulative()
const {
9715 ::google::protobuf::internal::TSanRead(&
_impl_);
9716 return _impl_.use_dynamic_precedence_in_cumulative_;
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;
9725 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000400U);
9729 ::google::protobuf::internal::TSanWrite(&
_impl_);
9730 _impl_.use_overload_checker_in_cumulative_ =
false;
9731 ClearHasBit(
_impl_._has_bits_[1],
9736 return _internal_use_overload_checker_in_cumulative();
9739 _internal_set_use_overload_checker_in_cumulative(value);
9740 SetHasBit(
_impl_._has_bits_[1], 0x00000400U);
9743inline bool SatParameters::_internal_use_overload_checker_in_cumulative()
const {
9744 ::google::protobuf::internal::TSanRead(&
_impl_);
9745 return _impl_.use_overload_checker_in_cumulative_;
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;
9754 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00001000U);
9758 ::google::protobuf::internal::TSanWrite(&
_impl_);
9759 _impl_.use_conservative_scale_overload_checker_ =
false;
9760 ClearHasBit(
_impl_._has_bits_[3],
9765 return _internal_use_conservative_scale_overload_checker();
9768 _internal_set_use_conservative_scale_overload_checker(value);
9769 SetHasBit(
_impl_._has_bits_[3], 0x00001000U);
9772inline bool SatParameters::_internal_use_conservative_scale_overload_checker()
const {
9773 ::google::protobuf::internal::TSanRead(&
_impl_);
9774 return _impl_.use_conservative_scale_overload_checker_;
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;
9783 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00000800U);
9787 ::google::protobuf::internal::TSanWrite(&
_impl_);
9788 _impl_.use_timetable_edge_finding_in_cumulative_ =
false;
9789 ClearHasBit(
_impl_._has_bits_[1],
9794 return _internal_use_timetable_edge_finding_in_cumulative();
9797 _internal_set_use_timetable_edge_finding_in_cumulative(value);
9798 SetHasBit(
_impl_._has_bits_[1], 0x00000800U);
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_;
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;
9812 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x01000000U);
9816 ::google::protobuf::internal::TSanWrite(&
_impl_);
9817 _impl_.max_num_intervals_for_timetable_edge_finding_ = 100;
9818 ClearHasBit(
_impl_._has_bits_[7],
9823 return _internal_max_num_intervals_for_timetable_edge_finding();
9826 _internal_set_max_num_intervals_for_timetable_edge_finding(value);
9827 SetHasBit(
_impl_._has_bits_[7], 0x01000000U);
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_;
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;
9841 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00400000U);
9845 ::google::protobuf::internal::TSanWrite(&
_impl_);
9846 _impl_.use_hard_precedences_in_cumulative_ =
false;
9847 ClearHasBit(
_impl_._has_bits_[2],
9852 return _internal_use_hard_precedences_in_cumulative();
9855 _internal_set_use_hard_precedences_in_cumulative(value);
9856 SetHasBit(
_impl_._has_bits_[2], 0x00400000U);
9859inline bool SatParameters::_internal_use_hard_precedences_in_cumulative()
const {
9860 ::google::protobuf::internal::TSanRead(&
_impl_);
9861 return _impl_.use_hard_precedences_in_cumulative_;
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;
9870 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x01000000U);
9874 ::google::protobuf::internal::TSanWrite(&
_impl_);
9875 _impl_.exploit_all_precedences_ =
false;
9876 ClearHasBit(
_impl_._has_bits_[2],
9881 return _internal_exploit_all_precedences();
9884 _internal_set_exploit_all_precedences(value);
9885 SetHasBit(
_impl_._has_bits_[2], 0x01000000U);
9888inline bool SatParameters::_internal_exploit_all_precedences()
const {
9889 ::google::protobuf::internal::TSanRead(&
_impl_);
9890 return _impl_.exploit_all_precedences_;
9892inline void SatParameters::_internal_set_exploit_all_precedences(
bool value) {
9893 ::google::protobuf::internal::TSanWrite(&
_impl_);
9894 _impl_.exploit_all_precedences_ = value;
9899 bool value = CheckHasBit(
_impl_._has_bits_[4], 0x02000000U);
9903 ::google::protobuf::internal::TSanWrite(&
_impl_);
9904 _impl_.use_disjunctive_constraint_in_cumulative_ =
true;
9905 ClearHasBit(
_impl_._has_bits_[4],
9910 return _internal_use_disjunctive_constraint_in_cumulative();
9913 _internal_set_use_disjunctive_constraint_in_cumulative(value);
9914 SetHasBit(
_impl_._has_bits_[4], 0x02000000U);
9917inline bool SatParameters::_internal_use_disjunctive_constraint_in_cumulative()
const {
9918 ::google::protobuf::internal::TSanRead(&
_impl_);
9919 return _impl_.use_disjunctive_constraint_in_cumulative_;
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;
9928 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x40000000U);
9932 ::google::protobuf::internal::TSanWrite(&
_impl_);
9933 _impl_.no_overlap_2d_boolean_relations_limit_ = 10;
9934 ClearHasBit(
_impl_._has_bits_[8],
9939 return _internal_no_overlap_2d_boolean_relations_limit();
9942 _internal_set_no_overlap_2d_boolean_relations_limit(value);
9943 SetHasBit(
_impl_._has_bits_[8], 0x40000000U);
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_;
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;
9957 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00100000U);
9961 ::google::protobuf::internal::TSanWrite(&
_impl_);
9962 _impl_.use_timetabling_in_no_overlap_2d_ =
false;
9963 ClearHasBit(
_impl_._has_bits_[2],
9968 return _internal_use_timetabling_in_no_overlap_2d();
9971 _internal_set_use_timetabling_in_no_overlap_2d(value);
9972 SetHasBit(
_impl_._has_bits_[2], 0x00100000U);
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_;
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;
9986 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00200000U);
9990 ::google::protobuf::internal::TSanWrite(&
_impl_);
9991 _impl_.use_energetic_reasoning_in_no_overlap_2d_ =
false;
9992 ClearHasBit(
_impl_._has_bits_[2],
9997 return _internal_use_energetic_reasoning_in_no_overlap_2d();
10000 _internal_set_use_energetic_reasoning_in_no_overlap_2d(value);
10001 SetHasBit(
_impl_._has_bits_[2], 0x00200000U);
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_;
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;
10015 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000080U);
10019 ::google::protobuf::internal::TSanWrite(&
_impl_);
10020 _impl_.use_area_energetic_reasoning_in_no_overlap_2d_ =
false;
10021 ClearHasBit(
_impl_._has_bits_[3],
10026 return _internal_use_area_energetic_reasoning_in_no_overlap_2d();
10029 _internal_set_use_area_energetic_reasoning_in_no_overlap_2d(value);
10030 SetHasBit(
_impl_._has_bits_[3], 0x00000080U);
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_;
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;
10044 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00040000U);
10048 ::google::protobuf::internal::TSanWrite(&
_impl_);
10049 _impl_.use_try_edge_reasoning_in_no_overlap_2d_ =
false;
10050 ClearHasBit(
_impl_._has_bits_[3],
10055 return _internal_use_try_edge_reasoning_in_no_overlap_2d();
10058 _internal_set_use_try_edge_reasoning_in_no_overlap_2d(value);
10059 SetHasBit(
_impl_._has_bits_[3], 0x00040000U);
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_;
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;
10073 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000040U);
10077 ::google::protobuf::internal::TSanWrite(&
_impl_);
10078 _impl_.max_pairs_pairwise_reasoning_in_no_overlap_2d_ = 1250;
10079 ClearHasBit(
_impl_._has_bits_[8],
10084 return _internal_max_pairs_pairwise_reasoning_in_no_overlap_2d();
10087 _internal_set_max_pairs_pairwise_reasoning_in_no_overlap_2d(value);
10088 SetHasBit(
_impl_._has_bits_[8], 0x00000040U);
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_;
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;
10102 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x08000000U);
10106 ::google::protobuf::internal::TSanWrite(&
_impl_);
10107 _impl_.maximum_regions_to_split_in_disconnected_no_overlap_2d_ = 0;
10108 ClearHasBit(
_impl_._has_bits_[3],
10113 return _internal_maximum_regions_to_split_in_disconnected_no_overlap_2d();
10116 _internal_set_maximum_regions_to_split_in_disconnected_no_overlap_2d(value);
10117 SetHasBit(
_impl_._has_bits_[3], 0x08000000U);
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_;
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;
10131 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x01000000U);
10135 ::google::protobuf::internal::TSanWrite(&
_impl_);
10136 _impl_.use_linear3_for_no_overlap_2d_precedences_ =
true;
10137 ClearHasBit(
_impl_._has_bits_[8],
10142 return _internal_use_linear3_for_no_overlap_2d_precedences();
10145 _internal_set_use_linear3_for_no_overlap_2d_precedences(value);
10146 SetHasBit(
_impl_._has_bits_[8], 0x01000000U);
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_;
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;
10160 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000002U);
10164 ::google::protobuf::internal::TSanWrite(&
_impl_);
10165 _impl_.use_dual_scheduling_heuristics_ =
true;
10166 ClearHasBit(
_impl_._has_bits_[7],
10171 return _internal_use_dual_scheduling_heuristics();
10174 _internal_set_use_dual_scheduling_heuristics(value);
10175 SetHasBit(
_impl_._has_bits_[7], 0x00000002U);
10178inline bool SatParameters::_internal_use_dual_scheduling_heuristics()
const {
10179 ::google::protobuf::internal::TSanRead(&
_impl_);
10180 return _impl_.use_dual_scheduling_heuristics_;
10182inline void SatParameters::_internal_set_use_dual_scheduling_heuristics(
bool value) {
10183 ::google::protobuf::internal::TSanWrite(&
_impl_);
10184 _impl_.use_dual_scheduling_heuristics_ = value;
10189 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x01000000U);
10193 ::google::protobuf::internal::TSanWrite(&
_impl_);
10194 _impl_.use_all_different_for_circuit_ =
false;
10195 ClearHasBit(
_impl_._has_bits_[3],
10200 return _internal_use_all_different_for_circuit();
10203 _internal_set_use_all_different_for_circuit(value);
10204 SetHasBit(
_impl_._has_bits_[3], 0x01000000U);
10207inline bool SatParameters::_internal_use_all_different_for_circuit()
const {
10208 ::google::protobuf::internal::TSanRead(&
_impl_);
10209 return _impl_.use_all_different_for_circuit_;
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;
10218 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00200000U);
10222 ::google::protobuf::internal::TSanWrite(&
_impl_);
10223 _impl_.routing_cut_subset_size_for_binary_relation_bound_ = 0;
10224 ClearHasBit(
_impl_._has_bits_[3],
10229 return _internal_routing_cut_subset_size_for_binary_relation_bound();
10232 _internal_set_routing_cut_subset_size_for_binary_relation_bound(value);
10233 SetHasBit(
_impl_._has_bits_[3], 0x00200000U);
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_;
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;
10247 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x04000000U);
10251 ::google::protobuf::internal::TSanWrite(&
_impl_);
10252 _impl_.routing_cut_subset_size_for_tight_binary_relation_bound_ = 0;
10253 ClearHasBit(
_impl_._has_bits_[3],
10258 return _internal_routing_cut_subset_size_for_tight_binary_relation_bound();
10261 _internal_set_routing_cut_subset_size_for_tight_binary_relation_bound(value);
10262 SetHasBit(
_impl_._has_bits_[3], 0x04000000U);
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_;
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;
10276 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x02000000U);
10280 ::google::protobuf::internal::TSanWrite(&
_impl_);
10281 _impl_.routing_cut_subset_size_for_exact_binary_relation_bound_ = 8;
10282 ClearHasBit(
_impl_._has_bits_[8],
10287 return _internal_routing_cut_subset_size_for_exact_binary_relation_bound();
10290 _internal_set_routing_cut_subset_size_for_exact_binary_relation_bound(value);
10291 SetHasBit(
_impl_._has_bits_[8], 0x02000000U);
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_;
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;
10305 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x10000000U);
10309 ::google::protobuf::internal::TSanWrite(&
_impl_);
10310 _impl_.routing_cut_subset_size_for_shortest_paths_bound_ = 8;
10311 ClearHasBit(
_impl_._has_bits_[8],
10316 return _internal_routing_cut_subset_size_for_shortest_paths_bound();
10319 _internal_set_routing_cut_subset_size_for_shortest_paths_bound(value);
10320 SetHasBit(
_impl_._has_bits_[8], 0x10000000U);
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_;
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;
10334 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x04000000U);
10338 ::google::protobuf::internal::TSanWrite(&
_impl_);
10339 _impl_.routing_cut_dp_effort_ = 10000000;
10340 ClearHasBit(
_impl_._has_bits_[8],
10345 return _internal_routing_cut_dp_effort();
10348 _internal_set_routing_cut_dp_effort(value);
10349 SetHasBit(
_impl_._has_bits_[8], 0x04000000U);
10352inline double SatParameters::_internal_routing_cut_dp_effort()
const {
10353 ::google::protobuf::internal::TSanRead(&
_impl_);
10354 return _impl_.routing_cut_dp_effort_;
10356inline void SatParameters::_internal_set_routing_cut_dp_effort(
double value) {
10357 ::google::protobuf::internal::TSanWrite(&
_impl_);
10358 _impl_.routing_cut_dp_effort_ = value;
10363 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x08000000U);
10367 ::google::protobuf::internal::TSanWrite(&
_impl_);
10368 _impl_.routing_cut_max_infeasible_path_length_ = 6;
10369 ClearHasBit(
_impl_._has_bits_[8],
10374 return _internal_routing_cut_max_infeasible_path_length();
10377 _internal_set_routing_cut_max_infeasible_path_length(value);
10378 SetHasBit(
_impl_._has_bits_[8], 0x08000000U);
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_;
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;
10392 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00002000U);
10396 ::google::protobuf::internal::TSanWrite(&
_impl_);
10397 _impl_.search_branching_ = 0;
10398 ClearHasBit(
_impl_._has_bits_[1],
10403 return _internal_search_branching();
10406 _internal_set_search_branching(value);
10407 SetHasBit(
_impl_._has_bits_[1], 0x00002000U);
10410inline ::operations_research::sat::SatParameters_SearchBranching SatParameters::_internal_search_branching()
const {
10411 ::google::protobuf::internal::TSanRead(&
_impl_);
10415 ::google::protobuf::internal::TSanWrite(&
_impl_);
10417 assert(::google::protobuf::internal::ValidateEnum(
10419 _impl_.search_branching_ = value;
10424 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000080U);
10428 ::google::protobuf::internal::TSanWrite(&
_impl_);
10429 _impl_.hint_conflict_limit_ = 10;
10430 ClearHasBit(
_impl_._has_bits_[6],
10435 return _internal_hint_conflict_limit();
10438 _internal_set_hint_conflict_limit(value);
10439 SetHasBit(
_impl_._has_bits_[6], 0x00000080U);
10442inline ::int32_t SatParameters::_internal_hint_conflict_limit()
const {
10443 ::google::protobuf::internal::TSanRead(&
_impl_);
10444 return _impl_.hint_conflict_limit_;
10446inline void SatParameters::_internal_set_hint_conflict_limit(::int32_t value) {
10447 ::google::protobuf::internal::TSanWrite(&
_impl_);
10448 _impl_.hint_conflict_limit_ = value;
10453 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000004U);
10457 ::google::protobuf::internal::TSanWrite(&
_impl_);
10458 _impl_.repair_hint_ =
false;
10459 ClearHasBit(
_impl_._has_bits_[2],
10464 return _internal_repair_hint();
10467 _internal_set_repair_hint(value);
10468 SetHasBit(
_impl_._has_bits_[2], 0x00000004U);
10471inline bool SatParameters::_internal_repair_hint()
const {
10472 ::google::protobuf::internal::TSanRead(&
_impl_);
10473 return _impl_.repair_hint_;
10475inline void SatParameters::_internal_set_repair_hint(
bool value) {
10476 ::google::protobuf::internal::TSanWrite(&
_impl_);
10477 _impl_.repair_hint_ = value;
10482 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00008000U);
10486 ::google::protobuf::internal::TSanWrite(&
_impl_);
10487 _impl_.fix_variables_to_their_hinted_value_ =
false;
10488 ClearHasBit(
_impl_._has_bits_[2],
10493 return _internal_fix_variables_to_their_hinted_value();
10496 _internal_set_fix_variables_to_their_hinted_value(value);
10497 SetHasBit(
_impl_._has_bits_[2], 0x00008000U);
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_;
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;
10511 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000080U);
10515 ::google::protobuf::internal::TSanWrite(&
_impl_);
10516 _impl_.use_probing_search_ =
false;
10517 ClearHasBit(
_impl_._has_bits_[2],
10522 return _internal_use_probing_search();
10525 _internal_set_use_probing_search(value);
10526 SetHasBit(
_impl_._has_bits_[2], 0x00000080U);
10529inline bool SatParameters::_internal_use_probing_search()
const {
10530 ::google::protobuf::internal::TSanRead(&
_impl_);
10531 return _impl_.use_probing_search_;
10533inline void SatParameters::_internal_set_use_probing_search(
bool value) {
10534 ::google::protobuf::internal::TSanWrite(&
_impl_);
10535 _impl_.use_probing_search_ = value;
10540 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x40000000U);
10544 ::google::protobuf::internal::TSanWrite(&
_impl_);
10545 _impl_.use_extended_probing_ =
true;
10546 ClearHasBit(
_impl_._has_bits_[7],
10551 return _internal_use_extended_probing();
10554 _internal_set_use_extended_probing(value);
10555 SetHasBit(
_impl_._has_bits_[7], 0x40000000U);
10558inline bool SatParameters::_internal_use_extended_probing()
const {
10559 ::google::protobuf::internal::TSanRead(&
_impl_);
10560 return _impl_.use_extended_probing_;
10562inline void SatParameters::_internal_set_use_extended_probing(
bool value) {
10563 ::google::protobuf::internal::TSanWrite(&
_impl_);
10564 _impl_.use_extended_probing_ = value;
10569 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000004U);
10573 ::google::protobuf::internal::TSanWrite(&
_impl_);
10574 _impl_.probing_num_combinations_limit_ = 20000;
10575 ClearHasBit(
_impl_._has_bits_[8],
10580 return _internal_probing_num_combinations_limit();
10583 _internal_set_probing_num_combinations_limit(value);
10584 SetHasBit(
_impl_._has_bits_[8], 0x00000004U);
10587inline ::int32_t SatParameters::_internal_probing_num_combinations_limit()
const {
10588 ::google::protobuf::internal::TSanRead(&
_impl_);
10589 return _impl_.probing_num_combinations_limit_;
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;
10598 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000004U);
10602 ::google::protobuf::internal::TSanWrite(&
_impl_);
10603 _impl_.shaving_deterministic_time_in_probing_search_ = 0.001;
10604 ClearHasBit(
_impl_._has_bits_[7],
10609 return _internal_shaving_deterministic_time_in_probing_search();
10612 _internal_set_shaving_deterministic_time_in_probing_search(value);
10613 SetHasBit(
_impl_._has_bits_[7], 0x00000004U);
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_;
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;
10627 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000008U);
10631 ::google::protobuf::internal::TSanWrite(&
_impl_);
10632 _impl_.shaving_search_deterministic_time_ = 0.1;
10633 ClearHasBit(
_impl_._has_bits_[7],
10638 return _internal_shaving_search_deterministic_time();
10641 _internal_set_shaving_search_deterministic_time(value);
10642 SetHasBit(
_impl_._has_bits_[7], 0x00000008U);
10645inline double SatParameters::_internal_shaving_search_deterministic_time()
const {
10646 ::google::protobuf::internal::TSanRead(&
_impl_);
10647 return _impl_.shaving_search_deterministic_time_;
10649inline void SatParameters::_internal_set_shaving_search_deterministic_time(
double value) {
10650 ::google::protobuf::internal::TSanWrite(&
_impl_);
10651 _impl_.shaving_search_deterministic_time_ = value;
10656 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00004000U);
10660 ::google::protobuf::internal::TSanWrite(&
_impl_);
10661 _impl_.shaving_search_threshold_ = ::int64_t{64};
10662 ClearHasBit(
_impl_._has_bits_[8],
10667 return _internal_shaving_search_threshold();
10670 _internal_set_shaving_search_threshold(value);
10671 SetHasBit(
_impl_._has_bits_[8], 0x00004000U);
10674inline ::int64_t SatParameters::_internal_shaving_search_threshold()
const {
10675 ::google::protobuf::internal::TSanRead(&
_impl_);
10676 return _impl_.shaving_search_threshold_;
10678inline void SatParameters::_internal_set_shaving_search_threshold(::int64_t value) {
10679 ::google::protobuf::internal::TSanWrite(&
_impl_);
10680 _impl_.shaving_search_threshold_ = value;
10685 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x10000000U);
10689 ::google::protobuf::internal::TSanWrite(&
_impl_);
10690 _impl_.use_objective_lb_search_ =
false;
10691 ClearHasBit(
_impl_._has_bits_[2],
10696 return _internal_use_objective_lb_search();
10699 _internal_set_use_objective_lb_search(value);
10700 SetHasBit(
_impl_._has_bits_[2], 0x10000000U);
10703inline bool SatParameters::_internal_use_objective_lb_search()
const {
10704 ::google::protobuf::internal::TSanRead(&
_impl_);
10705 return _impl_.use_objective_lb_search_;
10707inline void SatParameters::_internal_set_use_objective_lb_search(
bool value) {
10708 ::google::protobuf::internal::TSanWrite(&
_impl_);
10709 _impl_.use_objective_lb_search_ = value;
10714 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000008U);
10718 ::google::protobuf::internal::TSanWrite(&
_impl_);
10719 _impl_.use_objective_shaving_search_ =
false;
10720 ClearHasBit(
_impl_._has_bits_[3],
10725 return _internal_use_objective_shaving_search();
10728 _internal_set_use_objective_shaving_search(value);
10729 SetHasBit(
_impl_._has_bits_[3], 0x00000008U);
10732inline bool SatParameters::_internal_use_objective_shaving_search()
const {
10733 ::google::protobuf::internal::TSanRead(&
_impl_);
10734 return _impl_.use_objective_shaving_search_;
10736inline void SatParameters::_internal_set_use_objective_shaving_search(
bool value) {
10737 ::google::protobuf::internal::TSanWrite(&
_impl_);
10738 _impl_.use_objective_shaving_search_ = value;
10743 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000200U);
10747 ::google::protobuf::internal::TSanWrite(&
_impl_);
10748 _impl_.variables_shaving_level_ = -1;
10749 ClearHasBit(
_impl_._has_bits_[8],
10754 return _internal_variables_shaving_level();
10757 _internal_set_variables_shaving_level(value);
10758 SetHasBit(
_impl_._has_bits_[8], 0x00000200U);
10761inline ::int32_t SatParameters::_internal_variables_shaving_level()
const {
10762 ::google::protobuf::internal::TSanRead(&
_impl_);
10763 return _impl_.variables_shaving_level_;
10765inline void SatParameters::_internal_set_variables_shaving_level(::int32_t value) {
10766 ::google::protobuf::internal::TSanWrite(&
_impl_);
10767 _impl_.variables_shaving_level_ = value;
10772 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00800000U);
10776 ::google::protobuf::internal::TSanWrite(&
_impl_);
10777 _impl_.pseudo_cost_reliability_threshold_ = ::int64_t{100};
10778 ClearHasBit(
_impl_._has_bits_[5],
10783 return _internal_pseudo_cost_reliability_threshold();
10786 _internal_set_pseudo_cost_reliability_threshold(value);
10787 SetHasBit(
_impl_._has_bits_[5], 0x00800000U);
10790inline ::int64_t SatParameters::_internal_pseudo_cost_reliability_threshold()
const {
10791 ::google::protobuf::internal::TSanRead(&
_impl_);
10792 return _impl_.pseudo_cost_reliability_threshold_;
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;
10801 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00001000U);
10805 ::google::protobuf::internal::TSanWrite(&
_impl_);
10806 _impl_.optimize_with_core_ =
false;
10807 ClearHasBit(
_impl_._has_bits_[1],
10812 return _internal_optimize_with_core();
10815 _internal_set_optimize_with_core(value);
10816 SetHasBit(
_impl_._has_bits_[1], 0x00001000U);
10819inline bool SatParameters::_internal_optimize_with_core()
const {
10820 ::google::protobuf::internal::TSanRead(&
_impl_);
10821 return _impl_.optimize_with_core_;
10823inline void SatParameters::_internal_set_optimize_with_core(
bool value) {
10824 ::google::protobuf::internal::TSanWrite(&
_impl_);
10825 _impl_.optimize_with_core_ = value;
10830 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00002000U);
10834 ::google::protobuf::internal::TSanWrite(&
_impl_);
10835 _impl_.optimize_with_lb_tree_search_ =
false;
10836 ClearHasBit(
_impl_._has_bits_[2],
10841 return _internal_optimize_with_lb_tree_search();
10844 _internal_set_optimize_with_lb_tree_search(value);
10845 SetHasBit(
_impl_._has_bits_[2], 0x00002000U);
10848inline bool SatParameters::_internal_optimize_with_lb_tree_search()
const {
10849 ::google::protobuf::internal::TSanRead(&
_impl_);
10850 return _impl_.optimize_with_lb_tree_search_;
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;
10859 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000800U);
10863 ::google::protobuf::internal::TSanWrite(&
_impl_);
10864 _impl_.save_lp_basis_in_lb_tree_search_ =
false;
10865 ClearHasBit(
_impl_._has_bits_[3],
10870 return _internal_save_lp_basis_in_lb_tree_search();
10873 _internal_set_save_lp_basis_in_lb_tree_search(value);
10874 SetHasBit(
_impl_._has_bits_[3], 0x00000800U);
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_;
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;
10888 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000200U);
10892 ::google::protobuf::internal::TSanWrite(&
_impl_);
10893 _impl_.binary_search_num_conflicts_ = -1;
10894 ClearHasBit(
_impl_._has_bits_[5],
10899 return _internal_binary_search_num_conflicts();
10902 _internal_set_binary_search_num_conflicts(value);
10903 SetHasBit(
_impl_._has_bits_[5], 0x00000200U);
10906inline ::int32_t SatParameters::_internal_binary_search_num_conflicts()
const {
10907 ::google::protobuf::internal::TSanRead(&
_impl_);
10908 return _impl_.binary_search_num_conflicts_;
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;
10917 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00004000U);
10921 ::google::protobuf::internal::TSanWrite(&
_impl_);
10922 _impl_.optimize_with_max_hs_ =
false;
10923 ClearHasBit(
_impl_._has_bits_[1],
10928 return _internal_optimize_with_max_hs();
10931 _internal_set_optimize_with_max_hs(value);
10932 SetHasBit(
_impl_._has_bits_[1], 0x00004000U);
10935inline bool SatParameters::_internal_optimize_with_max_hs()
const {
10936 ::google::protobuf::internal::TSanRead(&
_impl_);
10937 return _impl_.optimize_with_max_hs_;
10939inline void SatParameters::_internal_set_optimize_with_max_hs(
bool value) {
10940 ::google::protobuf::internal::TSanWrite(&
_impl_);
10941 _impl_.optimize_with_max_hs_ = value;
10946 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x20000000U);
10950 ::google::protobuf::internal::TSanWrite(&
_impl_);
10951 _impl_.use_feasibility_jump_ =
true;
10952 ClearHasBit(
_impl_._has_bits_[7],
10957 return _internal_use_feasibility_jump();
10960 _internal_set_use_feasibility_jump(value);
10961 SetHasBit(
_impl_._has_bits_[7], 0x20000000U);
10964inline bool SatParameters::_internal_use_feasibility_jump()
const {
10965 ::google::protobuf::internal::TSanRead(&
_impl_);
10966 return _impl_.use_feasibility_jump_;
10968inline void SatParameters::_internal_set_use_feasibility_jump(
bool value) {
10969 ::google::protobuf::internal::TSanWrite(&
_impl_);
10970 _impl_.use_feasibility_jump_ = value;
10975 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x80000000U);
10979 ::google::protobuf::internal::TSanWrite(&
_impl_);
10980 _impl_.use_ls_only_ =
false;
10981 ClearHasBit(
_impl_._has_bits_[2],
10986 return _internal_use_ls_only();
10989 _internal_set_use_ls_only(value);
10990 SetHasBit(
_impl_._has_bits_[2], 0x80000000U);
10993inline bool SatParameters::_internal_use_ls_only()
const {
10994 ::google::protobuf::internal::TSanRead(&
_impl_);
10995 return _impl_.use_ls_only_;
10997inline void SatParameters::_internal_set_use_ls_only(
bool value) {
10998 ::google::protobuf::internal::TSanWrite(&
_impl_);
10999 _impl_.use_ls_only_ = value;
11004 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00010000U);
11008 ::google::protobuf::internal::TSanWrite(&
_impl_);
11009 _impl_.feasibility_jump_decay_ = 0.95;
11010 ClearHasBit(
_impl_._has_bits_[7],
11015 return _internal_feasibility_jump_decay();
11018 _internal_set_feasibility_jump_decay(value);
11019 SetHasBit(
_impl_._has_bits_[7], 0x00010000U);
11022inline double SatParameters::_internal_feasibility_jump_decay()
const {
11023 ::google::protobuf::internal::TSanRead(&
_impl_);
11024 return _impl_.feasibility_jump_decay_;
11026inline void SatParameters::_internal_set_feasibility_jump_decay(
double value) {
11027 ::google::protobuf::internal::TSanWrite(&
_impl_);
11028 _impl_.feasibility_jump_decay_ = value;
11033 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00200000U);
11037 ::google::protobuf::internal::TSanWrite(&
_impl_);
11038 _impl_.feasibility_jump_linearization_level_ = 2;
11039 ClearHasBit(
_impl_._has_bits_[7],
11044 return _internal_feasibility_jump_linearization_level();
11047 _internal_set_feasibility_jump_linearization_level(value);
11048 SetHasBit(
_impl_._has_bits_[7], 0x00200000U);
11051inline ::int32_t SatParameters::_internal_feasibility_jump_linearization_level()
const {
11052 ::google::protobuf::internal::TSanRead(&
_impl_);
11053 return _impl_.feasibility_jump_linearization_level_;
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;
11062 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00400000U);
11066 ::google::protobuf::internal::TSanWrite(&
_impl_);
11067 _impl_.feasibility_jump_restart_factor_ = 1;
11068 ClearHasBit(
_impl_._has_bits_[7],
11073 return _internal_feasibility_jump_restart_factor();
11076 _internal_set_feasibility_jump_restart_factor(value);
11077 SetHasBit(
_impl_._has_bits_[7], 0x00400000U);
11080inline ::int32_t SatParameters::_internal_feasibility_jump_restart_factor()
const {
11081 ::google::protobuf::internal::TSanRead(&
_impl_);
11082 return _impl_.feasibility_jump_restart_factor_;
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;
11091 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00008000U);
11095 ::google::protobuf::internal::TSanWrite(&
_impl_);
11096 _impl_.feasibility_jump_batch_dtime_ = 0.1;
11097 ClearHasBit(
_impl_._has_bits_[8],
11102 return _internal_feasibility_jump_batch_dtime();
11105 _internal_set_feasibility_jump_batch_dtime(value);
11106 SetHasBit(
_impl_._has_bits_[8], 0x00008000U);
11109inline double SatParameters::_internal_feasibility_jump_batch_dtime()
const {
11110 ::google::protobuf::internal::TSanRead(&
_impl_);
11111 return _impl_.feasibility_jump_batch_dtime_;
11113inline void SatParameters::_internal_set_feasibility_jump_batch_dtime(
double value) {
11114 ::google::protobuf::internal::TSanWrite(&
_impl_);
11115 _impl_.feasibility_jump_batch_dtime_ = value;
11120 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00020000U);
11124 ::google::protobuf::internal::TSanWrite(&
_impl_);
11125 _impl_.feasibility_jump_var_randomization_probability_ = 0.05;
11126 ClearHasBit(
_impl_._has_bits_[7],
11131 return _internal_feasibility_jump_var_randomization_probability();
11134 _internal_set_feasibility_jump_var_randomization_probability(value);
11135 SetHasBit(
_impl_._has_bits_[7], 0x00020000U);
11138inline double SatParameters::_internal_feasibility_jump_var_randomization_probability()
const {
11139 ::google::protobuf::internal::TSanRead(&
_impl_);
11140 return _impl_.feasibility_jump_var_randomization_probability_;
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;
11149 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00040000U);
11153 ::google::protobuf::internal::TSanWrite(&
_impl_);
11154 _impl_.feasibility_jump_var_perburbation_range_ratio_ = 0.2;
11155 ClearHasBit(
_impl_._has_bits_[7],
11160 return _internal_feasibility_jump_var_perburbation_range_ratio();
11163 _internal_set_feasibility_jump_var_perburbation_range_ratio(value);
11164 SetHasBit(
_impl_._has_bits_[7], 0x00040000U);
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_;
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;
11178 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00004000U);
11182 ::google::protobuf::internal::TSanWrite(&
_impl_);
11183 _impl_.feasibility_jump_enable_restarts_ =
true;
11184 ClearHasBit(
_impl_._has_bits_[7],
11189 return _internal_feasibility_jump_enable_restarts();
11192 _internal_set_feasibility_jump_enable_restarts(value);
11193 SetHasBit(
_impl_._has_bits_[7], 0x00004000U);
11196inline bool SatParameters::_internal_feasibility_jump_enable_restarts()
const {
11197 ::google::protobuf::internal::TSanRead(&
_impl_);
11198 return _impl_.feasibility_jump_enable_restarts_;
11200inline void SatParameters::_internal_set_feasibility_jump_enable_restarts(
bool value) {
11201 ::google::protobuf::internal::TSanWrite(&
_impl_);
11202 _impl_.feasibility_jump_enable_restarts_ = value;
11207 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x08000000U);
11211 ::google::protobuf::internal::TSanWrite(&
_impl_);
11212 _impl_.feasibility_jump_max_expanded_constraint_size_ = 500;
11213 ClearHasBit(
_impl_._has_bits_[7],
11218 return _internal_feasibility_jump_max_expanded_constraint_size();
11221 _internal_set_feasibility_jump_max_expanded_constraint_size(value);
11222 SetHasBit(
_impl_._has_bits_[7], 0x08000000U);
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_;
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;
11236 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000002U);
11240 ::google::protobuf::internal::TSanWrite(&
_impl_);
11241 _impl_.num_violation_ls_ = 0;
11242 ClearHasBit(
_impl_._has_bits_[3],
11247 return _internal_num_violation_ls();
11250 _internal_set_num_violation_ls(value);
11251 SetHasBit(
_impl_._has_bits_[3], 0x00000002U);
11254inline ::int32_t SatParameters::_internal_num_violation_ls()
const {
11255 ::google::protobuf::internal::TSanRead(&
_impl_);
11256 return _impl_.num_violation_ls_;
11258inline void SatParameters::_internal_set_num_violation_ls(::int32_t value) {
11259 ::google::protobuf::internal::TSanWrite(&
_impl_);
11260 _impl_.num_violation_ls_ = value;
11265 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00080000U);
11269 ::google::protobuf::internal::TSanWrite(&
_impl_);
11270 _impl_.violation_ls_perturbation_period_ = 100;
11271 ClearHasBit(
_impl_._has_bits_[7],
11276 return _internal_violation_ls_perturbation_period();
11279 _internal_set_violation_ls_perturbation_period(value);
11280 SetHasBit(
_impl_._has_bits_[7], 0x00080000U);
11283inline ::int32_t SatParameters::_internal_violation_ls_perturbation_period()
const {
11284 ::google::protobuf::internal::TSanRead(&
_impl_);
11285 return _impl_.violation_ls_perturbation_period_;
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;
11294 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00800000U);
11298 ::google::protobuf::internal::TSanWrite(&
_impl_);
11299 _impl_.violation_ls_compound_move_probability_ = 0.5;
11300 ClearHasBit(
_impl_._has_bits_[7],
11305 return _internal_violation_ls_compound_move_probability();
11308 _internal_set_violation_ls_compound_move_probability(value);
11309 SetHasBit(
_impl_._has_bits_[7], 0x00800000U);
11312inline double SatParameters::_internal_violation_ls_compound_move_probability()
const {
11313 ::google::protobuf::internal::TSanRead(&
_impl_);
11314 return _impl_.violation_ls_compound_move_probability_;
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;
11323 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000400U);
11327 ::google::protobuf::internal::TSanWrite(&
_impl_);
11328 _impl_.shared_tree_num_workers_ = -1;
11329 ClearHasBit(
_impl_._has_bits_[7],
11334 return _internal_shared_tree_num_workers();
11337 _internal_set_shared_tree_num_workers(value);
11338 SetHasBit(
_impl_._has_bits_[7], 0x00000400U);
11341inline ::int32_t SatParameters::_internal_shared_tree_num_workers()
const {
11342 ::google::protobuf::internal::TSanRead(&
_impl_);
11343 return _impl_.shared_tree_num_workers_;
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;
11352 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x40000000U);
11356 ::google::protobuf::internal::TSanWrite(&
_impl_);
11357 _impl_.use_shared_tree_search_ =
false;
11358 ClearHasBit(
_impl_._has_bits_[2],
11363 return _internal_use_shared_tree_search();
11366 _internal_set_use_shared_tree_search(value);
11367 SetHasBit(
_impl_._has_bits_[2], 0x40000000U);
11370inline bool SatParameters::_internal_use_shared_tree_search()
const {
11371 ::google::protobuf::internal::TSanRead(&
_impl_);
11372 return _impl_.use_shared_tree_search_;
11374inline void SatParameters::_internal_set_use_shared_tree_search(
bool value) {
11375 ::google::protobuf::internal::TSanWrite(&
_impl_);
11376 _impl_.use_shared_tree_search_ = value;
11381 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000080U);
11385 ::google::protobuf::internal::TSanWrite(&
_impl_);
11386 _impl_.shared_tree_worker_min_restarts_per_subtree_ = 1;
11387 ClearHasBit(
_impl_._has_bits_[8],
11392 return _internal_shared_tree_worker_min_restarts_per_subtree();
11395 _internal_set_shared_tree_worker_min_restarts_per_subtree(value);
11396 SetHasBit(
_impl_._has_bits_[8], 0x00000080U);
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_;
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;
11410 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00001000U);
11414 ::google::protobuf::internal::TSanWrite(&
_impl_);
11415 _impl_.shared_tree_worker_enable_trail_sharing_ =
true;
11416 ClearHasBit(
_impl_._has_bits_[8],
11421 return _internal_shared_tree_worker_enable_trail_sharing();
11424 _internal_set_shared_tree_worker_enable_trail_sharing(value);
11425 SetHasBit(
_impl_._has_bits_[8], 0x00001000U);
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_;
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;
11439 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00400000U);
11443 ::google::protobuf::internal::TSanWrite(&
_impl_);
11444 _impl_.shared_tree_worker_enable_phase_sharing_ =
true;
11445 ClearHasBit(
_impl_._has_bits_[8],
11450 return _internal_shared_tree_worker_enable_phase_sharing();
11453 _internal_set_shared_tree_worker_enable_phase_sharing(value);
11454 SetHasBit(
_impl_._has_bits_[8], 0x00400000U);
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_;
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;
11468 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000100U);
11472 ::google::protobuf::internal::TSanWrite(&
_impl_);
11473 _impl_.shared_tree_open_leaves_per_worker_ = 2;
11474 ClearHasBit(
_impl_._has_bits_[8],
11479 return _internal_shared_tree_open_leaves_per_worker();
11482 _internal_set_shared_tree_open_leaves_per_worker(value);
11483 SetHasBit(
_impl_._has_bits_[8], 0x00000100U);
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_;
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;
11497 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00008000U);
11501 ::google::protobuf::internal::TSanWrite(&
_impl_);
11502 _impl_.shared_tree_max_nodes_per_worker_ = 10000;
11503 ClearHasBit(
_impl_._has_bits_[7],
11508 return _internal_shared_tree_max_nodes_per_worker();
11511 _internal_set_shared_tree_max_nodes_per_worker(value);
11512 SetHasBit(
_impl_._has_bits_[7], 0x00008000U);
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_;
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;
11526 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000001U);
11530 ::google::protobuf::internal::TSanWrite(&
_impl_);
11531 _impl_.shared_tree_split_strategy_ = 0;
11532 ClearHasBit(
_impl_._has_bits_[3],
11537 return _internal_shared_tree_split_strategy();
11540 _internal_set_shared_tree_split_strategy(value);
11541 SetHasBit(
_impl_._has_bits_[3], 0x00000001U);
11544inline ::operations_research::sat::SatParameters_SharedTreeSplitStrategy SatParameters::_internal_shared_tree_split_strategy()
const {
11545 ::google::protobuf::internal::TSanRead(&
_impl_);
11549 ::google::protobuf::internal::TSanWrite(&
_impl_);
11551 assert(::google::protobuf::internal::ValidateEnum(
11553 _impl_.shared_tree_split_strategy_ = value;
11558 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00020000U);
11562 ::google::protobuf::internal::TSanWrite(&
_impl_);
11563 _impl_.shared_tree_balance_tolerance_ = 1;
11564 ClearHasBit(
_impl_._has_bits_[8],
11569 return _internal_shared_tree_balance_tolerance();
11572 _internal_set_shared_tree_balance_tolerance(value);
11573 SetHasBit(
_impl_._has_bits_[8], 0x00020000U);
11576inline ::int32_t SatParameters::_internal_shared_tree_balance_tolerance()
const {
11577 ::google::protobuf::internal::TSanRead(&
_impl_);
11578 return _impl_.shared_tree_balance_tolerance_;
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;
11587 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000004U);
11591 ::google::protobuf::internal::TSanWrite(&
_impl_);
11592 _impl_.shared_tree_split_min_dtime_ = 0.1;
11593 ClearHasBit(
_impl_._has_bits_[9],
11598 return _internal_shared_tree_split_min_dtime();
11601 _internal_set_shared_tree_split_min_dtime(value);
11602 SetHasBit(
_impl_._has_bits_[9], 0x00000004U);
11605inline double SatParameters::_internal_shared_tree_split_min_dtime()
const {
11606 ::google::protobuf::internal::TSanRead(&
_impl_);
11607 return _impl_.shared_tree_split_min_dtime_;
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;
11616 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00008000U);
11620 ::google::protobuf::internal::TSanWrite(&
_impl_);
11621 _impl_.enumerate_all_solutions_ =
false;
11622 ClearHasBit(
_impl_._has_bits_[1],
11627 return _internal_enumerate_all_solutions();
11630 _internal_set_enumerate_all_solutions(value);
11631 SetHasBit(
_impl_._has_bits_[1], 0x00008000U);
11634inline bool SatParameters::_internal_enumerate_all_solutions()
const {
11635 ::google::protobuf::internal::TSanRead(&
_impl_);
11636 return _impl_.enumerate_all_solutions_;
11638inline void SatParameters::_internal_set_enumerate_all_solutions(
bool value) {
11639 ::google::protobuf::internal::TSanWrite(&
_impl_);
11640 _impl_.enumerate_all_solutions_ = value;
11645 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000010U);
11649 ::google::protobuf::internal::TSanWrite(&
_impl_);
11650 _impl_.keep_all_feasible_solutions_in_presolve_ =
false;
11651 ClearHasBit(
_impl_._has_bits_[2],
11656 return _internal_keep_all_feasible_solutions_in_presolve();
11659 _internal_set_keep_all_feasible_solutions_in_presolve(value);
11660 SetHasBit(
_impl_._has_bits_[2], 0x00000010U);
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_;
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;
11674 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x02000000U);
11678 ::google::protobuf::internal::TSanWrite(&
_impl_);
11679 _impl_.fill_tightened_domains_in_response_ =
false;
11680 ClearHasBit(
_impl_._has_bits_[1],
11685 return _internal_fill_tightened_domains_in_response();
11688 _internal_set_fill_tightened_domains_in_response(value);
11689 SetHasBit(
_impl_._has_bits_[1], 0x02000000U);
11692inline bool SatParameters::_internal_fill_tightened_domains_in_response()
const {
11693 ::google::protobuf::internal::TSanRead(&
_impl_);
11694 return _impl_.fill_tightened_domains_in_response_;
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;
11703 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00010000U);
11707 ::google::protobuf::internal::TSanWrite(&
_impl_);
11708 _impl_.fill_additional_solutions_in_response_ =
false;
11709 ClearHasBit(
_impl_._has_bits_[2],
11714 return _internal_fill_additional_solutions_in_response();
11717 _internal_set_fill_additional_solutions_in_response(value);
11718 SetHasBit(
_impl_._has_bits_[2], 0x00010000U);
11721inline bool SatParameters::_internal_fill_additional_solutions_in_response()
const {
11722 ::google::protobuf::internal::TSanRead(&
_impl_);
11723 return _impl_.fill_additional_solutions_in_response_;
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;
11732 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000100U);
11736 ::google::protobuf::internal::TSanWrite(&
_impl_);
11737 _impl_.instantiate_all_variables_ =
true;
11738 ClearHasBit(
_impl_._has_bits_[5],
11743 return _internal_instantiate_all_variables();
11746 _internal_set_instantiate_all_variables(value);
11747 SetHasBit(
_impl_._has_bits_[5], 0x00000100U);
11750inline bool SatParameters::_internal_instantiate_all_variables()
const {
11751 ::google::protobuf::internal::TSanRead(&
_impl_);
11752 return _impl_.instantiate_all_variables_;
11754inline void SatParameters::_internal_set_instantiate_all_variables(
bool value) {
11755 ::google::protobuf::internal::TSanWrite(&
_impl_);
11756 _impl_.instantiate_all_variables_ = value;
11761 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000080U);
11765 ::google::protobuf::internal::TSanWrite(&
_impl_);
11766 _impl_.auto_detect_greater_than_at_least_one_of_ =
true;
11767 ClearHasBit(
_impl_._has_bits_[5],
11772 return _internal_auto_detect_greater_than_at_least_one_of();
11775 _internal_set_auto_detect_greater_than_at_least_one_of(value);
11776 SetHasBit(
_impl_._has_bits_[5], 0x00000080U);
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_;
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;
11790 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00020000U);
11794 ::google::protobuf::internal::TSanWrite(&
_impl_);
11795 _impl_.stop_after_first_solution_ =
false;
11796 ClearHasBit(
_impl_._has_bits_[1],
11801 return _internal_stop_after_first_solution();
11804 _internal_set_stop_after_first_solution(value);
11805 SetHasBit(
_impl_._has_bits_[1], 0x00020000U);
11808inline bool SatParameters::_internal_stop_after_first_solution()
const {
11809 ::google::protobuf::internal::TSanRead(&
_impl_);
11810 return _impl_.stop_after_first_solution_;
11812inline void SatParameters::_internal_set_stop_after_first_solution(
bool value) {
11813 ::google::protobuf::internal::TSanWrite(&
_impl_);
11814 _impl_.stop_after_first_solution_ = value;
11819 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x80000000U);
11823 ::google::protobuf::internal::TSanWrite(&
_impl_);
11824 _impl_.stop_after_presolve_ =
false;
11825 ClearHasBit(
_impl_._has_bits_[1],
11830 return _internal_stop_after_presolve();
11833 _internal_set_stop_after_presolve(value);
11834 SetHasBit(
_impl_._has_bits_[1], 0x80000000U);
11837inline bool SatParameters::_internal_stop_after_presolve()
const {
11838 ::google::protobuf::internal::TSanRead(&
_impl_);
11839 return _impl_.stop_after_presolve_;
11841inline void SatParameters::_internal_set_stop_after_presolve(
bool value) {
11842 ::google::protobuf::internal::TSanWrite(&
_impl_);
11843 _impl_.stop_after_presolve_ = value;
11848 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000004U);
11852 ::google::protobuf::internal::TSanWrite(&
_impl_);
11853 _impl_.stop_after_root_propagation_ =
false;
11854 ClearHasBit(
_impl_._has_bits_[3],
11859 return _internal_stop_after_root_propagation();
11862 _internal_set_stop_after_root_propagation(value);
11863 SetHasBit(
_impl_._has_bits_[3], 0x00000004U);
11866inline bool SatParameters::_internal_stop_after_root_propagation()
const {
11867 ::google::protobuf::internal::TSanRead(&
_impl_);
11868 return _impl_.stop_after_root_propagation_;
11870inline void SatParameters::_internal_set_stop_after_root_propagation(
bool value) {
11871 ::google::protobuf::internal::TSanWrite(&
_impl_);
11872 _impl_.stop_after_root_propagation_ = value;
11877 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00080000U);
11881 ::google::protobuf::internal::TSanWrite(&
_impl_);
11882 _impl_.lns_initial_difficulty_ = 0.5;
11883 ClearHasBit(
_impl_._has_bits_[8],
11888 return _internal_lns_initial_difficulty();
11891 _internal_set_lns_initial_difficulty(value);
11892 SetHasBit(
_impl_._has_bits_[8], 0x00080000U);
11895inline double SatParameters::_internal_lns_initial_difficulty()
const {
11896 ::google::protobuf::internal::TSanRead(&
_impl_);
11897 return _impl_.lns_initial_difficulty_;
11899inline void SatParameters::_internal_set_lns_initial_difficulty(
double value) {
11900 ::google::protobuf::internal::TSanWrite(&
_impl_);
11901 _impl_.lns_initial_difficulty_ = value;
11906 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00100000U);
11910 ::google::protobuf::internal::TSanWrite(&
_impl_);
11911 _impl_.lns_initial_deterministic_limit_ = 0.1;
11912 ClearHasBit(
_impl_._has_bits_[8],
11917 return _internal_lns_initial_deterministic_limit();
11920 _internal_set_lns_initial_deterministic_limit(value);
11921 SetHasBit(
_impl_._has_bits_[8], 0x00100000U);
11924inline double SatParameters::_internal_lns_initial_deterministic_limit()
const {
11925 ::google::protobuf::internal::TSanRead(&
_impl_);
11926 return _impl_.lns_initial_deterministic_limit_;
11928inline void SatParameters::_internal_set_lns_initial_deterministic_limit(
double value) {
11929 ::google::protobuf::internal::TSanWrite(&
_impl_);
11930 _impl_.lns_initial_deterministic_limit_ = value;
11935 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000400U);
11939 ::google::protobuf::internal::TSanWrite(&
_impl_);
11941 ClearHasBit(
_impl_._has_bits_[8],
11946 return _internal_use_lns();
11949 _internal_set_use_lns(value);
11950 SetHasBit(
_impl_._has_bits_[8], 0x00000400U);
11953inline bool SatParameters::_internal_use_lns()
const {
11954 ::google::protobuf::internal::TSanRead(&
_impl_);
11957inline void SatParameters::_internal_set_use_lns(
bool value) {
11958 ::google::protobuf::internal::TSanWrite(&
_impl_);
11959 _impl_.use_lns_ = value;
11964 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00100000U);
11968 ::google::protobuf::internal::TSanWrite(&
_impl_);
11969 _impl_.use_lns_only_ =
false;
11970 ClearHasBit(
_impl_._has_bits_[1],
11975 return _internal_use_lns_only();
11978 _internal_set_use_lns_only(value);
11979 SetHasBit(
_impl_._has_bits_[1], 0x00100000U);
11982inline bool SatParameters::_internal_use_lns_only()
const {
11983 ::google::protobuf::internal::TSanRead(&
_impl_);
11984 return _impl_.use_lns_only_;
11986inline void SatParameters::_internal_set_use_lns_only(
bool value) {
11987 ::google::protobuf::internal::TSanWrite(&
_impl_);
11988 _impl_.use_lns_only_ = value;
11993 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x04000000U);
11997 ::google::protobuf::internal::TSanWrite(&
_impl_);
11998 _impl_.solution_pool_size_ = 3;
11999 ClearHasBit(
_impl_._has_bits_[6],
12004 return _internal_solution_pool_size();
12007 _internal_set_solution_pool_size(value);
12008 SetHasBit(
_impl_._has_bits_[6], 0x04000000U);
12011inline ::int32_t SatParameters::_internal_solution_pool_size()
const {
12012 ::google::protobuf::internal::TSanRead(&
_impl_);
12013 return _impl_.solution_pool_size_;
12015inline void SatParameters::_internal_set_solution_pool_size(::int32_t value) {
12016 ::google::protobuf::internal::TSanWrite(&
_impl_);
12017 _impl_.solution_pool_size_ = value;
12022 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000008U);
12026 ::google::protobuf::internal::TSanWrite(&
_impl_);
12027 _impl_.solution_pool_diversity_limit_ = 10;
12028 ClearHasBit(
_impl_._has_bits_[9],
12033 return _internal_solution_pool_diversity_limit();
12036 _internal_set_solution_pool_diversity_limit(value);
12037 SetHasBit(
_impl_._has_bits_[9], 0x00000008U);
12040inline ::int32_t SatParameters::_internal_solution_pool_diversity_limit()
const {
12041 ::google::protobuf::internal::TSanRead(&
_impl_);
12042 return _impl_.solution_pool_diversity_limit_;
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;
12051 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000001U);
12055 ::google::protobuf::internal::TSanWrite(&
_impl_);
12056 _impl_.alternative_pool_size_ = 1;
12057 ClearHasBit(
_impl_._has_bits_[9],
12062 return _internal_alternative_pool_size();
12065 _internal_set_alternative_pool_size(value);
12066 SetHasBit(
_impl_._has_bits_[9], 0x00000001U);
12069inline ::int32_t SatParameters::_internal_alternative_pool_size()
const {
12070 ::google::protobuf::internal::TSanRead(&
_impl_);
12071 return _impl_.alternative_pool_size_;
12073inline void SatParameters::_internal_set_alternative_pool_size(::int32_t value) {
12074 ::google::protobuf::internal::TSanWrite(&
_impl_);
12075 _impl_.alternative_pool_size_ = value;
12080 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00200000U);
12084 ::google::protobuf::internal::TSanWrite(&
_impl_);
12085 _impl_.use_rins_lns_ =
true;
12086 ClearHasBit(
_impl_._has_bits_[5],
12091 return _internal_use_rins_lns();
12094 _internal_set_use_rins_lns(value);
12095 SetHasBit(
_impl_._has_bits_[5], 0x00200000U);
12098inline bool SatParameters::_internal_use_rins_lns()
const {
12099 ::google::protobuf::internal::TSanRead(&
_impl_);
12100 return _impl_.use_rins_lns_;
12102inline void SatParameters::_internal_set_use_rins_lns(
bool value) {
12103 ::google::protobuf::internal::TSanWrite(&
_impl_);
12104 _impl_.use_rins_lns_ = value;
12109 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00008000U);
12113 ::google::protobuf::internal::TSanWrite(&
_impl_);
12114 _impl_.use_feasibility_pump_ =
true;
12115 ClearHasBit(
_impl_._has_bits_[6],
12120 return _internal_use_feasibility_pump();
12123 _internal_set_use_feasibility_pump(value);
12124 SetHasBit(
_impl_._has_bits_[6], 0x00008000U);
12127inline bool SatParameters::_internal_use_feasibility_pump()
const {
12128 ::google::protobuf::internal::TSanRead(&
_impl_);
12129 return _impl_.use_feasibility_pump_;
12131inline void SatParameters::_internal_set_use_feasibility_pump(
bool value) {
12132 ::google::protobuf::internal::TSanWrite(&
_impl_);
12133 _impl_.use_feasibility_pump_ = value;
12138 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x10000000U);
12142 ::google::protobuf::internal::TSanWrite(&
_impl_);
12143 _impl_.use_lb_relax_lns_ =
true;
12144 ClearHasBit(
_impl_._has_bits_[7],
12149 return _internal_use_lb_relax_lns();
12152 _internal_set_use_lb_relax_lns(value);
12153 SetHasBit(
_impl_._has_bits_[7], 0x10000000U);
12156inline bool SatParameters::_internal_use_lb_relax_lns()
const {
12157 ::google::protobuf::internal::TSanRead(&
_impl_);
12158 return _impl_.use_lb_relax_lns_;
12160inline void SatParameters::_internal_set_use_lb_relax_lns(
bool value) {
12161 ::google::protobuf::internal::TSanWrite(&
_impl_);
12162 _impl_.use_lb_relax_lns_ = value;
12167 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00010000U);
12171 ::google::protobuf::internal::TSanWrite(&
_impl_);
12172 _impl_.lb_relax_num_workers_threshold_ = 16;
12173 ClearHasBit(
_impl_._has_bits_[8],
12178 return _internal_lb_relax_num_workers_threshold();
12181 _internal_set_lb_relax_num_workers_threshold(value);
12182 SetHasBit(
_impl_._has_bits_[8], 0x00010000U);
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_;
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;
12196 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00002000U);
12200 ::google::protobuf::internal::TSanWrite(&
_impl_);
12201 _impl_.fp_rounding_ = 2;
12202 ClearHasBit(
_impl_._has_bits_[6],
12207 return _internal_fp_rounding();
12210 _internal_set_fp_rounding(value);
12211 SetHasBit(
_impl_._has_bits_[6], 0x00002000U);
12214inline ::operations_research::sat::SatParameters_FPRoundingMethod SatParameters::_internal_fp_rounding()
const {
12215 ::google::protobuf::internal::TSanRead(&
_impl_);
12219 ::google::protobuf::internal::TSanWrite(&
_impl_);
12221 assert(::google::protobuf::internal::ValidateEnum(
12223 _impl_.fp_rounding_ = value;
12228 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x10000000U);
12232 ::google::protobuf::internal::TSanWrite(&
_impl_);
12233 _impl_.diversify_lns_params_ =
false;
12234 ClearHasBit(
_impl_._has_bits_[1],
12239 return _internal_diversify_lns_params();
12242 _internal_set_diversify_lns_params(value);
12243 SetHasBit(
_impl_._has_bits_[1], 0x10000000U);
12246inline bool SatParameters::_internal_diversify_lns_params()
const {
12247 ::google::protobuf::internal::TSanRead(&
_impl_);
12248 return _impl_.diversify_lns_params_;
12250inline void SatParameters::_internal_set_diversify_lns_params(
bool value) {
12251 ::google::protobuf::internal::TSanWrite(&
_impl_);
12252 _impl_.diversify_lns_params_ = value;
12257 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00200000U);
12261 ::google::protobuf::internal::TSanWrite(&
_impl_);
12262 _impl_.randomize_search_ =
false;
12263 ClearHasBit(
_impl_._has_bits_[1],
12268 return _internal_randomize_search();
12271 _internal_set_randomize_search(value);
12272 SetHasBit(
_impl_._has_bits_[1], 0x00200000U);
12275inline bool SatParameters::_internal_randomize_search()
const {
12276 ::google::protobuf::internal::TSanRead(&
_impl_);
12277 return _impl_.randomize_search_;
12279inline void SatParameters::_internal_set_randomize_search(
bool value) {
12280 ::google::protobuf::internal::TSanWrite(&
_impl_);
12281 _impl_.randomize_search_ = value;
12286 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00080000U);
12290 ::google::protobuf::internal::TSanWrite(&
_impl_);
12291 _impl_.search_random_variable_pool_size_ = ::int64_t{0};
12292 ClearHasBit(
_impl_._has_bits_[1],
12297 return _internal_search_random_variable_pool_size();
12300 _internal_set_search_random_variable_pool_size(value);
12301 SetHasBit(
_impl_._has_bits_[1], 0x00080000U);
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_;
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;
12315 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000010U);
12319 ::google::protobuf::internal::TSanWrite(&
_impl_);
12320 _impl_.push_all_tasks_toward_start_ =
false;
12321 ClearHasBit(
_impl_._has_bits_[3],
12326 return _internal_push_all_tasks_toward_start();
12329 _internal_set_push_all_tasks_toward_start(value);
12330 SetHasBit(
_impl_._has_bits_[3], 0x00000010U);
12333inline bool SatParameters::_internal_push_all_tasks_toward_start()
const {
12334 ::google::protobuf::internal::TSanRead(&
_impl_);
12335 return _impl_.push_all_tasks_toward_start_;
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;
12344 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00400000U);
12348 ::google::protobuf::internal::TSanWrite(&
_impl_);
12349 _impl_.use_optional_variables_ =
false;
12350 ClearHasBit(
_impl_._has_bits_[1],
12355 return _internal_use_optional_variables();
12358 _internal_set_use_optional_variables(value);
12359 SetHasBit(
_impl_._has_bits_[1], 0x00400000U);
12362inline bool SatParameters::_internal_use_optional_variables()
const {
12363 ::google::protobuf::internal::TSanRead(&
_impl_);
12364 return _impl_.use_optional_variables_;
12366inline void SatParameters::_internal_set_use_optional_variables(
bool value) {
12367 ::google::protobuf::internal::TSanWrite(&
_impl_);
12368 _impl_.use_optional_variables_ = value;
12373 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00001000U);
12377 ::google::protobuf::internal::TSanWrite(&
_impl_);
12378 _impl_.use_exact_lp_reason_ =
true;
12379 ClearHasBit(
_impl_._has_bits_[5],
12384 return _internal_use_exact_lp_reason();
12387 _internal_set_use_exact_lp_reason(value);
12388 SetHasBit(
_impl_._has_bits_[5], 0x00001000U);
12391inline bool SatParameters::_internal_use_exact_lp_reason()
const {
12392 ::google::protobuf::internal::TSanRead(&
_impl_);
12393 return _impl_.use_exact_lp_reason_;
12395inline void SatParameters::_internal_set_use_exact_lp_reason(
bool value) {
12396 ::google::protobuf::internal::TSanWrite(&
_impl_);
12397 _impl_.use_exact_lp_reason_ = value;
12402 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x04000000U);
12406 ::google::protobuf::internal::TSanWrite(&
_impl_);
12407 _impl_.use_combined_no_overlap_ =
false;
12408 ClearHasBit(
_impl_._has_bits_[1],
12413 return _internal_use_combined_no_overlap();
12416 _internal_set_use_combined_no_overlap(value);
12417 SetHasBit(
_impl_._has_bits_[1], 0x04000000U);
12420inline bool SatParameters::_internal_use_combined_no_overlap()
const {
12421 ::google::protobuf::internal::TSanRead(&
_impl_);
12422 return _impl_.use_combined_no_overlap_;
12424inline void SatParameters::_internal_set_use_combined_no_overlap(
bool value) {
12425 ::google::protobuf::internal::TSanWrite(&
_impl_);
12426 _impl_.use_combined_no_overlap_ = value;
12431 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000002U);
12435 ::google::protobuf::internal::TSanWrite(&
_impl_);
12436 _impl_.at_most_one_max_expansion_size_ = 3;
12437 ClearHasBit(
_impl_._has_bits_[8],
12442 return _internal_at_most_one_max_expansion_size();
12445 _internal_set_at_most_one_max_expansion_size(value);
12446 SetHasBit(
_impl_._has_bits_[8], 0x00000002U);
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_;
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;
12460 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000001U);
12464 ::google::protobuf::internal::TSanWrite(&
_impl_);
12465 _impl_.catch_sigint_signal_ =
true;
12466 ClearHasBit(
_impl_._has_bits_[6],
12471 return _internal_catch_sigint_signal();
12474 _internal_set_catch_sigint_signal(value);
12475 SetHasBit(
_impl_._has_bits_[6], 0x00000001U);
12478inline bool SatParameters::_internal_catch_sigint_signal()
const {
12479 ::google::protobuf::internal::TSanRead(&
_impl_);
12480 return _impl_.catch_sigint_signal_;
12482inline void SatParameters::_internal_set_catch_sigint_signal(
bool value) {
12483 ::google::protobuf::internal::TSanWrite(&
_impl_);
12484 _impl_.catch_sigint_signal_ = value;
12489 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000002U);
12493 ::google::protobuf::internal::TSanWrite(&
_impl_);
12494 _impl_.use_implied_bounds_ =
true;
12495 ClearHasBit(
_impl_._has_bits_[6],
12500 return _internal_use_implied_bounds();
12503 _internal_set_use_implied_bounds(value);
12504 SetHasBit(
_impl_._has_bits_[6], 0x00000002U);
12507inline bool SatParameters::_internal_use_implied_bounds()
const {
12508 ::google::protobuf::internal::TSanRead(&
_impl_);
12509 return _impl_.use_implied_bounds_;
12511inline void SatParameters::_internal_set_use_implied_bounds(
bool value) {
12512 ::google::protobuf::internal::TSanWrite(&
_impl_);
12513 _impl_.use_implied_bounds_ = value;
12518 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000040U);
12522 ::google::protobuf::internal::TSanWrite(&
_impl_);
12523 _impl_.polish_lp_solution_ =
false;
12524 ClearHasBit(
_impl_._has_bits_[2],
12529 return _internal_polish_lp_solution();
12532 _internal_set_polish_lp_solution(value);
12533 SetHasBit(
_impl_._has_bits_[2], 0x00000040U);
12536inline bool SatParameters::_internal_polish_lp_solution()
const {
12537 ::google::protobuf::internal::TSanRead(&
_impl_);
12538 return _impl_.polish_lp_solution_;
12540inline void SatParameters::_internal_set_polish_lp_solution(
bool value) {
12541 ::google::protobuf::internal::TSanWrite(&
_impl_);
12542 _impl_.polish_lp_solution_ = value;
12547 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x04000000U);
12551 ::google::protobuf::internal::TSanWrite(&
_impl_);
12552 _impl_.lp_primal_tolerance_ = 1e-07;
12553 ClearHasBit(
_impl_._has_bits_[7],
12558 return _internal_lp_primal_tolerance();
12561 _internal_set_lp_primal_tolerance(value);
12562 SetHasBit(
_impl_._has_bits_[7], 0x04000000U);
12565inline double SatParameters::_internal_lp_primal_tolerance()
const {
12566 ::google::protobuf::internal::TSanRead(&
_impl_);
12567 return _impl_.lp_primal_tolerance_;
12569inline void SatParameters::_internal_set_lp_primal_tolerance(
double value) {
12570 ::google::protobuf::internal::TSanWrite(&
_impl_);
12571 _impl_.lp_primal_tolerance_ = value;
12576 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00000001U);
12580 ::google::protobuf::internal::TSanWrite(&
_impl_);
12581 _impl_.lp_dual_tolerance_ = 1e-07;
12582 ClearHasBit(
_impl_._has_bits_[8],
12587 return _internal_lp_dual_tolerance();
12590 _internal_set_lp_dual_tolerance(value);
12591 SetHasBit(
_impl_._has_bits_[8], 0x00000001U);
12594inline double SatParameters::_internal_lp_dual_tolerance()
const {
12595 ::google::protobuf::internal::TSanRead(&
_impl_);
12596 return _impl_.lp_dual_tolerance_;
12598inline void SatParameters::_internal_set_lp_dual_tolerance(
double value) {
12599 ::google::protobuf::internal::TSanWrite(&
_impl_);
12600 _impl_.lp_dual_tolerance_ = value;
12605 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00100000U);
12609 ::google::protobuf::internal::TSanWrite(&
_impl_);
12610 _impl_.convert_intervals_ =
true;
12611 ClearHasBit(
_impl_._has_bits_[6],
12616 return _internal_convert_intervals();
12619 _internal_set_convert_intervals(value);
12620 SetHasBit(
_impl_._has_bits_[6], 0x00100000U);
12623inline bool SatParameters::_internal_convert_intervals()
const {
12624 ::google::protobuf::internal::TSanRead(&
_impl_);
12625 return _impl_.convert_intervals_;
12627inline void SatParameters::_internal_set_convert_intervals(
bool value) {
12628 ::google::protobuf::internal::TSanWrite(&
_impl_);
12629 _impl_.convert_intervals_ = value;
12634 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00800000U);
12638 ::google::protobuf::internal::TSanWrite(&
_impl_);
12639 _impl_.symmetry_level_ = 2;
12640 ClearHasBit(
_impl_._has_bits_[6],
12645 return _internal_symmetry_level();
12648 _internal_set_symmetry_level(value);
12649 SetHasBit(
_impl_._has_bits_[6], 0x00800000U);
12652inline ::int32_t SatParameters::_internal_symmetry_level()
const {
12653 ::google::protobuf::internal::TSanRead(&
_impl_);
12654 return _impl_.symmetry_level_;
12656inline void SatParameters::_internal_set_symmetry_level(::int32_t value) {
12657 ::google::protobuf::internal::TSanWrite(&
_impl_);
12658 _impl_.symmetry_level_ = value;
12663 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00080000U);
12667 ::google::protobuf::internal::TSanWrite(&
_impl_);
12668 _impl_.use_symmetry_in_lp_ =
false;
12669 ClearHasBit(
_impl_._has_bits_[3],
12674 return _internal_use_symmetry_in_lp();
12677 _internal_set_use_symmetry_in_lp(value);
12678 SetHasBit(
_impl_._has_bits_[3], 0x00080000U);
12681inline bool SatParameters::_internal_use_symmetry_in_lp()
const {
12682 ::google::protobuf::internal::TSanRead(&
_impl_);
12683 return _impl_.use_symmetry_in_lp_;
12685inline void SatParameters::_internal_set_use_symmetry_in_lp(
bool value) {
12686 ::google::protobuf::internal::TSanWrite(&
_impl_);
12687 _impl_.use_symmetry_in_lp_ = value;
12692 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00100000U);
12696 ::google::protobuf::internal::TSanWrite(&
_impl_);
12697 _impl_.keep_symmetry_in_presolve_ =
false;
12698 ClearHasBit(
_impl_._has_bits_[3],
12703 return _internal_keep_symmetry_in_presolve();
12706 _internal_set_keep_symmetry_in_presolve(value);
12707 SetHasBit(
_impl_._has_bits_[3], 0x00100000U);
12710inline bool SatParameters::_internal_keep_symmetry_in_presolve()
const {
12711 ::google::protobuf::internal::TSanRead(&
_impl_);
12712 return _impl_.keep_symmetry_in_presolve_;
12714inline void SatParameters::_internal_set_keep_symmetry_in_presolve(
bool value) {
12715 ::google::protobuf::internal::TSanWrite(&
_impl_);
12716 _impl_.keep_symmetry_in_presolve_ = value;
12721 bool value = CheckHasBit(
_impl_._has_bits_[8], 0x00040000U);
12725 ::google::protobuf::internal::TSanWrite(&
_impl_);
12726 _impl_.symmetry_detection_deterministic_time_limit_ = 1;
12727 ClearHasBit(
_impl_._has_bits_[8],
12732 return _internal_symmetry_detection_deterministic_time_limit();
12735 _internal_set_symmetry_detection_deterministic_time_limit(value);
12736 SetHasBit(
_impl_._has_bits_[8], 0x00040000U);
12739inline double SatParameters::_internal_symmetry_detection_deterministic_time_limit()
const {
12740 ::google::protobuf::internal::TSanRead(&
_impl_);
12741 return _impl_.symmetry_detection_deterministic_time_limit_;
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;
12750 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000800U);
12754 ::google::protobuf::internal::TSanWrite(&
_impl_);
12755 _impl_.new_linear_propagation_ =
true;
12756 ClearHasBit(
_impl_._has_bits_[7],
12761 return _internal_new_linear_propagation();
12764 _internal_set_new_linear_propagation(value);
12765 SetHasBit(
_impl_._has_bits_[7], 0x00000800U);
12768inline bool SatParameters::_internal_new_linear_propagation()
const {
12769 ::google::protobuf::internal::TSanRead(&
_impl_);
12770 return _impl_.new_linear_propagation_;
12772inline void SatParameters::_internal_set_new_linear_propagation(
bool value) {
12773 ::google::protobuf::internal::TSanWrite(&
_impl_);
12774 _impl_.new_linear_propagation_ = value;
12779 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00100000U);
12783 ::google::protobuf::internal::TSanWrite(&
_impl_);
12784 _impl_.linear_split_size_ = 100;
12785 ClearHasBit(
_impl_._has_bits_[7],
12790 return _internal_linear_split_size();
12793 _internal_set_linear_split_size(value);
12794 SetHasBit(
_impl_._has_bits_[7], 0x00100000U);
12797inline ::int32_t SatParameters::_internal_linear_split_size()
const {
12798 ::google::protobuf::internal::TSanRead(&
_impl_);
12799 return _impl_.linear_split_size_;
12801inline void SatParameters::_internal_set_linear_split_size(::int32_t value) {
12802 ::google::protobuf::internal::TSanWrite(&
_impl_);
12803 _impl_.linear_split_size_ = value;
12808 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000008U);
12812 ::google::protobuf::internal::TSanWrite(&
_impl_);
12813 _impl_.linearization_level_ = 1;
12814 ClearHasBit(
_impl_._has_bits_[5],
12819 return _internal_linearization_level();
12822 _internal_set_linearization_level(value);
12823 SetHasBit(
_impl_._has_bits_[5], 0x00000008U);
12826inline ::int32_t SatParameters::_internal_linearization_level()
const {
12827 ::google::protobuf::internal::TSanRead(&
_impl_);
12828 return _impl_.linearization_level_;
12830inline void SatParameters::_internal_set_linearization_level(::int32_t value) {
12831 ::google::protobuf::internal::TSanWrite(&
_impl_);
12832 _impl_.linearization_level_ = value;
12837 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000400U);
12841 ::google::protobuf::internal::TSanWrite(&
_impl_);
12842 _impl_.boolean_encoding_level_ = 1;
12843 ClearHasBit(
_impl_._has_bits_[5],
12848 return _internal_boolean_encoding_level();
12851 _internal_set_boolean_encoding_level(value);
12852 SetHasBit(
_impl_._has_bits_[5], 0x00000400U);
12855inline ::int32_t SatParameters::_internal_boolean_encoding_level()
const {
12856 ::google::protobuf::internal::TSanRead(&
_impl_);
12857 return _impl_.boolean_encoding_level_;
12859inline void SatParameters::_internal_set_boolean_encoding_level(::int32_t value) {
12860 ::google::protobuf::internal::TSanWrite(&
_impl_);
12861 _impl_.boolean_encoding_level_ = value;
12866 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x02000000U);
12870 ::google::protobuf::internal::TSanWrite(&
_impl_);
12871 _impl_.max_domain_size_when_encoding_eq_neq_constraints_ = 16;
12872 ClearHasBit(
_impl_._has_bits_[6],
12877 return _internal_max_domain_size_when_encoding_eq_neq_constraints();
12880 _internal_set_max_domain_size_when_encoding_eq_neq_constraints(value);
12881 SetHasBit(
_impl_._has_bits_[6], 0x02000000U);
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_;
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;
12895 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000010U);
12899 ::google::protobuf::internal::TSanWrite(&
_impl_);
12900 _impl_.max_num_cuts_ = 10000;
12901 ClearHasBit(
_impl_._has_bits_[5],
12906 return _internal_max_num_cuts();
12909 _internal_set_max_num_cuts(value);
12910 SetHasBit(
_impl_._has_bits_[5], 0x00000010U);
12913inline ::int32_t SatParameters::_internal_max_num_cuts()
const {
12914 ::google::protobuf::internal::TSanRead(&
_impl_);
12915 return _impl_.max_num_cuts_;
12917inline void SatParameters::_internal_set_max_num_cuts(::int32_t value) {
12918 ::google::protobuf::internal::TSanWrite(&
_impl_);
12919 _impl_.max_num_cuts_ = value;
12924 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x20000000U);
12928 ::google::protobuf::internal::TSanWrite(&
_impl_);
12930 ClearHasBit(
_impl_._has_bits_[6],
12935 return _internal_cut_level();
12938 _internal_set_cut_level(value);
12939 SetHasBit(
_impl_._has_bits_[6], 0x20000000U);
12942inline ::int32_t SatParameters::_internal_cut_level()
const {
12943 ::google::protobuf::internal::TSanRead(&
_impl_);
12944 return _impl_.cut_level_;
12946inline void SatParameters::_internal_set_cut_level(::int32_t value) {
12947 ::google::protobuf::internal::TSanWrite(&
_impl_);
12948 _impl_.cut_level_ = value;
12953 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00010000U);
12957 ::google::protobuf::internal::TSanWrite(&
_impl_);
12958 _impl_.only_add_cuts_at_level_zero_ =
false;
12959 ClearHasBit(
_impl_._has_bits_[1],
12964 return _internal_only_add_cuts_at_level_zero();
12967 _internal_set_only_add_cuts_at_level_zero(value);
12968 SetHasBit(
_impl_._has_bits_[1], 0x00010000U);
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_;
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;
12982 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00040000U);
12986 ::google::protobuf::internal::TSanWrite(&
_impl_);
12987 _impl_.add_objective_cut_ =
false;
12988 ClearHasBit(
_impl_._has_bits_[2],
12993 return _internal_add_objective_cut();
12996 _internal_set_add_objective_cut(value);
12997 SetHasBit(
_impl_._has_bits_[2], 0x00040000U);
13000inline bool SatParameters::_internal_add_objective_cut()
const {
13001 ::google::protobuf::internal::TSanRead(&
_impl_);
13002 return _impl_.add_objective_cut_;
13004inline void SatParameters::_internal_set_add_objective_cut(
bool value) {
13005 ::google::protobuf::internal::TSanWrite(&
_impl_);
13006 _impl_.add_objective_cut_ = value;
13011 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00080000U);
13015 ::google::protobuf::internal::TSanWrite(&
_impl_);
13016 _impl_.add_cg_cuts_ =
true;
13017 ClearHasBit(
_impl_._has_bits_[5],
13022 return _internal_add_cg_cuts();
13025 _internal_set_add_cg_cuts(value);
13026 SetHasBit(
_impl_._has_bits_[5], 0x00080000U);
13029inline bool SatParameters::_internal_add_cg_cuts()
const {
13030 ::google::protobuf::internal::TSanRead(&
_impl_);
13031 return _impl_.add_cg_cuts_;
13033inline void SatParameters::_internal_set_add_cg_cuts(
bool value) {
13034 ::google::protobuf::internal::TSanWrite(&
_impl_);
13035 _impl_.add_cg_cuts_ = value;
13040 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00100000U);
13044 ::google::protobuf::internal::TSanWrite(&
_impl_);
13045 _impl_.add_mir_cuts_ =
true;
13046 ClearHasBit(
_impl_._has_bits_[5],
13051 return _internal_add_mir_cuts();
13054 _internal_set_add_mir_cuts(value);
13055 SetHasBit(
_impl_._has_bits_[5], 0x00100000U);
13058inline bool SatParameters::_internal_add_mir_cuts()
const {
13059 ::google::protobuf::internal::TSanRead(&
_impl_);
13060 return _impl_.add_mir_cuts_;
13062inline void SatParameters::_internal_set_add_mir_cuts(
bool value) {
13063 ::google::protobuf::internal::TSanWrite(&
_impl_);
13064 _impl_.add_mir_cuts_ = value;
13069 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00020000U);
13073 ::google::protobuf::internal::TSanWrite(&
_impl_);
13074 _impl_.add_zero_half_cuts_ =
true;
13075 ClearHasBit(
_impl_._has_bits_[6],
13080 return _internal_add_zero_half_cuts();
13083 _internal_set_add_zero_half_cuts(value);
13084 SetHasBit(
_impl_._has_bits_[6], 0x00020000U);
13087inline bool SatParameters::_internal_add_zero_half_cuts()
const {
13088 ::google::protobuf::internal::TSanRead(&
_impl_);
13089 return _impl_.add_zero_half_cuts_;
13091inline void SatParameters::_internal_set_add_zero_half_cuts(
bool value) {
13092 ::google::protobuf::internal::TSanWrite(&
_impl_);
13093 _impl_.add_zero_half_cuts_ = value;
13098 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00080000U);
13102 ::google::protobuf::internal::TSanWrite(&
_impl_);
13103 _impl_.add_clique_cuts_ =
true;
13104 ClearHasBit(
_impl_._has_bits_[6],
13109 return _internal_add_clique_cuts();
13112 _internal_set_add_clique_cuts(value);
13113 SetHasBit(
_impl_._has_bits_[6], 0x00080000U);
13116inline bool SatParameters::_internal_add_clique_cuts()
const {
13117 ::google::protobuf::internal::TSanRead(&
_impl_);
13118 return _impl_.add_clique_cuts_;
13120inline void SatParameters::_internal_set_add_clique_cuts(
bool value) {
13121 ::google::protobuf::internal::TSanWrite(&
_impl_);
13122 _impl_.add_clique_cuts_ = value;
13127 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x80000000U);
13131 ::google::protobuf::internal::TSanWrite(&
_impl_);
13132 _impl_.add_rlt_cuts_ =
true;
13133 ClearHasBit(
_impl_._has_bits_[7],
13138 return _internal_add_rlt_cuts();
13141 _internal_set_add_rlt_cuts(value);
13142 SetHasBit(
_impl_._has_bits_[7], 0x80000000U);
13145inline bool SatParameters::_internal_add_rlt_cuts()
const {
13146 ::google::protobuf::internal::TSanRead(&
_impl_);
13147 return _impl_.add_rlt_cuts_;
13149inline void SatParameters::_internal_set_add_rlt_cuts(
bool value) {
13150 ::google::protobuf::internal::TSanWrite(&
_impl_);
13151 _impl_.add_rlt_cuts_ = value;
13156 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000040U);
13160 ::google::protobuf::internal::TSanWrite(&
_impl_);
13161 _impl_.max_all_diff_cut_size_ = 64;
13162 ClearHasBit(
_impl_._has_bits_[6],
13167 return _internal_max_all_diff_cut_size();
13170 _internal_set_max_all_diff_cut_size(value);
13171 SetHasBit(
_impl_._has_bits_[6], 0x00000040U);
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_;
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;
13185 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000004U);
13189 ::google::protobuf::internal::TSanWrite(&
_impl_);
13190 _impl_.add_lin_max_cuts_ =
true;
13191 ClearHasBit(
_impl_._has_bits_[6],
13196 return _internal_add_lin_max_cuts();
13199 _internal_set_add_lin_max_cuts(value);
13200 SetHasBit(
_impl_._has_bits_[6], 0x00000004U);
13203inline bool SatParameters::_internal_add_lin_max_cuts()
const {
13204 ::google::protobuf::internal::TSanRead(&
_impl_);
13205 return _impl_.add_lin_max_cuts_;
13207inline void SatParameters::_internal_set_add_lin_max_cuts(
bool value) {
13208 ::google::protobuf::internal::TSanWrite(&
_impl_);
13209 _impl_.add_lin_max_cuts_ = value;
13214 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00010000U);
13218 ::google::protobuf::internal::TSanWrite(&
_impl_);
13219 _impl_.max_integer_rounding_scaling_ = 600;
13220 ClearHasBit(
_impl_._has_bits_[5],
13225 return _internal_max_integer_rounding_scaling();
13228 _internal_set_max_integer_rounding_scaling(value);
13229 SetHasBit(
_impl_._has_bits_[5], 0x00010000U);
13232inline ::int32_t SatParameters::_internal_max_integer_rounding_scaling()
const {
13233 ::google::protobuf::internal::TSanRead(&
_impl_);
13234 return _impl_.max_integer_rounding_scaling_;
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;
13243 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00002000U);
13247 ::google::protobuf::internal::TSanWrite(&
_impl_);
13248 _impl_.add_lp_constraints_lazily_ =
true;
13249 ClearHasBit(
_impl_._has_bits_[5],
13254 return _internal_add_lp_constraints_lazily();
13257 _internal_set_add_lp_constraints_lazily(value);
13258 SetHasBit(
_impl_._has_bits_[5], 0x00002000U);
13261inline bool SatParameters::_internal_add_lp_constraints_lazily()
const {
13262 ::google::protobuf::internal::TSanRead(&
_impl_);
13263 return _impl_.add_lp_constraints_lazily_;
13265inline void SatParameters::_internal_set_add_lp_constraints_lazily(
bool value) {
13266 ::google::protobuf::internal::TSanWrite(&
_impl_);
13267 _impl_.add_lp_constraints_lazily_ = value;
13272 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000040U);
13276 ::google::protobuf::internal::TSanWrite(&
_impl_);
13277 _impl_.root_lp_iterations_ = 2000;
13278 ClearHasBit(
_impl_._has_bits_[7],
13283 return _internal_root_lp_iterations();
13286 _internal_set_root_lp_iterations(value);
13287 SetHasBit(
_impl_._has_bits_[7], 0x00000040U);
13290inline ::int32_t SatParameters::_internal_root_lp_iterations()
const {
13291 ::google::protobuf::internal::TSanRead(&
_impl_);
13292 return _impl_.root_lp_iterations_;
13294inline void SatParameters::_internal_set_root_lp_iterations(::int32_t value) {
13295 ::google::protobuf::internal::TSanWrite(&
_impl_);
13296 _impl_.root_lp_iterations_ = value;
13301 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00020000U);
13305 ::google::protobuf::internal::TSanWrite(&
_impl_);
13306 _impl_.min_orthogonality_for_lp_constraints_ = 0.05;
13307 ClearHasBit(
_impl_._has_bits_[5],
13312 return _internal_min_orthogonality_for_lp_constraints();
13315 _internal_set_min_orthogonality_for_lp_constraints(value);
13316 SetHasBit(
_impl_._has_bits_[5], 0x00020000U);
13319inline double SatParameters::_internal_min_orthogonality_for_lp_constraints()
const {
13320 ::google::protobuf::internal::TSanRead(&
_impl_);
13321 return _impl_.min_orthogonality_for_lp_constraints_;
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;
13330 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000100U);
13334 ::google::protobuf::internal::TSanWrite(&
_impl_);
13335 _impl_.max_cut_rounds_at_level_zero_ = 1;
13336 ClearHasBit(
_impl_._has_bits_[6],
13341 return _internal_max_cut_rounds_at_level_zero();
13344 _internal_set_max_cut_rounds_at_level_zero(value);
13345 SetHasBit(
_impl_._has_bits_[6], 0x00000100U);
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_;
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;
13359 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00400000U);
13363 ::google::protobuf::internal::TSanWrite(&
_impl_);
13364 _impl_.max_consecutive_inactive_count_ = 100;
13365 ClearHasBit(
_impl_._has_bits_[5],
13370 return _internal_max_consecutive_inactive_count();
13373 _internal_set_max_consecutive_inactive_count(value);
13374 SetHasBit(
_impl_._has_bits_[5], 0x00400000U);
13377inline ::int32_t SatParameters::_internal_max_consecutive_inactive_count()
const {
13378 ::google::protobuf::internal::TSanRead(&
_impl_);
13379 return _impl_.max_consecutive_inactive_count_;
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;
13388 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000200U);
13392 ::google::protobuf::internal::TSanWrite(&
_impl_);
13393 _impl_.cut_max_active_count_value_ = 10000000000;
13394 ClearHasBit(
_impl_._has_bits_[6],
13399 return _internal_cut_max_active_count_value();
13402 _internal_set_cut_max_active_count_value(value);
13403 SetHasBit(
_impl_._has_bits_[6], 0x00000200U);
13406inline double SatParameters::_internal_cut_max_active_count_value()
const {
13407 ::google::protobuf::internal::TSanRead(&
_impl_);
13408 return _impl_.cut_max_active_count_value_;
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;
13417 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00000400U);
13421 ::google::protobuf::internal::TSanWrite(&
_impl_);
13422 _impl_.cut_active_count_decay_ = 0.8;
13423 ClearHasBit(
_impl_._has_bits_[6],
13428 return _internal_cut_active_count_decay();
13431 _internal_set_cut_active_count_decay(value);
13432 SetHasBit(
_impl_._has_bits_[6], 0x00000400U);
13435inline double SatParameters::_internal_cut_active_count_decay()
const {
13436 ::google::protobuf::internal::TSanRead(&
_impl_);
13437 return _impl_.cut_active_count_decay_;
13439inline void SatParameters::_internal_set_cut_active_count_decay(
double value) {
13440 ::google::protobuf::internal::TSanWrite(&
_impl_);
13441 _impl_.cut_active_count_decay_ = value;
13446 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00001000U);
13450 ::google::protobuf::internal::TSanWrite(&
_impl_);
13451 _impl_.cut_cleanup_target_ = 1000;
13452 ClearHasBit(
_impl_._has_bits_[6],
13457 return _internal_cut_cleanup_target();
13460 _internal_set_cut_cleanup_target(value);
13461 SetHasBit(
_impl_._has_bits_[6], 0x00001000U);
13464inline ::int32_t SatParameters::_internal_cut_cleanup_target()
const {
13465 ::google::protobuf::internal::TSanRead(&
_impl_);
13466 return _impl_.cut_cleanup_target_;
13468inline void SatParameters::_internal_set_cut_cleanup_target(::int32_t value) {
13469 ::google::protobuf::internal::TSanWrite(&
_impl_);
13470 _impl_.cut_cleanup_target_ = value;
13475 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x02000000U);
13479 ::google::protobuf::internal::TSanWrite(&
_impl_);
13480 _impl_.new_constraints_batch_size_ = 50;
13481 ClearHasBit(
_impl_._has_bits_[5],
13486 return _internal_new_constraints_batch_size();
13489 _internal_set_new_constraints_batch_size(value);
13490 SetHasBit(
_impl_._has_bits_[5], 0x02000000U);
13493inline ::int32_t SatParameters::_internal_new_constraints_batch_size()
const {
13494 ::google::protobuf::internal::TSanRead(&
_impl_);
13495 return _impl_.new_constraints_batch_size_;
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;
13504 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00000040U);
13508 ::google::protobuf::internal::TSanWrite(&
_impl_);
13509 _impl_.exploit_integer_lp_solution_ =
true;
13510 ClearHasBit(
_impl_._has_bits_[5],
13515 return _internal_exploit_integer_lp_solution();
13518 _internal_set_exploit_integer_lp_solution(value);
13519 SetHasBit(
_impl_._has_bits_[5], 0x00000040U);
13522inline bool SatParameters::_internal_exploit_integer_lp_solution()
const {
13523 ::google::protobuf::internal::TSanRead(&
_impl_);
13524 return _impl_.exploit_integer_lp_solution_;
13526inline void SatParameters::_internal_set_exploit_integer_lp_solution(
bool value) {
13527 ::google::protobuf::internal::TSanWrite(&
_impl_);
13528 _impl_.exploit_integer_lp_solution_ = value;
13533 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x00040000U);
13537 ::google::protobuf::internal::TSanWrite(&
_impl_);
13538 _impl_.exploit_all_lp_solution_ =
true;
13539 ClearHasBit(
_impl_._has_bits_[5],
13544 return _internal_exploit_all_lp_solution();
13547 _internal_set_exploit_all_lp_solution(value);
13548 SetHasBit(
_impl_._has_bits_[5], 0x00040000U);
13551inline bool SatParameters::_internal_exploit_all_lp_solution()
const {
13552 ::google::protobuf::internal::TSanRead(&
_impl_);
13553 return _impl_.exploit_all_lp_solution_;
13555inline void SatParameters::_internal_set_exploit_all_lp_solution(
bool value) {
13556 ::google::protobuf::internal::TSanWrite(&
_impl_);
13557 _impl_.exploit_all_lp_solution_ = value;
13562 bool value = CheckHasBit(
_impl_._has_bits_[1], 0x00800000U);
13566 ::google::protobuf::internal::TSanWrite(&
_impl_);
13567 _impl_.exploit_best_solution_ =
false;
13568 ClearHasBit(
_impl_._has_bits_[1],
13573 return _internal_exploit_best_solution();
13576 _internal_set_exploit_best_solution(value);
13577 SetHasBit(
_impl_._has_bits_[1], 0x00800000U);
13580inline bool SatParameters::_internal_exploit_best_solution()
const {
13581 ::google::protobuf::internal::TSanRead(&
_impl_);
13582 return _impl_.exploit_best_solution_;
13584inline void SatParameters::_internal_set_exploit_best_solution(
bool value) {
13585 ::google::protobuf::internal::TSanWrite(&
_impl_);
13586 _impl_.exploit_best_solution_ = value;
13591 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x00000001U);
13595 ::google::protobuf::internal::TSanWrite(&
_impl_);
13596 _impl_.exploit_relaxation_solution_ =
false;
13597 ClearHasBit(
_impl_._has_bits_[2],
13602 return _internal_exploit_relaxation_solution();
13605 _internal_set_exploit_relaxation_solution(value);
13606 SetHasBit(
_impl_._has_bits_[2], 0x00000001U);
13609inline bool SatParameters::_internal_exploit_relaxation_solution()
const {
13610 ::google::protobuf::internal::TSanRead(&
_impl_);
13611 return _impl_.exploit_relaxation_solution_;
13613inline void SatParameters::_internal_set_exploit_relaxation_solution(
bool value) {
13614 ::google::protobuf::internal::TSanWrite(&
_impl_);
13615 _impl_.exploit_relaxation_solution_ = value;
13620 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x80000000U);
13624 ::google::protobuf::internal::TSanWrite(&
_impl_);
13625 _impl_.exploit_objective_ =
true;
13626 ClearHasBit(
_impl_._has_bits_[5],
13631 return _internal_exploit_objective();
13634 _internal_set_exploit_objective(value);
13635 SetHasBit(
_impl_._has_bits_[5], 0x80000000U);
13638inline bool SatParameters::_internal_exploit_objective()
const {
13639 ::google::protobuf::internal::TSanRead(&
_impl_);
13640 return _impl_.exploit_objective_;
13642inline void SatParameters::_internal_set_exploit_objective(
bool value) {
13643 ::google::protobuf::internal::TSanWrite(&
_impl_);
13644 _impl_.exploit_objective_ = value;
13649 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000100U);
13653 ::google::protobuf::internal::TSanWrite(&
_impl_);
13654 _impl_.detect_linearized_product_ =
false;
13655 ClearHasBit(
_impl_._has_bits_[3],
13660 return _internal_detect_linearized_product();
13663 _internal_set_detect_linearized_product(value);
13664 SetHasBit(
_impl_._has_bits_[3], 0x00000100U);
13667inline bool SatParameters::_internal_detect_linearized_product()
const {
13668 ::google::protobuf::internal::TSanRead(&
_impl_);
13669 return _impl_.detect_linearized_product_;
13671inline void SatParameters::_internal_set_detect_linearized_product(
bool value) {
13672 ::google::protobuf::internal::TSanWrite(&
_impl_);
13673 _impl_.detect_linearized_product_ = value;
13678 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x80000000U);
13682 ::google::protobuf::internal::TSanWrite(&
_impl_);
13683 _impl_.use_new_integer_conflict_resolution_ =
false;
13684 ClearHasBit(
_impl_._has_bits_[3],
13689 return _internal_use_new_integer_conflict_resolution();
13692 _internal_set_use_new_integer_conflict_resolution(value);
13693 SetHasBit(
_impl_._has_bits_[3], 0x80000000U);
13696inline bool SatParameters::_internal_use_new_integer_conflict_resolution()
const {
13697 ::google::protobuf::internal::TSanRead(&
_impl_);
13698 return _impl_.use_new_integer_conflict_resolution_;
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;
13707 bool value = CheckHasBit(
_impl_._has_bits_[9], 0x00000100U);
13711 ::google::protobuf::internal::TSanWrite(&
_impl_);
13712 _impl_.create_1uip_boolean_during_icr_ =
true;
13713 ClearHasBit(
_impl_._has_bits_[9],
13718 return _internal_create_1uip_boolean_during_icr();
13721 _internal_set_create_1uip_boolean_during_icr(value);
13722 SetHasBit(
_impl_._has_bits_[9], 0x00000100U);
13725inline bool SatParameters::_internal_create_1uip_boolean_during_icr()
const {
13726 ::google::protobuf::internal::TSanRead(&
_impl_);
13727 return _impl_.create_1uip_boolean_during_icr_;
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;
13736 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x01000000U);
13740 ::google::protobuf::internal::TSanWrite(&
_impl_);
13741 _impl_.mip_max_bound_ = 10000000;
13742 ClearHasBit(
_impl_._has_bits_[5],
13747 return _internal_mip_max_bound();
13750 _internal_set_mip_max_bound(value);
13751 SetHasBit(
_impl_._has_bits_[5], 0x01000000U);
13754inline double SatParameters::_internal_mip_max_bound()
const {
13755 ::google::protobuf::internal::TSanRead(&
_impl_);
13756 return _impl_.mip_max_bound_;
13758inline void SatParameters::_internal_set_mip_max_bound(
double value) {
13759 ::google::protobuf::internal::TSanWrite(&
_impl_);
13760 _impl_.mip_max_bound_ = value;
13765 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x08000000U);
13769 ::google::protobuf::internal::TSanWrite(&
_impl_);
13770 _impl_.mip_var_scaling_ = 1;
13771 ClearHasBit(
_impl_._has_bits_[5],
13776 return _internal_mip_var_scaling();
13779 _internal_set_mip_var_scaling(value);
13780 SetHasBit(
_impl_._has_bits_[5], 0x08000000U);
13783inline double SatParameters::_internal_mip_var_scaling()
const {
13784 ::google::protobuf::internal::TSanRead(&
_impl_);
13785 return _impl_.mip_var_scaling_;
13787inline void SatParameters::_internal_set_mip_var_scaling(
double value) {
13788 ::google::protobuf::internal::TSanWrite(&
_impl_);
13789 _impl_.mip_var_scaling_ = value;
13794 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x08000000U);
13798 ::google::protobuf::internal::TSanWrite(&
_impl_);
13799 _impl_.mip_scale_large_domain_ =
false;
13800 ClearHasBit(
_impl_._has_bits_[2],
13805 return _internal_mip_scale_large_domain();
13808 _internal_set_mip_scale_large_domain(value);
13809 SetHasBit(
_impl_._has_bits_[2], 0x08000000U);
13812inline bool SatParameters::_internal_mip_scale_large_domain()
const {
13813 ::google::protobuf::internal::TSanRead(&
_impl_);
13814 return _impl_.mip_scale_large_domain_;
13816inline void SatParameters::_internal_set_mip_scale_large_domain(
bool value) {
13817 ::google::protobuf::internal::TSanWrite(&
_impl_);
13818 _impl_.mip_scale_large_domain_ = value;
13823 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x00010000U);
13827 ::google::protobuf::internal::TSanWrite(&
_impl_);
13828 _impl_.mip_automatically_scale_variables_ =
true;
13829 ClearHasBit(
_impl_._has_bits_[6],
13834 return _internal_mip_automatically_scale_variables();
13837 _internal_set_mip_automatically_scale_variables(value);
13838 SetHasBit(
_impl_._has_bits_[6], 0x00010000U);
13841inline bool SatParameters::_internal_mip_automatically_scale_variables()
const {
13842 ::google::protobuf::internal::TSanRead(&
_impl_);
13843 return _impl_.mip_automatically_scale_variables_;
13845inline void SatParameters::_internal_set_mip_automatically_scale_variables(
bool value) {
13846 ::google::protobuf::internal::TSanWrite(&
_impl_);
13847 _impl_.mip_automatically_scale_variables_ = value;
13852 bool value = CheckHasBit(
_impl_._has_bits_[2], 0x02000000U);
13856 ::google::protobuf::internal::TSanWrite(&
_impl_);
13857 _impl_.only_solve_ip_ =
false;
13858 ClearHasBit(
_impl_._has_bits_[2],
13863 return _internal_only_solve_ip();
13866 _internal_set_only_solve_ip(value);
13867 SetHasBit(
_impl_._has_bits_[2], 0x02000000U);
13870inline bool SatParameters::_internal_only_solve_ip()
const {
13871 ::google::protobuf::internal::TSanRead(&
_impl_);
13872 return _impl_.only_solve_ip_;
13874inline void SatParameters::_internal_set_only_solve_ip(
bool value) {
13875 ::google::protobuf::internal::TSanWrite(&
_impl_);
13876 _impl_.only_solve_ip_ = value;
13881 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x10000000U);
13885 ::google::protobuf::internal::TSanWrite(&
_impl_);
13886 _impl_.mip_wanted_precision_ = 1e-06;
13887 ClearHasBit(
_impl_._has_bits_[5],
13892 return _internal_mip_wanted_precision();
13895 _internal_set_mip_wanted_precision(value);
13896 SetHasBit(
_impl_._has_bits_[5], 0x10000000U);
13899inline double SatParameters::_internal_mip_wanted_precision()
const {
13900 ::google::protobuf::internal::TSanRead(&
_impl_);
13901 return _impl_.mip_wanted_precision_;
13903inline void SatParameters::_internal_set_mip_wanted_precision(
double value) {
13904 ::google::protobuf::internal::TSanWrite(&
_impl_);
13905 _impl_.mip_wanted_precision_ = value;
13910 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x04000000U);
13914 ::google::protobuf::internal::TSanWrite(&
_impl_);
13915 _impl_.mip_max_activity_exponent_ = 53;
13916 ClearHasBit(
_impl_._has_bits_[5],
13921 return _internal_mip_max_activity_exponent();
13924 _internal_set_mip_max_activity_exponent(value);
13925 SetHasBit(
_impl_._has_bits_[5], 0x04000000U);
13928inline ::int32_t SatParameters::_internal_mip_max_activity_exponent()
const {
13929 ::google::protobuf::internal::TSanRead(&
_impl_);
13930 return _impl_.mip_max_activity_exponent_;
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;
13939 bool value = CheckHasBit(
_impl_._has_bits_[5], 0x20000000U);
13943 ::google::protobuf::internal::TSanWrite(&
_impl_);
13944 _impl_.mip_check_precision_ = 0.0001;
13945 ClearHasBit(
_impl_._has_bits_[5],
13950 return _internal_mip_check_precision();
13953 _internal_set_mip_check_precision(value);
13954 SetHasBit(
_impl_._has_bits_[5], 0x20000000U);
13957inline double SatParameters::_internal_mip_check_precision()
const {
13958 ::google::protobuf::internal::TSanRead(&
_impl_);
13959 return _impl_.mip_check_precision_;
13961inline void SatParameters::_internal_set_mip_check_precision(
double value) {
13962 ::google::protobuf::internal::TSanWrite(&
_impl_);
13963 _impl_.mip_check_precision_ = value;
13968 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x40000000U);
13972 ::google::protobuf::internal::TSanWrite(&
_impl_);
13973 _impl_.mip_compute_true_objective_bound_ =
true;
13974 ClearHasBit(
_impl_._has_bits_[6],
13979 return _internal_mip_compute_true_objective_bound();
13982 _internal_set_mip_compute_true_objective_bound(value);
13983 SetHasBit(
_impl_._has_bits_[6], 0x40000000U);
13986inline bool SatParameters::_internal_mip_compute_true_objective_bound()
const {
13987 ::google::protobuf::internal::TSanRead(&
_impl_);
13988 return _impl_.mip_compute_true_objective_bound_;
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;
13997 bool value = CheckHasBit(
_impl_._has_bits_[6], 0x08000000U);
14001 ::google::protobuf::internal::TSanWrite(&
_impl_);
14002 _impl_.mip_max_valid_magnitude_ = 1e+20;
14003 ClearHasBit(
_impl_._has_bits_[6],
14008 return _internal_mip_max_valid_magnitude();
14011 _internal_set_mip_max_valid_magnitude(value);
14012 SetHasBit(
_impl_._has_bits_[6], 0x08000000U);
14015inline double SatParameters::_internal_mip_max_valid_magnitude()
const {
14016 ::google::protobuf::internal::TSanRead(&
_impl_);
14017 return _impl_.mip_max_valid_magnitude_;
14019inline void SatParameters::_internal_set_mip_max_valid_magnitude(
double value) {
14020 ::google::protobuf::internal::TSanWrite(&
_impl_);
14021 _impl_.mip_max_valid_magnitude_ = value;
14026 bool value = CheckHasBit(
_impl_._has_bits_[3], 0x00000200U);
14030 ::google::protobuf::internal::TSanWrite(&
_impl_);
14031 _impl_.mip_treat_high_magnitude_bounds_as_infinity_ =
false;
14032 ClearHasBit(
_impl_._has_bits_[3],
14037 return _internal_mip_treat_high_magnitude_bounds_as_infinity();
14040 _internal_set_mip_treat_high_magnitude_bounds_as_infinity(value);
14041 SetHasBit(
_impl_._has_bits_[3], 0x00000200U);
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_;
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;
14055 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x00000100U);
14059 ::google::protobuf::internal::TSanWrite(&
_impl_);
14060 _impl_.mip_drop_tolerance_ = 1e-16;
14061 ClearHasBit(
_impl_._has_bits_[7],
14066 return _internal_mip_drop_tolerance();
14069 _internal_set_mip_drop_tolerance(value);
14070 SetHasBit(
_impl_._has_bits_[7], 0x00000100U);
14073inline double SatParameters::_internal_mip_drop_tolerance()
const {
14074 ::google::protobuf::internal::TSanRead(&
_impl_);
14075 return _impl_.mip_drop_tolerance_;
14077inline void SatParameters::_internal_set_mip_drop_tolerance(
double value) {
14078 ::google::protobuf::internal::TSanWrite(&
_impl_);
14079 _impl_.mip_drop_tolerance_ = value;
14084 bool value = CheckHasBit(
_impl_._has_bits_[7], 0x02000000U);
14088 ::google::protobuf::internal::TSanWrite(&
_impl_);
14089 _impl_.mip_presolve_level_ = 2;
14090 ClearHasBit(
_impl_._has_bits_[7],
14095 return _internal_mip_presolve_level();
14098 _internal_set_mip_presolve_level(value);
14099 SetHasBit(
_impl_._has_bits_[7], 0x02000000U);
14102inline ::int32_t SatParameters::_internal_mip_presolve_level()
const {
14103 ::google::protobuf::internal::TSanRead(&
_impl_);
14104 return _impl_.mip_presolve_level_;
14106inline void SatParameters::_internal_set_mip_presolve_level(::int32_t value) {
14107 ::google::protobuf::internal::TSanWrite(&
_impl_);
14108 _impl_.mip_presolve_level_ = value;
14112#pragma GCC diagnostic pop
14127 return ::operations_research::sat::SatParameters_VariableOrder_descriptor();
14133 return ::operations_research::sat::SatParameters_Polarity_descriptor();
14139 return ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm_descriptor();
14145 return ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm_descriptor();
14151 return ::operations_research::sat::SatParameters_ClauseOrdering_descriptor();
14157 return ::operations_research::sat::SatParameters_RestartAlgorithm_descriptor();
14163 return ::operations_research::sat::SatParameters_MaxSatAssumptionOrder_descriptor();
14169 return ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm_descriptor();
14175 return ::operations_research::sat::SatParameters_SearchBranching_descriptor();
14181 return ::operations_research::sat::SatParameters_SharedTreeSplitStrategy_descriptor();
14187 return ::operations_research::sat::SatParameters_FPRoundingMethod_descriptor();
14195#include "google/protobuf/port_undef.inc"
bool use_try_edge_reasoning_in_no_overlap_2d() const
void clear_use_all_different_for_circuit()
double blocking_restart_multiplier() const
void set_stop_after_root_propagation(bool value)
bool has_exploit_all_lp_solution() const
bool has_propagation_loop_detection_factor() const
bool use_probing_search() const
void set_push_all_tasks_toward_start(bool value)
void set_mip_max_valid_magnitude(double value)
bool has_detect_linearized_product() const
SatParameters_RestartAlgorithm RestartAlgorithm
bool has_debug_max_num_presolve_operations() const
bool has_log_subsolver_statistics() const
const ::std::string & ignore_subsolvers(int index) const
void set_inprocessing_dtime_ratio(double value)
::int32_t clause_cleanup_lbd_tier2() const
double min_orthogonality_for_lp_constraints() const
void set_clause_cleanup_lbd_tier2(::int32_t value)
bool has_new_linear_propagation() const
void set_num_search_workers(::int32_t value)
void clear_strategy_change_increase_ratio()
void clear_alternative_pool_size()
::int32_t clause_cleanup_period_increment() const
void clear_filter_sat_postsolve_clauses()
::int32_t shared_tree_balance_tolerance() const
void clear_filter_subsolvers()
void clear_use_timetable_edge_finding_in_cumulative()
void set_use_new_integer_conflict_resolution(bool value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL MaxSatAssumptionOrder_descriptor()
bool has_presolve_probing_deterministic_time_limit() const
void clear_max_memory_in_mb()
void clear_share_level_zero_bounds()
void set_lp_dual_tolerance(double value)
::int32_t max_size_to_create_precedence_literals_in_disjunctive() const
::int32_t max_num_intervals_for_timetable_edge_finding() const
bool use_overload_checker_in_cumulative() const
void clear_subsolver_params()
::int32_t lb_relax_num_workers_threshold() const
void clear_feasibility_jump_max_expanded_constraint_size()
::int64_t shaving_search_threshold() const
::int32_t feasibility_jump_linearization_level() const
bool has_use_extended_probing() const
void set_shared_tree_open_leaves_per_worker(double value)
bool has_output_drat_proof() const
void clear_check_lrat_proof()
bool has_fill_additional_solutions_in_response() const
void clear_lns_initial_difficulty()
void set_keep_symmetry_in_presolve(bool value)
bool has_glucose_decay_increment_period() const
bool exploit_best_solution() const
bool has_merge_no_overlap_work_limit() const
bool has_presolve_substitution_level() const
bool has_max_lin_max_size_for_expansion() const
double inprocessing_dtime_ratio() const
void clear_at_most_one_max_expansion_size()
void set_shared_tree_worker_enable_phase_sharing(bool value)
friend class ::google::protobuf::MessageLite
bool convert_intervals() const
void clear_max_alldiff_domain_size()
void clear_output_lrat_proof()
void set_max_num_deterministic_batches(::int32_t value)
static constexpr int FPRoundingMethod_ARRAYSIZE
bool use_all_different_for_circuit() const
bool has_solution_pool_diversity_limit() const
void set_use_feasibility_jump(bool value)
void clear_pseudo_cost_reliability_threshold()
double shared_tree_split_min_dtime() const
bool use_feasibility_pump() const
double max_time_in_seconds() const
bool has_polarity_rephase_increment() const
bool has_merge_at_most_one_work_limit() const
::std::string *PROTOBUF_NONNULL mutable_filter_subsolvers(int index)
bool has_use_combined_no_overlap() const
void clear_ignore_subsolvers()
void clear_max_sat_reverse_assumption_order()
void set_use_erwa_heuristic(bool value)
void set_shared_tree_split_strategy(::operations_research::sat::SatParameters_SharedTreeSplitStrategy value)
bool has_num_search_workers() const
bool keep_symmetry_in_presolve() const
static constexpr int RestartAlgorithm_ARRAYSIZE
void set_debug_crash_on_bad_hint(bool value)
static bool Polarity_IsValid(int value)
double shared_tree_open_leaves_per_worker() const
bool has_cp_model_use_sat_presolve() const
void clear_load_at_most_ones_in_sat_presolve()
void clear_log_subsolver_statistics()
void clear_log_to_stdout()
::int64_t max_memory_in_mb() const
bool use_lb_relax_lns() const
int subsolvers_size() const
bool expand_reservoir_constraints() const
void clear_preferred_variable_order()
bool count_assumption_levels_in_lbd() const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL ClauseOrdering_descriptor()
void set_routing_cut_subset_size_for_exact_binary_relation_bound(::int32_t value)
bool has_random_polarity_ratio() const
void clear_output_drat_proof()
::int32_t routing_cut_subset_size_for_shortest_paths_bound() const
::int32_t linear_split_size() const
bool use_optimization_hints() const
bool share_glue_clauses() const
bool has_inprocessing_use_congruence_closure() const
void clear_blocking_restart_window_size()
bool inprocessing_minimization_use_all_orderings() const
void set_catch_sigint_signal(bool value)
void clear_find_multiple_cores()
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL Polarity_descriptor()
bool has_debug_crash_if_lrat_check_fails() const
::int32_t num_full_subsolvers() const
void set_minimization_algorithm(::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm value)
void clear_lp_primal_tolerance()
bool has_use_strong_propagation_in_disjunctive() const
bool load_at_most_ones_in_sat_presolve() const
void clear_routing_cut_max_infeasible_path_length()
void clear_restart_algorithms()
void clear_subsume_during_vivification()
bool has_clause_cleanup_ratio() const
void clear_search_random_variable_pool_size()
bool has_probing_deterministic_time_limit() const
bool has_mip_compute_true_objective_bound() const
bool has_max_alldiff_domain_size() const
bool has_use_symmetry_in_lp() const
bool has_chronological_backtrack_min_conflicts() const
::std::string *PROTOBUF_NULLABLE release_log_prefix()
void set_feasibility_jump_max_expanded_constraint_size(::int32_t value)
bool has_solution_pool_size() const
::std::string *PROTOBUF_NONNULL mutable_ignore_subsolvers(int index)
double variable_activity_decay() const
bool fill_tightened_domains_in_response() const
void clear_optimize_with_max_hs()
bool has_debug_crash_on_bad_hint() const
bool has_check_drat_proof() const
void Swap(SatParameters *PROTOBUF_NONNULL other)
void clear_solution_pool_diversity_limit()
bool has_mip_presolve_level() const
void clear_use_energetic_reasoning_in_no_overlap_2d()
void set_routing_cut_subset_size_for_shortest_paths_bound(::int32_t value)
void set_mip_drop_tolerance(double value)
bool has_max_num_cuts() const
bool has_count_assumption_levels_in_lbd() const
void set_shared_tree_split_min_dtime(double value)
::std::string *PROTOBUF_NONNULL mutable_default_restart_algorithms()
bool has_routing_cut_dp_effort() const
bool use_feasibility_jump() const
::int32_t linearization_level() const
void set_repair_hint(bool value)
bool find_big_linear_overlap() const
bool has_restart_running_window_size() const
void set_max_deterministic_time(double value)
void clear_routing_cut_dp_effort()
bool has_only_solve_ip() const
const ::operations_research::sat::SatParameters & subsolver_params(int index) const
void clear_expand_reservoir_using_circuit()
void set_feasibility_jump_var_perburbation_range_ratio(double value)
double cut_max_active_count_value() const
bool has_filter_sat_postsolve_clauses() const
::int32_t num_search_workers() const
double cut_active_count_decay() const
void set_only_solve_ip(bool value)
void set_cp_model_use_sat_presolve(bool value)
void set_only_add_cuts_at_level_zero(bool value)
bool exploit_all_precedences() const
bool add_lp_constraints_lazily() const
bool has_shaving_search_deterministic_time() const
double mip_check_precision() const
bool use_blocking_restart() const
void set_symmetry_detection_deterministic_time_limit(double value)
static constexpr Polarity POLARITY_FALSE
bool has_extra_subsumption_during_conflict_analysis() const
double max_drat_time_in_seconds() const
bool has_permute_variable_randomly() const
void set_use_optimization_hints(bool value)
void set_presolve_bve_threshold(::int32_t value)
double glucose_max_decay() const
void set_shared_tree_worker_enable_trail_sharing(bool value)
void set_max_time_in_seconds(double value)
::int32_t solution_pool_diversity_limit() const
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_DISCREPANCY
const ::google::protobuf::RepeatedPtrField<::std::string > & subsolvers() const
::google::protobuf::RepeatedField< int > *PROTOBUF_NONNULL mutable_restart_algorithms()
void set_use_hard_precedences_in_cumulative(bool value)
void clear_initial_polarity()
bool has_mip_max_bound() const
bool has_mip_drop_tolerance() const
void set_use_probing_search(bool value)
void clear_max_consecutive_inactive_count()
static bool MaxSatStratificationAlgorithm_IsValid(int value)
static constexpr RestartAlgorithm FIXED_RESTART
void clear_relative_gap_limit()
void set_search_branching(::operations_research::sat::SatParameters_SearchBranching value)
bool has_cut_level() const
bool use_dynamic_precedence_in_cumulative() const
void clear_clause_cleanup_target()
bool detect_table_with_cost() const
void clear_mip_max_bound()
void clear_catch_sigint_signal()
void set_glucose_decay_increment_period(::int32_t value)
bool has_glucose_max_decay() const
void set_inprocessing_use_sat_sweeping(bool value)
bool has_shared_tree_worker_enable_phase_sharing() const
bool new_linear_propagation() const
static constexpr ClauseOrdering CLAUSE_LBD
void clear_use_blocking_restart()
void clear_shared_tree_balance_tolerance()
void set_max_presolve_iterations(::int32_t value)
void set_mip_automatically_scale_variables(bool value)
bool has_detect_table_with_cost() const
void set_variable_activity_decay(double value)
static constexpr SearchBranching PARTIAL_FIXED_SEARCH
::int32_t num_violation_ls() const
bool use_precedences_in_disjunctive_constraint() const
bool has_transitive_precedences_work_limit() const
void clear_disable_constraint_expansion()
void set_use_area_energetic_reasoning_in_no_overlap_2d(bool value)
static bool SharedTreeSplitStrategy_IsValid(int value)
void set_cover_optimization(bool value)
static bool MaxSatAssumptionOrder_IsValid(int value)
void set_exploit_best_solution(bool value)
void clear_use_overload_checker_in_cumulative()
void set_auto_detect_greater_than_at_least_one_of(bool value)
void set_new_constraints_batch_size(::int32_t value)
bool has_optimize_with_max_hs() const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RestartAlgorithm_descriptor()
::int32_t routing_cut_subset_size_for_exact_binary_relation_bound() const
void clear_log_search_progress()
SatParameters_ConflictMinimizationAlgorithm ConflictMinimizationAlgorithm
void clear_cut_active_count_decay()
bool has_blocking_restart_multiplier() const
void set_max_drat_time_in_seconds(double value)
void set_fix_variables_to_their_hinted_value(bool value)
void clear_max_integer_rounding_scaling()
void set_random_branches_ratio(double value)
void clear_auto_detect_greater_than_at_least_one_of()
void clear_max_lin_max_size_for_expansion()
void set_max_num_cuts(::int32_t value)
bool has_use_dual_scheduling_heuristics() const
void clear_feasibility_jump_linearization_level()
bool encode_cumulative_as_reservoir() const
void set_mip_max_activity_exponent(::int32_t value)
void set_mip_check_precision(double value)
void set_initial_variables_activity(double value)
void clear_mip_scale_large_domain()
bool has_use_objective_lb_search() const
bool has_use_area_energetic_reasoning_in_no_overlap_2d() const
void set_mip_compute_true_objective_bound(bool value)
static bool FPRoundingMethod_IsValid(int value)
::int32_t num_conflicts_before_strategy_changes() const
double strategy_change_increase_ratio() const
bool has_max_domain_size_when_encoding_eq_neq_constraints() const
::std::string *PROTOBUF_NONNULL add_filter_subsolvers()
void set_add_clique_cuts(bool value)
bool has_alternative_pool_size() const
void set_feasibility_jump_restart_factor(::int32_t value)
void clear_routing_cut_subset_size_for_binary_relation_bound()
bool has_enumerate_all_solutions() const
void set_disable_constraint_expansion(bool value)
void set_strategy_change_increase_ratio(double value)
::int32_t max_backjump_levels() const
bool has_interleave_batch_size() const
void clear_shaving_search_threshold()
void set_also_bump_variables_in_conflict_reasons(bool value)
void set_blocking_restart_multiplier(double value)
void set_remove_fixed_variables_early(bool value)
void set_binary_minimization_algorithm(::operations_research::sat::SatParameters_BinaryMinizationAlgorithm value)
void clear_hint_conflict_limit()
void clear_max_domain_size_for_linear2_expansion()
@ kDiversifyLnsParamsFieldNumber
@ kMipMaxBoundFieldNumber
@ kLogToResponseFieldNumber
@ kCoverOptimizationFieldNumber
@ kMaxMemoryInMbFieldNumber
@ kUseExtendedProbingFieldNumber
@ kNoOverlap2DBooleanRelationsLimitFieldNumber
@ kMaxSatStratificationFieldNumber
@ kNewLinearPropagationFieldNumber
@ kSharedTreeOpenLeavesPerWorkerFieldNumber
@ kInprocessingMinimizationDtimeFieldNumber
@ kLogToStdoutFieldNumber
@ kExploitObjectiveFieldNumber
@ kNumViolationLsFieldNumber
@ kMipMaxValidMagnitudeFieldNumber
@ kUseCombinedNoOverlapFieldNumber
@ kDetectTableWithCostFieldNumber
@ kUseExactLpReasonFieldNumber
@ kAtMostOneMaxExpansionSizeFieldNumber
@ kUseTimetablingInNoOverlap2DFieldNumber
@ kUseBlockingRestartFieldNumber
@ kFillAdditionalSolutionsInResponseFieldNumber
@ kDefaultRestartAlgorithmsFieldNumber
@ kUseOptionalVariablesFieldNumber
@ kMinOrthogonalityForLpConstraintsFieldNumber
@ kInprocessingUseCongruenceClosureFieldNumber
@ kRoutingCutSubsetSizeForTightBinaryRelationBoundFieldNumber
@ kRoutingCutSubsetSizeForExactBinaryRelationBoundFieldNumber
@ kExtraSubsumptionDuringConflictAnalysisFieldNumber
@ kUseStrongPropagationInDisjunctiveFieldNumber
@ kUseFeasibilityPumpFieldNumber
@ kPresolveBveThresholdFieldNumber
@ kMaxAllDiffCutSizeFieldNumber
@ kExpandReservoirUsingCircuitFieldNumber
@ kInprocessingProbingDtimeFieldNumber
@ kFeasibilityJumpEnableRestartsFieldNumber
@ kUseEnergeticReasoningInNoOverlap2DFieldNumber
@ kStopAfterFirstSolutionFieldNumber
@ kStopAfterPresolveFieldNumber
@ kDetectLinearizedProductFieldNumber
@ kPermutePresolveConstraintOrderFieldNumber
@ kCoreMinimizationLevelFieldNumber
@ kBlockingRestartMultiplierFieldNumber
@ kUseHardPrecedencesInCumulativeFieldNumber
@ kPresolveSubstitutionLevelFieldNumber
@ kAlternativePoolSizeFieldNumber
@ kSaveLpBasisInLbTreeSearchFieldNumber
@ kFixVariablesToTheirHintedValueFieldNumber
@ kOnlyAddCutsAtLevelZeroFieldNumber
@ kMipDropToleranceFieldNumber
@ kSolutionPoolDiversityLimitFieldNumber
@ kViolationLsCompoundMoveProbabilityFieldNumber
@ kUsePbResolutionFieldNumber
@ kMergeNoOverlapWorkLimitFieldNumber
@ kMaxDeterministicTimeFieldNumber
@ kFeasibilityJumpRestartFactorFieldNumber
@ kExploitAllLpSolutionFieldNumber
@ kSharedTreeNumWorkersFieldNumber
@ kFindClausesThatAreExactlyOneFieldNumber
@ kDebugMaxNumPresolveOperationsFieldNumber
@ kUseErwaHeuristicFieldNumber
@ kSubsumeDuringVivificationFieldNumber
@ kShareObjectiveBoundsFieldNumber
@ kCreate1UipBooleanDuringIcrFieldNumber
@ kMipScaleLargeDomainFieldNumber
@ kInprocessingUseSatSweepingFieldNumber
@ kDisableConstraintExpansionFieldNumber
@ kKeepAllFeasibleSolutionsInPresolveFieldNumber
@ kOptimizeWithMaxHsFieldNumber
@ kMipMaxActivityExponentFieldNumber
@ kMaxSatAssumptionOrderFieldNumber
@ kOptimizeWithCoreFieldNumber
@ kVariableActivityDecayFieldNumber
@ kFeasibilityJumpVarPerburbationRangeRatioFieldNumber
@ kUseDynamicPrecedenceInCumulativeFieldNumber
@ kMaxPairsPairwiseReasoningInNoOverlap2DFieldNumber
@ kCheckDratProofFieldNumber
@ kMaxBackjumpLevelsFieldNumber
@ kFindBigLinearOverlapFieldNumber
@ kMaxPresolveIterationsFieldNumber
@ kUseDualSchedulingHeuristicsFieldNumber
@ kPseudoCostReliabilityThresholdFieldNumber
@ kIgnoreNamesFieldNumber
@ kMaxConsecutiveInactiveCountFieldNumber
@ kShavingDeterministicTimeInProbingSearchFieldNumber
@ kBlockingRestartWindowSizeFieldNumber
@ kPresolveBvaThresholdFieldNumber
@ kClauseCleanupOrderingFieldNumber
@ kCutCleanupTargetFieldNumber
@ kAlsoBumpVariablesInConflictReasonsFieldNumber
@ kRandomizeSearchFieldNumber
@ kLbRelaxNumWorkersThresholdFieldNumber
@ kDebugCrashOnBadHintFieldNumber
@ kMaxDratTimeInSecondsFieldNumber
@ kFeasibilityJumpBatchDtimeFieldNumber
@ kSubsolverParamsFieldNumber
@ kSolutionPoolSizeFieldNumber
@ kDebugCrashIfPresolveBreaksHintFieldNumber
@ kUseLbRelaxLnsFieldNumber
@ kInprocessingMinimizationUseAllOrderingsFieldNumber
@ kInprocessingDtimeRatioFieldNumber
@ kDebugPostsolveWithFullSolverFieldNumber
@ kShavingSearchDeterministicTimeFieldNumber
@ kProbingNumCombinationsLimitFieldNumber
@ kUseDynamicPrecedenceInDisjunctiveFieldNumber
@ kPermuteVariableRandomlyFieldNumber
@ kStopAfterRootPropagationFieldNumber
@ kMipPresolveLevelFieldNumber
@ kMipTreatHighMagnitudeBoundsAsInfinityFieldNumber
@ kShareLinear2BoundsFieldNumber
@ kCpModelPresolveFieldNumber
@ kLinearizationLevelFieldNumber
@ kInterleaveSearchFieldNumber
@ kAddZeroHalfCutsFieldNumber
@ kSharedTreeWorkerEnableTrailSharingFieldNumber
@ kClauseCleanupPeriodFieldNumber
@ kFeasibilityJumpMaxExpandedConstraintSizeFieldNumber
@ kInitialVariablesActivityFieldNumber
@ kOutputDratProofFieldNumber
@ kAddObjectiveCutFieldNumber
@ kLogSearchProgressFieldNumber
@ kChronologicalBacktrackMinConflictsFieldNumber
@ kVariablesShavingLevelFieldNumber
@ kShareGlueClausesFieldNumber
@ kSearchRandomVariablePoolSizeFieldNumber
@ kMaxAlldiffDomainSizeFieldNumber
@ kUseNewIntegerConflictResolutionFieldNumber
@ kShavingSearchThresholdFieldNumber
@ kSharedTreeSplitStrategyFieldNumber
@ kLogSubsolverStatisticsFieldNumber
@ kLpPrimalToleranceFieldNumber
@ kConvertIntervalsFieldNumber
@ kSymmetryDetectionDeterministicTimeLimitFieldNumber
@ kOutputLratProofFieldNumber
@ kSharedTreeWorkerMinRestartsPerSubtreeFieldNumber
@ kDecisionSubsumptionDuringConflictAnalysisFieldNumber
@ kFindMultipleCoresFieldNumber
@ kInterleaveBatchSizeFieldNumber
@ kInstantiateAllVariablesFieldNumber
@ kExpandReservoirConstraintsFieldNumber
@ kUseSharedTreeSearchFieldNumber
@ kProbingDeterministicTimeLimitFieldNumber
@ kSharedTreeBalanceToleranceFieldNumber
@ kNumSearchWorkersFieldNumber
@ kExploitRelaxationSolutionFieldNumber
@ kMaximumRegionsToSplitInDisconnectedNoOverlap2DFieldNumber
@ kMaxNumDeterministicBatchesFieldNumber
@ kRoutingCutMaxInfeasiblePathLengthFieldNumber
@ kUseDisjunctiveConstraintInCumulativeFieldNumber
@ kUseImpliedBoundsFieldNumber
@ kNumFullSubsolversFieldNumber
@ kPresolveBveClauseWeightFieldNumber
@ kEncodeComplexLinearConstraintWithIntegerFieldNumber
@ kUseChronologicalBacktrackingFieldNumber
@ kUseConservativeScaleOverloadCheckerFieldNumber
@ kSubsumptionDuringConflictAnalysisFieldNumber
@ kCatchSigintSignalFieldNumber
@ kNumConflictsBeforeStrategyChangesFieldNumber
@ kUseOptimizationHintsFieldNumber
@ kExpandAlldiffConstraintsFieldNumber
@ kPropagationLoopDetectionFactorFieldNumber
@ kSharedTreeSplitMinDtimeFieldNumber
@ kFilterSatPostsolveClausesFieldNumber
@ kCpModelUseSatPresolveFieldNumber
@ kPbCleanupRatioFieldNumber
@ kUseTimetableEdgeFindingInCumulativeFieldNumber
@ kAddLpConstraintsLazilyFieldNumber
@ kOptimizeWithLbTreeSearchFieldNumber
@ kAddLinMaxCutsFieldNumber
@ kSharedTreeMaxNodesPerWorkerFieldNumber
@ kViolationLsPerturbationPeriodFieldNumber
@ kDebugCrashIfLratCheckFailsFieldNumber
@ kPolarityRephaseIncrementFieldNumber
@ kRestartLbdAverageRatioFieldNumber
@ kRandomPolarityRatioFieldNumber
@ kUseProbingSearchFieldNumber
@ kUseLinear3ForNoOverlap2DPrecedencesFieldNumber
@ kKeepSymmetryInPresolveFieldNumber
@ kFeasibilityJumpVarRandomizationProbabilityFieldNumber
@ kSymmetryLevelFieldNumber
@ kUseFeasibilityJumpFieldNumber
@ kInferAllDiffsFieldNumber
@ kUseOverloadCheckerInCumulativeFieldNumber
@ kMaxClauseActivityValueFieldNumber
@ kUseAreaEnergeticReasoningInNoOverlap2DFieldNumber
@ kFillTightenedDomainsInResponseFieldNumber
@ kMaxSatReverseAssumptionOrderFieldNumber
@ kUseSymmetryInLpFieldNumber
@ kFeasibilityJumpDecayFieldNumber
@ kPresolveInclusionWorkLimitFieldNumber
@ kBinarySearchNumConflictsFieldNumber
@ kMipVarScalingFieldNumber
@ kPolishLpSolutionFieldNumber
@ kMipCheckPrecisionFieldNumber
@ kExploitAllPrecedencesFieldNumber
@ kStrategyChangeIncreaseRatioFieldNumber
@ kMaxSizeToCreatePrecedenceLiteralsInDisjunctiveFieldNumber
@ kClauseCleanupPeriodIncrementFieldNumber
@ kMaxCutRoundsAtLevelZeroFieldNumber
@ kUsePrecedencesInDisjunctiveConstraintFieldNumber
@ kPresolveExtractIntegerEnforcementFieldNumber
@ kSearchBranchingFieldNumber
@ kTableCompressionLevelFieldNumber
@ kMaxDomainSizeWhenEncodingEqNeqConstraintsFieldNumber
@ kUseAbslRandomFieldNumber
@ kIgnoreSubsolversFieldNumber
@ kBinaryMinimizationAlgorithmFieldNumber
@ kClauseCleanupLbdTier2FieldNumber
@ kUsePhaseSavingFieldNumber
@ kMipAutomaticallyScaleVariablesFieldNumber
@ kFilterSubsolversFieldNumber
@ kMaxNumberOfConflictsFieldNumber
@ kOnlySolveIpFieldNumber
@ kLpDualToleranceFieldNumber
@ kLoadAtMostOnesInSatPresolveFieldNumber
@ kInitialPolarityFieldNumber
@ kClauseCleanupRatioFieldNumber
@ kLnsInitialDeterministicLimitFieldNumber
@ kAddCliqueCutsFieldNumber
@ kMaxIntegerRoundingScalingFieldNumber
@ kExtraSubsolversFieldNumber
@ kMipComputeTrueObjectiveBoundFieldNumber
@ kRestartAlgorithmsFieldNumber
@ kRootLpIterationsFieldNumber
@ kCutActiveCountDecayFieldNumber
@ kCutMaxActiveCountValueFieldNumber
@ kMergeAtMostOneWorkLimitFieldNumber
@ kMinimizeSharedClausesFieldNumber
@ kGlucoseDecayIncrementPeriodFieldNumber
@ kClauseCleanupLbdBoundFieldNumber
@ kPushAllTasksTowardStartFieldNumber
@ kRandomBranchesRatioFieldNumber
@ kPresolveUseBvaFieldNumber
@ kUseTryEdgeReasoningInNoOverlap2DFieldNumber
@ kInprocessingMinimizationUseConflictAnalysisFieldNumber
@ kRelativeGapLimitFieldNumber
@ kLinearSplitSizeFieldNumber
@ kExploitIntegerLpSolutionFieldNumber
@ kUseAllDifferentForCircuitFieldNumber
@ kSharedTreeWorkerEnablePhaseSharingFieldNumber
@ kClauseCleanupLbdTier1FieldNumber
@ kNewConstraintsBatchSizeFieldNumber
@ kRestartPeriodFieldNumber
@ kShareBinaryClausesFieldNumber
@ kRestartRunningWindowSizeFieldNumber
@ kMaxLinMaxSizeForExpansionFieldNumber
@ kPresolveBlockedClauseFieldNumber
@ kLnsInitialDifficultyFieldNumber
@ kPbCleanupIncrementFieldNumber
@ kAbsoluteGapLimitFieldNumber
@ kMinimizationAlgorithmFieldNumber
@ kUseObjectiveLbSearchFieldNumber
@ kFeasibilityJumpLinearizationLevelFieldNumber
@ kCpModelProbingLevelFieldNumber
@ kShareLevelZeroBoundsFieldNumber
@ kGlucoseMaxDecayFieldNumber
@ kRoutingCutSubsetSizeForShortestPathsBoundFieldNumber
@ kClauseActivityDecayFieldNumber
@ kMinimizeReductionDuringPbResolutionFieldNumber
@ kEnumerateAllSolutionsFieldNumber
@ kRemoveFixedVariablesEarlyFieldNumber
@ kTransitivePrecedencesWorkLimitFieldNumber
@ kRoutingCutDpEffortFieldNumber
@ kMaxDomainSizeForLinear2ExpansionFieldNumber
@ kCheckMergedLratProofFieldNumber
@ kGlucoseDecayIncrementFieldNumber
@ kMaxNumIntervalsForTimetableEdgeFindingFieldNumber
@ kMaxVariableActivityValueFieldNumber
@ kRestartDlAverageRatioFieldNumber
@ kMaxTimeInSecondsFieldNumber
@ kCheckLratProofFieldNumber
@ kExploitBestSolutionFieldNumber
@ kUseObjectiveShavingSearchFieldNumber
@ kUseSatInprocessingFieldNumber
@ kPresolveProbingDeterministicTimeLimitFieldNumber
@ kShareGlueClausesDtimeFieldNumber
@ kEagerlySubsumeLastNConflictsFieldNumber
@ kHintConflictLimitFieldNumber
@ kBooleanEncodingLevelFieldNumber
@ kRoutingCutSubsetSizeForBinaryRelationBoundFieldNumber
@ kCountAssumptionLevelsInLbdFieldNumber
@ kPolarityExploitLsHintsFieldNumber
@ kMipWantedPrecisionFieldNumber
@ kEncodeCumulativeAsReservoirFieldNumber
@ kAutoDetectGreaterThanAtLeastOneOfFieldNumber
void clear_max_num_cuts()
void set_variables_shaving_level(::int32_t value)
bool has_use_new_integer_conflict_resolution() const
void set_pb_cleanup_ratio(double value)
void clear_feasibility_jump_batch_dtime()
void clear_exploit_best_solution()
PROTOBUF_CONSTEXPR SatParameters(::google::protobuf::internal::ConstantInitialized)
bool has_expand_reservoir_constraints() const
bool has_fill_tightened_domains_in_response() const
void set_solution_pool_size(::int32_t value)
bool has_at_most_one_max_expansion_size() const
::int32_t violation_ls_perturbation_period() const
bool has_shared_tree_split_min_dtime() const
void clear_boolean_encoding_level()
static constexpr SearchBranching PORTFOLIO_SEARCH
bool has_create_1uip_boolean_during_icr() const
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_filter_subsolvers()
void set_find_multiple_cores(bool value)
void clear_debug_postsolve_with_full_solver()
bool has_use_precedences_in_disjunctive_constraint() const
bool permute_variable_randomly() const
bool has_add_mir_cuts() const
void set_presolve_probing_deterministic_time_limit(double value)
bool add_zero_half_cuts() const
void set_extra_subsolvers(int index, Arg_ &&value, Args_... args)
::int32_t routing_cut_max_infeasible_path_length() const
bool has_add_cg_cuts() const
void set_lns_initial_deterministic_limit(double value)
bool has_find_big_linear_overlap() const
::int32_t presolve_bve_threshold() const
bool output_lrat_proof() const
void set_inprocessing_minimization_use_conflict_analysis(bool value)
void clear_expand_alldiff_constraints()
void set_clause_cleanup_ordering(::operations_research::sat::SatParameters_ClauseOrdering value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL FPRoundingMethod_descriptor()
void clear_encode_complex_linear_constraint_with_integer()
bool expand_reservoir_using_circuit() const
double lp_dual_tolerance() const
double feasibility_jump_batch_dtime() const
bool debug_postsolve_with_full_solver() const
static bool ConflictMinimizationAlgorithm_IsValid(int value)
::operations_research::sat::SatParameters_MaxSatAssumptionOrder max_sat_assumption_order() const
void clear_default_restart_algorithms()
bool debug_crash_on_bad_hint() const
bool has_check_lrat_proof() const
bool check_lrat_proof() const
::int32_t restart_period() const
::int32_t max_lin_max_size_for_expansion() const
bool has_shared_tree_max_nodes_per_worker() const
void clear_log_to_response()
::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm max_sat_stratification() const
double max_clause_activity_value() const
::int32_t hint_conflict_limit() const
void clear_debug_crash_if_presolve_breaks_hint()
void set_routing_cut_subset_size_for_tight_binary_relation_bound(::int32_t value)
bool has_use_blocking_restart() const
static constexpr MaxSatAssumptionOrder ORDER_ASSUMPTION_BY_WEIGHT
void set_default_restart_algorithms(Arg_ &&arg, Args_... args)
bool has_eagerly_subsume_last_n_conflicts() const
int ignore_subsolvers_size() const
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_BALANCED_TREE
bool use_absl_random() const
void clear_keep_symmetry_in_presolve()
bool has_linearization_level() const
bool use_combined_no_overlap() const
bool has_subsumption_during_conflict_analysis() const
bool instantiate_all_variables() const
void set_save_lp_basis_in_lb_tree_search(bool value)
void set_clause_activity_decay(double value)
void clear_probing_deterministic_time_limit()
void set_check_merged_lrat_proof(bool value)
void clear_interleave_batch_size()
::int32_t clause_cleanup_period() const
bool use_dynamic_precedence_in_disjunctive() const
void set_absolute_gap_limit(double value)
bool exploit_all_lp_solution() const
bool has_inprocessing_minimization_use_all_orderings() const
double probing_deterministic_time_limit() const
bool enumerate_all_solutions() const
void set_max_integer_rounding_scaling(::int32_t value)
bool subsume_during_vivification() const
void clear_use_probing_search()
bool has_feasibility_jump_linearization_level() const
void set_max_memory_in_mb(::int64_t value)
void clear_use_conservative_scale_overload_checker()
static constexpr MaxSatAssumptionOrder ORDER_ASSUMPTION_BY_DEPTH
double feasibility_jump_decay() const
bool share_objective_bounds() const
void set_clause_cleanup_target(::int32_t value)
const ::std::string & extra_subsolvers(int index) const
bool has_use_pb_resolution() const
void set_ignore_subsolvers(int index, Arg_ &&value, Args_... args)
void set_restart_algorithms(int index, ::operations_research::sat::SatParameters_RestartAlgorithm value)
::int32_t max_cut_rounds_at_level_zero() const
void clear_use_symmetry_in_lp()
void set_restart_running_window_size(::int32_t value)
void set_subsume_during_vivification(bool value)
void clear_use_timetabling_in_no_overlap_2d()
bool has_routing_cut_subset_size_for_tight_binary_relation_bound() const
void set_preferred_variable_order(::operations_research::sat::SatParameters_VariableOrder value)
void set_find_clauses_that_are_exactly_one(bool value)
void set_use_ls_only(bool value)
void clear_max_time_in_seconds()
bool optimize_with_lb_tree_search() const
::int32_t presolve_bva_threshold() const
int subsolver_params_size() const
bool has_encode_cumulative_as_reservoir() const
void clear_mip_compute_true_objective_bound()
void clear_lns_initial_deterministic_limit()
void set_boolean_encoding_level(::int32_t value)
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_subsolvers()
void set_use_symmetry_in_lp(bool value)
bool max_sat_reverse_assumption_order() const
void set_restart_lbd_average_ratio(double value)
void set_restart_period(::int32_t value)
bool has_use_objective_shaving_search() const
bool has_use_shared_tree_search() const
::int32_t new_constraints_batch_size() const
void set_stop_after_first_solution(bool value)
void set_log_to_response(bool value)
bool has_use_linear3_for_no_overlap_2d_precedences() const
void set_allocated_log_prefix(::std::string *PROTOBUF_NULLABLE value)
bool has_root_lp_iterations() const
void set_max_size_to_create_precedence_literals_in_disjunctive(::int32_t value)
bool log_to_response() const
bool use_timetabling_in_no_overlap_2d() const
void set_mip_treat_high_magnitude_bounds_as_infinity(bool value)
void clear_presolve_probing_deterministic_time_limit()
const ::std::string & default_restart_algorithms() const
void clear_pb_cleanup_ratio()
bool fix_variables_to_their_hinted_value() const
bool has_routing_cut_subset_size_for_shortest_paths_bound() const
bool has_use_erwa_heuristic() const
void clear_initial_variables_activity()
void clear_use_disjunctive_constraint_in_cumulative()
bool minimize_reduction_during_pb_resolution() const
::operations_research::sat::SatParameters_ClauseOrdering clause_cleanup_ordering() const
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL BinaryMinizationAlgorithm_descriptor()
bool decision_subsumption_during_conflict_analysis() const
void clear_extra_subsumption_during_conflict_analysis()
bool has_presolve_extract_integer_enforcement() const
void set_hint_conflict_limit(::int32_t value)
::std::string *PROTOBUF_NONNULL add_subsolvers()
void set_exploit_objective(bool value)
bool use_energetic_reasoning_in_no_overlap_2d() const
void set_add_mir_cuts(bool value)
bool catch_sigint_signal() const
double feasibility_jump_var_randomization_probability() const
double propagation_loop_detection_factor() const
bool has_default_restart_algorithms() const
void set_exploit_relaxation_solution(bool value)
void set_initial_polarity(::operations_research::sat::SatParameters_Polarity value)
bool use_rins_lns() const
void set_use_lb_relax_lns(bool value)
void set_allocated_name(::std::string *PROTOBUF_NULLABLE value)
bool stop_after_presolve() const
void clear_debug_max_num_presolve_operations()
bool has_use_lb_relax_lns() const
bool feasibility_jump_enable_restarts() const
void clear_shared_tree_worker_min_restarts_per_subtree()
void set_num_conflicts_before_strategy_changes(::int32_t value)
void clear_mip_max_valid_magnitude()
void clear_random_branches_ratio()
void set_pseudo_cost_reliability_threshold(::int64_t value)
::int32_t solution_pool_size() const
bool has_feasibility_jump_decay() const
void clear_shaving_search_deterministic_time()
bool use_conservative_scale_overload_checker() const
void clear_inprocessing_minimization_dtime()
void set_detect_table_with_cost(bool value)
::int64_t pseudo_cost_reliability_threshold() const
void set_num_violation_ls(::int32_t value)
void clear_transitive_precedences_work_limit()
void set_allocated_default_restart_algorithms(::std::string *PROTOBUF_NULLABLE value)
bool has_initial_polarity() const
void clear_keep_all_feasible_solutions_in_presolve()
bool has_use_disjunctive_constraint_in_cumulative() const
double merge_at_most_one_work_limit() const
void set_inprocessing_use_congruence_closure(bool value)
void clear_clause_activity_decay()
bool has_initial_variables_activity() const
bool has_mip_scale_large_domain() const
::int32_t at_most_one_max_expansion_size() const
bool check_drat_proof() const
void set_glucose_decay_increment(double value)
void set_use_chronological_backtracking(bool value)
void clear_num_search_workers()
void set_count_assumption_levels_in_lbd(bool value)
static constexpr int ConflictMinimizationAlgorithm_ARRAYSIZE
bool has_use_overload_checker_in_cumulative() const
::int32_t pb_cleanup_increment() const
void set_cut_active_count_decay(double value)
void set_cut_level(::int32_t value)
bool has_clause_cleanup_period() const
bool has_use_dynamic_precedence_in_cumulative() const
bool has_subsume_during_vivification() const
bool has_feasibility_jump_var_perburbation_range_ratio() const
bool has_use_phase_saving() const
::operations_research::sat::SatParameters_BinaryMinizationAlgorithm binary_minimization_algorithm() const
bool has_auto_detect_greater_than_at_least_one_of() const
void clear_fix_variables_to_their_hinted_value()
::int32_t variables_shaving_level() const
void clear_max_variable_activity_value()
void set_share_level_zero_bounds(bool value)
bool has_clause_cleanup_ordering() const
bool has_polarity_exploit_ls_hints() const
void clear_routing_cut_subset_size_for_exact_binary_relation_bound()
void set_use_blocking_restart(bool value)
void set_table_compression_level(::int32_t value)
bool has_keep_symmetry_in_presolve() const
double merge_no_overlap_work_limit() const
void clear_glucose_decay_increment()
::int32_t max_pairs_pairwise_reasoning_in_no_overlap_2d() const
void set_add_zero_half_cuts(bool value)
void clear_glucose_decay_increment_period()
bool has_minimize_reduction_during_pb_resolution() const
void set_extra_subsumption_during_conflict_analysis(bool value)
void CopyFrom(const SatParameters &from)
void set_debug_crash_if_lrat_check_fails(bool value)
::int32_t max_domain_size_when_encoding_eq_neq_constraints() const
bool has_use_exact_lp_reason() const
bool has_feasibility_jump_batch_dtime() const
void set_diversify_lns_params(bool value)
bool has_add_clique_cuts() const
bool keep_all_feasible_solutions_in_presolve() const
void clear_polish_lp_solution()
void clear_use_new_integer_conflict_resolution()
void clear_min_orthogonality_for_lp_constraints()
void set_clause_cleanup_period_increment(::int32_t value)
bool diversify_lns_params() const
void clear_symmetry_level()
void clear_extra_subsolvers()
void set_use_phase_saving(bool value)
bool has_inprocessing_minimization_dtime() const
bool use_objective_shaving_search() const
::int64_t search_random_variable_pool_size() const
::int32_t routing_cut_subset_size_for_binary_relation_bound() const
void clear_feasibility_jump_enable_restarts()
bool polish_lp_solution() const
bool has_clause_cleanup_period_increment() const
bool has_cut_max_active_count_value() const
void set_alternative_pool_size(::int32_t value)
void clear_encode_cumulative_as_reservoir()
bool use_exact_lp_reason() const
void set_core_minimization_level(::int32_t value)
void clear_clause_cleanup_lbd_tier1()
void set_minimize_shared_clauses(bool value)
bool stop_after_root_propagation() const
void clear_clause_cleanup_lbd_tier2()
bool has_load_at_most_ones_in_sat_presolve() const
bool inprocessing_use_congruence_closure() const
bool has_remove_fixed_variables_early() const
bool has_debug_postsolve_with_full_solver() const
void add_restart_algorithms(::operations_research::sat::SatParameters_RestartAlgorithm value)
void clear_feasibility_jump_var_perburbation_range_ratio()
void clear_add_rlt_cuts()
bool has_random_seed() const
static constexpr RestartAlgorithm DL_MOVING_AVERAGE_RESTART
bool has_num_conflicts_before_strategy_changes() const
bool has_shared_tree_num_workers() const
bool only_add_cuts_at_level_zero() const
bool has_max_domain_size_for_linear2_expansion() const
void clear_mip_check_precision()
double violation_ls_compound_move_probability() const
void set_violation_ls_compound_move_probability(double value)
void clear_use_absl_random()
const ::std::string & log_prefix() const
void clear_check_drat_proof()
bool has_only_add_cuts_at_level_zero() const
void clear_max_sat_stratification()
void clear_lb_relax_num_workers_threshold()
bool add_objective_cut() const
bool has_mip_max_activity_exponent() const
void clear_absolute_gap_limit()
void set_cp_model_presolve(bool value)
void clear_use_area_energetic_reasoning_in_no_overlap_2d()
::int32_t mip_presolve_level() const
void set_clause_cleanup_lbd_bound(::int32_t value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL ConflictMinimizationAlgorithm_descriptor()
double mip_max_valid_magnitude() const
void clear_exploit_all_lp_solution()
void set_presolve_extract_integer_enforcement(bool value)
bool has_random_branches_ratio() const
void clear_use_dynamic_precedence_in_disjunctive()
void clear_feasibility_jump_var_randomization_probability()
bool has_lp_primal_tolerance() const
bool has_max_num_intervals_for_timetable_edge_finding() const
double max_variable_activity_value() const
bool has_share_linear2_bounds() const
bool output_drat_proof() const
bool has_add_lin_max_cuts() const
void set_feasibility_jump_batch_dtime(double value)
static constexpr FPRoundingMethod LOCK_BASED
static bool RestartAlgorithm_IsValid(int value)
bool has_exploit_relaxation_solution() const
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_extra_subsolvers()
void set_max_domain_size_for_linear2_expansion(::int32_t value)
bool has_keep_all_feasible_solutions_in_presolve() const
void set_detect_linearized_product(bool value)
void clear_use_pb_resolution()
void set_subsumption_during_conflict_analysis(bool value)
void set_min_orthogonality_for_lp_constraints(double value)
void clear_use_feasibility_jump()
bool save_lp_basis_in_lb_tree_search() const
void set_glucose_max_decay(double value)
void set_use_sat_inprocessing(bool value)
void clear_linearization_level()
double max_deterministic_time() const
void set_max_number_of_conflicts(::int64_t value)
bool has_use_hard_precedences_in_cumulative() const
static constexpr FPRoundingMethod PROPAGATION_ASSISTED
bool use_extended_probing() const
double clause_cleanup_ratio() const
bool has_find_multiple_cores() const
::operations_research::sat::SatParameters_RestartAlgorithm restart_algorithms(int index) const
void set_routing_cut_subset_size_for_binary_relation_bound(::int32_t value)
void clear_use_strong_propagation_in_disjunctive()
void set_shared_tree_worker_min_restarts_per_subtree(::int32_t value)
void set_add_objective_cut(bool value)
bool has_shared_tree_worker_enable_trail_sharing() const
::int32_t transitive_precedences_work_limit() const
void set_routing_cut_max_infeasible_path_length(::int32_t value)
void clear_use_lns_only()
bool has_shared_tree_open_leaves_per_worker() const
bool has_binary_search_num_conflicts() const
void clear_add_objective_cut()
bool has_use_feasibility_pump() const
static constexpr SearchBranching RANDOMIZED_SEARCH
bool has_symmetry_detection_deterministic_time_limit() const
void clear_optimize_with_lb_tree_search()
bool share_linear2_bounds() const
::int32_t shared_tree_worker_min_restarts_per_subtree() const
void clear_use_hard_precedences_in_cumulative()
double shaving_deterministic_time_in_probing_search() const
bool auto_detect_greater_than_at_least_one_of() const
void clear_minimization_algorithm()
void clear_only_add_cuts_at_level_zero()
double initial_variables_activity() const
const ::google::protobuf::RepeatedPtrField<::std::string > & filter_subsolvers() const
void set_lp_primal_tolerance(double value)
::int32_t table_compression_level() const
void clear_shared_tree_split_strategy()
bool has_share_binary_clauses() const
void clear_use_erwa_heuristic()
void set_optimize_with_max_hs(bool value)
void set_pb_cleanup_increment(::int32_t value)
bool has_lns_initial_deterministic_limit() const
bool has_diversify_lns_params() const
const ::google::protobuf::RepeatedPtrField<::std::string > & ignore_subsolvers() const
void clear_shared_tree_split_min_dtime()
bool fill_additional_solutions_in_response() const
SatParameters_MaxSatStratificationAlgorithm MaxSatStratificationAlgorithm
bool has_boolean_encoding_level() const
int restart_algorithms_size() const
bool has_relative_gap_limit() const
static constexpr int SearchBranching_ARRAYSIZE
void set_use_shared_tree_search(bool value)
void set_keep_all_feasible_solutions_in_presolve(bool value)
bool exploit_integer_lp_solution() const
bool use_disjunctive_constraint_in_cumulative() const
bool has_max_all_diff_cut_size() const
void clear_cut_max_active_count_value()
void set_max_backjump_levels(::int32_t value)
::int32_t eagerly_subsume_last_n_conflicts() const
bool has_presolve_use_bva() const
bool expand_alldiff_constraints() const
void clear_routing_cut_subset_size_for_shortest_paths_bound()
void clear_share_binary_clauses()
void clear_shared_tree_open_leaves_per_worker()
::operations_research::sat::SatParameters_FPRoundingMethod fp_rounding() const
void set_feasibility_jump_linearization_level(::int32_t value)
bool stop_after_first_solution() const
bool subsumption_during_conflict_analysis() const
void clear_use_implied_bounds()
bool add_lin_max_cuts() const
void set_symmetry_level(::int32_t value)
void clear_presolve_bva_threshold()
void clear_max_pairs_pairwise_reasoning_in_no_overlap_2d()
void set_permute_presolve_constraint_order(bool value)
bool log_subsolver_statistics() const
SatParameters_SharedTreeSplitStrategy SharedTreeSplitStrategy
::int64_t max_number_of_conflicts() const
void clear_lp_dual_tolerance()
bool has_mip_treat_high_magnitude_bounds_as_infinity() const
bool use_optional_variables() const
void clear_find_big_linear_overlap()
void clear_randomize_search()
void set_exploit_all_lp_solution(bool value)
void set_use_implied_bounds(bool value)
void set_use_energetic_reasoning_in_no_overlap_2d(bool value)
::int32_t shared_tree_max_nodes_per_worker() const
bool has_max_integer_rounding_scaling() const
SatParameters_VariableOrder VariableOrder
bool has_instantiate_all_variables() const
bool has_inprocessing_use_sat_sweeping() const
bool has_log_prefix() const
bool has_fix_variables_to_their_hinted_value() const
bool use_phase_saving() const
::google::protobuf::RepeatedPtrField<::std::string > *PROTOBUF_NONNULL mutable_ignore_subsolvers()
bool has_cut_active_count_decay() const
void set_use_precedences_in_disjunctive_constraint(bool value)
void clear_stop_after_root_propagation()
void set_merge_at_most_one_work_limit(double value)
bool has_maximum_regions_to_split_in_disconnected_no_overlap_2d() const
bool use_pb_resolution() const
void clear_use_shared_tree_search()
bool ignore_names() const
void clear_binary_search_num_conflicts()
::int32_t routing_cut_subset_size_for_tight_binary_relation_bound() const
bool add_rlt_cuts() const
void set_check_lrat_proof(bool value)
bool has_convert_intervals() const
void set_inprocessing_minimization_use_all_orderings(bool value)
bool has_violation_ls_compound_move_probability() const
bool has_debug_crash_if_presolve_breaks_hint() const
double share_glue_clauses_dtime() const
bool has_max_consecutive_inactive_count() const
bool has_use_optional_variables() const
void clear_ignore_names()
bool has_max_pairs_pairwise_reasoning_in_no_overlap_2d() const
void clear_inprocessing_probing_dtime()
bool has_use_probing_search() const
bool has_use_feasibility_jump() const
void set_fp_rounding(::operations_research::sat::SatParameters_FPRoundingMethod value)
bool has_use_timetable_edge_finding_in_cumulative() const
void set_linear_split_size(::int32_t value)
void clear_restart_lbd_average_ratio()
void clear_cp_model_use_sat_presolve()
void set_random_polarity_ratio(double value)
void set_presolve_substitution_level(::int32_t value)
void set_linearization_level(::int32_t value)
bool use_objective_lb_search() const
void set_debug_max_num_presolve_operations(::int32_t value)
void clear_detect_linearized_product()
bool has_disable_constraint_expansion() const
void clear_new_constraints_batch_size()
static constexpr int Polarity_ARRAYSIZE
void set_add_rlt_cuts(bool value)
void clear_blocking_restart_multiplier()
bool use_sat_inprocessing() const
static constexpr int BinaryMinizationAlgorithm_ARRAYSIZE
void clear_routing_cut_subset_size_for_tight_binary_relation_bound()
double pb_cleanup_ratio() const
bool has_lb_relax_num_workers_threshold() const
void set_share_glue_clauses(bool value)
void set_create_1uip_boolean_during_icr(bool value)
void clear_enumerate_all_solutions()
bool create_1uip_boolean_during_icr() const
void set_use_strong_propagation_in_disjunctive(bool value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SearchBranching_descriptor()
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_DESCENT
bool has_exploit_all_precedences() const
double symmetry_detection_deterministic_time_limit() const
bool has_fp_rounding() const
void clear_detect_table_with_cost()
void clear_mip_max_activity_exponent()
void clear_use_chronological_backtracking()
void clear_max_number_of_conflicts()
void clear_max_num_intervals_for_timetable_edge_finding()
void set_eagerly_subsume_last_n_conflicts(::int32_t value)
void clear_inprocessing_use_sat_sweeping()
void set_use_dual_scheduling_heuristics(bool value)
void set_optimize_with_lb_tree_search(bool value)
void set_use_optional_variables(bool value)
::int32_t mip_max_activity_exponent() const
void set_shaving_deterministic_time_in_probing_search(double value)
bool has_variables_shaving_level() const
void set_probing_num_combinations_limit(::int32_t value)
::operations_research::sat::SatParameters *PROTOBUF_NONNULL add_subsolver_params()
void clear_presolve_substitution_level()
void clear_add_clique_cuts()
bool use_lns_only() const
bool has_shared_tree_worker_min_restarts_per_subtree() const
void set_presolve_use_bva(bool value)
void clear_exploit_integer_lp_solution()
bool has_use_all_different_for_circuit() const
void set_shared_tree_max_nodes_per_worker(::int32_t value)
void set_exploit_integer_lp_solution(bool value)
bool has_use_dynamic_precedence_in_disjunctive() const
void clear_inprocessing_minimization_use_all_orderings()
void set_root_lp_iterations(::int32_t value)
bool permute_presolve_constraint_order() const
void clear_permute_variable_randomly()
bool has_symmetry_level() const
void clear_minimize_reduction_during_pb_resolution()
::int32_t max_presolve_iterations() const
SatParameters_SearchBranching SearchBranching
void clear_inprocessing_use_congruence_closure()
::int32_t blocking_restart_window_size() const
::int32_t binary_search_num_conflicts() const
static constexpr SearchBranching FIXED_SEARCH
::int32_t polarity_rephase_increment() const
double inprocessing_probing_dtime() const
::operations_research::sat::SatParameters_VariableOrder preferred_variable_order() const
bool has_use_timetabling_in_no_overlap_2d() const
bool optimize_with_core() const
void clear_add_lin_max_cuts()
bool use_erwa_heuristic() const
void set_max_pairs_pairwise_reasoning_in_no_overlap_2d(::int32_t value)
void clear_clause_cleanup_ordering()
bool has_absolute_gap_limit() const
void clear_debug_crash_on_bad_hint()
bool has_log_to_stdout() const
::int32_t boolean_encoding_level() const
bool has_stop_after_presolve() const
void set_max_cut_rounds_at_level_zero(::int32_t value)
static constexpr FPRoundingMethod ACTIVE_LOCK_BASED
double lp_primal_tolerance() const
bool has_inprocessing_dtime_ratio() const
bool has_inprocessing_minimization_use_conflict_analysis() const
void clear_use_extended_probing()
::int32_t shared_tree_num_workers() const
bool has_check_merged_lrat_proof() const
void clear_cover_optimization()
static constexpr ConflictMinimizationAlgorithm SIMPLE
bool extra_subsumption_during_conflict_analysis() const
void clear_table_compression_level()
bool has_feasibility_jump_var_randomization_probability() const
void set_polarity_rephase_increment(::int32_t value)
void set_output_lrat_proof(bool value)
::int32_t feasibility_jump_restart_factor() const
void set_use_overload_checker_in_cumulative(bool value)
void set_find_big_linear_overlap(bool value)
void set_log_to_stdout(bool value)
void set_use_extended_probing(bool value)
bool has_max_clause_activity_value() const
bool has_clause_cleanup_lbd_tier1() const
void set_presolve_blocked_clause(bool value)
void clear_clause_cleanup_lbd_bound()
void clear_presolve_inclusion_work_limit()
bool has_use_implied_bounds() const
bool has_push_all_tasks_toward_start() const
void set_use_exact_lp_reason(bool value)
void set_num_workers(::int32_t value)
void set_filter_subsolvers(int index, Arg_ &&value, Args_... args)
void set_use_feasibility_pump(bool value)
void clear_exploit_relaxation_solution()
double random_polarity_ratio() const
void clear_max_size_to_create_precedence_literals_in_disjunctive()
bool use_shared_tree_search() const
bool has_max_size_to_create_precedence_literals_in_disjunctive() const
static constexpr MaxSatStratificationAlgorithm STRATIFICATION_ASCENT
bool has_max_memory_in_mb() const
void set_mip_presolve_level(::int32_t value)
const ::std::string & subsolvers(int index) const
void set_encode_cumulative_as_reservoir(bool value)
static constexpr SearchBranching PSEUDO_COST_SEARCH
static bool BinaryMinizationAlgorithm_IsValid(int value)
::int32_t max_num_deterministic_batches() const
void set_use_linear3_for_no_overlap_2d_precedences(bool value)
void set_convert_intervals(bool value)
static bool VariableOrder_IsValid(int value)
void clear_use_objective_lb_search()
::int32_t max_num_cuts() const
void clear_use_optimization_hints()
bool has_presolve_bve_clause_weight() const
void set_use_timetabling_in_no_overlap_2d(bool value)
void clear_shared_tree_max_nodes_per_worker()
bool add_clique_cuts() const
bool push_all_tasks_toward_start() const
void set_interleave_search(bool value)
bool log_search_progress() const
bool has_table_compression_level() const
bool has_output_lrat_proof() const
void set_inprocessing_minimization_dtime(double value)
bool has_share_level_zero_bounds() const
void set_max_clause_activity_value(double value)
void set_stop_after_presolve(bool value)
bool has_save_lp_basis_in_lb_tree_search() const
void clear_expand_reservoir_constraints()
void clear_no_overlap_2d_boolean_relations_limit()
bool has_interleave_search() const
void set_clause_cleanup_period(::int32_t value)
double feasibility_jump_var_perburbation_range_ratio() const
::std::string *PROTOBUF_NULLABLE release_default_restart_algorithms()
::int32_t core_minimization_level() const
void set_lns_initial_difficulty(double value)
bool has_exploit_best_solution() const
::int32_t max_all_diff_cut_size() const
bool has_presolve_blocked_clause() const
bool disable_constraint_expansion() const
void clear_fill_additional_solutions_in_response()
bool has_mip_check_precision() const
void clear_remove_fixed_variables_early()
bool has_lp_dual_tolerance() const
void clear_cp_model_probing_level()
void set_use_lns(bool value)
bool use_dual_scheduling_heuristics() const
double mip_wanted_precision() const
void clear_minimize_shared_clauses()
bool presolve_extract_integer_enforcement() const
bool has_use_conservative_scale_overload_checker() const
::int32_t clause_cleanup_target() const
void clear_cp_model_presolve()
bool has_presolve_bva_threshold() const
void clear_presolve_bve_threshold()
void set_max_sat_assumption_order(::operations_research::sat::SatParameters_MaxSatAssumptionOrder value)
void clear_restart_dl_average_ratio()
void clear_inprocessing_dtime_ratio()
void clear_mip_presolve_level()
double lns_initial_deterministic_limit() const
void clear_clause_cleanup_ratio()
void set_merge_no_overlap_work_limit(double value)
void clear_random_polarity_ratio()
bool use_implied_bounds() const
void set_share_linear2_bounds(bool value)
bool has_feasibility_jump_restart_factor() const
void set_optimize_with_core(bool value)
bool has_share_objective_bounds() const
SatParameters(const SatParameters &from)
bool has_infer_all_diffs() const
SatParameters_ClauseOrdering ClauseOrdering
bool has_use_absl_random() const
void clear_presolve_use_bva()
void clear_exploit_all_precedences()
bool cover_optimization() const
void clear_only_solve_ip()
double mip_max_bound() const
void set_subsolvers(int index, Arg_ &&value, Args_... args)
void set_presolve_bva_threshold(::int32_t value)
bool has_ignore_names() const
bool has_routing_cut_max_infeasible_path_length() const
bool has_presolve_inclusion_work_limit() const
void set_at_most_one_max_expansion_size(::int32_t value)
bool has_max_sat_assumption_order() const
void clear_use_exact_lp_reason()
bool find_multiple_cores() const
void clear_use_objective_shaving_search()
void set_random_seed(::int32_t value)
void clear_shared_tree_worker_enable_phase_sharing()
void set_add_lin_max_cuts(bool value)
void set_max_variable_activity_value(double value)
void set_encode_complex_linear_constraint_with_integer(bool value)
bool IsInitialized() const
::int32_t presolve_substitution_level() const
bool use_new_integer_conflict_resolution() const
bool has_max_drat_time_in_seconds() const
bool has_share_glue_clauses() const
bool use_linear3_for_no_overlap_2d_precedences() const
void set_use_disjunctive_constraint_in_cumulative(bool value)
bool inprocessing_use_sat_sweeping() const
void set_feasibility_jump_var_randomization_probability(double value)
void set_presolve_bve_clause_weight(::int32_t value)
void clear_max_clause_activity_value()
bool has_mip_automatically_scale_variables() const
bool has_pb_cleanup_increment() const
double mip_drop_tolerance() const
bool has_num_violation_ls() const
void clear_chronological_backtrack_min_conflicts()
double glucose_decay_increment() const
bool has_add_rlt_cuts() const
bool has_probing_num_combinations_limit() const
void set_use_dynamic_precedence_in_cumulative(bool value)
bool has_presolve_bve_threshold() const
bool randomize_search() const
void clear_use_precedences_in_disjunctive_constraint()
void set_decision_subsumption_during_conflict_analysis(bool value)
void clear_interleave_search()
void set_use_dynamic_precedence_in_disjunctive(bool value)
void clear_max_sat_assumption_order()
void set_use_all_different_for_circuit(bool value)
bool has_feasibility_jump_max_expanded_constraint_size() const
void set_use_objective_shaving_search(bool value)
bool has_max_cut_rounds_at_level_zero() const
void clear_use_dual_scheduling_heuristics()
::int32_t clause_cleanup_lbd_bound() const
void set_routing_cut_dp_effort(double value)
void set_transitive_precedences_work_limit(::int32_t value)
void set_max_sat_reverse_assumption_order(bool value)
bool has_cover_optimization() const
void clear_search_branching()
static constexpr int MaxSatStratificationAlgorithm_ARRAYSIZE
void set_shared_tree_balance_tolerance(::int32_t value)
void set_ignore_names(bool value)
void clear_restart_running_window_size()
double shaving_search_deterministic_time() const
void set_mip_var_scaling(double value)
void set_output_drat_proof(bool value)
bool has_blocking_restart_window_size() const
void set_infer_all_diffs(bool value)
void set_max_sat_stratification(::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm value)
void clear_permute_presolve_constraint_order()
bool use_hard_precedences_in_cumulative() const
bool use_timetable_edge_finding_in_cumulative() const
bool shared_tree_worker_enable_phase_sharing() const
void clear_new_linear_propagation()
::operations_research::sat::SatParameters *PROTOBUF_NONNULL mutable_subsolver_params(int index)
bool has_find_clauses_that_are_exactly_one() const
bool share_binary_clauses() const
void clear_maximum_regions_to_split_in_disconnected_no_overlap_2d()
bool has_restart_period() const
double restart_lbd_average_ratio() const
void clear_max_deterministic_time()
void set_feasibility_jump_enable_restarts(bool value)
bool mip_treat_high_magnitude_bounds_as_infinity() const
bool has_max_number_of_conflicts() const
void clear_find_clauses_that_are_exactly_one()
void clear_use_feasibility_pump()
::operations_research::sat::SatParameters_SharedTreeSplitStrategy shared_tree_split_strategy() const
void clear_subsumption_during_conflict_analysis()
void clear_merge_at_most_one_work_limit()
void clear_use_lb_relax_lns()
bool cp_model_use_sat_presolve() const
void set_maximum_regions_to_split_in_disconnected_no_overlap_2d(::int32_t value)
void clear_also_bump_variables_in_conflict_reasons()
bool has_minimize_shared_clauses() const
void set_use_objective_lb_search(bool value)
::operations_research::sat::SatParameters_Polarity initial_polarity() const
bool add_mir_cuts() const
bool has_use_lns_only() const
SatParameters_BinaryMinizationAlgorithm BinaryMinizationAlgorithm
static bool ClauseOrdering_IsValid(int value)
void set_max_alldiff_domain_size(::int32_t value)
bool has_decision_subsumption_during_conflict_analysis() const
bool has_use_optimization_hints() const
::std::string *PROTOBUF_NULLABLE release_name()
const ::std::string & name() const
bool has_use_chronological_backtracking() const
void set_violation_ls_perturbation_period(::int32_t value)
::int32_t cut_cleanup_target() const
bool has_search_branching() const
bool has_mip_var_scaling() const
bool check_merged_lrat_proof() const
void clear_mip_wanted_precision()
void set_cut_cleanup_target(::int32_t value)
::int32_t chronological_backtrack_min_conflicts() const
void set_exploit_all_precedences(bool value)
::int32_t symmetry_level() const
void set_filter_sat_postsolve_clauses(bool value)
bool has_use_sat_inprocessing() const
void set_fill_additional_solutions_in_response(bool value)
void set_max_all_diff_cut_size(::int32_t value)
static constexpr SearchBranching HINT_SEARCH
void clear_restart_period()
bool has_clause_cleanup_lbd_tier2() const
void set_use_absl_random(bool value)
void clear_decision_subsumption_during_conflict_analysis()
void set_debug_postsolve_with_full_solver(bool value)
bool has_clause_activity_decay() const
::int32_t cp_model_probing_level() const
bool mip_compute_true_objective_bound() const
void set_share_glue_clauses_dtime(double value)
void clear_add_zero_half_cuts()
bool debug_crash_if_presolve_breaks_hint() const
bool has_exploit_objective() const
bool has_encode_complex_linear_constraint_with_integer() const
void clear_debug_crash_if_lrat_check_fails()
bool shared_tree_worker_enable_trail_sharing() const
bool has_randomize_search() const
::int32_t debug_max_num_presolve_operations() const
void clear_linear_split_size()
void clear_use_sat_inprocessing()
bool has_also_bump_variables_in_conflict_reasons() const
void set_log_search_progress(bool value)
void clear_diversify_lns_params()
::int32_t feasibility_jump_max_expanded_constraint_size() const
const ::std::string & filter_subsolvers(int index) const
SatParameters_Polarity Polarity
static constexpr RestartAlgorithm LBD_MOVING_AVERAGE_RESTART
::int32_t max_domain_size_for_linear2_expansion() const
void clear_shaving_deterministic_time_in_probing_search()
bool has_add_objective_cut() const
void set_use_combined_no_overlap(bool value)
::operations_research::sat::SatParameters_SearchBranching search_branching() const
bool has_search_random_variable_pool_size() const
bool has_max_deterministic_time() const
SatParameters_FPRoundingMethod FPRoundingMethod
double restart_dl_average_ratio() const
bool has_cp_model_presolve() const
void set_use_timetable_edge_finding_in_cumulative(bool value)
void set_share_objective_bounds(bool value)
SatParameters_MaxSatAssumptionOrder MaxSatAssumptionOrder
void clear_glucose_max_decay()
void clear_violation_ls_perturbation_period()
double random_branches_ratio() const
void clear_max_num_deterministic_batches()
void set_fill_tightened_domains_in_response(bool value)
void set_use_pb_resolution(bool value)
bool mip_scale_large_domain() const
double routing_cut_dp_effort() const
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_OBJECTIVE_LB
void clear_shared_tree_worker_enable_trail_sharing()
void clear_use_phase_saving()
bool presolve_blocked_clause() const
void set_mip_max_bound(double value)
void set_relative_gap_limit(double value)
::std::string *PROTOBUF_NONNULL add_ignore_subsolvers()
bool has_num_workers() const
void clear_polarity_exploit_ls_hints()
static constexpr VariableOrder IN_RANDOM_ORDER
void set_minimize_reduction_during_pb_resolution(bool value)
bool has_num_full_subsolvers() const
bool has_share_glue_clauses_dtime() const
bool infer_all_diffs() const
static constexpr int ClauseOrdering_ARRAYSIZE
::int64_t presolve_inclusion_work_limit() const
bool has_max_time_in_seconds() const
void set_propagation_loop_detection_factor(double value)
void set_polish_lp_solution(bool value)
bool use_chronological_backtracking() const
void set_instantiate_all_variables(bool value)
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
bool has_max_variable_activity_value() const
bool exploit_objective() const
static constexpr SharedTreeSplitStrategy SPLIT_STRATEGY_FIRST_PROPOSAL
void clear_cut_cleanup_target()
void clear_eagerly_subsume_last_n_conflicts()
void set_add_cg_cuts(bool value)
SatParameters & operator=(const SatParameters &from)
void clear_share_objective_bounds()
bool has_use_ls_only() const
void set_max_num_intervals_for_timetable_edge_finding(::int32_t value)
bool has_binary_minimization_algorithm() const
void clear_core_minimization_level()
::int32_t glucose_decay_increment_period() const
::int32_t cut_level() const
bool inprocessing_minimization_use_conflict_analysis() const
::int32_t max_alldiff_domain_size() const
bool filter_sat_postsolve_clauses() const
void set_binary_search_num_conflicts(::int32_t value)
bool has_expand_alldiff_constraints() const
void set_check_drat_proof(bool value)
::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm minimization_algorithm() const
void set_expand_reservoir_constraints(bool value)
double mip_var_scaling() const
::int32_t clause_cleanup_lbd_tier1() const
::int32_t random_seed() const
void clear_exploit_objective()
void set_add_lp_constraints_lazily(bool value)
bool has_restart_lbd_average_ratio() const
void clear_solution_pool_size()
bool remove_fixed_variables_early() const
void clear_mip_treat_high_magnitude_bounds_as_infinity()
::std::string *PROTOBUF_NONNULL mutable_extra_subsolvers(int index)
bool has_routing_cut_subset_size_for_exact_binary_relation_bound() const
::std::string *PROTOBUF_NONNULL mutable_name()
static constexpr VariableOrder IN_REVERSE_ORDER
bool polarity_exploit_ls_hints() const
const ::google::protobuf::RepeatedPtrField<::operations_research::sat::SatParameters > & subsolver_params() const
bool has_polish_lp_solution() const
void clear_use_linear3_for_no_overlap_2d_precedences()
void set_name(Arg_ &&arg, Args_... args)
void clear_add_lp_constraints_lazily()
double presolve_probing_deterministic_time_limit() const
void set_expand_reservoir_using_circuit(bool value)
void clear_num_full_subsolvers()
void set_probing_deterministic_time_limit(double value)
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_FROM_UIP
static constexpr SearchBranching PORTFOLIO_WITH_QUICK_RESTART_SEARCH
bool has_violation_ls_perturbation_period() const
void clear_feasibility_jump_decay()
bool has_min_orthogonality_for_lp_constraints() const
void clear_save_lp_basis_in_lb_tree_search()
int filter_subsolvers_size() const
void clear_num_violation_ls()
bool share_level_zero_bounds() const
bool has_preferred_variable_order() const
bool has_exploit_integer_lp_solution() const
bool has_mip_wanted_precision() const
bool has_clause_cleanup_target() const
void clear_variable_activity_decay()
int extra_subsolvers_size() const
bool has_pseudo_cost_reliability_threshold() const
void set_permute_variable_randomly(bool value)
void clear_add_mir_cuts()
void set_expand_alldiff_constraints(bool value)
bool has_stop_after_first_solution() const
bool has_optimize_with_core() const
void clear_share_glue_clauses()
void set_no_overlap_2d_boolean_relations_limit(::int32_t value)
void clear_use_combined_no_overlap()
void clear_create_1uip_boolean_during_icr()
bool minimize_shared_clauses() const
void set_clause_cleanup_ratio(double value)
void clear_use_try_edge_reasoning_in_no_overlap_2d()
bool has_restart_dl_average_ratio() const
void clear_max_presolve_iterations()
bool has_feasibility_jump_enable_restarts() const
static constexpr Polarity POLARITY_RANDOM
bool only_solve_ip() const
void clear_symmetry_detection_deterministic_time_limit()
bool has_shared_tree_balance_tolerance() const
bool has_max_backjump_levels() const
bool find_clauses_that_are_exactly_one() const
bool has_cp_model_probing_level() const
bool has_add_lp_constraints_lazily() const
void clear_instantiate_all_variables()
double inprocessing_minimization_dtime() const
bool debug_crash_if_lrat_check_fails() const
void clear_share_linear2_bounds()
void set_polarity_exploit_ls_hints(bool value)
bool has_variable_activity_decay() const
static constexpr int MaxSatAssumptionOrder_ARRAYSIZE
void clear_clause_cleanup_period_increment()
void clear_use_optional_variables()
bool has_routing_cut_subset_size_for_binary_relation_bound() const
void set_shared_tree_num_workers(::int32_t value)
bool has_stop_after_root_propagation() const
void set_blocking_restart_window_size(::int32_t value)
void clear_stop_after_first_solution()
void clear_violation_ls_compound_move_probability()
static constexpr SearchBranching LP_SEARCH
void clear_max_cut_rounds_at_level_zero()
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
bool has_log_search_progress() const
void clear_fill_tightened_domains_in_response()
void clear_probing_num_combinations_limit()
void clear_num_conflicts_before_strategy_changes()
void clear_pb_cleanup_increment()
void set_use_lns_only(bool value)
bool has_minimization_algorithm() const
::int32_t maximum_regions_to_split_in_disconnected_no_overlap_2d() const
double absolute_gap_limit() const
void set_enumerate_all_solutions(bool value)
static constexpr RestartAlgorithm LUBY_RESTART
::std::string *PROTOBUF_NONNULL add_extra_subsolvers()
static bool SearchBranching_IsValid(int value)
bool has_use_energetic_reasoning_in_no_overlap_2d() const
void clear_clause_cleanup_period()
void set_debug_crash_if_presolve_breaks_hint(bool value)
bool use_area_energetic_reasoning_in_no_overlap_2d() const
bool has_add_zero_half_cuts() const
void clear_infer_all_diffs()
static constexpr int SharedTreeSplitStrategy_ARRAYSIZE
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SharedTreeSplitStrategy_descriptor()
void set_interleave_batch_size(::int32_t value)
static const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL MaxSatStratificationAlgorithm_descriptor()
void clear_max_drat_time_in_seconds()
::int32_t num_workers() const
bool has_catch_sigint_signal() const
bool encode_complex_linear_constraint_with_integer() const
bool has_inprocessing_probing_dtime() const
bool has_new_constraints_batch_size() const
void clear_count_assumption_levels_in_lbd()
void clear_max_domain_size_when_encoding_eq_neq_constraints()
void clear_use_dynamic_precedence_in_cumulative()
void clear_presolve_extract_integer_enforcement()
bool has_repair_hint() const
void set_use_try_edge_reasoning_in_no_overlap_2d(bool value)
void set_max_consecutive_inactive_count(::int32_t value)
double lns_initial_difficulty() const
bool has_use_try_edge_reasoning_in_no_overlap_2d() const
bool has_hint_conflict_limit() const
void clear_propagation_loop_detection_factor()
void clear_root_lp_iterations()
void set_max_domain_size_when_encoding_eq_neq_constraints(::int32_t value)
bool has_max_num_deterministic_batches() const
bool has_glucose_decay_increment() const
void set_randomize_search(bool value)
void set_feasibility_jump_decay(double value)
::int32_t restart_running_window_size() const
bool exploit_relaxation_solution() const
void clear_inprocessing_minimization_use_conflict_analysis()
bool detect_linearized_product() const
bool has_expand_reservoir_using_circuit() const
void clear_share_glue_clauses_dtime()
bool has_permute_presolve_constraint_order() const
::int32_t presolve_bve_clause_weight() const
void clear_use_rins_lns()
void clear_max_backjump_levels()
void clear_mip_drop_tolerance()
void set_cp_model_probing_level(::int32_t value)
::int32_t max_consecutive_inactive_count() const
void set_num_full_subsolvers(::int32_t value)
bool has_pb_cleanup_ratio() const
double clause_activity_decay() const
double relative_gap_limit() const
bool use_symmetry_in_lp() const
void set_lb_relax_num_workers_threshold(::int32_t value)
static constexpr int VariableOrder_ARRAYSIZE
bool has_cut_cleanup_target() const
bool has_core_minimization_level() const
void clear_optimize_with_core()
::int32_t alternative_pool_size() const
bool optimize_with_max_hs() const
void clear_variables_shaving_level()
void clear_presolve_blocked_clause()
::int32_t no_overlap_2d_boolean_relations_limit() const
bool presolve_use_bva() const
void set_new_linear_propagation(bool value)
bool has_lns_initial_difficulty() const
void set_use_rins_lns(bool value)
bool has_strategy_change_increase_ratio() const
void set_use_conservative_scale_overload_checker(bool value)
bool has_shaving_deterministic_time_in_probing_search() const
bool has_clause_cleanup_lbd_bound() const
::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 clear_check_merged_lrat_proof()
void set_search_random_variable_pool_size(::int64_t value)
void clear_convert_intervals()
::int32_t probing_num_combinations_limit() const
void set_cut_max_active_count_value(double value)
void clear_presolve_bve_clause_weight()
::int32_t max_integer_rounding_scaling() const
bool has_max_presolve_iterations() const
bool has_max_sat_stratification() const
static constexpr BinaryMinizationAlgorithm BINARY_MINIMIZATION_FROM_UIP_AND_DECISIONS
void set_mip_scale_large_domain(bool value)
bool has_optimize_with_lb_tree_search() const
bool has_log_to_response() const
void set_presolve_inclusion_work_limit(::int64_t value)
void set_shaving_search_threshold(::int64_t value)
::int32_t root_lp_iterations() const
void clear_mip_automatically_scale_variables()
void set_shaving_search_deterministic_time(double value)
void clear_binary_minimization_algorithm()
void set_load_at_most_ones_in_sat_presolve(bool value)
bool use_strong_propagation_in_disjunctive() const
void set_restart_dl_average_ratio(double value)
void set_inprocessing_probing_dtime(double value)
bool interleave_search() const
void clear_shared_tree_num_workers()
bool has_linear_split_size() const
void set_chronological_backtrack_min_conflicts(::int32_t value)
bool has_shared_tree_split_strategy() const
bool has_no_overlap_2d_boolean_relations_limit() const
static constexpr ConflictMinimizationAlgorithm RECURSIVE
void set_log_subsolver_statistics(bool value)
bool log_to_stdout() const
void set_share_binary_clauses(bool value)
bool has_shaving_search_threshold() const
void clear_push_all_tasks_toward_start()
::int32_t interleave_batch_size() const
void clear_max_all_diff_cut_size()
bool has_max_sat_reverse_assumption_order() const
bool cp_model_presolve() const
void clear_stop_after_presolve()
bool has_use_rins_lns() const
void clear_feasibility_jump_restart_factor()
void clear_merge_no_overlap_work_limit()
bool mip_automatically_scale_variables() const
bool has_mip_max_valid_magnitude() const
void set_clause_cleanup_lbd_tier1(::int32_t value)
bool also_bump_variables_in_conflict_reasons() const
void set_log_prefix(Arg_ &&arg, Args_... args)
void set_mip_wanted_precision(double value)
void clear_mip_var_scaling()
void clear_polarity_rephase_increment()
::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
@ 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)
SatParameters_RestartAlgorithm
@ SatParameters_RestartAlgorithm_LUBY_RESTART
@ SatParameters_RestartAlgorithm_FIXED_RESTART
@ SatParameters_RestartAlgorithm_LBD_MOVING_AVERAGE_RESTART
@ SatParameters_RestartAlgorithm_NO_RESTART
@ SatParameters_RestartAlgorithm_DL_MOVING_AVERAGE_RESTART
SatParameters_VariableOrder
@ SatParameters_VariableOrder_IN_RANDOM_ORDER
@ SatParameters_VariableOrder_IN_ORDER
@ SatParameters_VariableOrder_IN_REVERSE_ORDER
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
@ 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
@ SatParameters_Polarity_POLARITY_FALSE
@ SatParameters_Polarity_POLARITY_TRUE
@ SatParameters_Polarity_POLARITY_RANDOM
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
@ 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
SatParameters_FPRoundingMethod
@ SatParameters_FPRoundingMethod_ACTIVE_LOCK_BASED
@ SatParameters_FPRoundingMethod_LOCK_BASED
@ SatParameters_FPRoundingMethod_NEAREST_INTEGER
@ SatParameters_FPRoundingMethod_PROPAGATION_ASSISTED
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
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_BALANCED_TREE
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_DISCREPANCY
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_OBJECTIVE_LB
@ SatParameters_SharedTreeSplitStrategy_SPLIT_STRATEGY_AUTO
@ 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
SatParameters_ClauseOrdering
@ SatParameters_ClauseOrdering_CLAUSE_LBD
@ SatParameters_ClauseOrdering_CLAUSE_ACTIVITY
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
SatParameters_ConflictMinimizationAlgorithm
@ SatParameters_ConflictMinimizationAlgorithm_SIMPLE
@ SatParameters_ConflictMinimizationAlgorithm_RECURSIVE
@ SatParameters_ConflictMinimizationAlgorithm_NONE
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
@ SatParameters_SearchBranching_PSEUDO_COST_SEARCH
@ SatParameters_SearchBranching_PARTIAL_FIXED_SEARCH
@ SatParameters_SearchBranching_PORTFOLIO_WITH_QUICK_RESTART_SEARCH
@ SatParameters_SearchBranching_FIXED_SEARCH
@ SatParameters_SearchBranching_RANDOMIZED_SEARCH
@ SatParameters_SearchBranching_HINT_SEARCH
@ SatParameters_SearchBranching_PORTFOLIO_SEARCH
@ SatParameters_SearchBranching_LP_SEARCH
@ SatParameters_SearchBranching_AUTOMATIC_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()
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fsat_2fsat_5fparameters_2eproto