4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fsat_5fparameters_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fsat_5fparameters_2eproto
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3013000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
16 #if 3013000 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata_lite.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h>
33 #include <google/protobuf/extension_set.h>
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
37 #include <google/protobuf/port_def.inc>
38 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fsat_5fparameters_2eproto
39 PROTOBUF_NAMESPACE_OPEN
43 PROTOBUF_NAMESPACE_CLOSE
47 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
49 static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
51 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
53 static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata
field_metadata[];
61 class SatParametersDefaultTypeInternal;
65 PROTOBUF_NAMESPACE_OPEN
66 template<> ::operations_research::sat::SatParameters* Arena::CreateMaybeMessage<::operations_research::sat::SatParameters>(Arena*);
67 PROTOBUF_NAMESPACE_CLOSE
86 "Incorrect type passed to function SatParameters_VariableOrder_Name.");
87 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
92 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_VariableOrder>(
112 "Incorrect type passed to function SatParameters_Polarity_Name.");
113 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
118 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_Polarity>(
137 "Incorrect type passed to function SatParameters_ConflictMinimizationAlgorithm_Name.");
138 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
143 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_ConflictMinimizationAlgorithm>(
163 "Incorrect type passed to function SatParameters_BinaryMinizationAlgorithm_Name.");
164 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
169 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_BinaryMinizationAlgorithm>(
187 "Incorrect type passed to function SatParameters_ClauseProtection_Name.");
188 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
193 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_ClauseProtection>(
210 "Incorrect type passed to function SatParameters_ClauseOrdering_Name.");
211 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
216 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_ClauseOrdering>(
236 "Incorrect type passed to function SatParameters_RestartAlgorithm_Name.");
237 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
242 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_RestartAlgorithm>(
260 "Incorrect type passed to function SatParameters_MaxSatAssumptionOrder_Name.");
261 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
266 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_MaxSatAssumptionOrder>(
284 "Incorrect type passed to function SatParameters_MaxSatStratificationAlgorithm_Name.");
285 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
290 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_MaxSatStratificationAlgorithm>(
312 "Incorrect type passed to function SatParameters_SearchBranching_Name.");
313 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
318 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_SearchBranching>(
337 "Incorrect type passed to function SatParameters_FPRoundingMethod_Name.");
338 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
343 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<SatParameters_FPRoundingMethod>(
349 public ::PROTOBUF_NAMESPACE_ID::Message {
357 *
this = ::std::move(from);
360 inline SatParameters&
operator=(
const SatParameters& from) {
364 inline SatParameters&
operator=(SatParameters&& from) noexcept {
365 if (GetArena() == from.GetArena()) {
366 if (
this != &from) InternalSwap(&from);
374 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
377 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
380 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
381 return GetDescriptor();
384 return GetMetadataStatic().descriptor;
387 return GetMetadataStatic().reflection;
393 return reinterpret_cast<const SatParameters*
>(
396 static constexpr
int kIndexInFileMessages =
399 friend void swap(SatParameters&
a, SatParameters&
b) {
402 inline void Swap(SatParameters* other) {
403 if (other ==
this)
return;
404 if (GetArena() == other->GetArena()) {
407 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
411 if (other ==
this)
return;
412 GOOGLE_DCHECK(GetArena() == other->GetArena());
418 inline SatParameters*
New() const final {
419 return CreateMaybeMessage<SatParameters>(
nullptr);
422 SatParameters*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
423 return CreateMaybeMessage<SatParameters>(arena);
425 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
426 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
429 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
430 bool IsInitialized() const final;
432 size_t ByteSizeLong() const final;
433 const
char* _InternalParse(const
char* ptr, ::PROTOBUF_NAMESPACE_ID::
internal::ParseContext* ctx) final;
434 ::PROTOBUF_NAMESPACE_ID::
uint8* _InternalSerialize(
435 ::PROTOBUF_NAMESPACE_ID::
uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
436 int GetCachedSize() const final {
return _cached_size_.Get(); }
439 inline void SharedCtor();
440 inline void SharedDtor();
441 void SetCachedSize(
int size)
const final;
442 void InternalSwap(SatParameters* other);
443 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
444 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
445 return "operations_research.sat.SatParameters";
450 static void ArenaDtor(
void*
object);
451 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
456 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
479 static constexpr
int VariableOrder_ARRAYSIZE =
481 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
489 "Incorrect type passed to function VariableOrder_Name.");
506 static constexpr
Polarity POLARITY_REVERSE_WEIGHTED_SIGN =
515 static constexpr
int Polarity_ARRAYSIZE =
517 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
525 "Incorrect type passed to function Polarity_Name.");
549 static constexpr
int ConflictMinimizationAlgorithm_ARRAYSIZE =
551 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
559 "Incorrect type passed to function ConflictMinimizationAlgorithm_Name.");
585 static constexpr
int BinaryMinizationAlgorithm_ARRAYSIZE =
587 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
595 "Incorrect type passed to function BinaryMinizationAlgorithm_Name.");
617 static constexpr
int ClauseProtection_ARRAYSIZE =
619 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
627 "Incorrect type passed to function ClauseProtection_Name.");
647 static constexpr
int ClauseOrdering_ARRAYSIZE =
649 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
657 "Incorrect type passed to function ClauseOrdering_Name.");
683 static constexpr
int RestartAlgorithm_ARRAYSIZE =
685 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
693 "Incorrect type passed to function RestartAlgorithm_Name.");
715 static constexpr
int MaxSatAssumptionOrder_ARRAYSIZE =
717 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
725 "Incorrect type passed to function MaxSatAssumptionOrder_Name.");
747 static constexpr
int MaxSatStratificationAlgorithm_ARRAYSIZE =
749 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
757 "Incorrect type passed to function MaxSatStratificationAlgorithm_Name.");
787 static constexpr
int SearchBranching_ARRAYSIZE =
789 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
797 "Incorrect type passed to function SearchBranching_Name.");
821 static constexpr
int FPRoundingMethod_ARRAYSIZE =
823 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
831 "Incorrect type passed to function FPRoundingMethod_Name.");
842 kRestartAlgorithmsFieldNumber = 61,
843 kDefaultRestartAlgorithmsFieldNumber = 70,
844 kNameFieldNumber = 171,
845 kPreferredVariableOrderFieldNumber = 1,
846 kMaxSatAssumptionOrderFieldNumber = 51,
847 kRandomBranchesRatioFieldNumber = 32,
848 kRandomPolarityRatioFieldNumber = 45,
849 kClauseCleanupProtectionFieldNumber = 58,
850 kClauseCleanupOrderingFieldNumber = 60,
851 kUseErwaHeuristicFieldNumber = 75,
852 kAlsoBumpVariablesInConflictReasonsFieldNumber = 77,
853 kUseBlockingRestartFieldNumber = 64,
854 kLogSearchProgressFieldNumber = 41,
855 kNumConflictsBeforeStrategyChangesFieldNumber = 68,
856 kStrategyChangeIncreaseRatioFieldNumber = 69,
857 kInitialVariablesActivityFieldNumber = 76,
858 kSearchBranchingFieldNumber = 82,
859 kUsePbResolutionFieldNumber = 43,
860 kMinimizeReductionDuringPbResolutionFieldNumber = 48,
861 kCpModelPostsolveWithFullSolverFieldNumber = 162,
862 kUseSatInprocessingFieldNumber = 163,
863 kSearchRandomizationToleranceFieldNumber = 104,
864 kUseTimetableEdgeFindingInCumulativeConstraintFieldNumber = 79,
865 kOnlyAddCutsAtLevelZeroFieldNumber = 92,
866 kAddKnapsackCutsFieldNumber = 111,
867 kRepairHintFieldNumber = 167,
868 kExploitBestSolutionFieldNumber = 130,
869 kExploitRelaxationSolutionFieldNumber = 161,
870 kOptimizeWithCoreFieldNumber = 83,
871 kOptimizeWithMaxHsFieldNumber = 85,
872 kExpandAlldiffConstraintsFieldNumber = 170,
873 kPresolveExtractIntegerEnforcementFieldNumber = 174,
874 kMaxSatReverseAssumptionOrderFieldNumber = 52,
875 kUseOverloadCheckerInCumulativeConstraintFieldNumber = 78,
876 kEnumerateAllSolutionsFieldNumber = 87,
877 kKeepAllFeasibleSolutionsInPresolveFieldNumber = 173,
878 kFillTightenedDomainsInResponseFieldNumber = 132,
879 kStopAfterFirstSolutionFieldNumber = 98,
880 kLnsFocusOnDecisionVariablesFieldNumber = 105,
881 kUseRelaxationLnsFieldNumber = 150,
882 kDiversifyLnsParamsFieldNumber = 137,
883 kRandomizeSearchFieldNumber = 103,
884 kStopAfterPresolveFieldNumber = 149,
885 kInterleaveSearchFieldNumber = 136,
886 kReduceMemoryUsageInInterleaveModeFieldNumber = 141,
887 kUseLnsOnlyFieldNumber = 101,
888 kProbingPeriodAtRootFieldNumber = 142,
889 kUseBranchingInLpFieldNumber = 139,
890 kUseCombinedNoOverlapFieldNumber = 133,
891 kPolishLpSolutionFieldNumber = 175,
892 kCpModelMaxNumPresolveOperationsFieldNumber = 151,
893 kAbsoluteGapLimitFieldNumber = 159,
894 kRelativeGapLimitFieldNumber = 160,
895 kPolarityRephaseIncrementFieldNumber = 168,
896 kInitialPolarityFieldNumber = 2,
897 kMinimizationAlgorithmFieldNumber = 4,
898 kClauseCleanupPeriodFieldNumber = 11,
899 kClauseCleanupTargetFieldNumber = 13,
900 kVariableActivityDecayFieldNumber = 15,
901 kMaxVariableActivityValueFieldNumber = 16,
902 kClauseActivityDecayFieldNumber = 17,
903 kMaxClauseActivityValueFieldNumber = 18,
904 kGlucoseMaxDecayFieldNumber = 22,
905 kGlucoseDecayIncrementFieldNumber = 23,
906 kGlucoseDecayIncrementPeriodFieldNumber = 24,
907 kRestartPeriodFieldNumber = 30,
908 kRandomSeedFieldNumber = 31,
909 kBinaryMinimizationAlgorithmFieldNumber = 34,
910 kMaxTimeInSecondsFieldNumber = 36,
911 kMaxNumberOfConflictsFieldNumber = 37,
912 kMaxMemoryInMbFieldNumber = 40,
913 kUsePhaseSavingFieldNumber = 44,
914 kSubsumptionDuringConflictAnalysisFieldNumber = 56,
915 kTreatBinaryClausesSeparatelyFieldNumber = 33,
916 kCountAssumptionLevelsInLbdFieldNumber = 49,
917 kPbCleanupIncrementFieldNumber = 46,
918 kPbCleanupRatioFieldNumber = 47,
919 kMaxSatStratificationFieldNumber = 53,
920 kPresolveBveThresholdFieldNumber = 54,
921 kPresolveProbingDeterministicTimeLimitFieldNumber = 57,
922 kPresolveBveClauseWeightFieldNumber = 55,
923 kClauseCleanupLbdBoundFieldNumber = 59,
924 kRestartDlAverageRatioFieldNumber = 63,
925 kRestartRunningWindowSizeFieldNumber = 62,
926 kBlockingRestartWindowSizeFieldNumber = 65,
927 kBlockingRestartMultiplierFieldNumber = 66,
928 kMaxDeterministicTimeFieldNumber = 67,
929 kRestartLbdAverageRatioFieldNumber = 71,
930 kPresolveBvaThresholdFieldNumber = 73,
931 kMinimizeCoreFieldNumber = 50,
932 kFindMultipleCoresFieldNumber = 84,
933 kCoverOptimizationFieldNumber = 89,
934 kUsePrecedencesInDisjunctiveConstraintFieldNumber = 74,
935 kPresolveBlockedClauseFieldNumber = 88,
936 kPresolveUseBvaFieldNumber = 72,
937 kCpModelPresolveFieldNumber = 86,
938 kCpModelUseSatPresolveFieldNumber = 93,
939 kLinearizationLevelFieldNumber = 90,
940 kMaxNumCutsFieldNumber = 91,
941 kMinimizeWithPropagationRestartPeriodFieldNumber = 96,
942 kMinimizeWithPropagationNumDecisionsFieldNumber = 97,
943 kBinarySearchNumConflictsFieldNumber = 99,
944 kNumSearchWorkersFieldNumber = 100,
945 kBooleanEncodingLevelFieldNumber = 107,
946 kCpModelProbingLevelFieldNumber = 110,
947 kExploitAllLpSolutionFieldNumber = 116,
948 kExploitObjectiveFieldNumber = 131,
949 kInstantiateAllVariablesFieldNumber = 106,
950 kAutoDetectGreaterThanAtLeastOneOfFieldNumber = 95,
951 kMinOrthogonalityForLpConstraintsFieldNumber = 115,
952 kMaxIntegerRoundingScalingFieldNumber = 119,
953 kExpandElementConstraintsFieldNumber = 140,
954 kExpandAutomatonConstraintsFieldNumber = 143,
955 kExpandTableConstraintsFieldNumber = 158,
956 kUseOptimizationHintsFieldNumber = 35,
957 kMaxConsecutiveInactiveCountFieldNumber = 121,
958 kUseDisjunctiveConstraintInCumulativeConstraintFieldNumber = 80,
959 kAddCgCutsFieldNumber = 117,
960 kAddMirCutsFieldNumber = 120,
961 kAddZeroHalfCutsFieldNumber = 169,
962 kPseudoCostReliabilityThresholdFieldNumber = 123,
963 kNewConstraintsBatchSizeFieldNumber = 122,
964 kUseOptionalVariablesFieldNumber = 108,
965 kUseExactLpReasonFieldNumber = 109,
966 kCatchSigintSignalFieldNumber = 135,
967 kUseImpliedBoundsFieldNumber = 144,
968 kMipMaxBoundFieldNumber = 124,
969 kMipVarScalingFieldNumber = 125,
970 kMipWantedPrecisionFieldNumber = 126,
971 kMipCheckPrecisionFieldNumber = 128,
972 kMipMaxActivityExponentFieldNumber = 127,
973 kShareObjectiveBoundsFieldNumber = 113,
974 kShareLevelZeroBoundsFieldNumber = 114,
975 kUseRinsLnsFieldNumber = 129,
976 kUseFeasibilityPumpFieldNumber = 164,
977 kAddCliqueCutsFieldNumber = 172,
978 kAddLinMaxCutsFieldNumber = 152,
979 kAddLpConstraintsLazilyFieldNumber = 112,
980 kExploitIntegerLpSolutionFieldNumber = 94,
981 kInterleaveBatchSizeFieldNumber = 134,
982 kMaxPresolveIterationsFieldNumber = 138,
983 kPresolveSubstitutionLevelFieldNumber = 147,
984 kMergeNoOverlapWorkLimitFieldNumber = 145,
985 kMergeAtMostOneWorkLimitFieldNumber = 146,
986 kMaxAllDiffCutSizeFieldNumber = 148,
987 kHintConflictLimitFieldNumber = 153,
988 kCutMaxActiveCountValueFieldNumber = 155,
989 kMaxCutRoundsAtLevelZeroFieldNumber = 154,
990 kCutCleanupTargetFieldNumber = 157,
991 kCutActiveCountDecayFieldNumber = 156,
992 kFpRoundingFieldNumber = 165,
993 kMipAutomaticallyScaleVariablesFieldNumber = 166,
998 int _internal_restart_algorithms_size()
const;
1004 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_restart_algorithms();
1015 bool _internal_has_default_restart_algorithms()
const;
1027 const std::string& _internal_default_restart_algorithms()
const;
1028 void _internal_set_default_restart_algorithms(
const std::string&
value);
1029 std::string* _internal_mutable_default_restart_algorithms();
1035 bool _internal_has_name()
const;
1047 const std::string& _internal_name()
const;
1048 void _internal_set_name(
const std::string&
value);
1049 std::string* _internal_mutable_name();
1055 bool _internal_has_preferred_variable_order()
const;
1068 bool _internal_has_max_sat_assumption_order()
const;
1081 bool _internal_has_random_branches_ratio()
const;
1087 double _internal_random_branches_ratio()
const;
1088 void _internal_set_random_branches_ratio(
double value);
1094 bool _internal_has_random_polarity_ratio()
const;
1100 double _internal_random_polarity_ratio()
const;
1101 void _internal_set_random_polarity_ratio(
double value);
1107 bool _internal_has_clause_cleanup_protection()
const;
1120 bool _internal_has_clause_cleanup_ordering()
const;
1133 bool _internal_has_use_erwa_heuristic()
const;
1139 bool _internal_use_erwa_heuristic()
const;
1140 void _internal_set_use_erwa_heuristic(
bool value);
1146 bool _internal_has_also_bump_variables_in_conflict_reasons()
const;
1152 bool _internal_also_bump_variables_in_conflict_reasons()
const;
1153 void _internal_set_also_bump_variables_in_conflict_reasons(
bool value);
1159 bool _internal_has_use_blocking_restart()
const;
1165 bool _internal_use_blocking_restart()
const;
1166 void _internal_set_use_blocking_restart(
bool value);
1172 bool _internal_has_log_search_progress()
const;
1178 bool _internal_log_search_progress()
const;
1179 void _internal_set_log_search_progress(
bool value);
1185 bool _internal_has_num_conflicts_before_strategy_changes()
const;
1198 bool _internal_has_strategy_change_increase_ratio()
const;
1204 double _internal_strategy_change_increase_ratio()
const;
1205 void _internal_set_strategy_change_increase_ratio(
double value);
1211 bool _internal_has_initial_variables_activity()
const;
1217 double _internal_initial_variables_activity()
const;
1218 void _internal_set_initial_variables_activity(
double value);
1224 bool _internal_has_search_branching()
const;
1237 bool _internal_has_use_pb_resolution()
const;
1243 bool _internal_use_pb_resolution()
const;
1244 void _internal_set_use_pb_resolution(
bool value);
1250 bool _internal_has_minimize_reduction_during_pb_resolution()
const;
1256 bool _internal_minimize_reduction_during_pb_resolution()
const;
1257 void _internal_set_minimize_reduction_during_pb_resolution(
bool value);
1263 bool _internal_has_cp_model_postsolve_with_full_solver()
const;
1269 bool _internal_cp_model_postsolve_with_full_solver()
const;
1270 void _internal_set_cp_model_postsolve_with_full_solver(
bool value);
1276 bool _internal_has_use_sat_inprocessing()
const;
1282 bool _internal_use_sat_inprocessing()
const;
1283 void _internal_set_use_sat_inprocessing(
bool value);
1289 bool _internal_has_search_randomization_tolerance()
const;
1302 bool _internal_has_use_timetable_edge_finding_in_cumulative_constraint()
const;
1308 bool _internal_use_timetable_edge_finding_in_cumulative_constraint()
const;
1309 void _internal_set_use_timetable_edge_finding_in_cumulative_constraint(
bool value);
1315 bool _internal_has_only_add_cuts_at_level_zero()
const;
1321 bool _internal_only_add_cuts_at_level_zero()
const;
1322 void _internal_set_only_add_cuts_at_level_zero(
bool value);
1328 bool _internal_has_add_knapsack_cuts()
const;
1334 bool _internal_add_knapsack_cuts()
const;
1335 void _internal_set_add_knapsack_cuts(
bool value);
1341 bool _internal_has_repair_hint()
const;
1347 bool _internal_repair_hint()
const;
1348 void _internal_set_repair_hint(
bool value);
1354 bool _internal_has_exploit_best_solution()
const;
1360 bool _internal_exploit_best_solution()
const;
1361 void _internal_set_exploit_best_solution(
bool value);
1367 bool _internal_has_exploit_relaxation_solution()
const;
1373 bool _internal_exploit_relaxation_solution()
const;
1374 void _internal_set_exploit_relaxation_solution(
bool value);
1380 bool _internal_has_optimize_with_core()
const;
1386 bool _internal_optimize_with_core()
const;
1387 void _internal_set_optimize_with_core(
bool value);
1393 bool _internal_has_optimize_with_max_hs()
const;
1399 bool _internal_optimize_with_max_hs()
const;
1400 void _internal_set_optimize_with_max_hs(
bool value);
1406 bool _internal_has_expand_alldiff_constraints()
const;
1412 bool _internal_expand_alldiff_constraints()
const;
1413 void _internal_set_expand_alldiff_constraints(
bool value);
1419 bool _internal_has_presolve_extract_integer_enforcement()
const;
1425 bool _internal_presolve_extract_integer_enforcement()
const;
1426 void _internal_set_presolve_extract_integer_enforcement(
bool value);
1432 bool _internal_has_max_sat_reverse_assumption_order()
const;
1438 bool _internal_max_sat_reverse_assumption_order()
const;
1439 void _internal_set_max_sat_reverse_assumption_order(
bool value);
1445 bool _internal_has_use_overload_checker_in_cumulative_constraint()
const;
1451 bool _internal_use_overload_checker_in_cumulative_constraint()
const;
1452 void _internal_set_use_overload_checker_in_cumulative_constraint(
bool value);
1458 bool _internal_has_enumerate_all_solutions()
const;
1464 bool _internal_enumerate_all_solutions()
const;
1465 void _internal_set_enumerate_all_solutions(
bool value);
1471 bool _internal_has_keep_all_feasible_solutions_in_presolve()
const;
1477 bool _internal_keep_all_feasible_solutions_in_presolve()
const;
1478 void _internal_set_keep_all_feasible_solutions_in_presolve(
bool value);
1484 bool _internal_has_fill_tightened_domains_in_response()
const;
1490 bool _internal_fill_tightened_domains_in_response()
const;
1491 void _internal_set_fill_tightened_domains_in_response(
bool value);
1497 bool _internal_has_stop_after_first_solution()
const;
1503 bool _internal_stop_after_first_solution()
const;
1504 void _internal_set_stop_after_first_solution(
bool value);
1510 bool _internal_has_lns_focus_on_decision_variables()
const;
1516 bool _internal_lns_focus_on_decision_variables()
const;
1517 void _internal_set_lns_focus_on_decision_variables(
bool value);
1523 bool _internal_has_use_relaxation_lns()
const;
1529 bool _internal_use_relaxation_lns()
const;
1530 void _internal_set_use_relaxation_lns(
bool value);
1536 bool _internal_has_diversify_lns_params()
const;
1542 bool _internal_diversify_lns_params()
const;
1543 void _internal_set_diversify_lns_params(
bool value);
1549 bool _internal_has_randomize_search()
const;
1555 bool _internal_randomize_search()
const;
1556 void _internal_set_randomize_search(
bool value);
1562 bool _internal_has_stop_after_presolve()
const;
1568 bool _internal_stop_after_presolve()
const;
1569 void _internal_set_stop_after_presolve(
bool value);
1575 bool _internal_has_interleave_search()
const;
1581 bool _internal_interleave_search()
const;
1582 void _internal_set_interleave_search(
bool value);
1588 bool _internal_has_reduce_memory_usage_in_interleave_mode()
const;
1594 bool _internal_reduce_memory_usage_in_interleave_mode()
const;
1595 void _internal_set_reduce_memory_usage_in_interleave_mode(
bool value);
1601 bool _internal_has_use_lns_only()
const;
1607 bool _internal_use_lns_only()
const;
1608 void _internal_set_use_lns_only(
bool value);
1614 bool _internal_has_probing_period_at_root()
const;
1627 bool _internal_has_use_branching_in_lp()
const;
1633 bool _internal_use_branching_in_lp()
const;
1634 void _internal_set_use_branching_in_lp(
bool value);
1640 bool _internal_has_use_combined_no_overlap()
const;
1646 bool _internal_use_combined_no_overlap()
const;
1647 void _internal_set_use_combined_no_overlap(
bool value);
1653 bool _internal_has_polish_lp_solution()
const;
1659 bool _internal_polish_lp_solution()
const;
1660 void _internal_set_polish_lp_solution(
bool value);
1666 bool _internal_has_cp_model_max_num_presolve_operations()
const;
1679 bool _internal_has_absolute_gap_limit()
const;
1685 double _internal_absolute_gap_limit()
const;
1686 void _internal_set_absolute_gap_limit(
double value);
1692 bool _internal_has_relative_gap_limit()
const;
1698 double _internal_relative_gap_limit()
const;
1699 void _internal_set_relative_gap_limit(
double value);
1705 bool _internal_has_polarity_rephase_increment()
const;
1718 bool _internal_has_initial_polarity()
const;
1731 bool _internal_has_minimization_algorithm()
const;
1744 bool _internal_has_clause_cleanup_period()
const;
1757 bool _internal_has_clause_cleanup_target()
const;
1770 bool _internal_has_variable_activity_decay()
const;
1776 double _internal_variable_activity_decay()
const;
1777 void _internal_set_variable_activity_decay(
double value);
1783 bool _internal_has_max_variable_activity_value()
const;
1789 double _internal_max_variable_activity_value()
const;
1790 void _internal_set_max_variable_activity_value(
double value);
1796 bool _internal_has_clause_activity_decay()
const;
1802 double _internal_clause_activity_decay()
const;
1803 void _internal_set_clause_activity_decay(
double value);
1809 bool _internal_has_max_clause_activity_value()
const;
1815 double _internal_max_clause_activity_value()
const;
1816 void _internal_set_max_clause_activity_value(
double value);
1822 bool _internal_has_glucose_max_decay()
const;
1828 double _internal_glucose_max_decay()
const;
1829 void _internal_set_glucose_max_decay(
double value);
1835 bool _internal_has_glucose_decay_increment()
const;
1841 double _internal_glucose_decay_increment()
const;
1842 void _internal_set_glucose_decay_increment(
double value);
1848 bool _internal_has_glucose_decay_increment_period()
const;
1861 bool _internal_has_restart_period()
const;
1874 bool _internal_has_random_seed()
const;
1887 bool _internal_has_binary_minimization_algorithm()
const;
1900 bool _internal_has_max_time_in_seconds()
const;
1906 double _internal_max_time_in_seconds()
const;
1907 void _internal_set_max_time_in_seconds(
double value);
1913 bool _internal_has_max_number_of_conflicts()
const;
1926 bool _internal_has_max_memory_in_mb()
const;
1939 bool _internal_has_use_phase_saving()
const;
1945 bool _internal_use_phase_saving()
const;
1946 void _internal_set_use_phase_saving(
bool value);
1952 bool _internal_has_subsumption_during_conflict_analysis()
const;
1958 bool _internal_subsumption_during_conflict_analysis()
const;
1959 void _internal_set_subsumption_during_conflict_analysis(
bool value);
1965 bool _internal_has_treat_binary_clauses_separately()
const;
1971 bool _internal_treat_binary_clauses_separately()
const;
1972 void _internal_set_treat_binary_clauses_separately(
bool value);
1978 bool _internal_has_count_assumption_levels_in_lbd()
const;
1984 bool _internal_count_assumption_levels_in_lbd()
const;
1985 void _internal_set_count_assumption_levels_in_lbd(
bool value);
1991 bool _internal_has_pb_cleanup_increment()
const;
2004 bool _internal_has_pb_cleanup_ratio()
const;
2010 double _internal_pb_cleanup_ratio()
const;
2011 void _internal_set_pb_cleanup_ratio(
double value);
2017 bool _internal_has_max_sat_stratification()
const;
2030 bool _internal_has_presolve_bve_threshold()
const;
2043 bool _internal_has_presolve_probing_deterministic_time_limit()
const;
2049 double _internal_presolve_probing_deterministic_time_limit()
const;
2050 void _internal_set_presolve_probing_deterministic_time_limit(
double value);
2056 bool _internal_has_presolve_bve_clause_weight()
const;
2069 bool _internal_has_clause_cleanup_lbd_bound()
const;
2082 bool _internal_has_restart_dl_average_ratio()
const;
2088 double _internal_restart_dl_average_ratio()
const;
2089 void _internal_set_restart_dl_average_ratio(
double value);
2095 bool _internal_has_restart_running_window_size()
const;
2108 bool _internal_has_blocking_restart_window_size()
const;
2121 bool _internal_has_blocking_restart_multiplier()
const;
2127 double _internal_blocking_restart_multiplier()
const;
2128 void _internal_set_blocking_restart_multiplier(
double value);
2134 bool _internal_has_max_deterministic_time()
const;
2140 double _internal_max_deterministic_time()
const;
2141 void _internal_set_max_deterministic_time(
double value);
2147 bool _internal_has_restart_lbd_average_ratio()
const;
2153 double _internal_restart_lbd_average_ratio()
const;
2154 void _internal_set_restart_lbd_average_ratio(
double value);
2160 bool _internal_has_presolve_bva_threshold()
const;
2173 bool _internal_has_minimize_core()
const;
2179 bool _internal_minimize_core()
const;
2180 void _internal_set_minimize_core(
bool value);
2186 bool _internal_has_find_multiple_cores()
const;
2192 bool _internal_find_multiple_cores()
const;
2193 void _internal_set_find_multiple_cores(
bool value);
2199 bool _internal_has_cover_optimization()
const;
2205 bool _internal_cover_optimization()
const;
2206 void _internal_set_cover_optimization(
bool value);
2212 bool _internal_has_use_precedences_in_disjunctive_constraint()
const;
2218 bool _internal_use_precedences_in_disjunctive_constraint()
const;
2219 void _internal_set_use_precedences_in_disjunctive_constraint(
bool value);
2225 bool _internal_has_presolve_blocked_clause()
const;
2231 bool _internal_presolve_blocked_clause()
const;
2232 void _internal_set_presolve_blocked_clause(
bool value);
2238 bool _internal_has_presolve_use_bva()
const;
2244 bool _internal_presolve_use_bva()
const;
2245 void _internal_set_presolve_use_bva(
bool value);
2251 bool _internal_has_cp_model_presolve()
const;
2257 bool _internal_cp_model_presolve()
const;
2258 void _internal_set_cp_model_presolve(
bool value);
2264 bool _internal_has_cp_model_use_sat_presolve()
const;
2270 bool _internal_cp_model_use_sat_presolve()
const;
2271 void _internal_set_cp_model_use_sat_presolve(
bool value);
2277 bool _internal_has_linearization_level()
const;
2290 bool _internal_has_max_num_cuts()
const;
2303 bool _internal_has_minimize_with_propagation_restart_period()
const;
2316 bool _internal_has_minimize_with_propagation_num_decisions()
const;
2329 bool _internal_has_binary_search_num_conflicts()
const;
2342 bool _internal_has_num_search_workers()
const;
2355 bool _internal_has_boolean_encoding_level()
const;
2368 bool _internal_has_cp_model_probing_level()
const;
2381 bool _internal_has_exploit_all_lp_solution()
const;
2387 bool _internal_exploit_all_lp_solution()
const;
2388 void _internal_set_exploit_all_lp_solution(
bool value);
2394 bool _internal_has_exploit_objective()
const;
2400 bool _internal_exploit_objective()
const;
2401 void _internal_set_exploit_objective(
bool value);
2407 bool _internal_has_instantiate_all_variables()
const;
2413 bool _internal_instantiate_all_variables()
const;
2414 void _internal_set_instantiate_all_variables(
bool value);
2420 bool _internal_has_auto_detect_greater_than_at_least_one_of()
const;
2426 bool _internal_auto_detect_greater_than_at_least_one_of()
const;
2427 void _internal_set_auto_detect_greater_than_at_least_one_of(
bool value);
2433 bool _internal_has_min_orthogonality_for_lp_constraints()
const;
2439 double _internal_min_orthogonality_for_lp_constraints()
const;
2440 void _internal_set_min_orthogonality_for_lp_constraints(
double value);
2446 bool _internal_has_max_integer_rounding_scaling()
const;
2459 bool _internal_has_expand_element_constraints()
const;
2465 bool _internal_expand_element_constraints()
const;
2466 void _internal_set_expand_element_constraints(
bool value);
2472 bool _internal_has_expand_automaton_constraints()
const;
2478 bool _internal_expand_automaton_constraints()
const;
2479 void _internal_set_expand_automaton_constraints(
bool value);
2485 bool _internal_has_expand_table_constraints()
const;
2491 bool _internal_expand_table_constraints()
const;
2492 void _internal_set_expand_table_constraints(
bool value);
2498 bool _internal_has_use_optimization_hints()
const;
2504 bool _internal_use_optimization_hints()
const;
2505 void _internal_set_use_optimization_hints(
bool value);
2511 bool _internal_has_max_consecutive_inactive_count()
const;
2524 bool _internal_has_use_disjunctive_constraint_in_cumulative_constraint()
const;
2530 bool _internal_use_disjunctive_constraint_in_cumulative_constraint()
const;
2531 void _internal_set_use_disjunctive_constraint_in_cumulative_constraint(
bool value);
2537 bool _internal_has_add_cg_cuts()
const;
2543 bool _internal_add_cg_cuts()
const;
2544 void _internal_set_add_cg_cuts(
bool value);
2550 bool _internal_has_add_mir_cuts()
const;
2556 bool _internal_add_mir_cuts()
const;
2557 void _internal_set_add_mir_cuts(
bool value);
2563 bool _internal_has_add_zero_half_cuts()
const;
2569 bool _internal_add_zero_half_cuts()
const;
2570 void _internal_set_add_zero_half_cuts(
bool value);
2576 bool _internal_has_pseudo_cost_reliability_threshold()
const;
2589 bool _internal_has_new_constraints_batch_size()
const;
2602 bool _internal_has_use_optional_variables()
const;
2608 bool _internal_use_optional_variables()
const;
2609 void _internal_set_use_optional_variables(
bool value);
2615 bool _internal_has_use_exact_lp_reason()
const;
2621 bool _internal_use_exact_lp_reason()
const;
2622 void _internal_set_use_exact_lp_reason(
bool value);
2628 bool _internal_has_catch_sigint_signal()
const;
2634 bool _internal_catch_sigint_signal()
const;
2635 void _internal_set_catch_sigint_signal(
bool value);
2641 bool _internal_has_use_implied_bounds()
const;
2647 bool _internal_use_implied_bounds()
const;
2648 void _internal_set_use_implied_bounds(
bool value);
2654 bool _internal_has_mip_max_bound()
const;
2660 double _internal_mip_max_bound()
const;
2661 void _internal_set_mip_max_bound(
double value);
2667 bool _internal_has_mip_var_scaling()
const;
2673 double _internal_mip_var_scaling()
const;
2674 void _internal_set_mip_var_scaling(
double value);
2680 bool _internal_has_mip_wanted_precision()
const;
2686 double _internal_mip_wanted_precision()
const;
2687 void _internal_set_mip_wanted_precision(
double value);
2693 bool _internal_has_mip_check_precision()
const;
2699 double _internal_mip_check_precision()
const;
2700 void _internal_set_mip_check_precision(
double value);
2706 bool _internal_has_mip_max_activity_exponent()
const;
2719 bool _internal_has_share_objective_bounds()
const;
2725 bool _internal_share_objective_bounds()
const;
2726 void _internal_set_share_objective_bounds(
bool value);
2732 bool _internal_has_share_level_zero_bounds()
const;
2738 bool _internal_share_level_zero_bounds()
const;
2739 void _internal_set_share_level_zero_bounds(
bool value);
2745 bool _internal_has_use_rins_lns()
const;
2751 bool _internal_use_rins_lns()
const;
2752 void _internal_set_use_rins_lns(
bool value);
2758 bool _internal_has_use_feasibility_pump()
const;
2764 bool _internal_use_feasibility_pump()
const;
2765 void _internal_set_use_feasibility_pump(
bool value);
2771 bool _internal_has_add_clique_cuts()
const;
2777 bool _internal_add_clique_cuts()
const;
2778 void _internal_set_add_clique_cuts(
bool value);
2784 bool _internal_has_add_lin_max_cuts()
const;
2790 bool _internal_add_lin_max_cuts()
const;
2791 void _internal_set_add_lin_max_cuts(
bool value);
2797 bool _internal_has_add_lp_constraints_lazily()
const;
2803 bool _internal_add_lp_constraints_lazily()
const;
2804 void _internal_set_add_lp_constraints_lazily(
bool value);
2810 bool _internal_has_exploit_integer_lp_solution()
const;
2816 bool _internal_exploit_integer_lp_solution()
const;
2817 void _internal_set_exploit_integer_lp_solution(
bool value);
2823 bool _internal_has_interleave_batch_size()
const;
2836 bool _internal_has_max_presolve_iterations()
const;
2849 bool _internal_has_presolve_substitution_level()
const;
2862 bool _internal_has_merge_no_overlap_work_limit()
const;
2868 double _internal_merge_no_overlap_work_limit()
const;
2869 void _internal_set_merge_no_overlap_work_limit(
double value);
2875 bool _internal_has_merge_at_most_one_work_limit()
const;
2881 double _internal_merge_at_most_one_work_limit()
const;
2882 void _internal_set_merge_at_most_one_work_limit(
double value);
2888 bool _internal_has_max_all_diff_cut_size()
const;
2901 bool _internal_has_hint_conflict_limit()
const;
2914 bool _internal_has_cut_max_active_count_value()
const;
2920 double _internal_cut_max_active_count_value()
const;
2921 void _internal_set_cut_max_active_count_value(
double value);
2927 bool _internal_has_max_cut_rounds_at_level_zero()
const;
2940 bool _internal_has_cut_cleanup_target()
const;
2953 bool _internal_has_cut_active_count_decay()
const;
2959 double _internal_cut_active_count_decay()
const;
2960 void _internal_set_cut_active_count_decay(
double value);
2966 bool _internal_has_fp_rounding()
const;
2979 bool _internal_has_mip_automatically_scale_variables()
const;
2985 bool _internal_mip_automatically_scale_variables()
const;
2986 void _internal_set_mip_automatically_scale_variables(
bool value);
2993 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2994 typedef void InternalArenaConstructable_;
2995 typedef void DestructorSkippable_;
2996 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<5> _has_bits_;
2997 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2998 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> restart_algorithms_;
3002 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr default_restart_algorithms_;
3003 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
3004 int preferred_variable_order_;
3005 int max_sat_assumption_order_;
3006 double random_branches_ratio_;
3007 double random_polarity_ratio_;
3008 int clause_cleanup_protection_;
3009 int clause_cleanup_ordering_;
3010 bool use_erwa_heuristic_;
3011 bool also_bump_variables_in_conflict_reasons_;
3012 bool use_blocking_restart_;
3013 bool log_search_progress_;
3015 double strategy_change_increase_ratio_;
3016 double initial_variables_activity_;
3017 int search_branching_;
3018 bool use_pb_resolution_;
3019 bool minimize_reduction_during_pb_resolution_;
3020 bool cp_model_postsolve_with_full_solver_;
3021 bool use_sat_inprocessing_;
3023 bool use_timetable_edge_finding_in_cumulative_constraint_;
3024 bool only_add_cuts_at_level_zero_;
3025 bool add_knapsack_cuts_;
3027 bool exploit_best_solution_;
3028 bool exploit_relaxation_solution_;
3029 bool optimize_with_core_;
3030 bool optimize_with_max_hs_;
3031 bool expand_alldiff_constraints_;
3032 bool presolve_extract_integer_enforcement_;
3033 bool max_sat_reverse_assumption_order_;
3034 bool use_overload_checker_in_cumulative_constraint_;
3035 bool enumerate_all_solutions_;
3036 bool keep_all_feasible_solutions_in_presolve_;
3037 bool fill_tightened_domains_in_response_;
3038 bool stop_after_first_solution_;
3039 bool lns_focus_on_decision_variables_;
3040 bool use_relaxation_lns_;
3041 bool diversify_lns_params_;
3042 bool randomize_search_;
3043 bool stop_after_presolve_;
3044 bool interleave_search_;
3045 bool reduce_memory_usage_in_interleave_mode_;
3048 bool use_branching_in_lp_;
3049 bool use_combined_no_overlap_;
3050 bool polish_lp_solution_;
3052 double absolute_gap_limit_;
3053 double relative_gap_limit_;
3055 int initial_polarity_;
3056 int minimization_algorithm_;
3059 double variable_activity_decay_;
3060 double max_variable_activity_value_;
3061 double clause_activity_decay_;
3062 double max_clause_activity_value_;
3063 double glucose_max_decay_;
3064 double glucose_decay_increment_;
3068 int binary_minimization_algorithm_;
3069 double max_time_in_seconds_;
3072 bool use_phase_saving_;
3073 bool subsumption_during_conflict_analysis_;
3074 bool treat_binary_clauses_separately_;
3075 bool count_assumption_levels_in_lbd_;
3077 double pb_cleanup_ratio_;
3078 int max_sat_stratification_;
3080 double presolve_probing_deterministic_time_limit_;
3083 double restart_dl_average_ratio_;
3086 double blocking_restart_multiplier_;
3087 double max_deterministic_time_;
3088 double restart_lbd_average_ratio_;
3090 bool minimize_core_;
3091 bool find_multiple_cores_;
3092 bool cover_optimization_;
3093 bool use_precedences_in_disjunctive_constraint_;
3094 bool presolve_blocked_clause_;
3095 bool presolve_use_bva_;
3096 bool cp_model_presolve_;
3097 bool cp_model_use_sat_presolve_;
3106 bool exploit_all_lp_solution_;
3107 bool exploit_objective_;
3108 bool instantiate_all_variables_;
3109 bool auto_detect_greater_than_at_least_one_of_;
3110 double min_orthogonality_for_lp_constraints_;
3112 bool expand_element_constraints_;
3113 bool expand_automaton_constraints_;
3114 bool expand_table_constraints_;
3115 bool use_optimization_hints_;
3117 bool use_disjunctive_constraint_in_cumulative_constraint_;
3120 bool add_zero_half_cuts_;
3123 bool use_optional_variables_;
3124 bool use_exact_lp_reason_;
3125 bool catch_sigint_signal_;
3126 bool use_implied_bounds_;
3127 double mip_max_bound_;
3128 double mip_var_scaling_;
3129 double mip_wanted_precision_;
3130 double mip_check_precision_;
3132 bool share_objective_bounds_;
3133 bool share_level_zero_bounds_;
3135 bool use_feasibility_pump_;
3136 bool add_clique_cuts_;
3137 bool add_lin_max_cuts_;
3138 bool add_lp_constraints_lazily_;
3139 bool exploit_integer_lp_solution_;
3143 double merge_no_overlap_work_limit_;
3144 double merge_at_most_one_work_limit_;
3147 double cut_max_active_count_value_;
3150 double cut_active_count_decay_;
3152 bool mip_automatically_scale_variables_;
3153 friend struct ::TableStruct_ortools_2fsat_2fsat_5fparameters_2eproto;
3161 #pragma GCC diagnostic push
3162 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
3167 inline bool SatParameters::_internal_has_name()
const {
3168 bool value = (_has_bits_[0] & 0x00000002u) != 0;
3171 inline bool SatParameters::has_name()
const {
3172 return _internal_has_name();
3174 inline void SatParameters::clear_name() {
3175 name_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3176 _has_bits_[0] &= ~0x00000002u;
3180 return _internal_name();
3182 inline void SatParameters::set_name(
const std::string&
value) {
3183 _internal_set_name(
value);
3186 inline std::string* SatParameters::mutable_name() {
3188 return _internal_mutable_name();
3190 inline const std::string& SatParameters::_internal_name()
const {
3193 inline void SatParameters::_internal_set_name(
const std::string&
value) {
3194 _has_bits_[0] |= 0x00000002u;
3195 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
value, GetArena());
3197 inline void SatParameters::set_name(std::string&&
value) {
3198 _has_bits_[0] |= 0x00000002u;
3200 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(
value), GetArena());
3203 inline void SatParameters::set_name(
const char*
value) {
3204 GOOGLE_DCHECK(
value !=
nullptr);
3205 _has_bits_[0] |= 0x00000002u;
3206 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
value),
3210 inline void SatParameters::set_name(
const char*
value,
3212 _has_bits_[0] |= 0x00000002u;
3213 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
3214 reinterpret_cast<const char*
>(
value), size), GetArena());
3217 inline std::string* SatParameters::_internal_mutable_name() {
3218 _has_bits_[0] |= 0x00000002u;
3219 return name_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3221 inline std::string* SatParameters::release_name() {
3223 if (!_internal_has_name()) {
3226 _has_bits_[0] &= ~0x00000002u;
3227 return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3229 inline void SatParameters::set_allocated_name(std::string*
name) {
3230 if (
name !=
nullptr) {
3231 _has_bits_[0] |= 0x00000002u;
3233 _has_bits_[0] &= ~0x00000002u;
3235 name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
name,
3241 inline bool SatParameters::_internal_has_preferred_variable_order()
const {
3242 bool value = (_has_bits_[0] & 0x00000004u) != 0;
3245 inline bool SatParameters::has_preferred_variable_order()
const {
3246 return _internal_has_preferred_variable_order();
3248 inline void SatParameters::clear_preferred_variable_order() {
3249 preferred_variable_order_ = 0;
3250 _has_bits_[0] &= ~0x00000004u;
3257 return _internal_preferred_variable_order();
3261 _has_bits_[0] |= 0x00000004u;
3262 preferred_variable_order_ =
value;
3265 _internal_set_preferred_variable_order(
value);
3270 inline bool SatParameters::_internal_has_initial_polarity()
const {
3271 bool value = (_has_bits_[1] & 0x00200000u) != 0;
3274 inline bool SatParameters::has_initial_polarity()
const {
3275 return _internal_has_initial_polarity();
3277 inline void SatParameters::clear_initial_polarity() {
3278 initial_polarity_ = 1;
3279 _has_bits_[1] &= ~0x00200000u;
3286 return _internal_initial_polarity();
3290 _has_bits_[1] |= 0x00200000u;
3291 initial_polarity_ =
value;
3294 _internal_set_initial_polarity(
value);
3299 inline bool SatParameters::_internal_has_use_phase_saving()
const {
3300 bool value = (_has_bits_[2] & 0x00000040u) != 0;
3303 inline bool SatParameters::has_use_phase_saving()
const {
3304 return _internal_has_use_phase_saving();
3306 inline void SatParameters::clear_use_phase_saving() {
3307 use_phase_saving_ =
true;
3308 _has_bits_[2] &= ~0x00000040u;
3310 inline bool SatParameters::_internal_use_phase_saving()
const {
3311 return use_phase_saving_;
3313 inline bool SatParameters::use_phase_saving()
const {
3315 return _internal_use_phase_saving();
3317 inline void SatParameters::_internal_set_use_phase_saving(
bool value) {
3318 _has_bits_[2] |= 0x00000040u;
3319 use_phase_saving_ =
value;
3321 inline void SatParameters::set_use_phase_saving(
bool value) {
3322 _internal_set_use_phase_saving(
value);
3327 inline bool SatParameters::_internal_has_polarity_rephase_increment()
const {
3328 bool value = (_has_bits_[1] & 0x00100000u) != 0;
3331 inline bool SatParameters::has_polarity_rephase_increment()
const {
3332 return _internal_has_polarity_rephase_increment();
3334 inline void SatParameters::clear_polarity_rephase_increment() {
3335 polarity_rephase_increment_ = 1000;
3336 _has_bits_[1] &= ~0x00100000u;
3339 return polarity_rephase_increment_;
3343 return _internal_polarity_rephase_increment();
3346 _has_bits_[1] |= 0x00100000u;
3347 polarity_rephase_increment_ =
value;
3350 _internal_set_polarity_rephase_increment(
value);
3355 inline bool SatParameters::_internal_has_random_polarity_ratio()
const {
3356 bool value = (_has_bits_[0] & 0x00000020u) != 0;
3359 inline bool SatParameters::has_random_polarity_ratio()
const {
3360 return _internal_has_random_polarity_ratio();
3362 inline void SatParameters::clear_random_polarity_ratio() {
3363 random_polarity_ratio_ = 0;
3364 _has_bits_[0] &= ~0x00000020u;
3366 inline double SatParameters::_internal_random_polarity_ratio()
const {
3367 return random_polarity_ratio_;
3369 inline double SatParameters::random_polarity_ratio()
const {
3371 return _internal_random_polarity_ratio();
3373 inline void SatParameters::_internal_set_random_polarity_ratio(
double value) {
3374 _has_bits_[0] |= 0x00000020u;
3375 random_polarity_ratio_ =
value;
3377 inline void SatParameters::set_random_polarity_ratio(
double value) {
3378 _internal_set_random_polarity_ratio(
value);
3383 inline bool SatParameters::_internal_has_random_branches_ratio()
const {
3384 bool value = (_has_bits_[0] & 0x00000010u) != 0;
3387 inline bool SatParameters::has_random_branches_ratio()
const {
3388 return _internal_has_random_branches_ratio();
3390 inline void SatParameters::clear_random_branches_ratio() {
3391 random_branches_ratio_ = 0;
3392 _has_bits_[0] &= ~0x00000010u;
3394 inline double SatParameters::_internal_random_branches_ratio()
const {
3395 return random_branches_ratio_;
3397 inline double SatParameters::random_branches_ratio()
const {
3399 return _internal_random_branches_ratio();
3401 inline void SatParameters::_internal_set_random_branches_ratio(
double value) {
3402 _has_bits_[0] |= 0x00000010u;
3403 random_branches_ratio_ =
value;
3405 inline void SatParameters::set_random_branches_ratio(
double value) {
3406 _internal_set_random_branches_ratio(
value);
3411 inline bool SatParameters::_internal_has_use_erwa_heuristic()
const {
3412 bool value = (_has_bits_[0] & 0x00000100u) != 0;
3415 inline bool SatParameters::has_use_erwa_heuristic()
const {
3416 return _internal_has_use_erwa_heuristic();
3418 inline void SatParameters::clear_use_erwa_heuristic() {
3419 use_erwa_heuristic_ =
false;
3420 _has_bits_[0] &= ~0x00000100u;
3422 inline bool SatParameters::_internal_use_erwa_heuristic()
const {
3423 return use_erwa_heuristic_;
3425 inline bool SatParameters::use_erwa_heuristic()
const {
3427 return _internal_use_erwa_heuristic();
3429 inline void SatParameters::_internal_set_use_erwa_heuristic(
bool value) {
3430 _has_bits_[0] |= 0x00000100u;
3431 use_erwa_heuristic_ =
value;
3433 inline void SatParameters::set_use_erwa_heuristic(
bool value) {
3434 _internal_set_use_erwa_heuristic(
value);
3439 inline bool SatParameters::_internal_has_initial_variables_activity()
const {
3440 bool value = (_has_bits_[0] & 0x00004000u) != 0;
3443 inline bool SatParameters::has_initial_variables_activity()
const {
3444 return _internal_has_initial_variables_activity();
3446 inline void SatParameters::clear_initial_variables_activity() {
3447 initial_variables_activity_ = 0;
3448 _has_bits_[0] &= ~0x00004000u;
3450 inline double SatParameters::_internal_initial_variables_activity()
const {
3451 return initial_variables_activity_;
3453 inline double SatParameters::initial_variables_activity()
const {
3455 return _internal_initial_variables_activity();
3457 inline void SatParameters::_internal_set_initial_variables_activity(
double value) {
3458 _has_bits_[0] |= 0x00004000u;
3459 initial_variables_activity_ =
value;
3461 inline void SatParameters::set_initial_variables_activity(
double value) {
3462 _internal_set_initial_variables_activity(
value);
3467 inline bool SatParameters::_internal_has_also_bump_variables_in_conflict_reasons()
const {
3468 bool value = (_has_bits_[0] & 0x00000200u) != 0;
3471 inline bool SatParameters::has_also_bump_variables_in_conflict_reasons()
const {
3472 return _internal_has_also_bump_variables_in_conflict_reasons();
3474 inline void SatParameters::clear_also_bump_variables_in_conflict_reasons() {
3475 also_bump_variables_in_conflict_reasons_ =
false;
3476 _has_bits_[0] &= ~0x00000200u;
3478 inline bool SatParameters::_internal_also_bump_variables_in_conflict_reasons()
const {
3479 return also_bump_variables_in_conflict_reasons_;
3481 inline bool SatParameters::also_bump_variables_in_conflict_reasons()
const {
3483 return _internal_also_bump_variables_in_conflict_reasons();
3485 inline void SatParameters::_internal_set_also_bump_variables_in_conflict_reasons(
bool value) {
3486 _has_bits_[0] |= 0x00000200u;
3487 also_bump_variables_in_conflict_reasons_ =
value;
3489 inline void SatParameters::set_also_bump_variables_in_conflict_reasons(
bool value) {
3490 _internal_set_also_bump_variables_in_conflict_reasons(
value);
3495 inline bool SatParameters::_internal_has_minimization_algorithm()
const {
3496 bool value = (_has_bits_[1] & 0x00400000u) != 0;
3499 inline bool SatParameters::has_minimization_algorithm()
const {
3500 return _internal_has_minimization_algorithm();
3502 inline void SatParameters::clear_minimization_algorithm() {
3503 minimization_algorithm_ = 2;
3504 _has_bits_[1] &= ~0x00400000u;
3511 return _internal_minimization_algorithm();
3515 _has_bits_[1] |= 0x00400000u;
3516 minimization_algorithm_ =
value;
3519 _internal_set_minimization_algorithm(
value);
3524 inline bool SatParameters::_internal_has_binary_minimization_algorithm()
const {
3525 bool value = (_has_bits_[2] & 0x00000004u) != 0;
3528 inline bool SatParameters::has_binary_minimization_algorithm()
const {
3529 return _internal_has_binary_minimization_algorithm();
3531 inline void SatParameters::clear_binary_minimization_algorithm() {
3532 binary_minimization_algorithm_ = 1;
3533 _has_bits_[2] &= ~0x00000004u;
3540 return _internal_binary_minimization_algorithm();
3544 _has_bits_[2] |= 0x00000004u;
3545 binary_minimization_algorithm_ =
value;
3548 _internal_set_binary_minimization_algorithm(
value);
3553 inline bool SatParameters::_internal_has_subsumption_during_conflict_analysis()
const {
3554 bool value = (_has_bits_[2] & 0x00000080u) != 0;
3557 inline bool SatParameters::has_subsumption_during_conflict_analysis()
const {
3558 return _internal_has_subsumption_during_conflict_analysis();
3560 inline void SatParameters::clear_subsumption_during_conflict_analysis() {
3561 subsumption_during_conflict_analysis_ =
true;
3562 _has_bits_[2] &= ~0x00000080u;
3564 inline bool SatParameters::_internal_subsumption_during_conflict_analysis()
const {
3565 return subsumption_during_conflict_analysis_;
3567 inline bool SatParameters::subsumption_during_conflict_analysis()
const {
3569 return _internal_subsumption_during_conflict_analysis();
3571 inline void SatParameters::_internal_set_subsumption_during_conflict_analysis(
bool value) {
3572 _has_bits_[2] |= 0x00000080u;
3573 subsumption_during_conflict_analysis_ =
value;
3575 inline void SatParameters::set_subsumption_during_conflict_analysis(
bool value) {
3576 _internal_set_subsumption_during_conflict_analysis(
value);
3581 inline bool SatParameters::_internal_has_clause_cleanup_period()
const {
3582 bool value = (_has_bits_[1] & 0x00800000u) != 0;
3585 inline bool SatParameters::has_clause_cleanup_period()
const {
3586 return _internal_has_clause_cleanup_period();
3588 inline void SatParameters::clear_clause_cleanup_period() {
3589 clause_cleanup_period_ = 10000;
3590 _has_bits_[1] &= ~0x00800000u;
3593 return clause_cleanup_period_;
3597 return _internal_clause_cleanup_period();
3600 _has_bits_[1] |= 0x00800000u;
3601 clause_cleanup_period_ =
value;
3604 _internal_set_clause_cleanup_period(
value);
3609 inline bool SatParameters::_internal_has_clause_cleanup_target()
const {
3610 bool value = (_has_bits_[1] & 0x01000000u) != 0;
3613 inline bool SatParameters::has_clause_cleanup_target()
const {
3614 return _internal_has_clause_cleanup_target();
3616 inline void SatParameters::clear_clause_cleanup_target() {
3617 clause_cleanup_target_ = 10000;
3618 _has_bits_[1] &= ~0x01000000u;
3621 return clause_cleanup_target_;
3625 return _internal_clause_cleanup_target();
3628 _has_bits_[1] |= 0x01000000u;
3629 clause_cleanup_target_ =
value;
3632 _internal_set_clause_cleanup_target(
value);
3637 inline bool SatParameters::_internal_has_clause_cleanup_protection()
const {
3638 bool value = (_has_bits_[0] & 0x00000040u) != 0;
3641 inline bool SatParameters::has_clause_cleanup_protection()
const {
3642 return _internal_has_clause_cleanup_protection();
3644 inline void SatParameters::clear_clause_cleanup_protection() {
3645 clause_cleanup_protection_ = 0;
3646 _has_bits_[0] &= ~0x00000040u;
3653 return _internal_clause_cleanup_protection();
3657 _has_bits_[0] |= 0x00000040u;
3658 clause_cleanup_protection_ =
value;
3661 _internal_set_clause_cleanup_protection(
value);
3666 inline bool SatParameters::_internal_has_clause_cleanup_lbd_bound()
const {
3667 bool value = (_has_bits_[2] & 0x00010000u) != 0;
3670 inline bool SatParameters::has_clause_cleanup_lbd_bound()
const {
3671 return _internal_has_clause_cleanup_lbd_bound();
3673 inline void SatParameters::clear_clause_cleanup_lbd_bound() {
3674 clause_cleanup_lbd_bound_ = 5;
3675 _has_bits_[2] &= ~0x00010000u;
3678 return clause_cleanup_lbd_bound_;
3682 return _internal_clause_cleanup_lbd_bound();
3685 _has_bits_[2] |= 0x00010000u;
3686 clause_cleanup_lbd_bound_ =
value;
3689 _internal_set_clause_cleanup_lbd_bound(
value);
3694 inline bool SatParameters::_internal_has_clause_cleanup_ordering()
const {
3695 bool value = (_has_bits_[0] & 0x00000080u) != 0;
3698 inline bool SatParameters::has_clause_cleanup_ordering()
const {
3699 return _internal_has_clause_cleanup_ordering();
3701 inline void SatParameters::clear_clause_cleanup_ordering() {
3702 clause_cleanup_ordering_ = 0;
3703 _has_bits_[0] &= ~0x00000080u;
3710 return _internal_clause_cleanup_ordering();
3714 _has_bits_[0] |= 0x00000080u;
3715 clause_cleanup_ordering_ =
value;
3718 _internal_set_clause_cleanup_ordering(
value);
3723 inline bool SatParameters::_internal_has_pb_cleanup_increment()
const {
3724 bool value = (_has_bits_[2] & 0x00000400u) != 0;
3727 inline bool SatParameters::has_pb_cleanup_increment()
const {
3728 return _internal_has_pb_cleanup_increment();
3730 inline void SatParameters::clear_pb_cleanup_increment() {
3731 pb_cleanup_increment_ = 200;
3732 _has_bits_[2] &= ~0x00000400u;
3735 return pb_cleanup_increment_;
3739 return _internal_pb_cleanup_increment();
3742 _has_bits_[2] |= 0x00000400u;
3743 pb_cleanup_increment_ =
value;
3746 _internal_set_pb_cleanup_increment(
value);
3751 inline bool SatParameters::_internal_has_pb_cleanup_ratio()
const {
3752 bool value = (_has_bits_[2] & 0x00000800u) != 0;
3755 inline bool SatParameters::has_pb_cleanup_ratio()
const {
3756 return _internal_has_pb_cleanup_ratio();
3758 inline void SatParameters::clear_pb_cleanup_ratio() {
3759 pb_cleanup_ratio_ = 0.5;
3760 _has_bits_[2] &= ~0x00000800u;
3762 inline double SatParameters::_internal_pb_cleanup_ratio()
const {
3763 return pb_cleanup_ratio_;
3765 inline double SatParameters::pb_cleanup_ratio()
const {
3767 return _internal_pb_cleanup_ratio();
3769 inline void SatParameters::_internal_set_pb_cleanup_ratio(
double value) {
3770 _has_bits_[2] |= 0x00000800u;
3771 pb_cleanup_ratio_ =
value;
3773 inline void SatParameters::set_pb_cleanup_ratio(
double value) {
3774 _internal_set_pb_cleanup_ratio(
value);
3779 inline bool SatParameters::_internal_has_minimize_with_propagation_restart_period()
const {
3780 bool value = (_has_bits_[3] & 0x00000004u) != 0;
3783 inline bool SatParameters::has_minimize_with_propagation_restart_period()
const {
3784 return _internal_has_minimize_with_propagation_restart_period();
3786 inline void SatParameters::clear_minimize_with_propagation_restart_period() {
3787 minimize_with_propagation_restart_period_ = 10;
3788 _has_bits_[3] &= ~0x00000004u;
3791 return minimize_with_propagation_restart_period_;
3795 return _internal_minimize_with_propagation_restart_period();
3798 _has_bits_[3] |= 0x00000004u;
3799 minimize_with_propagation_restart_period_ =
value;
3802 _internal_set_minimize_with_propagation_restart_period(
value);
3807 inline bool SatParameters::_internal_has_minimize_with_propagation_num_decisions()
const {
3808 bool value = (_has_bits_[3] & 0x00000008u) != 0;
3811 inline bool SatParameters::has_minimize_with_propagation_num_decisions()
const {
3812 return _internal_has_minimize_with_propagation_num_decisions();
3814 inline void SatParameters::clear_minimize_with_propagation_num_decisions() {
3815 minimize_with_propagation_num_decisions_ = 1000;
3816 _has_bits_[3] &= ~0x00000008u;
3819 return minimize_with_propagation_num_decisions_;
3823 return _internal_minimize_with_propagation_num_decisions();
3826 _has_bits_[3] |= 0x00000008u;
3827 minimize_with_propagation_num_decisions_ =
value;
3830 _internal_set_minimize_with_propagation_num_decisions(
value);
3835 inline bool SatParameters::_internal_has_variable_activity_decay()
const {
3836 bool value = (_has_bits_[1] & 0x02000000u) != 0;
3839 inline bool SatParameters::has_variable_activity_decay()
const {
3840 return _internal_has_variable_activity_decay();
3842 inline void SatParameters::clear_variable_activity_decay() {
3843 variable_activity_decay_ = 0.8;
3844 _has_bits_[1] &= ~0x02000000u;
3846 inline double SatParameters::_internal_variable_activity_decay()
const {
3847 return variable_activity_decay_;
3849 inline double SatParameters::variable_activity_decay()
const {
3851 return _internal_variable_activity_decay();
3853 inline void SatParameters::_internal_set_variable_activity_decay(
double value) {
3854 _has_bits_[1] |= 0x02000000u;
3855 variable_activity_decay_ =
value;
3857 inline void SatParameters::set_variable_activity_decay(
double value) {
3858 _internal_set_variable_activity_decay(
value);
3863 inline bool SatParameters::_internal_has_max_variable_activity_value()
const {
3864 bool value = (_has_bits_[1] & 0x04000000u) != 0;
3867 inline bool SatParameters::has_max_variable_activity_value()
const {
3868 return _internal_has_max_variable_activity_value();
3870 inline void SatParameters::clear_max_variable_activity_value() {
3871 max_variable_activity_value_ = 1e+100;
3872 _has_bits_[1] &= ~0x04000000u;
3874 inline double SatParameters::_internal_max_variable_activity_value()
const {
3875 return max_variable_activity_value_;
3877 inline double SatParameters::max_variable_activity_value()
const {
3879 return _internal_max_variable_activity_value();
3881 inline void SatParameters::_internal_set_max_variable_activity_value(
double value) {
3882 _has_bits_[1] |= 0x04000000u;
3883 max_variable_activity_value_ =
value;
3885 inline void SatParameters::set_max_variable_activity_value(
double value) {
3886 _internal_set_max_variable_activity_value(
value);
3891 inline bool SatParameters::_internal_has_glucose_max_decay()
const {
3892 bool value = (_has_bits_[1] & 0x20000000u) != 0;
3895 inline bool SatParameters::has_glucose_max_decay()
const {
3896 return _internal_has_glucose_max_decay();
3898 inline void SatParameters::clear_glucose_max_decay() {
3899 glucose_max_decay_ = 0.95;
3900 _has_bits_[1] &= ~0x20000000u;
3902 inline double SatParameters::_internal_glucose_max_decay()
const {
3903 return glucose_max_decay_;
3905 inline double SatParameters::glucose_max_decay()
const {
3907 return _internal_glucose_max_decay();
3909 inline void SatParameters::_internal_set_glucose_max_decay(
double value) {
3910 _has_bits_[1] |= 0x20000000u;
3911 glucose_max_decay_ =
value;
3913 inline void SatParameters::set_glucose_max_decay(
double value) {
3914 _internal_set_glucose_max_decay(
value);
3919 inline bool SatParameters::_internal_has_glucose_decay_increment()
const {
3920 bool value = (_has_bits_[1] & 0x40000000u) != 0;
3923 inline bool SatParameters::has_glucose_decay_increment()
const {
3924 return _internal_has_glucose_decay_increment();
3926 inline void SatParameters::clear_glucose_decay_increment() {
3927 glucose_decay_increment_ = 0.01;
3928 _has_bits_[1] &= ~0x40000000u;
3930 inline double SatParameters::_internal_glucose_decay_increment()
const {
3931 return glucose_decay_increment_;
3933 inline double SatParameters::glucose_decay_increment()
const {
3935 return _internal_glucose_decay_increment();
3937 inline void SatParameters::_internal_set_glucose_decay_increment(
double value) {
3938 _has_bits_[1] |= 0x40000000u;
3939 glucose_decay_increment_ =
value;
3941 inline void SatParameters::set_glucose_decay_increment(
double value) {
3942 _internal_set_glucose_decay_increment(
value);
3947 inline bool SatParameters::_internal_has_glucose_decay_increment_period()
const {
3948 bool value = (_has_bits_[1] & 0x80000000u) != 0;
3951 inline bool SatParameters::has_glucose_decay_increment_period()
const {
3952 return _internal_has_glucose_decay_increment_period();
3954 inline void SatParameters::clear_glucose_decay_increment_period() {
3955 glucose_decay_increment_period_ = 5000;
3956 _has_bits_[1] &= ~0x80000000u;
3959 return glucose_decay_increment_period_;
3963 return _internal_glucose_decay_increment_period();
3966 _has_bits_[1] |= 0x80000000u;
3967 glucose_decay_increment_period_ =
value;
3970 _internal_set_glucose_decay_increment_period(
value);
3975 inline bool SatParameters::_internal_has_clause_activity_decay()
const {
3976 bool value = (_has_bits_[1] & 0x08000000u) != 0;
3979 inline bool SatParameters::has_clause_activity_decay()
const {
3980 return _internal_has_clause_activity_decay();
3982 inline void SatParameters::clear_clause_activity_decay() {
3983 clause_activity_decay_ = 0.999;
3984 _has_bits_[1] &= ~0x08000000u;
3986 inline double SatParameters::_internal_clause_activity_decay()
const {
3987 return clause_activity_decay_;
3989 inline double SatParameters::clause_activity_decay()
const {
3991 return _internal_clause_activity_decay();
3993 inline void SatParameters::_internal_set_clause_activity_decay(
double value) {
3994 _has_bits_[1] |= 0x08000000u;
3995 clause_activity_decay_ =
value;
3997 inline void SatParameters::set_clause_activity_decay(
double value) {
3998 _internal_set_clause_activity_decay(
value);
4003 inline bool SatParameters::_internal_has_max_clause_activity_value()
const {
4004 bool value = (_has_bits_[1] & 0x10000000u) != 0;
4007 inline bool SatParameters::has_max_clause_activity_value()
const {
4008 return _internal_has_max_clause_activity_value();
4010 inline void SatParameters::clear_max_clause_activity_value() {
4011 max_clause_activity_value_ = 1e+20;
4012 _has_bits_[1] &= ~0x10000000u;
4014 inline double SatParameters::_internal_max_clause_activity_value()
const {
4015 return max_clause_activity_value_;
4017 inline double SatParameters::max_clause_activity_value()
const {
4019 return _internal_max_clause_activity_value();
4021 inline void SatParameters::_internal_set_max_clause_activity_value(
double value) {
4022 _has_bits_[1] |= 0x10000000u;
4023 max_clause_activity_value_ =
value;
4025 inline void SatParameters::set_max_clause_activity_value(
double value) {
4026 _internal_set_max_clause_activity_value(
value);
4031 inline int SatParameters::_internal_restart_algorithms_size()
const {
4032 return restart_algorithms_.size();
4034 inline int SatParameters::restart_algorithms_size()
const {
4035 return _internal_restart_algorithms_size();
4037 inline void SatParameters::clear_restart_algorithms() {
4038 restart_algorithms_.Clear();
4045 return _internal_restart_algorithms(
index);
4054 restart_algorithms_.Add(
value);
4058 _internal_add_restart_algorithms(
value);
4060 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
4061 SatParameters::restart_algorithms()
const {
4063 return restart_algorithms_;
4065 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4066 SatParameters::_internal_mutable_restart_algorithms() {
4067 return &restart_algorithms_;
4069 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4070 SatParameters::mutable_restart_algorithms() {
4072 return _internal_mutable_restart_algorithms();
4076 inline bool SatParameters::_internal_has_default_restart_algorithms()
const {
4077 bool value = (_has_bits_[0] & 0x00000001u) != 0;
4080 inline bool SatParameters::has_default_restart_algorithms()
const {
4081 return _internal_has_default_restart_algorithms();
4083 inline void SatParameters::clear_default_restart_algorithms() {
4084 default_restart_algorithms_.ClearToDefault(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), GetArena());
4085 _has_bits_[0] &= ~0x00000001u;
4087 inline const std::string& SatParameters::default_restart_algorithms()
const {
4089 return _internal_default_restart_algorithms();
4091 inline void SatParameters::set_default_restart_algorithms(
const std::string&
value) {
4092 _internal_set_default_restart_algorithms(
value);
4095 inline std::string* SatParameters::mutable_default_restart_algorithms() {
4097 return _internal_mutable_default_restart_algorithms();
4099 inline const std::string& SatParameters::_internal_default_restart_algorithms()
const {
4100 return default_restart_algorithms_.Get();
4102 inline void SatParameters::_internal_set_default_restart_algorithms(
const std::string&
value) {
4103 _has_bits_[0] |= 0x00000001u;
4104 default_restart_algorithms_.Set(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(),
value, GetArena());
4106 inline void SatParameters::set_default_restart_algorithms(std::string&&
value) {
4107 _has_bits_[0] |= 0x00000001u;
4108 default_restart_algorithms_.Set(
4109 &::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), ::std::move(
value), GetArena());
4112 inline void SatParameters::set_default_restart_algorithms(
const char*
value) {
4113 GOOGLE_DCHECK(
value !=
nullptr);
4114 _has_bits_[0] |= 0x00000001u;
4115 default_restart_algorithms_.Set(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), ::std::string(
value),
4119 inline void SatParameters::set_default_restart_algorithms(
const char*
value,
4121 _has_bits_[0] |= 0x00000001u;
4122 default_restart_algorithms_.Set(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), ::std::string(
4123 reinterpret_cast<const char*
>(
value), size), GetArena());
4126 inline std::string* SatParameters::_internal_mutable_default_restart_algorithms() {
4127 _has_bits_[0] |= 0x00000001u;
4128 return default_restart_algorithms_.Mutable(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), GetArena());
4130 inline std::string* SatParameters::release_default_restart_algorithms() {
4132 if (!_internal_has_default_restart_algorithms()) {
4135 _has_bits_[0] &= ~0x00000001u;
4136 return default_restart_algorithms_.ReleaseNonDefault(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), GetArena());
4138 inline void SatParameters::set_allocated_default_restart_algorithms(std::string* default_restart_algorithms) {
4139 if (default_restart_algorithms !=
nullptr) {
4140 _has_bits_[0] |= 0x00000001u;
4142 _has_bits_[0] &= ~0x00000001u;
4144 default_restart_algorithms_.SetAllocated(&::operations_research::sat::SatParameters::_i_give_permission_to_break_this_code_default_default_restart_algorithms_.get(), default_restart_algorithms,
4150 inline bool SatParameters::_internal_has_restart_period()
const {
4151 bool value = (_has_bits_[2] & 0x00000001u) != 0;
4154 inline bool SatParameters::has_restart_period()
const {
4155 return _internal_has_restart_period();
4157 inline void SatParameters::clear_restart_period() {
4158 restart_period_ = 50;
4159 _has_bits_[2] &= ~0x00000001u;
4162 return restart_period_;
4166 return _internal_restart_period();
4169 _has_bits_[2] |= 0x00000001u;
4170 restart_period_ =
value;
4173 _internal_set_restart_period(
value);
4178 inline bool SatParameters::_internal_has_restart_running_window_size()
const {
4179 bool value = (_has_bits_[2] & 0x00040000u) != 0;
4182 inline bool SatParameters::has_restart_running_window_size()
const {
4183 return _internal_has_restart_running_window_size();
4185 inline void SatParameters::clear_restart_running_window_size() {
4186 restart_running_window_size_ = 50;
4187 _has_bits_[2] &= ~0x00040000u;
4190 return restart_running_window_size_;
4194 return _internal_restart_running_window_size();
4197 _has_bits_[2] |= 0x00040000u;
4198 restart_running_window_size_ =
value;
4201 _internal_set_restart_running_window_size(
value);
4206 inline bool SatParameters::_internal_has_restart_dl_average_ratio()
const {
4207 bool value = (_has_bits_[2] & 0x00020000u) != 0;
4210 inline bool SatParameters::has_restart_dl_average_ratio()
const {
4211 return _internal_has_restart_dl_average_ratio();
4213 inline void SatParameters::clear_restart_dl_average_ratio() {
4214 restart_dl_average_ratio_ = 1;
4215 _has_bits_[2] &= ~0x00020000u;
4217 inline double SatParameters::_internal_restart_dl_average_ratio()
const {
4218 return restart_dl_average_ratio_;
4220 inline double SatParameters::restart_dl_average_ratio()
const {
4222 return _internal_restart_dl_average_ratio();
4224 inline void SatParameters::_internal_set_restart_dl_average_ratio(
double value) {
4225 _has_bits_[2] |= 0x00020000u;
4226 restart_dl_average_ratio_ =
value;
4228 inline void SatParameters::set_restart_dl_average_ratio(
double value) {
4229 _internal_set_restart_dl_average_ratio(
value);
4234 inline bool SatParameters::_internal_has_restart_lbd_average_ratio()
const {
4235 bool value = (_has_bits_[2] & 0x00400000u) != 0;
4238 inline bool SatParameters::has_restart_lbd_average_ratio()
const {
4239 return _internal_has_restart_lbd_average_ratio();
4241 inline void SatParameters::clear_restart_lbd_average_ratio() {
4242 restart_lbd_average_ratio_ = 1;
4243 _has_bits_[2] &= ~0x00400000u;
4245 inline double SatParameters::_internal_restart_lbd_average_ratio()
const {
4246 return restart_lbd_average_ratio_;
4248 inline double SatParameters::restart_lbd_average_ratio()
const {
4250 return _internal_restart_lbd_average_ratio();
4252 inline void SatParameters::_internal_set_restart_lbd_average_ratio(
double value) {
4253 _has_bits_[2] |= 0x00400000u;
4254 restart_lbd_average_ratio_ =
value;
4256 inline void SatParameters::set_restart_lbd_average_ratio(
double value) {
4257 _internal_set_restart_lbd_average_ratio(
value);
4262 inline bool SatParameters::_internal_has_use_blocking_restart()
const {
4263 bool value = (_has_bits_[0] & 0x00000400u) != 0;
4266 inline bool SatParameters::has_use_blocking_restart()
const {
4267 return _internal_has_use_blocking_restart();
4269 inline void SatParameters::clear_use_blocking_restart() {
4270 use_blocking_restart_ =
false;
4271 _has_bits_[0] &= ~0x00000400u;
4273 inline bool SatParameters::_internal_use_blocking_restart()
const {
4274 return use_blocking_restart_;
4276 inline bool SatParameters::use_blocking_restart()
const {
4278 return _internal_use_blocking_restart();
4280 inline void SatParameters::_internal_set_use_blocking_restart(
bool value) {
4281 _has_bits_[0] |= 0x00000400u;
4282 use_blocking_restart_ =
value;
4284 inline void SatParameters::set_use_blocking_restart(
bool value) {
4285 _internal_set_use_blocking_restart(
value);
4290 inline bool SatParameters::_internal_has_blocking_restart_window_size()
const {
4291 bool value = (_has_bits_[2] & 0x00080000u) != 0;
4294 inline bool SatParameters::has_blocking_restart_window_size()
const {
4295 return _internal_has_blocking_restart_window_size();
4297 inline void SatParameters::clear_blocking_restart_window_size() {
4298 blocking_restart_window_size_ = 5000;
4299 _has_bits_[2] &= ~0x00080000u;
4302 return blocking_restart_window_size_;
4306 return _internal_blocking_restart_window_size();
4309 _has_bits_[2] |= 0x00080000u;
4310 blocking_restart_window_size_ =
value;
4313 _internal_set_blocking_restart_window_size(
value);
4318 inline bool SatParameters::_internal_has_blocking_restart_multiplier()
const {
4319 bool value = (_has_bits_[2] & 0x00100000u) != 0;
4322 inline bool SatParameters::has_blocking_restart_multiplier()
const {
4323 return _internal_has_blocking_restart_multiplier();
4325 inline void SatParameters::clear_blocking_restart_multiplier() {
4326 blocking_restart_multiplier_ = 1.4;
4327 _has_bits_[2] &= ~0x00100000u;
4329 inline double SatParameters::_internal_blocking_restart_multiplier()
const {
4330 return blocking_restart_multiplier_;
4332 inline double SatParameters::blocking_restart_multiplier()
const {
4334 return _internal_blocking_restart_multiplier();
4336 inline void SatParameters::_internal_set_blocking_restart_multiplier(
double value) {
4337 _has_bits_[2] |= 0x00100000u;
4338 blocking_restart_multiplier_ =
value;
4340 inline void SatParameters::set_blocking_restart_multiplier(
double value) {
4341 _internal_set_blocking_restart_multiplier(
value);
4346 inline bool SatParameters::_internal_has_num_conflicts_before_strategy_changes()
const {
4347 bool value = (_has_bits_[0] & 0x00001000u) != 0;
4350 inline bool SatParameters::has_num_conflicts_before_strategy_changes()
const {
4351 return _internal_has_num_conflicts_before_strategy_changes();
4353 inline void SatParameters::clear_num_conflicts_before_strategy_changes() {
4354 num_conflicts_before_strategy_changes_ = 0;
4355 _has_bits_[0] &= ~0x00001000u;
4358 return num_conflicts_before_strategy_changes_;
4362 return _internal_num_conflicts_before_strategy_changes();
4365 _has_bits_[0] |= 0x00001000u;
4366 num_conflicts_before_strategy_changes_ =
value;
4369 _internal_set_num_conflicts_before_strategy_changes(
value);
4374 inline bool SatParameters::_internal_has_strategy_change_increase_ratio()
const {
4375 bool value = (_has_bits_[0] & 0x00002000u) != 0;
4378 inline bool SatParameters::has_strategy_change_increase_ratio()
const {
4379 return _internal_has_strategy_change_increase_ratio();
4381 inline void SatParameters::clear_strategy_change_increase_ratio() {
4382 strategy_change_increase_ratio_ = 0;
4383 _has_bits_[0] &= ~0x00002000u;
4385 inline double SatParameters::_internal_strategy_change_increase_ratio()
const {
4386 return strategy_change_increase_ratio_;
4388 inline double SatParameters::strategy_change_increase_ratio()
const {
4390 return _internal_strategy_change_increase_ratio();
4392 inline void SatParameters::_internal_set_strategy_change_increase_ratio(
double value) {
4393 _has_bits_[0] |= 0x00002000u;
4394 strategy_change_increase_ratio_ =
value;
4396 inline void SatParameters::set_strategy_change_increase_ratio(
double value) {
4397 _internal_set_strategy_change_increase_ratio(
value);
4402 inline bool SatParameters::_internal_has_max_time_in_seconds()
const {
4403 bool value = (_has_bits_[2] & 0x00000008u) != 0;
4406 inline bool SatParameters::has_max_time_in_seconds()
const {
4407 return _internal_has_max_time_in_seconds();
4409 inline void SatParameters::clear_max_time_in_seconds() {
4410 max_time_in_seconds_ = std::numeric_limits<double>::infinity();
4411 _has_bits_[2] &= ~0x00000008u;
4413 inline double SatParameters::_internal_max_time_in_seconds()
const {
4414 return max_time_in_seconds_;
4416 inline double SatParameters::max_time_in_seconds()
const {
4418 return _internal_max_time_in_seconds();
4420 inline void SatParameters::_internal_set_max_time_in_seconds(
double value) {
4421 _has_bits_[2] |= 0x00000008u;
4422 max_time_in_seconds_ =
value;
4424 inline void SatParameters::set_max_time_in_seconds(
double value) {
4425 _internal_set_max_time_in_seconds(
value);
4430 inline bool SatParameters::_internal_has_max_deterministic_time()
const {
4431 bool value = (_has_bits_[2] & 0x00200000u) != 0;
4434 inline bool SatParameters::has_max_deterministic_time()
const {
4435 return _internal_has_max_deterministic_time();
4437 inline void SatParameters::clear_max_deterministic_time() {
4438 max_deterministic_time_ = std::numeric_limits<double>::infinity();
4439 _has_bits_[2] &= ~0x00200000u;
4441 inline double SatParameters::_internal_max_deterministic_time()
const {
4442 return max_deterministic_time_;
4444 inline double SatParameters::max_deterministic_time()
const {
4446 return _internal_max_deterministic_time();
4448 inline void SatParameters::_internal_set_max_deterministic_time(
double value) {
4449 _has_bits_[2] |= 0x00200000u;
4450 max_deterministic_time_ =
value;
4452 inline void SatParameters::set_max_deterministic_time(
double value) {
4453 _internal_set_max_deterministic_time(
value);
4458 inline bool SatParameters::_internal_has_max_number_of_conflicts()
const {
4459 bool value = (_has_bits_[2] & 0x00000010u) != 0;
4462 inline bool SatParameters::has_max_number_of_conflicts()
const {
4463 return _internal_has_max_number_of_conflicts();
4465 inline void SatParameters::clear_max_number_of_conflicts() {
4466 max_number_of_conflicts_ = PROTOBUF_LONGLONG(9223372036854775807);
4467 _has_bits_[2] &= ~0x00000010u;
4470 return max_number_of_conflicts_;
4474 return _internal_max_number_of_conflicts();
4477 _has_bits_[2] |= 0x00000010u;
4478 max_number_of_conflicts_ =
value;
4481 _internal_set_max_number_of_conflicts(
value);
4486 inline bool SatParameters::_internal_has_max_memory_in_mb()
const {
4487 bool value = (_has_bits_[2] & 0x00000020u) != 0;
4490 inline bool SatParameters::has_max_memory_in_mb()
const {
4491 return _internal_has_max_memory_in_mb();
4493 inline void SatParameters::clear_max_memory_in_mb() {
4494 max_memory_in_mb_ = PROTOBUF_LONGLONG(10000);
4495 _has_bits_[2] &= ~0x00000020u;
4498 return max_memory_in_mb_;
4502 return _internal_max_memory_in_mb();
4505 _has_bits_[2] |= 0x00000020u;
4506 max_memory_in_mb_ =
value;
4509 _internal_set_max_memory_in_mb(
value);
4514 inline bool SatParameters::_internal_has_absolute_gap_limit()
const {
4515 bool value = (_has_bits_[1] & 0x00040000u) != 0;
4518 inline bool SatParameters::has_absolute_gap_limit()
const {
4519 return _internal_has_absolute_gap_limit();
4521 inline void SatParameters::clear_absolute_gap_limit() {
4522 absolute_gap_limit_ = 0;
4523 _has_bits_[1] &= ~0x00040000u;
4525 inline double SatParameters::_internal_absolute_gap_limit()
const {
4526 return absolute_gap_limit_;
4528 inline double SatParameters::absolute_gap_limit()
const {
4530 return _internal_absolute_gap_limit();
4532 inline void SatParameters::_internal_set_absolute_gap_limit(
double value) {
4533 _has_bits_[1] |= 0x00040000u;
4534 absolute_gap_limit_ =
value;
4536 inline void SatParameters::set_absolute_gap_limit(
double value) {
4537 _internal_set_absolute_gap_limit(
value);
4542 inline bool SatParameters::_internal_has_relative_gap_limit()
const {
4543 bool value = (_has_bits_[1] & 0x00080000u) != 0;
4546 inline bool SatParameters::has_relative_gap_limit()
const {
4547 return _internal_has_relative_gap_limit();
4549 inline void SatParameters::clear_relative_gap_limit() {
4550 relative_gap_limit_ = 0;
4551 _has_bits_[1] &= ~0x00080000u;
4553 inline double SatParameters::_internal_relative_gap_limit()
const {
4554 return relative_gap_limit_;
4556 inline double SatParameters::relative_gap_limit()
const {
4558 return _internal_relative_gap_limit();
4560 inline void SatParameters::_internal_set_relative_gap_limit(
double value) {
4561 _has_bits_[1] |= 0x00080000u;
4562 relative_gap_limit_ =
value;
4564 inline void SatParameters::set_relative_gap_limit(
double value) {
4565 _internal_set_relative_gap_limit(
value);
4570 inline bool SatParameters::_internal_has_treat_binary_clauses_separately()
const {
4571 bool value = (_has_bits_[2] & 0x00000100u) != 0;
4574 inline bool SatParameters::has_treat_binary_clauses_separately()
const {
4575 return _internal_has_treat_binary_clauses_separately();
4577 inline void SatParameters::clear_treat_binary_clauses_separately() {
4578 treat_binary_clauses_separately_ =
true;
4579 _has_bits_[2] &= ~0x00000100u;
4581 inline bool SatParameters::_internal_treat_binary_clauses_separately()
const {
4582 return treat_binary_clauses_separately_;
4584 inline bool SatParameters::treat_binary_clauses_separately()
const {
4586 return _internal_treat_binary_clauses_separately();
4588 inline void SatParameters::_internal_set_treat_binary_clauses_separately(
bool value) {
4589 _has_bits_[2] |= 0x00000100u;
4590 treat_binary_clauses_separately_ =
value;
4592 inline void SatParameters::set_treat_binary_clauses_separately(
bool value) {
4593 _internal_set_treat_binary_clauses_separately(
value);
4598 inline bool SatParameters::_internal_has_random_seed()
const {
4599 bool value = (_has_bits_[2] & 0x00000002u) != 0;
4602 inline bool SatParameters::has_random_seed()
const {
4603 return _internal_has_random_seed();
4605 inline void SatParameters::clear_random_seed() {
4607 _has_bits_[2] &= ~0x00000002u;
4610 return random_seed_;
4614 return _internal_random_seed();
4617 _has_bits_[2] |= 0x00000002u;
4618 random_seed_ =
value;
4621 _internal_set_random_seed(
value);
4626 inline bool SatParameters::_internal_has_log_search_progress()
const {
4627 bool value = (_has_bits_[0] & 0x00000800u) != 0;
4630 inline bool SatParameters::has_log_search_progress()
const {
4631 return _internal_has_log_search_progress();
4633 inline void SatParameters::clear_log_search_progress() {
4634 log_search_progress_ =
false;
4635 _has_bits_[0] &= ~0x00000800u;
4637 inline bool SatParameters::_internal_log_search_progress()
const {
4638 return log_search_progress_;
4640 inline bool SatParameters::log_search_progress()
const {
4642 return _internal_log_search_progress();
4644 inline void SatParameters::_internal_set_log_search_progress(
bool value) {
4645 _has_bits_[0] |= 0x00000800u;
4646 log_search_progress_ =
value;
4648 inline void SatParameters::set_log_search_progress(
bool value) {
4649 _internal_set_log_search_progress(
value);
4654 inline bool SatParameters::_internal_has_use_pb_resolution()
const {
4655 bool value = (_has_bits_[0] & 0x00010000u) != 0;
4658 inline bool SatParameters::has_use_pb_resolution()
const {
4659 return _internal_has_use_pb_resolution();
4661 inline void SatParameters::clear_use_pb_resolution() {
4662 use_pb_resolution_ =
false;
4663 _has_bits_[0] &= ~0x00010000u;
4665 inline bool SatParameters::_internal_use_pb_resolution()
const {
4666 return use_pb_resolution_;
4668 inline bool SatParameters::use_pb_resolution()
const {
4670 return _internal_use_pb_resolution();
4672 inline void SatParameters::_internal_set_use_pb_resolution(
bool value) {
4673 _has_bits_[0] |= 0x00010000u;
4674 use_pb_resolution_ =
value;
4676 inline void SatParameters::set_use_pb_resolution(
bool value) {
4677 _internal_set_use_pb_resolution(
value);
4682 inline bool SatParameters::_internal_has_minimize_reduction_during_pb_resolution()
const {
4683 bool value = (_has_bits_[0] & 0x00020000u) != 0;
4686 inline bool SatParameters::has_minimize_reduction_during_pb_resolution()
const {
4687 return _internal_has_minimize_reduction_during_pb_resolution();
4689 inline void SatParameters::clear_minimize_reduction_during_pb_resolution() {
4690 minimize_reduction_during_pb_resolution_ =
false;
4691 _has_bits_[0] &= ~0x00020000u;
4693 inline bool SatParameters::_internal_minimize_reduction_during_pb_resolution()
const {
4694 return minimize_reduction_during_pb_resolution_;
4696 inline bool SatParameters::minimize_reduction_during_pb_resolution()
const {
4698 return _internal_minimize_reduction_during_pb_resolution();
4700 inline void SatParameters::_internal_set_minimize_reduction_during_pb_resolution(
bool value) {
4701 _has_bits_[0] |= 0x00020000u;
4702 minimize_reduction_during_pb_resolution_ =
value;
4704 inline void SatParameters::set_minimize_reduction_during_pb_resolution(
bool value) {
4705 _internal_set_minimize_reduction_during_pb_resolution(
value);
4710 inline bool SatParameters::_internal_has_count_assumption_levels_in_lbd()
const {
4711 bool value = (_has_bits_[2] & 0x00000200u) != 0;
4714 inline bool SatParameters::has_count_assumption_levels_in_lbd()
const {
4715 return _internal_has_count_assumption_levels_in_lbd();
4717 inline void SatParameters::clear_count_assumption_levels_in_lbd() {
4718 count_assumption_levels_in_lbd_ =
true;
4719 _has_bits_[2] &= ~0x00000200u;
4721 inline bool SatParameters::_internal_count_assumption_levels_in_lbd()
const {
4722 return count_assumption_levels_in_lbd_;
4724 inline bool SatParameters::count_assumption_levels_in_lbd()
const {
4726 return _internal_count_assumption_levels_in_lbd();
4728 inline void SatParameters::_internal_set_count_assumption_levels_in_lbd(
bool value) {
4729 _has_bits_[2] |= 0x00000200u;
4730 count_assumption_levels_in_lbd_ =
value;
4732 inline void SatParameters::set_count_assumption_levels_in_lbd(
bool value) {
4733 _internal_set_count_assumption_levels_in_lbd(
value);
4738 inline bool SatParameters::_internal_has_presolve_bve_threshold()
const {
4739 bool value = (_has_bits_[2] & 0x00002000u) != 0;
4742 inline bool SatParameters::has_presolve_bve_threshold()
const {
4743 return _internal_has_presolve_bve_threshold();
4745 inline void SatParameters::clear_presolve_bve_threshold() {
4746 presolve_bve_threshold_ = 500;
4747 _has_bits_[2] &= ~0x00002000u;
4750 return presolve_bve_threshold_;
4754 return _internal_presolve_bve_threshold();
4757 _has_bits_[2] |= 0x00002000u;
4758 presolve_bve_threshold_ =
value;
4761 _internal_set_presolve_bve_threshold(
value);
4766 inline bool SatParameters::_internal_has_presolve_bve_clause_weight()
const {
4767 bool value = (_has_bits_[2] & 0x00008000u) != 0;
4770 inline bool SatParameters::has_presolve_bve_clause_weight()
const {
4771 return _internal_has_presolve_bve_clause_weight();
4773 inline void SatParameters::clear_presolve_bve_clause_weight() {
4774 presolve_bve_clause_weight_ = 3;
4775 _has_bits_[2] &= ~0x00008000u;
4778 return presolve_bve_clause_weight_;
4782 return _internal_presolve_bve_clause_weight();
4785 _has_bits_[2] |= 0x00008000u;
4786 presolve_bve_clause_weight_ =
value;
4789 _internal_set_presolve_bve_clause_weight(
value);
4794 inline bool SatParameters::_internal_has_presolve_probing_deterministic_time_limit()
const {
4795 bool value = (_has_bits_[2] & 0x00004000u) != 0;
4798 inline bool SatParameters::has_presolve_probing_deterministic_time_limit()
const {
4799 return _internal_has_presolve_probing_deterministic_time_limit();
4801 inline void SatParameters::clear_presolve_probing_deterministic_time_limit() {
4802 presolve_probing_deterministic_time_limit_ = 30;
4803 _has_bits_[2] &= ~0x00004000u;
4805 inline double SatParameters::_internal_presolve_probing_deterministic_time_limit()
const {
4806 return presolve_probing_deterministic_time_limit_;
4808 inline double SatParameters::presolve_probing_deterministic_time_limit()
const {
4810 return _internal_presolve_probing_deterministic_time_limit();
4812 inline void SatParameters::_internal_set_presolve_probing_deterministic_time_limit(
double value) {
4813 _has_bits_[2] |= 0x00004000u;
4814 presolve_probing_deterministic_time_limit_ =
value;
4816 inline void SatParameters::set_presolve_probing_deterministic_time_limit(
double value) {
4817 _internal_set_presolve_probing_deterministic_time_limit(
value);
4822 inline bool SatParameters::_internal_has_presolve_blocked_clause()
const {
4823 bool value = (_has_bits_[2] & 0x10000000u) != 0;
4826 inline bool SatParameters::has_presolve_blocked_clause()
const {
4827 return _internal_has_presolve_blocked_clause();
4829 inline void SatParameters::clear_presolve_blocked_clause() {
4830 presolve_blocked_clause_ =
true;
4831 _has_bits_[2] &= ~0x10000000u;
4833 inline bool SatParameters::_internal_presolve_blocked_clause()
const {
4834 return presolve_blocked_clause_;
4836 inline bool SatParameters::presolve_blocked_clause()
const {
4838 return _internal_presolve_blocked_clause();
4840 inline void SatParameters::_internal_set_presolve_blocked_clause(
bool value) {
4841 _has_bits_[2] |= 0x10000000u;
4842 presolve_blocked_clause_ =
value;
4844 inline void SatParameters::set_presolve_blocked_clause(
bool value) {
4845 _internal_set_presolve_blocked_clause(
value);
4850 inline bool SatParameters::_internal_has_presolve_use_bva()
const {
4851 bool value = (_has_bits_[2] & 0x20000000u) != 0;
4854 inline bool SatParameters::has_presolve_use_bva()
const {
4855 return _internal_has_presolve_use_bva();
4857 inline void SatParameters::clear_presolve_use_bva() {
4858 presolve_use_bva_ =
true;
4859 _has_bits_[2] &= ~0x20000000u;
4861 inline bool SatParameters::_internal_presolve_use_bva()
const {
4862 return presolve_use_bva_;
4864 inline bool SatParameters::presolve_use_bva()
const {
4866 return _internal_presolve_use_bva();
4868 inline void SatParameters::_internal_set_presolve_use_bva(
bool value) {
4869 _has_bits_[2] |= 0x20000000u;
4870 presolve_use_bva_ =
value;
4872 inline void SatParameters::set_presolve_use_bva(
bool value) {
4873 _internal_set_presolve_use_bva(
value);
4878 inline bool SatParameters::_internal_has_presolve_bva_threshold()
const {
4879 bool value = (_has_bits_[2] & 0x00800000u) != 0;
4882 inline bool SatParameters::has_presolve_bva_threshold()
const {
4883 return _internal_has_presolve_bva_threshold();
4885 inline void SatParameters::clear_presolve_bva_threshold() {
4886 presolve_bva_threshold_ = 1;
4887 _has_bits_[2] &= ~0x00800000u;
4890 return presolve_bva_threshold_;
4894 return _internal_presolve_bva_threshold();
4897 _has_bits_[2] |= 0x00800000u;
4898 presolve_bva_threshold_ =
value;
4901 _internal_set_presolve_bva_threshold(
value);
4906 inline bool SatParameters::_internal_has_max_presolve_iterations()
const {
4907 bool value = (_has_bits_[4] & 0x00000800u) != 0;
4910 inline bool SatParameters::has_max_presolve_iterations()
const {
4911 return _internal_has_max_presolve_iterations();
4913 inline void SatParameters::clear_max_presolve_iterations() {
4914 max_presolve_iterations_ = 3;
4915 _has_bits_[4] &= ~0x00000800u;
4918 return max_presolve_iterations_;
4922 return _internal_max_presolve_iterations();
4925 _has_bits_[4] |= 0x00000800u;
4926 max_presolve_iterations_ =
value;
4929 _internal_set_max_presolve_iterations(
value);
4934 inline bool SatParameters::_internal_has_cp_model_presolve()
const {
4935 bool value = (_has_bits_[2] & 0x40000000u) != 0;
4938 inline bool SatParameters::has_cp_model_presolve()
const {
4939 return _internal_has_cp_model_presolve();
4941 inline void SatParameters::clear_cp_model_presolve() {
4942 cp_model_presolve_ =
true;
4943 _has_bits_[2] &= ~0x40000000u;
4945 inline bool SatParameters::_internal_cp_model_presolve()
const {
4946 return cp_model_presolve_;
4948 inline bool SatParameters::cp_model_presolve()
const {
4950 return _internal_cp_model_presolve();
4952 inline void SatParameters::_internal_set_cp_model_presolve(
bool value) {
4953 _has_bits_[2] |= 0x40000000u;
4954 cp_model_presolve_ =
value;
4956 inline void SatParameters::set_cp_model_presolve(
bool value) {
4957 _internal_set_cp_model_presolve(
value);
4962 inline bool SatParameters::_internal_has_cp_model_postsolve_with_full_solver()
const {
4963 bool value = (_has_bits_[0] & 0x00040000u) != 0;
4966 inline bool SatParameters::has_cp_model_postsolve_with_full_solver()
const {
4967 return _internal_has_cp_model_postsolve_with_full_solver();
4969 inline void SatParameters::clear_cp_model_postsolve_with_full_solver() {
4970 cp_model_postsolve_with_full_solver_ =
false;
4971 _has_bits_[0] &= ~0x00040000u;
4973 inline bool SatParameters::_internal_cp_model_postsolve_with_full_solver()
const {
4974 return cp_model_postsolve_with_full_solver_;
4976 inline bool SatParameters::cp_model_postsolve_with_full_solver()
const {
4978 return _internal_cp_model_postsolve_with_full_solver();
4980 inline void SatParameters::_internal_set_cp_model_postsolve_with_full_solver(
bool value) {
4981 _has_bits_[0] |= 0x00040000u;
4982 cp_model_postsolve_with_full_solver_ =
value;
4984 inline void SatParameters::set_cp_model_postsolve_with_full_solver(
bool value) {
4985 _internal_set_cp_model_postsolve_with_full_solver(
value);
4990 inline bool SatParameters::_internal_has_cp_model_max_num_presolve_operations()
const {
4991 bool value = (_has_bits_[1] & 0x00020000u) != 0;
4994 inline bool SatParameters::has_cp_model_max_num_presolve_operations()
const {
4995 return _internal_has_cp_model_max_num_presolve_operations();
4997 inline void SatParameters::clear_cp_model_max_num_presolve_operations() {
4998 cp_model_max_num_presolve_operations_ = 0;
4999 _has_bits_[1] &= ~0x00020000u;
5002 return cp_model_max_num_presolve_operations_;
5006 return _internal_cp_model_max_num_presolve_operations();
5009 _has_bits_[1] |= 0x00020000u;
5010 cp_model_max_num_presolve_operations_ =
value;
5013 _internal_set_cp_model_max_num_presolve_operations(
value);
5018 inline bool SatParameters::_internal_has_cp_model_probing_level()
const {
5019 bool value = (_has_bits_[3] & 0x00000080u) != 0;
5022 inline bool SatParameters::has_cp_model_probing_level()
const {
5023 return _internal_has_cp_model_probing_level();
5025 inline void SatParameters::clear_cp_model_probing_level() {
5026 cp_model_probing_level_ = 2;
5027 _has_bits_[3] &= ~0x00000080u;
5030 return cp_model_probing_level_;
5034 return _internal_cp_model_probing_level();
5037 _has_bits_[3] |= 0x00000080u;
5038 cp_model_probing_level_ =
value;
5041 _internal_set_cp_model_probing_level(
value);
5046 inline bool SatParameters::_internal_has_cp_model_use_sat_presolve()
const {
5047 bool value = (_has_bits_[2] & 0x80000000u) != 0;
5050 inline bool SatParameters::has_cp_model_use_sat_presolve()
const {
5051 return _internal_has_cp_model_use_sat_presolve();
5053 inline void SatParameters::clear_cp_model_use_sat_presolve() {
5054 cp_model_use_sat_presolve_ =
true;
5055 _has_bits_[2] &= ~0x80000000u;
5057 inline bool SatParameters::_internal_cp_model_use_sat_presolve()
const {
5058 return cp_model_use_sat_presolve_;
5060 inline bool SatParameters::cp_model_use_sat_presolve()
const {
5062 return _internal_cp_model_use_sat_presolve();
5064 inline void SatParameters::_internal_set_cp_model_use_sat_presolve(
bool value) {
5065 _has_bits_[2] |= 0x80000000u;
5066 cp_model_use_sat_presolve_ =
value;
5068 inline void SatParameters::set_cp_model_use_sat_presolve(
bool value) {
5069 _internal_set_cp_model_use_sat_presolve(
value);
5074 inline bool SatParameters::_internal_has_use_sat_inprocessing()
const {
5075 bool value = (_has_bits_[0] & 0x00080000u) != 0;
5078 inline bool SatParameters::has_use_sat_inprocessing()
const {
5079 return _internal_has_use_sat_inprocessing();
5081 inline void SatParameters::clear_use_sat_inprocessing() {
5082 use_sat_inprocessing_ =
false;
5083 _has_bits_[0] &= ~0x00080000u;
5085 inline bool SatParameters::_internal_use_sat_inprocessing()
const {
5086 return use_sat_inprocessing_;
5088 inline bool SatParameters::use_sat_inprocessing()
const {
5090 return _internal_use_sat_inprocessing();
5092 inline void SatParameters::_internal_set_use_sat_inprocessing(
bool value) {
5093 _has_bits_[0] |= 0x00080000u;
5094 use_sat_inprocessing_ =
value;
5096 inline void SatParameters::set_use_sat_inprocessing(
bool value) {
5097 _internal_set_use_sat_inprocessing(
value);
5102 inline bool SatParameters::_internal_has_expand_element_constraints()
const {
5103 bool value = (_has_bits_[3] & 0x00004000u) != 0;
5106 inline bool SatParameters::has_expand_element_constraints()
const {
5107 return _internal_has_expand_element_constraints();
5109 inline void SatParameters::clear_expand_element_constraints() {
5110 expand_element_constraints_ =
true;
5111 _has_bits_[3] &= ~0x00004000u;
5113 inline bool SatParameters::_internal_expand_element_constraints()
const {
5114 return expand_element_constraints_;
5116 inline bool SatParameters::expand_element_constraints()
const {
5118 return _internal_expand_element_constraints();
5120 inline void SatParameters::_internal_set_expand_element_constraints(
bool value) {
5121 _has_bits_[3] |= 0x00004000u;
5122 expand_element_constraints_ =
value;
5124 inline void SatParameters::set_expand_element_constraints(
bool value) {
5125 _internal_set_expand_element_constraints(
value);
5130 inline bool SatParameters::_internal_has_expand_automaton_constraints()
const {
5131 bool value = (_has_bits_[3] & 0x00008000u) != 0;
5134 inline bool SatParameters::has_expand_automaton_constraints()
const {
5135 return _internal_has_expand_automaton_constraints();
5137 inline void SatParameters::clear_expand_automaton_constraints() {
5138 expand_automaton_constraints_ =
true;
5139 _has_bits_[3] &= ~0x00008000u;
5141 inline bool SatParameters::_internal_expand_automaton_constraints()
const {
5142 return expand_automaton_constraints_;
5144 inline bool SatParameters::expand_automaton_constraints()
const {
5146 return _internal_expand_automaton_constraints();
5148 inline void SatParameters::_internal_set_expand_automaton_constraints(
bool value) {
5149 _has_bits_[3] |= 0x00008000u;
5150 expand_automaton_constraints_ =
value;
5152 inline void SatParameters::set_expand_automaton_constraints(
bool value) {
5153 _internal_set_expand_automaton_constraints(
value);
5158 inline bool SatParameters::_internal_has_expand_table_constraints()
const {
5159 bool value = (_has_bits_[3] & 0x00010000u) != 0;
5162 inline bool SatParameters::has_expand_table_constraints()
const {
5163 return _internal_has_expand_table_constraints();
5165 inline void SatParameters::clear_expand_table_constraints() {
5166 expand_table_constraints_ =
true;
5167 _has_bits_[3] &= ~0x00010000u;
5169 inline bool SatParameters::_internal_expand_table_constraints()
const {
5170 return expand_table_constraints_;
5172 inline bool SatParameters::expand_table_constraints()
const {
5174 return _internal_expand_table_constraints();
5176 inline void SatParameters::_internal_set_expand_table_constraints(
bool value) {
5177 _has_bits_[3] |= 0x00010000u;
5178 expand_table_constraints_ =
value;
5180 inline void SatParameters::set_expand_table_constraints(
bool value) {
5181 _internal_set_expand_table_constraints(
value);
5186 inline bool SatParameters::_internal_has_expand_alldiff_constraints()
const {
5187 bool value = (_has_bits_[0] & 0x20000000u) != 0;
5190 inline bool SatParameters::has_expand_alldiff_constraints()
const {
5191 return _internal_has_expand_alldiff_constraints();
5193 inline void SatParameters::clear_expand_alldiff_constraints() {
5194 expand_alldiff_constraints_ =
false;
5195 _has_bits_[0] &= ~0x20000000u;
5197 inline bool SatParameters::_internal_expand_alldiff_constraints()
const {
5198 return expand_alldiff_constraints_;
5200 inline bool SatParameters::expand_alldiff_constraints()
const {
5202 return _internal_expand_alldiff_constraints();
5204 inline void SatParameters::_internal_set_expand_alldiff_constraints(
bool value) {
5205 _has_bits_[0] |= 0x20000000u;
5206 expand_alldiff_constraints_ =
value;
5208 inline void SatParameters::set_expand_alldiff_constraints(
bool value) {
5209 _internal_set_expand_alldiff_constraints(
value);
5214 inline bool SatParameters::_internal_has_merge_no_overlap_work_limit()
const {
5215 bool value = (_has_bits_[4] & 0x00002000u) != 0;
5218 inline bool SatParameters::has_merge_no_overlap_work_limit()
const {
5219 return _internal_has_merge_no_overlap_work_limit();
5221 inline void SatParameters::clear_merge_no_overlap_work_limit() {
5222 merge_no_overlap_work_limit_ = 1000000000000;
5223 _has_bits_[4] &= ~0x00002000u;
5225 inline double SatParameters::_internal_merge_no_overlap_work_limit()
const {
5226 return merge_no_overlap_work_limit_;
5228 inline double SatParameters::merge_no_overlap_work_limit()
const {
5230 return _internal_merge_no_overlap_work_limit();
5232 inline void SatParameters::_internal_set_merge_no_overlap_work_limit(
double value) {
5233 _has_bits_[4] |= 0x00002000u;
5234 merge_no_overlap_work_limit_ =
value;
5236 inline void SatParameters::set_merge_no_overlap_work_limit(
double value) {
5237 _internal_set_merge_no_overlap_work_limit(
value);
5242 inline bool SatParameters::_internal_has_merge_at_most_one_work_limit()
const {
5243 bool value = (_has_bits_[4] & 0x00004000u) != 0;
5246 inline bool SatParameters::has_merge_at_most_one_work_limit()
const {
5247 return _internal_has_merge_at_most_one_work_limit();
5249 inline void SatParameters::clear_merge_at_most_one_work_limit() {
5250 merge_at_most_one_work_limit_ = 100000000;
5251 _has_bits_[4] &= ~0x00004000u;
5253 inline double SatParameters::_internal_merge_at_most_one_work_limit()
const {
5254 return merge_at_most_one_work_limit_;
5256 inline double SatParameters::merge_at_most_one_work_limit()
const {
5258 return _internal_merge_at_most_one_work_limit();
5260 inline void SatParameters::_internal_set_merge_at_most_one_work_limit(
double value) {
5261 _has_bits_[4] |= 0x00004000u;
5262 merge_at_most_one_work_limit_ =
value;
5264 inline void SatParameters::set_merge_at_most_one_work_limit(
double value) {
5265 _internal_set_merge_at_most_one_work_limit(
value);
5270 inline bool SatParameters::_internal_has_presolve_substitution_level()
const {
5271 bool value = (_has_bits_[4] & 0x00001000u) != 0;
5274 inline bool SatParameters::has_presolve_substitution_level()
const {
5275 return _internal_has_presolve_substitution_level();
5277 inline void SatParameters::clear_presolve_substitution_level() {
5278 presolve_substitution_level_ = 1;
5279 _has_bits_[4] &= ~0x00001000u;
5282 return presolve_substitution_level_;
5286 return _internal_presolve_substitution_level();
5289 _has_bits_[4] |= 0x00001000u;
5290 presolve_substitution_level_ =
value;
5293 _internal_set_presolve_substitution_level(
value);
5298 inline bool SatParameters::_internal_has_presolve_extract_integer_enforcement()
const {
5299 bool value = (_has_bits_[0] & 0x40000000u) != 0;
5302 inline bool SatParameters::has_presolve_extract_integer_enforcement()
const {
5303 return _internal_has_presolve_extract_integer_enforcement();
5305 inline void SatParameters::clear_presolve_extract_integer_enforcement() {
5306 presolve_extract_integer_enforcement_ =
false;
5307 _has_bits_[0] &= ~0x40000000u;
5309 inline bool SatParameters::_internal_presolve_extract_integer_enforcement()
const {
5310 return presolve_extract_integer_enforcement_;
5312 inline bool SatParameters::presolve_extract_integer_enforcement()
const {
5314 return _internal_presolve_extract_integer_enforcement();
5316 inline void SatParameters::_internal_set_presolve_extract_integer_enforcement(
bool value) {
5317 _has_bits_[0] |= 0x40000000u;
5318 presolve_extract_integer_enforcement_ =
value;
5320 inline void SatParameters::set_presolve_extract_integer_enforcement(
bool value) {
5321 _internal_set_presolve_extract_integer_enforcement(
value);
5326 inline bool SatParameters::_internal_has_use_optimization_hints()
const {
5327 bool value = (_has_bits_[3] & 0x00020000u) != 0;
5330 inline bool SatParameters::has_use_optimization_hints()
const {
5331 return _internal_has_use_optimization_hints();
5333 inline void SatParameters::clear_use_optimization_hints() {
5334 use_optimization_hints_ =
true;
5335 _has_bits_[3] &= ~0x00020000u;
5337 inline bool SatParameters::_internal_use_optimization_hints()
const {
5338 return use_optimization_hints_;
5340 inline bool SatParameters::use_optimization_hints()
const {
5342 return _internal_use_optimization_hints();
5344 inline void SatParameters::_internal_set_use_optimization_hints(
bool value) {
5345 _has_bits_[3] |= 0x00020000u;
5346 use_optimization_hints_ =
value;
5348 inline void SatParameters::set_use_optimization_hints(
bool value) {
5349 _internal_set_use_optimization_hints(
value);
5354 inline bool SatParameters::_internal_has_minimize_core()
const {
5355 bool value = (_has_bits_[2] & 0x01000000u) != 0;
5358 inline bool SatParameters::has_minimize_core()
const {
5359 return _internal_has_minimize_core();
5361 inline void SatParameters::clear_minimize_core() {
5362 minimize_core_ =
true;
5363 _has_bits_[2] &= ~0x01000000u;
5365 inline bool SatParameters::_internal_minimize_core()
const {
5366 return minimize_core_;
5368 inline bool SatParameters::minimize_core()
const {
5370 return _internal_minimize_core();
5372 inline void SatParameters::_internal_set_minimize_core(
bool value) {
5373 _has_bits_[2] |= 0x01000000u;
5374 minimize_core_ =
value;
5376 inline void SatParameters::set_minimize_core(
bool value) {
5377 _internal_set_minimize_core(
value);
5382 inline bool SatParameters::_internal_has_find_multiple_cores()
const {
5383 bool value = (_has_bits_[2] & 0x02000000u) != 0;
5386 inline bool SatParameters::has_find_multiple_cores()
const {
5387 return _internal_has_find_multiple_cores();
5389 inline void SatParameters::clear_find_multiple_cores() {
5390 find_multiple_cores_ =
true;
5391 _has_bits_[2] &= ~0x02000000u;
5393 inline bool SatParameters::_internal_find_multiple_cores()
const {
5394 return find_multiple_cores_;
5396 inline bool SatParameters::find_multiple_cores()
const {
5398 return _internal_find_multiple_cores();
5400 inline void SatParameters::_internal_set_find_multiple_cores(
bool value) {
5401 _has_bits_[2] |= 0x02000000u;
5402 find_multiple_cores_ =
value;
5404 inline void SatParameters::set_find_multiple_cores(
bool value) {
5405 _internal_set_find_multiple_cores(
value);
5410 inline bool SatParameters::_internal_has_cover_optimization()
const {
5411 bool value = (_has_bits_[2] & 0x04000000u) != 0;
5414 inline bool SatParameters::has_cover_optimization()
const {
5415 return _internal_has_cover_optimization();
5417 inline void SatParameters::clear_cover_optimization() {
5418 cover_optimization_ =
true;
5419 _has_bits_[2] &= ~0x04000000u;
5421 inline bool SatParameters::_internal_cover_optimization()
const {
5422 return cover_optimization_;
5424 inline bool SatParameters::cover_optimization()
const {
5426 return _internal_cover_optimization();
5428 inline void SatParameters::_internal_set_cover_optimization(
bool value) {
5429 _has_bits_[2] |= 0x04000000u;
5430 cover_optimization_ =
value;
5432 inline void SatParameters::set_cover_optimization(
bool value) {
5433 _internal_set_cover_optimization(
value);
5438 inline bool SatParameters::_internal_has_max_sat_assumption_order()
const {
5439 bool value = (_has_bits_[0] & 0x00000008u) != 0;
5442 inline bool SatParameters::has_max_sat_assumption_order()
const {
5443 return _internal_has_max_sat_assumption_order();
5445 inline void SatParameters::clear_max_sat_assumption_order() {
5446 max_sat_assumption_order_ = 0;
5447 _has_bits_[0] &= ~0x00000008u;
5454 return _internal_max_sat_assumption_order();
5458 _has_bits_[0] |= 0x00000008u;
5459 max_sat_assumption_order_ =
value;
5462 _internal_set_max_sat_assumption_order(
value);
5467 inline bool SatParameters::_internal_has_max_sat_reverse_assumption_order()
const {
5468 bool value = (_has_bits_[0] & 0x80000000u) != 0;
5471 inline bool SatParameters::has_max_sat_reverse_assumption_order()
const {
5472 return _internal_has_max_sat_reverse_assumption_order();
5474 inline void SatParameters::clear_max_sat_reverse_assumption_order() {
5475 max_sat_reverse_assumption_order_ =
false;
5476 _has_bits_[0] &= ~0x80000000u;
5478 inline bool SatParameters::_internal_max_sat_reverse_assumption_order()
const {
5479 return max_sat_reverse_assumption_order_;
5481 inline bool SatParameters::max_sat_reverse_assumption_order()
const {
5483 return _internal_max_sat_reverse_assumption_order();
5485 inline void SatParameters::_internal_set_max_sat_reverse_assumption_order(
bool value) {
5486 _has_bits_[0] |= 0x80000000u;
5487 max_sat_reverse_assumption_order_ =
value;
5489 inline void SatParameters::set_max_sat_reverse_assumption_order(
bool value) {
5490 _internal_set_max_sat_reverse_assumption_order(
value);
5495 inline bool SatParameters::_internal_has_max_sat_stratification()
const {
5496 bool value = (_has_bits_[2] & 0x00001000u) != 0;
5499 inline bool SatParameters::has_max_sat_stratification()
const {
5500 return _internal_has_max_sat_stratification();
5502 inline void SatParameters::clear_max_sat_stratification() {
5503 max_sat_stratification_ = 1;
5504 _has_bits_[2] &= ~0x00001000u;
5511 return _internal_max_sat_stratification();
5515 _has_bits_[2] |= 0x00001000u;
5516 max_sat_stratification_ =
value;
5519 _internal_set_max_sat_stratification(
value);
5524 inline bool SatParameters::_internal_has_use_precedences_in_disjunctive_constraint()
const {
5525 bool value = (_has_bits_[2] & 0x08000000u) != 0;
5528 inline bool SatParameters::has_use_precedences_in_disjunctive_constraint()
const {
5529 return _internal_has_use_precedences_in_disjunctive_constraint();
5531 inline void SatParameters::clear_use_precedences_in_disjunctive_constraint() {
5532 use_precedences_in_disjunctive_constraint_ =
true;
5533 _has_bits_[2] &= ~0x08000000u;
5535 inline bool SatParameters::_internal_use_precedences_in_disjunctive_constraint()
const {
5536 return use_precedences_in_disjunctive_constraint_;
5538 inline bool SatParameters::use_precedences_in_disjunctive_constraint()
const {
5540 return _internal_use_precedences_in_disjunctive_constraint();
5542 inline void SatParameters::_internal_set_use_precedences_in_disjunctive_constraint(
bool value) {
5543 _has_bits_[2] |= 0x08000000u;
5544 use_precedences_in_disjunctive_constraint_ =
value;
5546 inline void SatParameters::set_use_precedences_in_disjunctive_constraint(
bool value) {
5547 _internal_set_use_precedences_in_disjunctive_constraint(
value);
5552 inline bool SatParameters::_internal_has_use_overload_checker_in_cumulative_constraint()
const {
5553 bool value = (_has_bits_[1] & 0x00000001u) != 0;
5556 inline bool SatParameters::has_use_overload_checker_in_cumulative_constraint()
const {
5557 return _internal_has_use_overload_checker_in_cumulative_constraint();
5559 inline void SatParameters::clear_use_overload_checker_in_cumulative_constraint() {
5560 use_overload_checker_in_cumulative_constraint_ =
false;
5561 _has_bits_[1] &= ~0x00000001u;
5563 inline bool SatParameters::_internal_use_overload_checker_in_cumulative_constraint()
const {
5564 return use_overload_checker_in_cumulative_constraint_;
5566 inline bool SatParameters::use_overload_checker_in_cumulative_constraint()
const {
5568 return _internal_use_overload_checker_in_cumulative_constraint();
5570 inline void SatParameters::_internal_set_use_overload_checker_in_cumulative_constraint(
bool value) {
5571 _has_bits_[1] |= 0x00000001u;
5572 use_overload_checker_in_cumulative_constraint_ =
value;
5574 inline void SatParameters::set_use_overload_checker_in_cumulative_constraint(
bool value) {
5575 _internal_set_use_overload_checker_in_cumulative_constraint(
value);
5580 inline bool SatParameters::_internal_has_use_timetable_edge_finding_in_cumulative_constraint()
const {
5581 bool value = (_has_bits_[0] & 0x00200000u) != 0;
5584 inline bool SatParameters::has_use_timetable_edge_finding_in_cumulative_constraint()
const {
5585 return _internal_has_use_timetable_edge_finding_in_cumulative_constraint();
5587 inline void SatParameters::clear_use_timetable_edge_finding_in_cumulative_constraint() {
5588 use_timetable_edge_finding_in_cumulative_constraint_ =
false;
5589 _has_bits_[0] &= ~0x00200000u;
5591 inline bool SatParameters::_internal_use_timetable_edge_finding_in_cumulative_constraint()
const {
5592 return use_timetable_edge_finding_in_cumulative_constraint_;
5594 inline bool SatParameters::use_timetable_edge_finding_in_cumulative_constraint()
const {
5596 return _internal_use_timetable_edge_finding_in_cumulative_constraint();
5598 inline void SatParameters::_internal_set_use_timetable_edge_finding_in_cumulative_constraint(
bool value) {
5599 _has_bits_[0] |= 0x00200000u;
5600 use_timetable_edge_finding_in_cumulative_constraint_ =
value;
5602 inline void SatParameters::set_use_timetable_edge_finding_in_cumulative_constraint(
bool value) {
5603 _internal_set_use_timetable_edge_finding_in_cumulative_constraint(
value);
5608 inline bool SatParameters::_internal_has_use_disjunctive_constraint_in_cumulative_constraint()
const {
5609 bool value = (_has_bits_[3] & 0x00080000u) != 0;
5612 inline bool SatParameters::has_use_disjunctive_constraint_in_cumulative_constraint()
const {
5613 return _internal_has_use_disjunctive_constraint_in_cumulative_constraint();
5615 inline void SatParameters::clear_use_disjunctive_constraint_in_cumulative_constraint() {
5616 use_disjunctive_constraint_in_cumulative_constraint_ =
true;
5617 _has_bits_[3] &= ~0x00080000u;
5619 inline bool SatParameters::_internal_use_disjunctive_constraint_in_cumulative_constraint()
const {
5620 return use_disjunctive_constraint_in_cumulative_constraint_;
5622 inline bool SatParameters::use_disjunctive_constraint_in_cumulative_constraint()
const {
5624 return _internal_use_disjunctive_constraint_in_cumulative_constraint();
5626 inline void SatParameters::_internal_set_use_disjunctive_constraint_in_cumulative_constraint(
bool value) {
5627 _has_bits_[3] |= 0x00080000u;
5628 use_disjunctive_constraint_in_cumulative_constraint_ =
value;
5630 inline void SatParameters::set_use_disjunctive_constraint_in_cumulative_constraint(
bool value) {
5631 _internal_set_use_disjunctive_constraint_in_cumulative_constraint(
value);
5636 inline bool SatParameters::_internal_has_linearization_level()
const {
5637 bool value = (_has_bits_[3] & 0x00000001u) != 0;
5640 inline bool SatParameters::has_linearization_level()
const {
5641 return _internal_has_linearization_level();
5643 inline void SatParameters::clear_linearization_level() {
5644 linearization_level_ = 1;
5645 _has_bits_[3] &= ~0x00000001u;
5648 return linearization_level_;
5652 return _internal_linearization_level();
5655 _has_bits_[3] |= 0x00000001u;
5656 linearization_level_ =
value;
5659 _internal_set_linearization_level(
value);
5664 inline bool SatParameters::_internal_has_boolean_encoding_level()
const {
5665 bool value = (_has_bits_[3] & 0x00000040u) != 0;
5668 inline bool SatParameters::has_boolean_encoding_level()
const {
5669 return _internal_has_boolean_encoding_level();
5671 inline void SatParameters::clear_boolean_encoding_level() {
5672 boolean_encoding_level_ = 1;
5673 _has_bits_[3] &= ~0x00000040u;
5676 return boolean_encoding_level_;
5680 return _internal_boolean_encoding_level();
5683 _has_bits_[3] |= 0x00000040u;
5684 boolean_encoding_level_ =
value;
5687 _internal_set_boolean_encoding_level(
value);
5692 inline bool SatParameters::_internal_has_max_num_cuts()
const {
5693 bool value = (_has_bits_[3] & 0x00000002u) != 0;
5696 inline bool SatParameters::has_max_num_cuts()
const {
5697 return _internal_has_max_num_cuts();
5699 inline void SatParameters::clear_max_num_cuts() {
5700 max_num_cuts_ = 10000;
5701 _has_bits_[3] &= ~0x00000002u;
5704 return max_num_cuts_;
5708 return _internal_max_num_cuts();
5711 _has_bits_[3] |= 0x00000002u;
5712 max_num_cuts_ =
value;
5715 _internal_set_max_num_cuts(
value);
5720 inline bool SatParameters::_internal_has_only_add_cuts_at_level_zero()
const {
5721 bool value = (_has_bits_[0] & 0x00400000u) != 0;
5724 inline bool SatParameters::has_only_add_cuts_at_level_zero()
const {
5725 return _internal_has_only_add_cuts_at_level_zero();
5727 inline void SatParameters::clear_only_add_cuts_at_level_zero() {
5728 only_add_cuts_at_level_zero_ =
false;
5729 _has_bits_[0] &= ~0x00400000u;
5731 inline bool SatParameters::_internal_only_add_cuts_at_level_zero()
const {
5732 return only_add_cuts_at_level_zero_;
5734 inline bool SatParameters::only_add_cuts_at_level_zero()
const {
5736 return _internal_only_add_cuts_at_level_zero();
5738 inline void SatParameters::_internal_set_only_add_cuts_at_level_zero(
bool value) {
5739 _has_bits_[0] |= 0x00400000u;
5740 only_add_cuts_at_level_zero_ =
value;
5742 inline void SatParameters::set_only_add_cuts_at_level_zero(
bool value) {
5743 _internal_set_only_add_cuts_at_level_zero(
value);
5748 inline bool SatParameters::_internal_has_add_knapsack_cuts()
const {
5749 bool value = (_has_bits_[0] & 0x00800000u) != 0;
5752 inline bool SatParameters::has_add_knapsack_cuts()
const {
5753 return _internal_has_add_knapsack_cuts();
5755 inline void SatParameters::clear_add_knapsack_cuts() {
5756 add_knapsack_cuts_ =
false;
5757 _has_bits_[0] &= ~0x00800000u;
5759 inline bool SatParameters::_internal_add_knapsack_cuts()
const {
5760 return add_knapsack_cuts_;
5762 inline bool SatParameters::add_knapsack_cuts()
const {
5764 return _internal_add_knapsack_cuts();
5766 inline void SatParameters::_internal_set_add_knapsack_cuts(
bool value) {
5767 _has_bits_[0] |= 0x00800000u;
5768 add_knapsack_cuts_ =
value;
5770 inline void SatParameters::set_add_knapsack_cuts(
bool value) {
5771 _internal_set_add_knapsack_cuts(
value);
5776 inline bool SatParameters::_internal_has_add_cg_cuts()
const {
5777 bool value = (_has_bits_[3] & 0x00100000u) != 0;
5780 inline bool SatParameters::has_add_cg_cuts()
const {
5781 return _internal_has_add_cg_cuts();
5783 inline void SatParameters::clear_add_cg_cuts() {
5784 add_cg_cuts_ =
true;
5785 _has_bits_[3] &= ~0x00100000u;
5787 inline bool SatParameters::_internal_add_cg_cuts()
const {
5788 return add_cg_cuts_;
5790 inline bool SatParameters::add_cg_cuts()
const {
5792 return _internal_add_cg_cuts();
5794 inline void SatParameters::_internal_set_add_cg_cuts(
bool value) {
5795 _has_bits_[3] |= 0x00100000u;
5796 add_cg_cuts_ =
value;
5798 inline void SatParameters::set_add_cg_cuts(
bool value) {
5799 _internal_set_add_cg_cuts(
value);
5804 inline bool SatParameters::_internal_has_add_mir_cuts()
const {
5805 bool value = (_has_bits_[3] & 0x00200000u) != 0;
5808 inline bool SatParameters::has_add_mir_cuts()
const {
5809 return _internal_has_add_mir_cuts();
5811 inline void SatParameters::clear_add_mir_cuts() {
5812 add_mir_cuts_ =
true;
5813 _has_bits_[3] &= ~0x00200000u;
5815 inline bool SatParameters::_internal_add_mir_cuts()
const {
5816 return add_mir_cuts_;
5818 inline bool SatParameters::add_mir_cuts()
const {
5820 return _internal_add_mir_cuts();
5822 inline void SatParameters::_internal_set_add_mir_cuts(
bool value) {
5823 _has_bits_[3] |= 0x00200000u;
5824 add_mir_cuts_ =
value;
5826 inline void SatParameters::set_add_mir_cuts(
bool value) {
5827 _internal_set_add_mir_cuts(
value);
5832 inline bool SatParameters::_internal_has_add_zero_half_cuts()
const {
5833 bool value = (_has_bits_[3] & 0x00400000u) != 0;
5836 inline bool SatParameters::has_add_zero_half_cuts()
const {
5837 return _internal_has_add_zero_half_cuts();
5839 inline void SatParameters::clear_add_zero_half_cuts() {
5840 add_zero_half_cuts_ =
true;
5841 _has_bits_[3] &= ~0x00400000u;
5843 inline bool SatParameters::_internal_add_zero_half_cuts()
const {
5844 return add_zero_half_cuts_;
5846 inline bool SatParameters::add_zero_half_cuts()
const {
5848 return _internal_add_zero_half_cuts();
5850 inline void SatParameters::_internal_set_add_zero_half_cuts(
bool value) {
5851 _has_bits_[3] |= 0x00400000u;
5852 add_zero_half_cuts_ =
value;
5854 inline void SatParameters::set_add_zero_half_cuts(
bool value) {
5855 _internal_set_add_zero_half_cuts(
value);
5860 inline bool SatParameters::_internal_has_add_clique_cuts()
const {
5861 bool value = (_has_bits_[4] & 0x00000040u) != 0;
5864 inline bool SatParameters::has_add_clique_cuts()
const {
5865 return _internal_has_add_clique_cuts();
5867 inline void SatParameters::clear_add_clique_cuts() {
5868 add_clique_cuts_ =
true;
5869 _has_bits_[4] &= ~0x00000040u;
5871 inline bool SatParameters::_internal_add_clique_cuts()
const {
5872 return add_clique_cuts_;
5874 inline bool SatParameters::add_clique_cuts()
const {
5876 return _internal_add_clique_cuts();
5878 inline void SatParameters::_internal_set_add_clique_cuts(
bool value) {
5879 _has_bits_[4] |= 0x00000040u;
5880 add_clique_cuts_ =
value;
5882 inline void SatParameters::set_add_clique_cuts(
bool value) {
5883 _internal_set_add_clique_cuts(
value);
5888 inline bool SatParameters::_internal_has_max_all_diff_cut_size()
const {
5889 bool value = (_has_bits_[4] & 0x00008000u) != 0;
5892 inline bool SatParameters::has_max_all_diff_cut_size()
const {
5893 return _internal_has_max_all_diff_cut_size();
5895 inline void SatParameters::clear_max_all_diff_cut_size() {
5896 max_all_diff_cut_size_ = 7;
5897 _has_bits_[4] &= ~0x00008000u;
5900 return max_all_diff_cut_size_;
5904 return _internal_max_all_diff_cut_size();
5907 _has_bits_[4] |= 0x00008000u;
5908 max_all_diff_cut_size_ =
value;
5911 _internal_set_max_all_diff_cut_size(
value);
5916 inline bool SatParameters::_internal_has_add_lin_max_cuts()
const {
5917 bool value = (_has_bits_[4] & 0x00000080u) != 0;
5920 inline bool SatParameters::has_add_lin_max_cuts()
const {
5921 return _internal_has_add_lin_max_cuts();
5923 inline void SatParameters::clear_add_lin_max_cuts() {
5924 add_lin_max_cuts_ =
true;
5925 _has_bits_[4] &= ~0x00000080u;
5927 inline bool SatParameters::_internal_add_lin_max_cuts()
const {
5928 return add_lin_max_cuts_;
5930 inline bool SatParameters::add_lin_max_cuts()
const {
5932 return _internal_add_lin_max_cuts();
5934 inline void SatParameters::_internal_set_add_lin_max_cuts(
bool value) {
5935 _has_bits_[4] |= 0x00000080u;
5936 add_lin_max_cuts_ =
value;
5938 inline void SatParameters::set_add_lin_max_cuts(
bool value) {
5939 _internal_set_add_lin_max_cuts(
value);
5944 inline bool SatParameters::_internal_has_max_integer_rounding_scaling()
const {
5945 bool value = (_has_bits_[3] & 0x00002000u) != 0;
5948 inline bool SatParameters::has_max_integer_rounding_scaling()
const {
5949 return _internal_has_max_integer_rounding_scaling();
5951 inline void SatParameters::clear_max_integer_rounding_scaling() {
5952 max_integer_rounding_scaling_ = 600;
5953 _has_bits_[3] &= ~0x00002000u;
5956 return max_integer_rounding_scaling_;
5960 return _internal_max_integer_rounding_scaling();
5963 _has_bits_[3] |= 0x00002000u;
5964 max_integer_rounding_scaling_ =
value;
5967 _internal_set_max_integer_rounding_scaling(
value);
5972 inline bool SatParameters::_internal_has_add_lp_constraints_lazily()
const {
5973 bool value = (_has_bits_[4] & 0x00000100u) != 0;
5976 inline bool SatParameters::has_add_lp_constraints_lazily()
const {
5977 return _internal_has_add_lp_constraints_lazily();
5979 inline void SatParameters::clear_add_lp_constraints_lazily() {
5980 add_lp_constraints_lazily_ =
true;
5981 _has_bits_[4] &= ~0x00000100u;
5983 inline bool SatParameters::_internal_add_lp_constraints_lazily()
const {
5984 return add_lp_constraints_lazily_;
5986 inline bool SatParameters::add_lp_constraints_lazily()
const {
5988 return _internal_add_lp_constraints_lazily();
5990 inline void SatParameters::_internal_set_add_lp_constraints_lazily(
bool value) {
5991 _has_bits_[4] |= 0x00000100u;
5992 add_lp_constraints_lazily_ =
value;
5994 inline void SatParameters::set_add_lp_constraints_lazily(
bool value) {
5995 _internal_set_add_lp_constraints_lazily(
value);
6000 inline bool SatParameters::_internal_has_min_orthogonality_for_lp_constraints()
const {
6001 bool value = (_has_bits_[3] & 0x00001000u) != 0;
6004 inline bool SatParameters::has_min_orthogonality_for_lp_constraints()
const {
6005 return _internal_has_min_orthogonality_for_lp_constraints();
6007 inline void SatParameters::clear_min_orthogonality_for_lp_constraints() {
6008 min_orthogonality_for_lp_constraints_ = 0.05;
6009 _has_bits_[3] &= ~0x00001000u;
6011 inline double SatParameters::_internal_min_orthogonality_for_lp_constraints()
const {
6012 return min_orthogonality_for_lp_constraints_;
6014 inline double SatParameters::min_orthogonality_for_lp_constraints()
const {
6016 return _internal_min_orthogonality_for_lp_constraints();
6018 inline void SatParameters::_internal_set_min_orthogonality_for_lp_constraints(
double value) {
6019 _has_bits_[3] |= 0x00001000u;
6020 min_orthogonality_for_lp_constraints_ =
value;
6022 inline void SatParameters::set_min_orthogonality_for_lp_constraints(
double value) {
6023 _internal_set_min_orthogonality_for_lp_constraints(
value);
6028 inline bool SatParameters::_internal_has_max_cut_rounds_at_level_zero()
const {
6029 bool value = (_has_bits_[4] & 0x00040000u) != 0;
6032 inline bool SatParameters::has_max_cut_rounds_at_level_zero()
const {
6033 return _internal_has_max_cut_rounds_at_level_zero();
6035 inline void SatParameters::clear_max_cut_rounds_at_level_zero() {
6036 max_cut_rounds_at_level_zero_ = 1;
6037 _has_bits_[4] &= ~0x00040000u;
6040 return max_cut_rounds_at_level_zero_;
6044 return _internal_max_cut_rounds_at_level_zero();
6047 _has_bits_[4] |= 0x00040000u;
6048 max_cut_rounds_at_level_zero_ =
value;
6051 _internal_set_max_cut_rounds_at_level_zero(
value);
6056 inline bool SatParameters::_internal_has_max_consecutive_inactive_count()
const {
6057 bool value = (_has_bits_[3] & 0x00040000u) != 0;
6060 inline bool SatParameters::has_max_consecutive_inactive_count()
const {
6061 return _internal_has_max_consecutive_inactive_count();
6063 inline void SatParameters::clear_max_consecutive_inactive_count() {
6064 max_consecutive_inactive_count_ = 100;
6065 _has_bits_[3] &= ~0x00040000u;
6068 return max_consecutive_inactive_count_;
6072 return _internal_max_consecutive_inactive_count();
6075 _has_bits_[3] |= 0x00040000u;
6076 max_consecutive_inactive_count_ =
value;
6079 _internal_set_max_consecutive_inactive_count(
value);
6084 inline bool SatParameters::_internal_has_cut_max_active_count_value()
const {
6085 bool value = (_has_bits_[4] & 0x00020000u) != 0;
6088 inline bool SatParameters::has_cut_max_active_count_value()
const {
6089 return _internal_has_cut_max_active_count_value();
6091 inline void SatParameters::clear_cut_max_active_count_value() {
6092 cut_max_active_count_value_ = 10000000000;
6093 _has_bits_[4] &= ~0x00020000u;
6095 inline double SatParameters::_internal_cut_max_active_count_value()
const {
6096 return cut_max_active_count_value_;
6098 inline double SatParameters::cut_max_active_count_value()
const {
6100 return _internal_cut_max_active_count_value();
6102 inline void SatParameters::_internal_set_cut_max_active_count_value(
double value) {
6103 _has_bits_[4] |= 0x00020000u;
6104 cut_max_active_count_value_ =
value;
6106 inline void SatParameters::set_cut_max_active_count_value(
double value) {
6107 _internal_set_cut_max_active_count_value(
value);
6112 inline bool SatParameters::_internal_has_cut_active_count_decay()
const {
6113 bool value = (_has_bits_[4] & 0x00100000u) != 0;
6116 inline bool SatParameters::has_cut_active_count_decay()
const {
6117 return _internal_has_cut_active_count_decay();
6119 inline void SatParameters::clear_cut_active_count_decay() {
6120 cut_active_count_decay_ = 0.8;
6121 _has_bits_[4] &= ~0x00100000u;
6123 inline double SatParameters::_internal_cut_active_count_decay()
const {
6124 return cut_active_count_decay_;
6126 inline double SatParameters::cut_active_count_decay()
const {
6128 return _internal_cut_active_count_decay();
6130 inline void SatParameters::_internal_set_cut_active_count_decay(
double value) {
6131 _has_bits_[4] |= 0x00100000u;
6132 cut_active_count_decay_ =
value;
6134 inline void SatParameters::set_cut_active_count_decay(
double value) {
6135 _internal_set_cut_active_count_decay(
value);
6140 inline bool SatParameters::_internal_has_cut_cleanup_target()
const {
6141 bool value = (_has_bits_[4] & 0x00080000u) != 0;
6144 inline bool SatParameters::has_cut_cleanup_target()
const {
6145 return _internal_has_cut_cleanup_target();
6147 inline void SatParameters::clear_cut_cleanup_target() {
6148 cut_cleanup_target_ = 1000;
6149 _has_bits_[4] &= ~0x00080000u;
6152 return cut_cleanup_target_;
6156 return _internal_cut_cleanup_target();
6159 _has_bits_[4] |= 0x00080000u;
6160 cut_cleanup_target_ =
value;
6163 _internal_set_cut_cleanup_target(
value);
6168 inline bool SatParameters::_internal_has_new_constraints_batch_size()
const {
6169 bool value = (_has_bits_[3] & 0x01000000u) != 0;
6172 inline bool SatParameters::has_new_constraints_batch_size()
const {
6173 return _internal_has_new_constraints_batch_size();
6175 inline void SatParameters::clear_new_constraints_batch_size() {
6176 new_constraints_batch_size_ = 50;
6177 _has_bits_[3] &= ~0x01000000u;
6180 return new_constraints_batch_size_;
6184 return _internal_new_constraints_batch_size();
6187 _has_bits_[3] |= 0x01000000u;
6188 new_constraints_batch_size_ =
value;
6191 _internal_set_new_constraints_batch_size(
value);
6196 inline bool SatParameters::_internal_has_search_branching()
const {
6197 bool value = (_has_bits_[0] & 0x00008000u) != 0;
6200 inline bool SatParameters::has_search_branching()
const {
6201 return _internal_has_search_branching();
6203 inline void SatParameters::clear_search_branching() {
6204 search_branching_ = 0;
6205 _has_bits_[0] &= ~0x00008000u;
6212 return _internal_search_branching();
6216 _has_bits_[0] |= 0x00008000u;
6217 search_branching_ =
value;
6220 _internal_set_search_branching(
value);
6225 inline bool SatParameters::_internal_has_hint_conflict_limit()
const {
6226 bool value = (_has_bits_[4] & 0x00010000u) != 0;
6229 inline bool SatParameters::has_hint_conflict_limit()
const {
6230 return _internal_has_hint_conflict_limit();
6232 inline void SatParameters::clear_hint_conflict_limit() {
6233 hint_conflict_limit_ = 10;
6234 _has_bits_[4] &= ~0x00010000u;
6237 return hint_conflict_limit_;
6241 return _internal_hint_conflict_limit();
6244 _has_bits_[4] |= 0x00010000u;
6245 hint_conflict_limit_ =
value;
6248 _internal_set_hint_conflict_limit(
value);
6253 inline bool SatParameters::_internal_has_repair_hint()
const {
6254 bool value = (_has_bits_[0] & 0x01000000u) != 0;
6257 inline bool SatParameters::has_repair_hint()
const {
6258 return _internal_has_repair_hint();
6260 inline void SatParameters::clear_repair_hint() {
6261 repair_hint_ =
false;
6262 _has_bits_[0] &= ~0x01000000u;
6264 inline bool SatParameters::_internal_repair_hint()
const {
6265 return repair_hint_;
6267 inline bool SatParameters::repair_hint()
const {
6269 return _internal_repair_hint();
6271 inline void SatParameters::_internal_set_repair_hint(
bool value) {
6272 _has_bits_[0] |= 0x01000000u;
6273 repair_hint_ =
value;
6275 inline void SatParameters::set_repair_hint(
bool value) {
6276 _internal_set_repair_hint(
value);
6281 inline bool SatParameters::_internal_has_exploit_integer_lp_solution()
const {
6282 bool value = (_has_bits_[4] & 0x00000200u) != 0;
6285 inline bool SatParameters::has_exploit_integer_lp_solution()
const {
6286 return _internal_has_exploit_integer_lp_solution();
6288 inline void SatParameters::clear_exploit_integer_lp_solution() {
6289 exploit_integer_lp_solution_ =
true;
6290 _has_bits_[4] &= ~0x00000200u;
6292 inline bool SatParameters::_internal_exploit_integer_lp_solution()
const {
6293 return exploit_integer_lp_solution_;
6295 inline bool SatParameters::exploit_integer_lp_solution()
const {
6297 return _internal_exploit_integer_lp_solution();
6299 inline void SatParameters::_internal_set_exploit_integer_lp_solution(
bool value) {
6300 _has_bits_[4] |= 0x00000200u;
6301 exploit_integer_lp_solution_ =
value;
6303 inline void SatParameters::set_exploit_integer_lp_solution(
bool value) {
6304 _internal_set_exploit_integer_lp_solution(
value);
6309 inline bool SatParameters::_internal_has_exploit_all_lp_solution()
const {
6310 bool value = (_has_bits_[3] & 0x00000100u) != 0;
6313 inline bool SatParameters::has_exploit_all_lp_solution()
const {
6314 return _internal_has_exploit_all_lp_solution();
6316 inline void SatParameters::clear_exploit_all_lp_solution() {
6317 exploit_all_lp_solution_ =
true;
6318 _has_bits_[3] &= ~0x00000100u;
6320 inline bool SatParameters::_internal_exploit_all_lp_solution()
const {
6321 return exploit_all_lp_solution_;
6323 inline bool SatParameters::exploit_all_lp_solution()
const {
6325 return _internal_exploit_all_lp_solution();
6327 inline void SatParameters::_internal_set_exploit_all_lp_solution(
bool value) {
6328 _has_bits_[3] |= 0x00000100u;
6329 exploit_all_lp_solution_ =
value;
6331 inline void SatParameters::set_exploit_all_lp_solution(
bool value) {
6332 _internal_set_exploit_all_lp_solution(
value);
6337 inline bool SatParameters::_internal_has_exploit_best_solution()
const {
6338 bool value = (_has_bits_[0] & 0x02000000u) != 0;
6341 inline bool SatParameters::has_exploit_best_solution()
const {
6342 return _internal_has_exploit_best_solution();
6344 inline void SatParameters::clear_exploit_best_solution() {
6345 exploit_best_solution_ =
false;
6346 _has_bits_[0] &= ~0x02000000u;
6348 inline bool SatParameters::_internal_exploit_best_solution()
const {
6349 return exploit_best_solution_;
6351 inline bool SatParameters::exploit_best_solution()
const {
6353 return _internal_exploit_best_solution();
6355 inline void SatParameters::_internal_set_exploit_best_solution(
bool value) {
6356 _has_bits_[0] |= 0x02000000u;
6357 exploit_best_solution_ =
value;
6359 inline void SatParameters::set_exploit_best_solution(
bool value) {
6360 _internal_set_exploit_best_solution(
value);
6365 inline bool SatParameters::_internal_has_exploit_relaxation_solution()
const {
6366 bool value = (_has_bits_[0] & 0x04000000u) != 0;
6369 inline bool SatParameters::has_exploit_relaxation_solution()
const {
6370 return _internal_has_exploit_relaxation_solution();
6372 inline void SatParameters::clear_exploit_relaxation_solution() {
6373 exploit_relaxation_solution_ =
false;
6374 _has_bits_[0] &= ~0x04000000u;
6376 inline bool SatParameters::_internal_exploit_relaxation_solution()
const {
6377 return exploit_relaxation_solution_;
6379 inline bool SatParameters::exploit_relaxation_solution()
const {
6381 return _internal_exploit_relaxation_solution();
6383 inline void SatParameters::_internal_set_exploit_relaxation_solution(
bool value) {
6384 _has_bits_[0] |= 0x04000000u;
6385 exploit_relaxation_solution_ =
value;
6387 inline void SatParameters::set_exploit_relaxation_solution(
bool value) {
6388 _internal_set_exploit_relaxation_solution(
value);
6393 inline bool SatParameters::_internal_has_exploit_objective()
const {
6394 bool value = (_has_bits_[3] & 0x00000200u) != 0;
6397 inline bool SatParameters::has_exploit_objective()
const {
6398 return _internal_has_exploit_objective();
6400 inline void SatParameters::clear_exploit_objective() {
6401 exploit_objective_ =
true;
6402 _has_bits_[3] &= ~0x00000200u;
6404 inline bool SatParameters::_internal_exploit_objective()
const {
6405 return exploit_objective_;
6407 inline bool SatParameters::exploit_objective()
const {
6409 return _internal_exploit_objective();
6411 inline void SatParameters::_internal_set_exploit_objective(
bool value) {
6412 _has_bits_[3] |= 0x00000200u;
6413 exploit_objective_ =
value;
6415 inline void SatParameters::set_exploit_objective(
bool value) {
6416 _internal_set_exploit_objective(
value);
6421 inline bool SatParameters::_internal_has_probing_period_at_root()
const {
6422 bool value = (_has_bits_[1] & 0x00002000u) != 0;
6425 inline bool SatParameters::has_probing_period_at_root()
const {
6426 return _internal_has_probing_period_at_root();
6428 inline void SatParameters::clear_probing_period_at_root() {
6429 probing_period_at_root_ = PROTOBUF_LONGLONG(0);
6430 _has_bits_[1] &= ~0x00002000u;
6433 return probing_period_at_root_;
6437 return _internal_probing_period_at_root();
6440 _has_bits_[1] |= 0x00002000u;
6441 probing_period_at_root_ =
value;
6444 _internal_set_probing_period_at_root(
value);
6449 inline bool SatParameters::_internal_has_pseudo_cost_reliability_threshold()
const {
6450 bool value = (_has_bits_[3] & 0x00800000u) != 0;
6453 inline bool SatParameters::has_pseudo_cost_reliability_threshold()
const {
6454 return _internal_has_pseudo_cost_reliability_threshold();
6456 inline void SatParameters::clear_pseudo_cost_reliability_threshold() {
6457 pseudo_cost_reliability_threshold_ = PROTOBUF_LONGLONG(100);
6458 _has_bits_[3] &= ~0x00800000u;
6461 return pseudo_cost_reliability_threshold_;
6465 return _internal_pseudo_cost_reliability_threshold();
6468 _has_bits_[3] |= 0x00800000u;
6469 pseudo_cost_reliability_threshold_ =
value;
6472 _internal_set_pseudo_cost_reliability_threshold(
value);
6477 inline bool SatParameters::_internal_has_optimize_with_core()
const {
6478 bool value = (_has_bits_[0] & 0x08000000u) != 0;
6481 inline bool SatParameters::has_optimize_with_core()
const {
6482 return _internal_has_optimize_with_core();
6484 inline void SatParameters::clear_optimize_with_core() {
6485 optimize_with_core_ =
false;
6486 _has_bits_[0] &= ~0x08000000u;
6488 inline bool SatParameters::_internal_optimize_with_core()
const {
6489 return optimize_with_core_;
6491 inline bool SatParameters::optimize_with_core()
const {
6493 return _internal_optimize_with_core();
6495 inline void SatParameters::_internal_set_optimize_with_core(
bool value) {
6496 _has_bits_[0] |= 0x08000000u;
6497 optimize_with_core_ =
value;
6499 inline void SatParameters::set_optimize_with_core(
bool value) {
6500 _internal_set_optimize_with_core(
value);
6505 inline bool SatParameters::_internal_has_binary_search_num_conflicts()
const {
6506 bool value = (_has_bits_[3] & 0x00000010u) != 0;
6509 inline bool SatParameters::has_binary_search_num_conflicts()
const {
6510 return _internal_has_binary_search_num_conflicts();
6512 inline void SatParameters::clear_binary_search_num_conflicts() {
6513 binary_search_num_conflicts_ = -1;
6514 _has_bits_[3] &= ~0x00000010u;
6517 return binary_search_num_conflicts_;
6521 return _internal_binary_search_num_conflicts();
6524 _has_bits_[3] |= 0x00000010u;
6525 binary_search_num_conflicts_ =
value;
6528 _internal_set_binary_search_num_conflicts(
value);
6533 inline bool SatParameters::_internal_has_optimize_with_max_hs()
const {
6534 bool value = (_has_bits_[0] & 0x10000000u) != 0;
6537 inline bool SatParameters::has_optimize_with_max_hs()
const {
6538 return _internal_has_optimize_with_max_hs();
6540 inline void SatParameters::clear_optimize_with_max_hs() {
6541 optimize_with_max_hs_ =
false;
6542 _has_bits_[0] &= ~0x10000000u;
6544 inline bool SatParameters::_internal_optimize_with_max_hs()
const {
6545 return optimize_with_max_hs_;
6547 inline bool SatParameters::optimize_with_max_hs()
const {
6549 return _internal_optimize_with_max_hs();
6551 inline void SatParameters::_internal_set_optimize_with_max_hs(
bool value) {
6552 _has_bits_[0] |= 0x10000000u;
6553 optimize_with_max_hs_ =
value;
6555 inline void SatParameters::set_optimize_with_max_hs(
bool value) {
6556 _internal_set_optimize_with_max_hs(
value);
6561 inline bool SatParameters::_internal_has_enumerate_all_solutions()
const {
6562 bool value = (_has_bits_[1] & 0x00000002u) != 0;
6565 inline bool SatParameters::has_enumerate_all_solutions()
const {
6566 return _internal_has_enumerate_all_solutions();
6568 inline void SatParameters::clear_enumerate_all_solutions() {
6569 enumerate_all_solutions_ =
false;
6570 _has_bits_[1] &= ~0x00000002u;
6572 inline bool SatParameters::_internal_enumerate_all_solutions()
const {
6573 return enumerate_all_solutions_;
6575 inline bool SatParameters::enumerate_all_solutions()
const {
6577 return _internal_enumerate_all_solutions();
6579 inline void SatParameters::_internal_set_enumerate_all_solutions(
bool value) {
6580 _has_bits_[1] |= 0x00000002u;
6581 enumerate_all_solutions_ =
value;
6583 inline void SatParameters::set_enumerate_all_solutions(
bool value) {
6584 _internal_set_enumerate_all_solutions(
value);
6589 inline bool SatParameters::_internal_has_keep_all_feasible_solutions_in_presolve()
const {
6590 bool value = (_has_bits_[1] & 0x00000004u) != 0;
6593 inline bool SatParameters::has_keep_all_feasible_solutions_in_presolve()
const {
6594 return _internal_has_keep_all_feasible_solutions_in_presolve();
6596 inline void SatParameters::clear_keep_all_feasible_solutions_in_presolve() {
6597 keep_all_feasible_solutions_in_presolve_ =
false;
6598 _has_bits_[1] &= ~0x00000004u;
6600 inline bool SatParameters::_internal_keep_all_feasible_solutions_in_presolve()
const {
6601 return keep_all_feasible_solutions_in_presolve_;
6603 inline bool SatParameters::keep_all_feasible_solutions_in_presolve()
const {
6605 return _internal_keep_all_feasible_solutions_in_presolve();
6607 inline void SatParameters::_internal_set_keep_all_feasible_solutions_in_presolve(
bool value) {
6608 _has_bits_[1] |= 0x00000004u;
6609 keep_all_feasible_solutions_in_presolve_ =
value;
6611 inline void SatParameters::set_keep_all_feasible_solutions_in_presolve(
bool value) {
6612 _internal_set_keep_all_feasible_solutions_in_presolve(
value);
6617 inline bool SatParameters::_internal_has_fill_tightened_domains_in_response()
const {
6618 bool value = (_has_bits_[1] & 0x00000008u) != 0;
6621 inline bool SatParameters::has_fill_tightened_domains_in_response()
const {
6622 return _internal_has_fill_tightened_domains_in_response();
6624 inline void SatParameters::clear_fill_tightened_domains_in_response() {
6625 fill_tightened_domains_in_response_ =
false;
6626 _has_bits_[1] &= ~0x00000008u;
6628 inline bool SatParameters::_internal_fill_tightened_domains_in_response()
const {
6629 return fill_tightened_domains_in_response_;
6631 inline bool SatParameters::fill_tightened_domains_in_response()
const {
6633 return _internal_fill_tightened_domains_in_response();
6635 inline void SatParameters::_internal_set_fill_tightened_domains_in_response(
bool value) {
6636 _has_bits_[1] |= 0x00000008u;
6637 fill_tightened_domains_in_response_ =
value;
6639 inline void SatParameters::set_fill_tightened_domains_in_response(
bool value) {
6640 _internal_set_fill_tightened_domains_in_response(
value);
6645 inline bool SatParameters::_internal_has_instantiate_all_variables()
const {
6646 bool value = (_has_bits_[3] & 0x00000400u) != 0;
6649 inline bool SatParameters::has_instantiate_all_variables()
const {
6650 return _internal_has_instantiate_all_variables();
6652 inline void SatParameters::clear_instantiate_all_variables() {
6653 instantiate_all_variables_ =
true;
6654 _has_bits_[3] &= ~0x00000400u;
6656 inline bool SatParameters::_internal_instantiate_all_variables()
const {
6657 return instantiate_all_variables_;
6659 inline bool SatParameters::instantiate_all_variables()
const {
6661 return _internal_instantiate_all_variables();
6663 inline void SatParameters::_internal_set_instantiate_all_variables(
bool value) {
6664 _has_bits_[3] |= 0x00000400u;
6665 instantiate_all_variables_ =
value;
6667 inline void SatParameters::set_instantiate_all_variables(
bool value) {
6668 _internal_set_instantiate_all_variables(
value);
6673 inline bool SatParameters::_internal_has_auto_detect_greater_than_at_least_one_of()
const {
6674 bool value = (_has_bits_[3] & 0x00000800u) != 0;
6677 inline bool SatParameters::has_auto_detect_greater_than_at_least_one_of()
const {
6678 return _internal_has_auto_detect_greater_than_at_least_one_of();
6680 inline void SatParameters::clear_auto_detect_greater_than_at_least_one_of() {
6681 auto_detect_greater_than_at_least_one_of_ =
true;
6682 _has_bits_[3] &= ~0x00000800u;
6684 inline bool SatParameters::_internal_auto_detect_greater_than_at_least_one_of()
const {
6685 return auto_detect_greater_than_at_least_one_of_;
6687 inline bool SatParameters::auto_detect_greater_than_at_least_one_of()
const {
6689 return _internal_auto_detect_greater_than_at_least_one_of();
6691 inline void SatParameters::_internal_set_auto_detect_greater_than_at_least_one_of(
bool value) {
6692 _has_bits_[3] |= 0x00000800u;
6693 auto_detect_greater_than_at_least_one_of_ =
value;
6695 inline void SatParameters::set_auto_detect_greater_than_at_least_one_of(
bool value) {
6696 _internal_set_auto_detect_greater_than_at_least_one_of(
value);
6701 inline bool SatParameters::_internal_has_stop_after_first_solution()
const {
6702 bool value = (_has_bits_[1] & 0x00000010u) != 0;
6705 inline bool SatParameters::has_stop_after_first_solution()
const {
6706 return _internal_has_stop_after_first_solution();
6708 inline void SatParameters::clear_stop_after_first_solution() {
6709 stop_after_first_solution_ =
false;
6710 _has_bits_[1] &= ~0x00000010u;
6712 inline bool SatParameters::_internal_stop_after_first_solution()
const {
6713 return stop_after_first_solution_;
6715 inline bool SatParameters::stop_after_first_solution()
const {
6717 return _internal_stop_after_first_solution();
6719 inline void SatParameters::_internal_set_stop_after_first_solution(
bool value) {
6720 _has_bits_[1] |= 0x00000010u;
6721 stop_after_first_solution_ =
value;
6723 inline void SatParameters::set_stop_after_first_solution(
bool value) {
6724 _internal_set_stop_after_first_solution(
value);
6729 inline bool SatParameters::_internal_has_stop_after_presolve()
const {
6730 bool value = (_has_bits_[1] & 0x00000200u) != 0;
6733 inline bool SatParameters::has_stop_after_presolve()
const {
6734 return _internal_has_stop_after_presolve();
6736 inline void SatParameters::clear_stop_after_presolve() {
6737 stop_after_presolve_ =
false;
6738 _has_bits_[1] &= ~0x00000200u;
6740 inline bool SatParameters::_internal_stop_after_presolve()
const {
6741 return stop_after_presolve_;
6743 inline bool SatParameters::stop_after_presolve()
const {
6745 return _internal_stop_after_presolve();
6747 inline void SatParameters::_internal_set_stop_after_presolve(
bool value) {
6748 _has_bits_[1] |= 0x00000200u;
6749 stop_after_presolve_ =
value;
6751 inline void SatParameters::set_stop_after_presolve(
bool value) {
6752 _internal_set_stop_after_presolve(
value);
6757 inline bool SatParameters::_internal_has_num_search_workers()
const {
6758 bool value = (_has_bits_[3] & 0x00000020u) != 0;
6761 inline bool SatParameters::has_num_search_workers()
const {
6762 return _internal_has_num_search_workers();
6764 inline void SatParameters::clear_num_search_workers() {
6765 num_search_workers_ = 1;
6766 _has_bits_[3] &= ~0x00000020u;
6769 return num_search_workers_;
6773 return _internal_num_search_workers();
6776 _has_bits_[3] |= 0x00000020u;
6777 num_search_workers_ =
value;
6780 _internal_set_num_search_workers(
value);
6785 inline bool SatParameters::_internal_has_interleave_search()
const {
6786 bool value = (_has_bits_[1] & 0x00000400u) != 0;
6789 inline bool SatParameters::has_interleave_search()
const {
6790 return _internal_has_interleave_search();
6792 inline void SatParameters::clear_interleave_search() {
6793 interleave_search_ =
false;
6794 _has_bits_[1] &= ~0x00000400u;
6796 inline bool SatParameters::_internal_interleave_search()
const {
6797 return interleave_search_;
6799 inline bool SatParameters::interleave_search()
const {
6801 return _internal_interleave_search();
6803 inline void SatParameters::_internal_set_interleave_search(
bool value) {
6804 _has_bits_[1] |= 0x00000400u;
6805 interleave_search_ =
value;
6807 inline void SatParameters::set_interleave_search(
bool value) {
6808 _internal_set_interleave_search(
value);
6813 inline bool SatParameters::_internal_has_interleave_batch_size()
const {
6814 bool value = (_has_bits_[4] & 0x00000400u) != 0;
6817 inline bool SatParameters::has_interleave_batch_size()
const {
6818 return _internal_has_interleave_batch_size();
6820 inline void SatParameters::clear_interleave_batch_size() {
6821 interleave_batch_size_ = 1;
6822 _has_bits_[4] &= ~0x00000400u;
6825 return interleave_batch_size_;
6829 return _internal_interleave_batch_size();
6832 _has_bits_[4] |= 0x00000400u;
6833 interleave_batch_size_ =
value;
6836 _internal_set_interleave_batch_size(
value);
6841 inline bool SatParameters::_internal_has_reduce_memory_usage_in_interleave_mode()
const {
6842 bool value = (_has_bits_[1] & 0x00000800u) != 0;
6845 inline bool SatParameters::has_reduce_memory_usage_in_interleave_mode()
const {
6846 return _internal_has_reduce_memory_usage_in_interleave_mode();
6848 inline void SatParameters::clear_reduce_memory_usage_in_interleave_mode() {
6849 reduce_memory_usage_in_interleave_mode_ =
false;
6850 _has_bits_[1] &= ~0x00000800u;
6852 inline bool SatParameters::_internal_reduce_memory_usage_in_interleave_mode()
const {
6853 return reduce_memory_usage_in_interleave_mode_;
6855 inline bool SatParameters::reduce_memory_usage_in_interleave_mode()
const {
6857 return _internal_reduce_memory_usage_in_interleave_mode();
6859 inline void SatParameters::_internal_set_reduce_memory_usage_in_interleave_mode(
bool value) {
6860 _has_bits_[1] |= 0x00000800u;
6861 reduce_memory_usage_in_interleave_mode_ =
value;
6863 inline void SatParameters::set_reduce_memory_usage_in_interleave_mode(
bool value) {
6864 _internal_set_reduce_memory_usage_in_interleave_mode(
value);
6869 inline bool SatParameters::_internal_has_share_objective_bounds()
const {
6870 bool value = (_has_bits_[4] & 0x00000004u) != 0;
6873 inline bool SatParameters::has_share_objective_bounds()
const {
6874 return _internal_has_share_objective_bounds();
6876 inline void SatParameters::clear_share_objective_bounds() {
6877 share_objective_bounds_ =
true;
6878 _has_bits_[4] &= ~0x00000004u;
6880 inline bool SatParameters::_internal_share_objective_bounds()
const {
6881 return share_objective_bounds_;
6883 inline bool SatParameters::share_objective_bounds()
const {
6885 return _internal_share_objective_bounds();
6887 inline void SatParameters::_internal_set_share_objective_bounds(
bool value) {
6888 _has_bits_[4] |= 0x00000004u;
6889 share_objective_bounds_ =
value;
6891 inline void SatParameters::set_share_objective_bounds(
bool value) {
6892 _internal_set_share_objective_bounds(
value);
6897 inline bool SatParameters::_internal_has_share_level_zero_bounds()
const {
6898 bool value = (_has_bits_[4] & 0x00000008u) != 0;
6901 inline bool SatParameters::has_share_level_zero_bounds()
const {
6902 return _internal_has_share_level_zero_bounds();
6904 inline void SatParameters::clear_share_level_zero_bounds() {
6905 share_level_zero_bounds_ =
true;
6906 _has_bits_[4] &= ~0x00000008u;
6908 inline bool SatParameters::_internal_share_level_zero_bounds()
const {
6909 return share_level_zero_bounds_;
6911 inline bool SatParameters::share_level_zero_bounds()
const {
6913 return _internal_share_level_zero_bounds();
6915 inline void SatParameters::_internal_set_share_level_zero_bounds(
bool value) {
6916 _has_bits_[4] |= 0x00000008u;
6917 share_level_zero_bounds_ =
value;
6919 inline void SatParameters::set_share_level_zero_bounds(
bool value) {
6920 _internal_set_share_level_zero_bounds(
value);
6925 inline bool SatParameters::_internal_has_use_lns_only()
const {
6926 bool value = (_has_bits_[1] & 0x00001000u) != 0;
6929 inline bool SatParameters::has_use_lns_only()
const {
6930 return _internal_has_use_lns_only();
6932 inline void SatParameters::clear_use_lns_only() {
6933 use_lns_only_ =
false;
6934 _has_bits_[1] &= ~0x00001000u;
6936 inline bool SatParameters::_internal_use_lns_only()
const {
6937 return use_lns_only_;
6939 inline bool SatParameters::use_lns_only()
const {
6941 return _internal_use_lns_only();
6943 inline void SatParameters::_internal_set_use_lns_only(
bool value) {
6944 _has_bits_[1] |= 0x00001000u;
6945 use_lns_only_ =
value;
6947 inline void SatParameters::set_use_lns_only(
bool value) {
6948 _internal_set_use_lns_only(
value);
6953 inline bool SatParameters::_internal_has_lns_focus_on_decision_variables()
const {
6954 bool value = (_has_bits_[1] & 0x00000020u) != 0;
6957 inline bool SatParameters::has_lns_focus_on_decision_variables()
const {
6958 return _internal_has_lns_focus_on_decision_variables();
6960 inline void SatParameters::clear_lns_focus_on_decision_variables() {
6961 lns_focus_on_decision_variables_ =
false;
6962 _has_bits_[1] &= ~0x00000020u;
6964 inline bool SatParameters::_internal_lns_focus_on_decision_variables()
const {
6965 return lns_focus_on_decision_variables_;
6967 inline bool SatParameters::lns_focus_on_decision_variables()
const {
6969 return _internal_lns_focus_on_decision_variables();
6971 inline void SatParameters::_internal_set_lns_focus_on_decision_variables(
bool value) {
6972 _has_bits_[1] |= 0x00000020u;
6973 lns_focus_on_decision_variables_ =
value;
6975 inline void SatParameters::set_lns_focus_on_decision_variables(
bool value) {
6976 _internal_set_lns_focus_on_decision_variables(
value);
6981 inline bool SatParameters::_internal_has_use_rins_lns()
const {
6982 bool value = (_has_bits_[4] & 0x00000010u) != 0;
6985 inline bool SatParameters::has_use_rins_lns()
const {
6986 return _internal_has_use_rins_lns();
6988 inline void SatParameters::clear_use_rins_lns() {
6989 use_rins_lns_ =
true;
6990 _has_bits_[4] &= ~0x00000010u;
6992 inline bool SatParameters::_internal_use_rins_lns()
const {
6993 return use_rins_lns_;
6995 inline bool SatParameters::use_rins_lns()
const {
6997 return _internal_use_rins_lns();
6999 inline void SatParameters::_internal_set_use_rins_lns(
bool value) {
7000 _has_bits_[4] |= 0x00000010u;
7001 use_rins_lns_ =
value;
7003 inline void SatParameters::set_use_rins_lns(
bool value) {
7004 _internal_set_use_rins_lns(
value);
7009 inline bool SatParameters::_internal_has_use_feasibility_pump()
const {
7010 bool value = (_has_bits_[4] & 0x00000020u) != 0;
7013 inline bool SatParameters::has_use_feasibility_pump()
const {
7014 return _internal_has_use_feasibility_pump();
7016 inline void SatParameters::clear_use_feasibility_pump() {
7017 use_feasibility_pump_ =
true;
7018 _has_bits_[4] &= ~0x00000020u;
7020 inline bool SatParameters::_internal_use_feasibility_pump()
const {
7021 return use_feasibility_pump_;
7023 inline bool SatParameters::use_feasibility_pump()
const {
7025 return _internal_use_feasibility_pump();
7027 inline void SatParameters::_internal_set_use_feasibility_pump(
bool value) {
7028 _has_bits_[4] |= 0x00000020u;
7029 use_feasibility_pump_ =
value;
7031 inline void SatParameters::set_use_feasibility_pump(
bool value) {
7032 _internal_set_use_feasibility_pump(
value);
7037 inline bool SatParameters::_internal_has_fp_rounding()
const {
7038 bool value = (_has_bits_[4] & 0x00200000u) != 0;
7041 inline bool SatParameters::has_fp_rounding()
const {
7042 return _internal_has_fp_rounding();
7044 inline void SatParameters::clear_fp_rounding() {
7046 _has_bits_[4] &= ~0x00200000u;
7053 return _internal_fp_rounding();
7057 _has_bits_[4] |= 0x00200000u;
7058 fp_rounding_ =
value;
7061 _internal_set_fp_rounding(
value);
7066 inline bool SatParameters::_internal_has_use_relaxation_lns()
const {
7067 bool value = (_has_bits_[1] & 0x00000040u) != 0;
7070 inline bool SatParameters::has_use_relaxation_lns()
const {
7071 return _internal_has_use_relaxation_lns();
7073 inline void SatParameters::clear_use_relaxation_lns() {
7074 use_relaxation_lns_ =
false;
7075 _has_bits_[1] &= ~0x00000040u;
7077 inline bool SatParameters::_internal_use_relaxation_lns()
const {
7078 return use_relaxation_lns_;
7080 inline bool SatParameters::use_relaxation_lns()
const {
7082 return _internal_use_relaxation_lns();
7084 inline void SatParameters::_internal_set_use_relaxation_lns(
bool value) {
7085 _has_bits_[1] |= 0x00000040u;
7086 use_relaxation_lns_ =
value;
7088 inline void SatParameters::set_use_relaxation_lns(
bool value) {
7089 _internal_set_use_relaxation_lns(
value);
7094 inline bool SatParameters::_internal_has_diversify_lns_params()
const {
7095 bool value = (_has_bits_[1] & 0x00000080u) != 0;
7098 inline bool SatParameters::has_diversify_lns_params()
const {
7099 return _internal_has_diversify_lns_params();
7101 inline void SatParameters::clear_diversify_lns_params() {
7102 diversify_lns_params_ =
false;
7103 _has_bits_[1] &= ~0x00000080u;
7105 inline bool SatParameters::_internal_diversify_lns_params()
const {
7106 return diversify_lns_params_;
7108 inline bool SatParameters::diversify_lns_params()
const {
7110 return _internal_diversify_lns_params();
7112 inline void SatParameters::_internal_set_diversify_lns_params(
bool value) {
7113 _has_bits_[1] |= 0x00000080u;
7114 diversify_lns_params_ =
value;
7116 inline void SatParameters::set_diversify_lns_params(
bool value) {
7117 _internal_set_diversify_lns_params(
value);
7122 inline bool SatParameters::_internal_has_randomize_search()
const {
7123 bool value = (_has_bits_[1] & 0x00000100u) != 0;
7126 inline bool SatParameters::has_randomize_search()
const {
7127 return _internal_has_randomize_search();
7129 inline void SatParameters::clear_randomize_search() {
7130 randomize_search_ =
false;
7131 _has_bits_[1] &= ~0x00000100u;
7133 inline bool SatParameters::_internal_randomize_search()
const {
7134 return randomize_search_;
7136 inline bool SatParameters::randomize_search()
const {
7138 return _internal_randomize_search();
7140 inline void SatParameters::_internal_set_randomize_search(
bool value) {
7141 _has_bits_[1] |= 0x00000100u;
7142 randomize_search_ =
value;
7144 inline void SatParameters::set_randomize_search(
bool value) {
7145 _internal_set_randomize_search(
value);
7150 inline bool SatParameters::_internal_has_search_randomization_tolerance()
const {
7151 bool value = (_has_bits_[0] & 0x00100000u) != 0;
7154 inline bool SatParameters::has_search_randomization_tolerance()
const {
7155 return _internal_has_search_randomization_tolerance();
7157 inline void SatParameters::clear_search_randomization_tolerance() {
7158 search_randomization_tolerance_ = PROTOBUF_LONGLONG(0);
7159 _has_bits_[0] &= ~0x00100000u;
7162 return search_randomization_tolerance_;
7166 return _internal_search_randomization_tolerance();
7169 _has_bits_[0] |= 0x00100000u;
7170 search_randomization_tolerance_ =
value;
7173 _internal_set_search_randomization_tolerance(
value);
7178 inline bool SatParameters::_internal_has_use_optional_variables()
const {
7179 bool value = (_has_bits_[3] & 0x02000000u) != 0;
7182 inline bool SatParameters::has_use_optional_variables()
const {
7183 return _internal_has_use_optional_variables();
7185 inline void SatParameters::clear_use_optional_variables() {
7186 use_optional_variables_ =
true;
7187 _has_bits_[3] &= ~0x02000000u;
7189 inline bool SatParameters::_internal_use_optional_variables()
const {
7190 return use_optional_variables_;
7192 inline bool SatParameters::use_optional_variables()
const {
7194 return _internal_use_optional_variables();
7196 inline void SatParameters::_internal_set_use_optional_variables(
bool value) {
7197 _has_bits_[3] |= 0x02000000u;
7198 use_optional_variables_ =
value;
7200 inline void SatParameters::set_use_optional_variables(
bool value) {
7201 _internal_set_use_optional_variables(
value);
7206 inline bool SatParameters::_internal_has_use_exact_lp_reason()
const {
7207 bool value = (_has_bits_[3] & 0x04000000u) != 0;
7210 inline bool SatParameters::has_use_exact_lp_reason()
const {
7211 return _internal_has_use_exact_lp_reason();
7213 inline void SatParameters::clear_use_exact_lp_reason() {
7214 use_exact_lp_reason_ =
true;
7215 _has_bits_[3] &= ~0x04000000u;
7217 inline bool SatParameters::_internal_use_exact_lp_reason()
const {
7218 return use_exact_lp_reason_;
7220 inline bool SatParameters::use_exact_lp_reason()
const {
7222 return _internal_use_exact_lp_reason();
7224 inline void SatParameters::_internal_set_use_exact_lp_reason(
bool value) {
7225 _has_bits_[3] |= 0x04000000u;
7226 use_exact_lp_reason_ =
value;
7228 inline void SatParameters::set_use_exact_lp_reason(
bool value) {
7229 _internal_set_use_exact_lp_reason(
value);
7234 inline bool SatParameters::_internal_has_use_branching_in_lp()
const {
7235 bool value = (_has_bits_[1] & 0x00004000u) != 0;
7238 inline bool SatParameters::has_use_branching_in_lp()
const {
7239 return _internal_has_use_branching_in_lp();
7241 inline void SatParameters::clear_use_branching_in_lp() {
7242 use_branching_in_lp_ =
false;
7243 _has_bits_[1] &= ~0x00004000u;
7245 inline bool SatParameters::_internal_use_branching_in_lp()
const {
7246 return use_branching_in_lp_;
7248 inline bool SatParameters::use_branching_in_lp()
const {
7250 return _internal_use_branching_in_lp();
7252 inline void SatParameters::_internal_set_use_branching_in_lp(
bool value) {
7253 _has_bits_[1] |= 0x00004000u;
7254 use_branching_in_lp_ =
value;
7256 inline void SatParameters::set_use_branching_in_lp(
bool value) {
7257 _internal_set_use_branching_in_lp(
value);
7262 inline bool SatParameters::_internal_has_use_combined_no_overlap()
const {
7263 bool value = (_has_bits_[1] & 0x00008000u) != 0;
7266 inline bool SatParameters::has_use_combined_no_overlap()
const {
7267 return _internal_has_use_combined_no_overlap();
7269 inline void SatParameters::clear_use_combined_no_overlap() {
7270 use_combined_no_overlap_ =
false;
7271 _has_bits_[1] &= ~0x00008000u;
7273 inline bool SatParameters::_internal_use_combined_no_overlap()
const {
7274 return use_combined_no_overlap_;
7276 inline bool SatParameters::use_combined_no_overlap()
const {
7278 return _internal_use_combined_no_overlap();
7280 inline void SatParameters::_internal_set_use_combined_no_overlap(
bool value) {
7281 _has_bits_[1] |= 0x00008000u;
7282 use_combined_no_overlap_ =
value;
7284 inline void SatParameters::set_use_combined_no_overlap(
bool value) {
7285 _internal_set_use_combined_no_overlap(
value);
7290 inline bool SatParameters::_internal_has_catch_sigint_signal()
const {
7291 bool value = (_has_bits_[3] & 0x08000000u) != 0;
7294 inline bool SatParameters::has_catch_sigint_signal()
const {
7295 return _internal_has_catch_sigint_signal();
7297 inline void SatParameters::clear_catch_sigint_signal() {
7298 catch_sigint_signal_ =
true;
7299 _has_bits_[3] &= ~0x08000000u;
7301 inline bool SatParameters::_internal_catch_sigint_signal()
const {
7302 return catch_sigint_signal_;
7304 inline bool SatParameters::catch_sigint_signal()
const {
7306 return _internal_catch_sigint_signal();
7308 inline void SatParameters::_internal_set_catch_sigint_signal(
bool value) {
7309 _has_bits_[3] |= 0x08000000u;
7310 catch_sigint_signal_ =
value;
7312 inline void SatParameters::set_catch_sigint_signal(
bool value) {
7313 _internal_set_catch_sigint_signal(
value);
7318 inline bool SatParameters::_internal_has_use_implied_bounds()
const {
7319 bool value = (_has_bits_[3] & 0x10000000u) != 0;
7322 inline bool SatParameters::has_use_implied_bounds()
const {
7323 return _internal_has_use_implied_bounds();
7325 inline void SatParameters::clear_use_implied_bounds() {
7326 use_implied_bounds_ =
true;
7327 _has_bits_[3] &= ~0x10000000u;
7329 inline bool SatParameters::_internal_use_implied_bounds()
const {
7330 return use_implied_bounds_;
7332 inline bool SatParameters::use_implied_bounds()
const {
7334 return _internal_use_implied_bounds();
7336 inline void SatParameters::_internal_set_use_implied_bounds(
bool value) {
7337 _has_bits_[3] |= 0x10000000u;
7338 use_implied_bounds_ =
value;
7340 inline void SatParameters::set_use_implied_bounds(
bool value) {
7341 _internal_set_use_implied_bounds(
value);
7346 inline bool SatParameters::_internal_has_polish_lp_solution()
const {
7347 bool value = (_has_bits_[1] & 0x00010000u) != 0;
7350 inline bool SatParameters::has_polish_lp_solution()
const {
7351 return _internal_has_polish_lp_solution();
7353 inline void SatParameters::clear_polish_lp_solution() {
7354 polish_lp_solution_ =
false;
7355 _has_bits_[1] &= ~0x00010000u;
7357 inline bool SatParameters::_internal_polish_lp_solution()
const {
7358 return polish_lp_solution_;
7360 inline bool SatParameters::polish_lp_solution()
const {
7362 return _internal_polish_lp_solution();
7364 inline void SatParameters::_internal_set_polish_lp_solution(
bool value) {
7365 _has_bits_[1] |= 0x00010000u;
7366 polish_lp_solution_ =
value;
7368 inline void SatParameters::set_polish_lp_solution(
bool value) {
7369 _internal_set_polish_lp_solution(
value);
7374 inline bool SatParameters::_internal_has_mip_max_bound()
const {
7375 bool value = (_has_bits_[3] & 0x20000000u) != 0;
7378 inline bool SatParameters::has_mip_max_bound()
const {
7379 return _internal_has_mip_max_bound();
7381 inline void SatParameters::clear_mip_max_bound() {
7382 mip_max_bound_ = 10000000;
7383 _has_bits_[3] &= ~0x20000000u;
7385 inline double SatParameters::_internal_mip_max_bound()
const {
7386 return mip_max_bound_;
7388 inline double SatParameters::mip_max_bound()
const {
7390 return _internal_mip_max_bound();
7392 inline void SatParameters::_internal_set_mip_max_bound(
double value) {
7393 _has_bits_[3] |= 0x20000000u;
7394 mip_max_bound_ =
value;
7396 inline void SatParameters::set_mip_max_bound(
double value) {
7397 _internal_set_mip_max_bound(
value);
7402 inline bool SatParameters::_internal_has_mip_var_scaling()
const {
7403 bool value = (_has_bits_[3] & 0x40000000u) != 0;
7406 inline bool SatParameters::has_mip_var_scaling()
const {
7407 return _internal_has_mip_var_scaling();
7409 inline void SatParameters::clear_mip_var_scaling() {
7410 mip_var_scaling_ = 1;
7411 _has_bits_[3] &= ~0x40000000u;
7413 inline double SatParameters::_internal_mip_var_scaling()
const {
7414 return mip_var_scaling_;
7416 inline double SatParameters::mip_var_scaling()
const {
7418 return _internal_mip_var_scaling();
7420 inline void SatParameters::_internal_set_mip_var_scaling(
double value) {
7421 _has_bits_[3] |= 0x40000000u;
7422 mip_var_scaling_ =
value;
7424 inline void SatParameters::set_mip_var_scaling(
double value) {
7425 _internal_set_mip_var_scaling(
value);
7430 inline bool SatParameters::_internal_has_mip_automatically_scale_variables()
const {
7431 bool value = (_has_bits_[4] & 0x00400000u) != 0;
7434 inline bool SatParameters::has_mip_automatically_scale_variables()
const {
7435 return _internal_has_mip_automatically_scale_variables();
7437 inline void SatParameters::clear_mip_automatically_scale_variables() {
7438 mip_automatically_scale_variables_ =
true;
7439 _has_bits_[4] &= ~0x00400000u;
7441 inline bool SatParameters::_internal_mip_automatically_scale_variables()
const {
7442 return mip_automatically_scale_variables_;
7444 inline bool SatParameters::mip_automatically_scale_variables()
const {
7446 return _internal_mip_automatically_scale_variables();
7448 inline void SatParameters::_internal_set_mip_automatically_scale_variables(
bool value) {
7449 _has_bits_[4] |= 0x00400000u;
7450 mip_automatically_scale_variables_ =
value;
7452 inline void SatParameters::set_mip_automatically_scale_variables(
bool value) {
7453 _internal_set_mip_automatically_scale_variables(
value);
7458 inline bool SatParameters::_internal_has_mip_wanted_precision()
const {
7459 bool value = (_has_bits_[3] & 0x80000000u) != 0;
7462 inline bool SatParameters::has_mip_wanted_precision()
const {
7463 return _internal_has_mip_wanted_precision();
7465 inline void SatParameters::clear_mip_wanted_precision() {
7466 mip_wanted_precision_ = 1e-06;
7467 _has_bits_[3] &= ~0x80000000u;
7469 inline double SatParameters::_internal_mip_wanted_precision()
const {
7470 return mip_wanted_precision_;
7472 inline double SatParameters::mip_wanted_precision()
const {
7474 return _internal_mip_wanted_precision();
7476 inline void SatParameters::_internal_set_mip_wanted_precision(
double value) {
7477 _has_bits_[3] |= 0x80000000u;
7478 mip_wanted_precision_ =
value;
7480 inline void SatParameters::set_mip_wanted_precision(
double value) {
7481 _internal_set_mip_wanted_precision(
value);
7486 inline bool SatParameters::_internal_has_mip_max_activity_exponent()
const {
7487 bool value = (_has_bits_[4] & 0x00000002u) != 0;
7490 inline bool SatParameters::has_mip_max_activity_exponent()
const {
7491 return _internal_has_mip_max_activity_exponent();
7493 inline void SatParameters::clear_mip_max_activity_exponent() {
7494 mip_max_activity_exponent_ = 53;
7495 _has_bits_[4] &= ~0x00000002u;
7498 return mip_max_activity_exponent_;
7502 return _internal_mip_max_activity_exponent();
7505 _has_bits_[4] |= 0x00000002u;
7506 mip_max_activity_exponent_ =
value;
7509 _internal_set_mip_max_activity_exponent(
value);
7514 inline bool SatParameters::_internal_has_mip_check_precision()
const {
7515 bool value = (_has_bits_[4] & 0x00000001u) != 0;
7518 inline bool SatParameters::has_mip_check_precision()
const {
7519 return _internal_has_mip_check_precision();
7521 inline void SatParameters::clear_mip_check_precision() {
7522 mip_check_precision_ = 0.0001;
7523 _has_bits_[4] &= ~0x00000001u;
7525 inline double SatParameters::_internal_mip_check_precision()
const {
7526 return mip_check_precision_;
7528 inline double SatParameters::mip_check_precision()
const {
7530 return _internal_mip_check_precision();
7532 inline void SatParameters::_internal_set_mip_check_precision(
double value) {
7533 _has_bits_[4] |= 0x00000001u;
7534 mip_check_precision_ =
value;
7536 inline void SatParameters::set_mip_check_precision(
double value) {
7537 _internal_set_mip_check_precision(
value);
7542 #pragma GCC diagnostic pop
7550 PROTOBUF_NAMESPACE_OPEN
7554 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_VariableOrder>() {
7559 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_Polarity>() {
7564 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_ConflictMinimizationAlgorithm>() {
7569 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_BinaryMinizationAlgorithm>() {
7574 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_ClauseProtection>() {
7579 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_ClauseOrdering>() {
7584 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_RestartAlgorithm>() {
7589 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_MaxSatAssumptionOrder>() {
7594 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_MaxSatStratificationAlgorithm>() {
7599 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_SearchBranching>() {
7604 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::SatParameters_FPRoundingMethod>() {
7608 PROTOBUF_NAMESPACE_CLOSE
7612 #include <google/protobuf/port_undef.inc>
7613 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fsat_5fparameters_2eproto