Google OR-Tools v9.9
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
SatParameters.pb.cs
Go to the documentation of this file.
1// <auto-generated>
2// Generated by the protocol buffer compiler. DO NOT EDIT!
3// source: ortools/sat/sat_parameters.proto
4// </auto-generated>
5#pragma warning disable 1591, 0612, 3021, 8981
6#region Designer generated code
7
8using pb = global::Google.Protobuf;
9using pbc = global::Google.Protobuf.Collections;
10using pbr = global::Google.Protobuf.Reflection;
11using scg = global::System.Collections.Generic;
12namespace Google.OrTools.Sat {
13
15 public static partial class SatParametersReflection {
16
17 #region Descriptor
19 public static pbr::FileDescriptor Descriptor {
20 get { return descriptor; }
21 }
22 private static pbr::FileDescriptor descriptor;
23
25 byte[] descriptorData = global::System.Convert.FromBase64String(
26 string.Concat(
27 "CiBvcnRvb2xzL3NhdC9zYXRfcGFyYW1ldGVycy5wcm90bxIXb3BlcmF0aW9u",
28 "c19yZXNlYXJjaC5zYXQirF0KDVNhdFBhcmFtZXRlcnMSDwoEbmFtZRirASAB",
29 "KAk6ABJgChhwcmVmZXJyZWRfdmFyaWFibGVfb3JkZXIYASABKA4yNC5vcGVy",
30 "YXRpb25zX3Jlc2VhcmNoLnNhdC5TYXRQYXJhbWV0ZXJzLlZhcmlhYmxlT3Jk",
31 "ZXI6CElOX09SREVSElkKEGluaXRpYWxfcG9sYXJpdHkYAiABKA4yLy5vcGVy",
32 "YXRpb25zX3Jlc2VhcmNoLnNhdC5TYXRQYXJhbWV0ZXJzLlBvbGFyaXR5Og5Q",
33 "T0xBUklUWV9GQUxTRRIeChB1c2VfcGhhc2Vfc2F2aW5nGCwgASgIOgR0cnVl",
34 "EikKGnBvbGFyaXR5X3JlcGhhc2VfaW5jcmVtZW50GKgBIAEoBToEMTAwMBIg",
35 "ChVyYW5kb21fcG9sYXJpdHlfcmF0aW8YLSABKAE6ATASIAoVcmFuZG9tX2Jy",
36 "YW5jaGVzX3JhdGlvGCAgASgBOgEwEiEKEnVzZV9lcndhX2hldXJpc3RpYxhL",
37 "IAEoCDoFZmFsc2USJQoaaW5pdGlhbF92YXJpYWJsZXNfYWN0aXZpdHkYTCAB",
38 "KAE6ATASNgonYWxzb19idW1wX3ZhcmlhYmxlc19pbl9jb25mbGljdF9yZWFz",
39 "b25zGE0gASgIOgVmYWxzZRJvChZtaW5pbWl6YXRpb25fYWxnb3JpdGhtGAQg",
40 "ASgOMkQub3BlcmF0aW9uc19yZXNlYXJjaC5zYXQuU2F0UGFyYW1ldGVycy5D",
41 "b25mbGljdE1pbmltaXphdGlvbkFsZ29yaXRobToJUkVDVVJTSVZFEoIBCh1i",
42 "aW5hcnlfbWluaW1pemF0aW9uX2FsZ29yaXRobRgiIAEoDjJALm9wZXJhdGlv",
43 "bnNfcmVzZWFyY2guc2F0LlNhdFBhcmFtZXRlcnMuQmluYXJ5TWluaXphdGlv",
44 "bkFsZ29yaXRobToZQklOQVJZX01JTklNSVpBVElPTl9GSVJTVBIyCiRzdWJz",
45 "dW1wdGlvbl9kdXJpbmdfY29uZmxpY3RfYW5hbHlzaXMYOCABKAg6BHRydWUS",
46 "JAoVY2xhdXNlX2NsZWFudXBfcGVyaW9kGAsgASgFOgUxMDAwMBIgChVjbGF1",
47 "c2VfY2xlYW51cF90YXJnZXQYDSABKAU6ATASIgoUY2xhdXNlX2NsZWFudXBf",
48 "cmF0aW8YvgEgASgBOgMwLjUSawoZY2xhdXNlX2NsZWFudXBfcHJvdGVjdGlv",
49 "bhg6IAEoDjI3Lm9wZXJhdGlvbnNfcmVzZWFyY2guc2F0LlNhdFBhcmFtZXRl",
50 "cnMuQ2xhdXNlUHJvdGVjdGlvbjoPUFJPVEVDVElPTl9OT05FEiMKGGNsYXVz",
51 "ZV9jbGVhbnVwX2xiZF9ib3VuZBg7IAEoBToBNRJnChdjbGF1c2VfY2xlYW51",
52 "cF9vcmRlcmluZxg8IAEoDjI1Lm9wZXJhdGlvbnNfcmVzZWFyY2guc2F0LlNh",
53 "dFBhcmFtZXRlcnMuQ2xhdXNlT3JkZXJpbmc6D0NMQVVTRV9BQ1RJVklUWRIh",
54 "ChRwYl9jbGVhbnVwX2luY3JlbWVudBguIAEoBToDMjAwEh0KEHBiX2NsZWFu",
55 "dXBfcmF0aW8YLyABKAE6AzAuNRIkChd2YXJpYWJsZV9hY3Rpdml0eV9kZWNh",
56 "eRgPIAEoAToDMC44EisKG21heF92YXJpYWJsZV9hY3Rpdml0eV92YWx1ZRgQ",
57 "IAEoAToGMWUrMTAwEh8KEWdsdWNvc2VfbWF4X2RlY2F5GBYgASgBOgQwLjk1",
58 "EiUKF2dsdWNvc2VfZGVjYXlfaW5jcmVtZW50GBcgASgBOgQwLjAxEiwKHmds",
59 "dWNvc2VfZGVjYXlfaW5jcmVtZW50X3BlcmlvZBgYIAEoBToENTAwMBIkChVj",
60 "bGF1c2VfYWN0aXZpdHlfZGVjYXkYESABKAE6BTAuOTk5EigKGW1heF9jbGF1",
61 "c2VfYWN0aXZpdHlfdmFsdWUYEiABKAE6BTFlKzIwElMKEnJlc3RhcnRfYWxn",
62 "b3JpdGhtcxg9IAMoDjI3Lm9wZXJhdGlvbnNfcmVzZWFyY2guc2F0LlNhdFBh",
63 "cmFtZXRlcnMuUmVzdGFydEFsZ29yaXRobRJlChpkZWZhdWx0X3Jlc3RhcnRf",
64 "YWxnb3JpdGhtcxhGIAEoCTpBTFVCWV9SRVNUQVJULExCRF9NT1ZJTkdfQVZF",
65 "UkFHRV9SRVNUQVJULERMX01PVklOR19BVkVSQUdFX1JFU1RBUlQSGgoOcmVz",
66 "dGFydF9wZXJpb2QYHiABKAU6AjUwEicKG3Jlc3RhcnRfcnVubmluZ193aW5k",
67 "b3dfc2l6ZRg+IAEoBToCNTASIwoYcmVzdGFydF9kbF9hdmVyYWdlX3JhdGlv",
68 "GD8gASgBOgExEiQKGXJlc3RhcnRfbGJkX2F2ZXJhZ2VfcmF0aW8YRyABKAE6",
69 "ATESIwoUdXNlX2Jsb2NraW5nX3Jlc3RhcnQYQCABKAg6BWZhbHNlEioKHGJs",
70 "b2NraW5nX3Jlc3RhcnRfd2luZG93X3NpemUYQSABKAU6BDUwMDASKAobYmxv",
71 "Y2tpbmdfcmVzdGFydF9tdWx0aXBsaWVyGEIgASgBOgMxLjQSMAolbnVtX2Nv",
72 "bmZsaWN0c19iZWZvcmVfc3RyYXRlZ3lfY2hhbmdlcxhEIAEoBToBMBIpCh5z",
73 "dHJhdGVneV9jaGFuZ2VfaW5jcmVhc2VfcmF0aW8YRSABKAE6ATASIAoTbWF4",
74 "X3RpbWVfaW5fc2Vjb25kcxgkIAEoAToDaW5mEiMKFm1heF9kZXRlcm1pbmlz",
75 "dGljX3RpbWUYQyABKAE6A2luZhI0ChdtYXhfbnVtYmVyX29mX2NvbmZsaWN0",
76 "cxglIAEoAzoTOTIyMzM3MjAzNjg1NDc3NTgwNxIfChBtYXhfbWVtb3J5X2lu",
77 "X21iGCggASgDOgUxMDAwMBIjChJhYnNvbHV0ZV9nYXBfbGltaXQYnwEgASgB",
78 "OgYwLjAwMDESHgoScmVsYXRpdmVfZ2FwX2xpbWl0GKABIAEoAToBMBIWCgty",
79 "YW5kb21fc2VlZBgfIAEoBToBMRIpChlwZXJtdXRlX3ZhcmlhYmxlX3JhbmRv",
80 "bWx5GLIBIAEoCDoFZmFsc2USMQohcGVybXV0ZV9wcmVzb2x2ZV9jb25zdHJh",
81 "aW50X29yZGVyGLMBIAEoCDoFZmFsc2USHwoPdXNlX2Fic2xfcmFuZG9tGLQB",
82 "IAEoCDoFZmFsc2USIgoTbG9nX3NlYXJjaF9wcm9ncmVzcxgpIAEoCDoFZmFs",
83 "c2USKAoYbG9nX3N1YnNvbHZlcl9zdGF0aXN0aWNzGL0BIAEoCDoFZmFsc2US",
84 "FQoKbG9nX3ByZWZpeBi5ASABKAk6ABIcCg1sb2dfdG9fc3Rkb3V0GLoBIAEo",
85 "CDoEdHJ1ZRIfCg9sb2dfdG9fcmVzcG9uc2UYuwEgASgIOgVmYWxzZRIgChF1",
86 "c2VfcGJfcmVzb2x1dGlvbhgrIAEoCDoFZmFsc2USNgonbWluaW1pemVfcmVk",
87 "dWN0aW9uX2R1cmluZ19wYl9yZXNvbHV0aW9uGDAgASgIOgVmYWxzZRIsCh5j",
88 "b3VudF9hc3N1bXB0aW9uX2xldmVsc19pbl9sYmQYMSABKAg6BHRydWUSIwoW",
89 "cHJlc29sdmVfYnZlX3RocmVzaG9sZBg2IAEoBToDNTAwEiUKGnByZXNvbHZl",
90 "X2J2ZV9jbGF1c2Vfd2VpZ2h0GDcgASgFOgEzEiwKIHByb2JpbmdfZGV0ZXJt",
91 "aW5pc3RpY190aW1lX2xpbWl0GOIBIAEoAToBMRI1CilwcmVzb2x2ZV9wcm9i",
92 "aW5nX2RldGVybWluaXN0aWNfdGltZV9saW1pdBg5IAEoAToCMzASJQoXcHJl",
93 "c29sdmVfYmxvY2tlZF9jbGF1c2UYWCABKAg6BHRydWUSHgoQcHJlc29sdmVf",
94 "dXNlX2J2YRhIIAEoCDoEdHJ1ZRIhChZwcmVzb2x2ZV9idmFfdGhyZXNob2xk",
95 "GEkgASgFOgExEiMKF21heF9wcmVzb2x2ZV9pdGVyYXRpb25zGIoBIAEoBToB",
96 "MxIfChFjcF9tb2RlbF9wcmVzb2x2ZRhWIAEoCDoEdHJ1ZRIhChZjcF9tb2Rl",
97 "bF9wcm9iaW5nX2xldmVsGG4gASgFOgEyEicKGWNwX21vZGVsX3VzZV9zYXRf",
98 "cHJlc29sdmUYXSABKAg6BHRydWUSJgoWZGV0ZWN0X3RhYmxlX3dpdGhfY29z",
99 "dBjYASABKAg6BWZhbHNlEiMKF3RhYmxlX2NvbXByZXNzaW9uX2xldmVsGNkB",
100 "IAEoBToBMhIqChpleHBhbmRfYWxsZGlmZl9jb25zdHJhaW50cxiqASABKAg6",
101 "BWZhbHNlEisKHGV4cGFuZF9yZXNlcnZvaXJfY29uc3RyYWludHMYtgEgASgI",
102 "OgR0cnVlEiwKHGRpc2FibGVfY29uc3RyYWludF9leHBhbnNpb24YtQEgASgI",
103 "OgVmYWxzZRI9Ci1lbmNvZGVfY29tcGxleF9saW5lYXJfY29uc3RyYWludF93",
104 "aXRoX2ludGVnZXIY3wEgASgIOgVmYWxzZRIzChttZXJnZV9ub19vdmVybGFw",
105 "X3dvcmtfbGltaXQYkQEgASgBOg0xMDAwMDAwMDAwMDAwEjAKHG1lcmdlX2F0",
106 "X21vc3Rfb25lX3dvcmtfbGltaXQYkgEgASgBOgkxMDAwMDAwMDASJwobcHJl",
107 "c29sdmVfc3Vic3RpdHV0aW9uX2xldmVsGJMBIAEoBToBMRI0CiRwcmVzb2x2",
108 "ZV9leHRyYWN0X2ludGVnZXJfZW5mb3JjZW1lbnQYrgEgASgIOgVmYWxzZRIx",
109 "Ch1wcmVzb2x2ZV9pbmNsdXNpb25fd29ya19saW1pdBjJASABKAM6CTEwMDAw",
110 "MDAwMBIbCgxpZ25vcmVfbmFtZXMYygEgASgIOgR0cnVlEh4KD2luZmVyX2Fs",
111 "bF9kaWZmcxjpASABKAg6BHRydWUSJgoXZmluZF9iaWdfbGluZWFyX292ZXJs",
112 "YXAY6gEgASgIOgR0cnVlEiMKFHVzZV9zYXRfaW5wcm9jZXNzaW5nGKMBIAEo",
113 "CDoEdHJ1ZRImChhpbnByb2Nlc3NpbmdfZHRpbWVfcmF0aW8YkQIgASgBOgMw",
114 "LjISJgoaaW5wcm9jZXNzaW5nX3Byb2JpbmdfZHRpbWUYkgIgASgBOgExEisK",
115 "H2lucHJvY2Vzc2luZ19taW5pbWl6YXRpb25fZHRpbWUYkwIgASgBOgExEhcK",
116 "C251bV93b3JrZXJzGM4BIAEoBToBMBIdChJudW1fc2VhcmNoX3dvcmtlcnMY",
117 "ZCABKAU6ATASHwoTbWluX251bV9sbnNfd29ya2VycxjTASABKAU6ATISEwoK",
118 "c3Vic29sdmVycxjPASADKAkSGQoQZXh0cmFfc3Vic29sdmVycxjbASADKAkS",
119 "GgoRaWdub3JlX3N1YnNvbHZlcnMY0QEgAygJEkEKEHN1YnNvbHZlcl9wYXJh",
120 "bXMY0gEgAygLMiYub3BlcmF0aW9uc19yZXNlYXJjaC5zYXQuU2F0UGFyYW1l",
121 "dGVycxIhChFpbnRlcmxlYXZlX3NlYXJjaBiIASABKAg6BWZhbHNlEiEKFWlu",
122 "dGVybGVhdmVfYmF0Y2hfc2l6ZRiGASABKAU6ATASJAoWc2hhcmVfb2JqZWN0",
123 "aXZlX2JvdW5kcxhxIAEoCDoEdHJ1ZRIlChdzaGFyZV9sZXZlbF96ZXJvX2Jv",
124 "dW5kcxhyIAEoCDoEdHJ1ZRIjChRzaGFyZV9iaW5hcnlfY2xhdXNlcxjLASAB",
125 "KAg6BHRydWUSMAogZGVidWdfcG9zdHNvbHZlX3dpdGhfZnVsbF9zb2x2ZXIY",
126 "ogEgASgIOgVmYWxzZRItCiFkZWJ1Z19tYXhfbnVtX3ByZXNvbHZlX29wZXJh",
127 "dGlvbnMYlwEgASgFOgEwEicKF2RlYnVnX2NyYXNoX29uX2JhZF9oaW50GMMB",
128 "IAEoCDoFZmFsc2USJAoWdXNlX29wdGltaXphdGlvbl9oaW50cxgjIAEoCDoE",
129 "dHJ1ZRIiChdjb3JlX21pbmltaXphdGlvbl9sZXZlbBgyIAEoBToBMhIhChNm",
130 "aW5kX211bHRpcGxlX2NvcmVzGFQgASgIOgR0cnVlEiAKEmNvdmVyX29wdGlt",
131 "aXphdGlvbhhZIAEoCDoEdHJ1ZRJ4ChhtYXhfc2F0X2Fzc3VtcHRpb25fb3Jk",
132 "ZXIYMyABKA4yPC5vcGVyYXRpb25zX3Jlc2VhcmNoLnNhdC5TYXRQYXJhbWV0",
133 "ZXJzLk1heFNhdEFzc3VtcHRpb25PcmRlcjoYREVGQVVMVF9BU1NVTVBUSU9O",
134 "X09SREVSEi8KIG1heF9zYXRfcmV2ZXJzZV9hc3N1bXB0aW9uX29yZGVyGDQg",
135 "ASgIOgVmYWxzZRJ8ChZtYXhfc2F0X3N0cmF0aWZpY2F0aW9uGDUgASgOMkQu",
136 "b3BlcmF0aW9uc19yZXNlYXJjaC5zYXQuU2F0UGFyYW1ldGVycy5NYXhTYXRT",
137 "dHJhdGlmaWNhdGlvbkFsZ29yaXRobToWU1RSQVRJRklDQVRJT05fREVTQ0VO",
138 "VBIuCiFwcm9wYWdhdGlvbl9sb29wX2RldGVjdGlvbl9mYWN0b3IY3QEgASgB",
139 "OgIxMBI3Cil1c2VfcHJlY2VkZW5jZXNfaW5fZGlzanVuY3RpdmVfY29uc3Ry",
140 "YWludBhKIAEoCDoEdHJ1ZRJCCjVtYXhfc2l6ZV90b19jcmVhdGVfcHJlY2Vk",
141 "ZW5jZV9saXRlcmFsc19pbl9kaXNqdW5jdGl2ZRjlASABKAU6AjYwEjUKJXVz",
142 "ZV9zdHJvbmdfcHJvcGFnYXRpb25faW5fZGlzanVuY3RpdmUY5gEgASgIOgVm",
143 "YWxzZRI1CiV1c2VfZHluYW1pY19wcmVjZWRlbmNlX2luX2Rpc2p1bmN0aXZl",
144 "GIcCIAEoCDoFZmFsc2USNAokdXNlX2R5bmFtaWNfcHJlY2VkZW5jZV9pbl9j",
145 "dW11bGF0aXZlGIwCIAEoCDoFZmFsc2USMQoidXNlX292ZXJsb2FkX2NoZWNr",
146 "ZXJfaW5fY3VtdWxhdGl2ZRhOIAEoCDoFZmFsc2USNwoodXNlX3RpbWV0YWJs",
147 "ZV9lZGdlX2ZpbmRpbmdfaW5fY3VtdWxhdGl2ZRhPIAEoCDoFZmFsc2USOgos",
148 "bWF4X251bV9pbnRlcnZhbHNfZm9yX3RpbWV0YWJsZV9lZGdlX2ZpbmRpbmcY",
149 "hAIgASgFOgMxMDASMgoidXNlX2hhcmRfcHJlY2VkZW5jZXNfaW5fY3VtdWxh",
150 "dGl2ZRjXASABKAg6BWZhbHNlEicKF2V4cGxvaXRfYWxsX3ByZWNlZGVuY2Vz",
151 "GNwBIAEoCDoFZmFsc2USNgoodXNlX2Rpc2p1bmN0aXZlX2NvbnN0cmFpbnRf",
152 "aW5fY3VtdWxhdGl2ZRhQIAEoCDoEdHJ1ZRIwCiB1c2VfdGltZXRhYmxpbmdf",
153 "aW5fbm9fb3ZlcmxhcF8yZBjIASABKAg6BWZhbHNlEjgKKHVzZV9lbmVyZ2V0",
154 "aWNfcmVhc29uaW5nX2luX25vX292ZXJsYXBfMmQY1QEgASgIOgVmYWxzZRI9",
155 "Ci11c2VfYXJlYV9lbmVyZ2V0aWNfcmVhc29uaW5nX2luX25vX292ZXJsYXBf",
156 "MmQYjwIgASgIOgVmYWxzZRI8Ci1tYXhfcGFpcnNfcGFpcndpc2VfcmVhc29u",
157 "aW5nX2luX25vX292ZXJsYXBfMmQYlAIgASgFOgQxMjUwEi0KHnVzZV9kdWFs",
158 "X3NjaGVkdWxpbmdfaGV1cmlzdGljcxjWASABKAg6BHRydWUSYgoQc2VhcmNo",
159 "X2JyYW5jaGluZxhSIAEoDjI2Lm9wZXJhdGlvbnNfcmVzZWFyY2guc2F0LlNh",
160 "dFBhcmFtZXRlcnMuU2VhcmNoQnJhbmNoaW5nOhBBVVRPTUFUSUNfU0VBUkNI",
161 "EiAKE2hpbnRfY29uZmxpY3RfbGltaXQYmQEgASgFOgIxMBIbCgtyZXBhaXJf",
162 "aGludBinASABKAg6BWZhbHNlEjMKI2ZpeF92YXJpYWJsZXNfdG9fdGhlaXJf",
163 "aGludGVkX3ZhbHVlGMABIAEoCDoFZmFsc2USIgoSdXNlX3Byb2Jpbmdfc2Vh",
164 "cmNoGLABIAEoCDoFZmFsc2USIwoUdXNlX2V4dGVuZGVkX3Byb2JpbmcYjQIg",
165 "ASgIOgR0cnVlEi4KHnByb2JpbmdfbnVtX2NvbWJpbmF0aW9uc19saW1pdBiQ",
166 "AiABKAU6BTIwMDAwEiwKHXVzZV9zaGF2aW5nX2luX3Byb2Jpbmdfc2VhcmNo",
167 "GMwBIAEoCDoEdHJ1ZRIxCiFzaGF2aW5nX3NlYXJjaF9kZXRlcm1pbmlzdGlj",
168 "X3RpbWUYzQEgASgBOgUwLjAwMRInChd1c2Vfb2JqZWN0aXZlX2xiX3NlYXJj",
169 "aBjkASABKAg6BWZhbHNlEiwKHHVzZV9vYmplY3RpdmVfc2hhdmluZ19zZWFy",
170 "Y2gY/QEgASgIOgVmYWxzZRIuCiFwc2V1ZG9fY29zdF9yZWxpYWJpbGl0eV90",
171 "aHJlc2hvbGQYeyABKAM6AzEwMBIhChJvcHRpbWl6ZV93aXRoX2NvcmUYUyAB",
172 "KAg6BWZhbHNlEiwKHG9wdGltaXplX3dpdGhfbGJfdHJlZV9zZWFyY2gYvAEg",
173 "ASgIOgVmYWxzZRInChtiaW5hcnlfc2VhcmNoX251bV9jb25mbGljdHMYYyAB",
174 "KAU6Ai0xEiMKFG9wdGltaXplX3dpdGhfbWF4X2hzGFUgASgIOgVmYWxzZRIj",
175 "ChR1c2VfZmVhc2liaWxpdHlfanVtcBiJAiABKAg6BHRydWUSJQoVdGVzdF9m",
176 "ZWFzaWJpbGl0eV9qdW1wGPABIAEoCDoFZmFsc2USJQoWZmVhc2liaWxpdHlf",
177 "anVtcF9kZWNheRjyASABKAE6BDAuOTUSMAokZmVhc2liaWxpdHlfanVtcF9s",
178 "aW5lYXJpemF0aW9uX2xldmVsGIECIAEoBToBMhIrCh9mZWFzaWJpbGl0eV9q",
179 "dW1wX3Jlc3RhcnRfZmFjdG9yGIICIAEoBToBMRI6Ci5mZWFzaWJpbGl0eV9q",
180 "dW1wX3Zhcl9yYW5kb21pemF0aW9uX3Byb2JhYmlsaXR5GPcBIAEoAToBMBI7",
181 "Ci1mZWFzaWJpbGl0eV9qdW1wX3Zhcl9wZXJidXJiYXRpb25fcmFuZ2VfcmF0",
182 "aW8Y+AEgASgBOgMwLjISLwogZmVhc2liaWxpdHlfanVtcF9lbmFibGVfcmVz",
183 "dGFydHMY+gEgASgIOgR0cnVlEjsKLWZlYXNpYmlsaXR5X2p1bXBfbWF4X2V4",
184 "cGFuZGVkX2NvbnN0cmFpbnRfc2l6ZRiIAiABKAU6AzEwMBIcChBudW1fdmlv",
185 "bGF0aW9uX2xzGPQBIAEoBToBMBIuCiB2aW9sYXRpb25fbHNfcGVydHVyYmF0",
186 "aW9uX3BlcmlvZBj5ASABKAU6AzEwMBI0CiZ2aW9sYXRpb25fbHNfY29tcG91",
187 "bmRfbW92ZV9wcm9iYWJpbGl0eRiDAiABKAE6AzAuNRIjChdzaGFyZWRfdHJl",
188 "ZV9udW1fd29ya2VycxjrASABKAU6ATASJgoWdXNlX3NoYXJlZF90cmVlX3Nl",
189 "YXJjaBjsASABKAg6BWZhbHNlEjwKLnNoYXJlZF90cmVlX3dvcmtlcl9vYmpl",
190 "Y3RpdmVfc3BsaXRfcHJvYmFiaWxpdHkY7QEgASgBOgMwLjUSLgogc2hhcmVk",
191 "X3RyZWVfbWF4X25vZGVzX3Blcl93b3JrZXIY7gEgASgFOgMxMjgSeAoac2hh",
192 "cmVkX3RyZWVfc3BsaXRfc3RyYXRlZ3kY7wEgASgOMj4ub3BlcmF0aW9uc19y",
193 "ZXNlYXJjaC5zYXQuU2F0UGFyYW1ldGVycy5TaGFyZWRUcmVlU3BsaXRTdHJh",
194 "dGVneToTU1BMSVRfU1RSQVRFR1lfQVVUTxImChdlbnVtZXJhdGVfYWxsX3Nv",
195 "bHV0aW9ucxhXIAEoCDoFZmFsc2USNwona2VlcF9hbGxfZmVhc2libGVfc29s",
196 "dXRpb25zX2luX3ByZXNvbHZlGK0BIAEoCDoFZmFsc2USMgoiZmlsbF90aWdo",
197 "dGVuZWRfZG9tYWluc19pbl9yZXNwb25zZRiEASABKAg6BWZhbHNlEjUKJWZp",
198 "bGxfYWRkaXRpb25hbF9zb2x1dGlvbnNfaW5fcmVzcG9uc2UYwgEgASgIOgVm",
199 "YWxzZRInChlpbnN0YW50aWF0ZV9hbGxfdmFyaWFibGVzGGogASgIOgR0cnVl",
200 "EjYKKGF1dG9fZGV0ZWN0X2dyZWF0ZXJfdGhhbl9hdF9sZWFzdF9vbmVfb2YY",
201 "XyABKAg6BHRydWUSKAoZc3RvcF9hZnRlcl9maXJzdF9zb2x1dGlvbhhiIAEo",
202 "CDoFZmFsc2USIwoTc3RvcF9hZnRlcl9wcmVzb2x2ZRiVASABKAg6BWZhbHNl",
203 "EisKG3N0b3BfYWZ0ZXJfcm9vdF9wcm9wYWdhdGlvbhj8ASABKAg6BWZhbHNl",
204 "EhsKDHVzZV9sbnNfb25seRhlIAEoCDoFZmFsc2USHgoSc29sdXRpb25fcG9v",
205 "bF9zaXplGMEBIAEoBToBMxIbCgx1c2Vfcmluc19sbnMYgQEgASgIOgR0cnVl",
206 "EiMKFHVzZV9mZWFzaWJpbGl0eV9wdW1wGKQBIAEoCDoEdHJ1ZRIgChB1c2Vf",
207 "bGJfcmVsYXhfbG5zGP8BIAEoCDoFZmFsc2USYwoLZnBfcm91bmRpbmcYpQEg",
208 "ASgOMjcub3BlcmF0aW9uc19yZXNlYXJjaC5zYXQuU2F0UGFyYW1ldGVycy5G",
209 "UFJvdW5kaW5nTWV0aG9kOhRQUk9QQUdBVElPTl9BU1NJU1RFRBIkChRkaXZl",
210 "cnNpZnlfbG5zX3BhcmFtcxiJASABKAg6BWZhbHNlEh8KEHJhbmRvbWl6ZV9z",
211 "ZWFyY2gYZyABKAg6BWZhbHNlEisKIHNlYXJjaF9yYW5kb21fdmFyaWFibGVf",
212 "cG9vbF9zaXplGGggASgDOgEwEisKG3B1c2hfYWxsX3Rhc2tzX3Rvd2FyZF9z",
213 "dGFydBiGAiABKAg6BWZhbHNlEiUKFnVzZV9vcHRpb25hbF92YXJpYWJsZXMY",
214 "bCABKAg6BWZhbHNlEiEKE3VzZV9leGFjdF9scF9yZWFzb24YbSABKAg6BHRy",
215 "dWUSJwoXdXNlX2NvbWJpbmVkX25vX292ZXJsYXAYhQEgASgIOgVmYWxzZRIq",
216 "Ch5hdF9tb3N0X29uZV9tYXhfZXhwYW5zaW9uX3NpemUYjgIgASgFOgEzEiIK",
217 "E2NhdGNoX3NpZ2ludF9zaWduYWwYhwEgASgIOgR0cnVlEiEKEnVzZV9pbXBs",
218 "aWVkX2JvdW5kcxiQASABKAg6BHRydWUSIgoScG9saXNoX2xwX3NvbHV0aW9u",
219 "GK8BIAEoCDoFZmFsc2USIwoTbHBfcHJpbWFsX3RvbGVyYW5jZRiKAiABKAE6",
220 "BTFlLTA3EiEKEWxwX2R1YWxfdG9sZXJhbmNlGIsCIAEoAToFMWUtMDcSIAoR",
221 "Y29udmVydF9pbnRlcnZhbHMYsQEgASgIOgR0cnVlEhoKDnN5bW1ldHJ5X2xl",
222 "dmVsGLcBIAEoBToBMhImChZuZXdfbGluZWFyX3Byb3BhZ2F0aW9uGOABIAEo",
223 "CDoFZmFsc2USHwoRbGluZWFyX3NwbGl0X3NpemUYgAIgASgFOgMxMDASHgoT",
224 "bGluZWFyaXphdGlvbl9sZXZlbBhaIAEoBToBMRIhChZib29sZWFuX2VuY29k",
225 "aW5nX2xldmVsGGsgASgFOgExEj0KMG1heF9kb21haW5fc2l6ZV93aGVuX2Vu",
226 "Y29kaW5nX2VxX25lcV9jb25zdHJhaW50cxi/ASABKAU6AjE2EhsKDG1heF9u",
227 "dW1fY3V0cxhbIAEoBToFMTAwMDASFQoJY3V0X2xldmVsGMQBIAEoBToBMRIq",
228 "Chtvbmx5X2FkZF9jdXRzX2F0X2xldmVsX3plcm8YXCABKAg6BWZhbHNlEiEK",
229 "EWFkZF9vYmplY3RpdmVfY3V0GMUBIAEoCDoFZmFsc2USGQoLYWRkX2NnX2N1",
230 "dHMYdSABKAg6BHRydWUSGgoMYWRkX21pcl9jdXRzGHggASgIOgR0cnVlEiEK",
231 "EmFkZF96ZXJvX2hhbGZfY3V0cxipASABKAg6BHRydWUSHgoPYWRkX2NsaXF1",
232 "ZV9jdXRzGKwBIAEoCDoEdHJ1ZRIbCgxhZGRfcmx0X2N1dHMYlwIgASgIOgR0",
233 "cnVlEiIKFW1heF9hbGxfZGlmZl9jdXRfc2l6ZRiUASABKAU6AjY0Eh8KEGFk",
234 "ZF9saW5fbWF4X2N1dHMYmAEgASgIOgR0cnVlEikKHG1heF9pbnRlZ2VyX3Jv",
235 "dW5kaW5nX3NjYWxpbmcYdyABKAU6AzYwMBInChlhZGRfbHBfY29uc3RyYWlu",
236 "dHNfbGF6aWx5GHAgASgIOgR0cnVlEiEKEnJvb3RfbHBfaXRlcmF0aW9ucxjj",
237 "ASABKAU6BDIwMDASMgokbWluX29ydGhvZ29uYWxpdHlfZm9yX2xwX2NvbnN0",
238 "cmFpbnRzGHMgASgBOgQwLjA1EigKHG1heF9jdXRfcm91bmRzX2F0X2xldmVs",
239 "X3plcm8YmgEgASgFOgExEisKHm1heF9jb25zZWN1dGl2ZV9pbmFjdGl2ZV9j",
240 "b3VudBh5IAEoBToDMTAwEjAKGmN1dF9tYXhfYWN0aXZlX2NvdW50X3ZhbHVl",
241 "GJsBIAEoAToLMTAwMDAwMDAwMDASJAoWY3V0X2FjdGl2ZV9jb3VudF9kZWNh",
242 "eRicASABKAE6AzAuOBIhChJjdXRfY2xlYW51cF90YXJnZXQYnQEgASgFOgQx",
243 "MDAwEiYKGm5ld19jb25zdHJhaW50c19iYXRjaF9zaXplGHogASgFOgI1MBIp",
244 "ChtleHBsb2l0X2ludGVnZXJfbHBfc29sdXRpb24YXiABKAg6BHRydWUSJQoX",
245 "ZXhwbG9pdF9hbGxfbHBfc29sdXRpb24YdCABKAg6BHRydWUSJQoVZXhwbG9p",
246 "dF9iZXN0X3NvbHV0aW9uGIIBIAEoCDoFZmFsc2USKwobZXhwbG9pdF9yZWxh",
247 "eGF0aW9uX3NvbHV0aW9uGKEBIAEoCDoFZmFsc2USIAoRZXhwbG9pdF9vYmpl",
248 "Y3RpdmUYgwEgASgIOgR0cnVlEikKGWRldGVjdF9saW5lYXJpemVkX3Byb2R1",
249 "Y3QYlQIgASgIOgVmYWxzZRIfCg1taXBfbWF4X2JvdW5kGHwgASgBOggxMDAw",
250 "MDAwMBIaCg9taXBfdmFyX3NjYWxpbmcYfSABKAE6ATESJgoWbWlwX3NjYWxl",
251 "X2xhcmdlX2RvbWFpbhjhASABKAg6BWZhbHNlEjAKIW1pcF9hdXRvbWF0aWNh",
252 "bGx5X3NjYWxlX3ZhcmlhYmxlcximASABKAg6BHRydWUSHQoNb25seV9zb2x2",
253 "ZV9pcBjeASABKAg6BWZhbHNlEiMKFG1pcF93YW50ZWRfcHJlY2lzaW9uGH4g",
254 "ASgBOgUxZS0wNhIlChltaXBfbWF4X2FjdGl2aXR5X2V4cG9uZW50GH8gASgF",
255 "OgI1MxIkChNtaXBfY2hlY2tfcHJlY2lzaW9uGIABIAEoAToGMC4wMDAxEi8K",
256 "IG1pcF9jb21wdXRlX3RydWVfb2JqZWN0aXZlX2JvdW5kGMYBIAEoCDoEdHJ1",
257 "ZRInChdtaXBfbWF4X3ZhbGlkX21hZ25pdHVkZRjHASABKAE6BTFlKzIwEjsK",
258 "K21pcF90cmVhdF9oaWdoX21hZ25pdHVkZV9ib3VuZHNfYXNfaW5maW5pdHkY",
259 "lgIgASgIOgVmYWxzZRIiChJtaXBfZHJvcF90b2xlcmFuY2UY6AEgASgBOgUx",
260 "ZS0xNhIeChJtaXBfcHJlc29sdmVfbGV2ZWwYhQIgASgFOgEyIkgKDVZhcmlh",
261 "YmxlT3JkZXISDAoISU5fT1JERVIQABIUChBJTl9SRVZFUlNFX09SREVSEAES",
262 "EwoPSU5fUkFORE9NX09SREVSEAIiRgoIUG9sYXJpdHkSEQoNUE9MQVJJVFlf",
263 "VFJVRRAAEhIKDlBPTEFSSVRZX0ZBTFNFEAESEwoPUE9MQVJJVFlfUkFORE9N",
264 "EAIiVgodQ29uZmxpY3RNaW5pbWl6YXRpb25BbGdvcml0aG0SCAoETk9ORRAA",
265 "EgoKBlNJTVBMRRABEg0KCVJFQ1VSU0lWRRACEhAKDEVYUEVSSU1FTlRBTBAD",
266 "IuABChlCaW5hcnlNaW5pemF0aW9uQWxnb3JpdGhtEhoKFk5PX0JJTkFSWV9N",
267 "SU5JTUlaQVRJT04QABIdChlCSU5BUllfTUlOSU1JWkFUSU9OX0ZJUlNUEAES",
268 "NwozQklOQVJZX01JTklNSVpBVElPTl9GSVJTVF9XSVRIX1RSQU5TSVRJVkVf",
269 "UkVEVUNUSU9OEAQSKQolQklOQVJZX01JTklNSVpBVElPTl9XSVRIX1JFQUNI",
270 "QUJJTElUWRACEiQKIEVYUEVSSU1FTlRBTF9CSU5BUllfTUlOSU1JWkFUSU9O",
271 "EAMiUgoQQ2xhdXNlUHJvdGVjdGlvbhITCg9QUk9URUNUSU9OX05PTkUQABIV",
272 "ChFQUk9URUNUSU9OX0FMV0FZUxABEhIKDlBST1RFQ1RJT05fTEJEEAIiNQoO",
273 "Q2xhdXNlT3JkZXJpbmcSEwoPQ0xBVVNFX0FDVElWSVRZEAASDgoKQ0xBVVNF",
274 "X0xCRBABIoYBChBSZXN0YXJ0QWxnb3JpdGhtEg4KCk5PX1JFU1RBUlQQABIQ",
275 "CgxMVUJZX1JFU1RBUlQQARIdChlETF9NT1ZJTkdfQVZFUkFHRV9SRVNUQVJU",
276 "EAISHgoaTEJEX01PVklOR19BVkVSQUdFX1JFU1RBUlQQAxIRCg1GSVhFRF9S",
277 "RVNUQVJUEAQidAoVTWF4U2F0QXNzdW1wdGlvbk9yZGVyEhwKGERFRkFVTFRf",
278 "QVNTVU1QVElPTl9PUkRFUhAAEh0KGU9SREVSX0FTU1VNUFRJT05fQllfREVQ",
279 "VEgQARIeChpPUkRFUl9BU1NVTVBUSU9OX0JZX1dFSUdIVBACIm8KHU1heFNh",
280 "dFN0cmF0aWZpY2F0aW9uQWxnb3JpdGhtEhcKE1NUUkFUSUZJQ0FUSU9OX05P",
281 "TkUQABIaChZTVFJBVElGSUNBVElPTl9ERVNDRU5UEAESGQoVU1RSQVRJRklD",
282 "QVRJT05fQVNDRU5UEAIi4QEKD1NlYXJjaEJyYW5jaGluZxIUChBBVVRPTUFU",
283 "SUNfU0VBUkNIEAASEAoMRklYRURfU0VBUkNIEAESFAoQUE9SVEZPTElPX1NF",
284 "QVJDSBACEg0KCUxQX1NFQVJDSBADEhYKElBTRVVET19DT1NUX1NFQVJDSBAE",
285 "EicKI1BPUlRGT0xJT19XSVRIX1FVSUNLX1JFU1RBUlRfU0VBUkNIEAUSDwoL",
286 "SElOVF9TRUFSQ0gQBhIYChRQQVJUSUFMX0ZJWEVEX1NFQVJDSBAHEhUKEVJB",
287 "TkRPTUlaRURfU0VBUkNIEAgiuAEKF1NoYXJlZFRyZWVTcGxpdFN0cmF0ZWd5",
288 "EhcKE1NQTElUX1NUUkFURUdZX0FVVE8QABIeChpTUExJVF9TVFJBVEVHWV9E",
289 "SVNDUkVQQU5DWRABEh8KG1NQTElUX1NUUkFURUdZX09CSkVDVElWRV9MQhAC",
290 "EiAKHFNQTElUX1NUUkFURUdZX0JBTEFOQ0VEX1RSRUUQAxIhCh1TUExJVF9T",
291 "VFJBVEVHWV9GSVJTVF9QUk9QT1NBTBAEImgKEEZQUm91bmRpbmdNZXRob2QS",
292 "EwoPTkVBUkVTVF9JTlRFR0VSEAASDgoKTE9DS19CQVNFRBABEhUKEUFDVElW",
293 "RV9MT0NLX0JBU0VEEAMSGAoUUFJPUEFHQVRJT05fQVNTSVNURUQQAkIvChZj",
294 "b20uZ29vZ2xlLm9ydG9vbHMuc2F0UAGqAhJHb29nbGUuT3JUb29scy5TYXQ="));
295 descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
296 new pbr::FileDescriptor[] { },
297 new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
298 new pbr::GeneratedClrTypeInfo(typeof(global::Google.OrTools.Sat.SatParameters), global::Google.OrTools.Sat.SatParameters.Parser, new[]{ "Name", "PreferredVariableOrder", "InitialPolarity", "UsePhaseSaving", "PolarityRephaseIncrement", "RandomPolarityRatio", "RandomBranchesRatio", "UseErwaHeuristic", "InitialVariablesActivity", "AlsoBumpVariablesInConflictReasons", "MinimizationAlgorithm", "BinaryMinimizationAlgorithm", "SubsumptionDuringConflictAnalysis", "ClauseCleanupPeriod", "ClauseCleanupTarget", "ClauseCleanupRatio", "ClauseCleanupProtection", "ClauseCleanupLbdBound", "ClauseCleanupOrdering", "PbCleanupIncrement", "PbCleanupRatio", "VariableActivityDecay", "MaxVariableActivityValue", "GlucoseMaxDecay", "GlucoseDecayIncrement", "GlucoseDecayIncrementPeriod", "ClauseActivityDecay", "MaxClauseActivityValue", "RestartAlgorithms", "DefaultRestartAlgorithms", "RestartPeriod", "RestartRunningWindowSize", "RestartDlAverageRatio", "RestartLbdAverageRatio", "UseBlockingRestart", "BlockingRestartWindowSize", "BlockingRestartMultiplier", "NumConflictsBeforeStrategyChanges", "StrategyChangeIncreaseRatio", "MaxTimeInSeconds", "MaxDeterministicTime", "MaxNumberOfConflicts", "MaxMemoryInMb", "AbsoluteGapLimit", "RelativeGapLimit", "RandomSeed", "PermuteVariableRandomly", "PermutePresolveConstraintOrder", "UseAbslRandom", "LogSearchProgress", "LogSubsolverStatistics", "LogPrefix", "LogToStdout", "LogToResponse", "UsePbResolution", "MinimizeReductionDuringPbResolution", "CountAssumptionLevelsInLbd", "PresolveBveThreshold", "PresolveBveClauseWeight", "ProbingDeterministicTimeLimit", "PresolveProbingDeterministicTimeLimit", "PresolveBlockedClause", "PresolveUseBva", "PresolveBvaThreshold", "MaxPresolveIterations", "CpModelPresolve", "CpModelProbingLevel", "CpModelUseSatPresolve", "DetectTableWithCost", "TableCompressionLevel", "ExpandAlldiffConstraints", "ExpandReservoirConstraints", "DisableConstraintExpansion", "EncodeComplexLinearConstraintWithInteger", "MergeNoOverlapWorkLimit", "MergeAtMostOneWorkLimit", "PresolveSubstitutionLevel", "PresolveExtractIntegerEnforcement", "PresolveInclusionWorkLimit", "IgnoreNames", "InferAllDiffs", "FindBigLinearOverlap", "UseSatInprocessing", "InprocessingDtimeRatio", "InprocessingProbingDtime", "InprocessingMinimizationDtime", "NumWorkers", "NumSearchWorkers", "MinNumLnsWorkers", "Subsolvers", "ExtraSubsolvers", "IgnoreSubsolvers", "SubsolverParams", "InterleaveSearch", "InterleaveBatchSize", "ShareObjectiveBounds", "ShareLevelZeroBounds", "ShareBinaryClauses", "DebugPostsolveWithFullSolver", "DebugMaxNumPresolveOperations", "DebugCrashOnBadHint", "UseOptimizationHints", "CoreMinimizationLevel", "FindMultipleCores", "CoverOptimization", "MaxSatAssumptionOrder", "MaxSatReverseAssumptionOrder", "MaxSatStratification", "PropagationLoopDetectionFactor", "UsePrecedencesInDisjunctiveConstraint", "MaxSizeToCreatePrecedenceLiteralsInDisjunctive", "UseStrongPropagationInDisjunctive", "UseDynamicPrecedenceInDisjunctive", "UseDynamicPrecedenceInCumulative", "UseOverloadCheckerInCumulative", "UseTimetableEdgeFindingInCumulative", "MaxNumIntervalsForTimetableEdgeFinding", "UseHardPrecedencesInCumulative", "ExploitAllPrecedences", "UseDisjunctiveConstraintInCumulative", "UseTimetablingInNoOverlap2D", "UseEnergeticReasoningInNoOverlap2D", "UseAreaEnergeticReasoningInNoOverlap2D", "MaxPairsPairwiseReasoningInNoOverlap2D", "UseDualSchedulingHeuristics", "SearchBranching", "HintConflictLimit", "RepairHint", "FixVariablesToTheirHintedValue", "UseProbingSearch", "UseExtendedProbing", "ProbingNumCombinationsLimit", "UseShavingInProbingSearch", "ShavingSearchDeterministicTime", "UseObjectiveLbSearch", "UseObjectiveShavingSearch", "PseudoCostReliabilityThreshold", "OptimizeWithCore", "OptimizeWithLbTreeSearch", "BinarySearchNumConflicts", "OptimizeWithMaxHs", "UseFeasibilityJump", "TestFeasibilityJump", "FeasibilityJumpDecay", "FeasibilityJumpLinearizationLevel", "FeasibilityJumpRestartFactor", "FeasibilityJumpVarRandomizationProbability", "FeasibilityJumpVarPerburbationRangeRatio", "FeasibilityJumpEnableRestarts", "FeasibilityJumpMaxExpandedConstraintSize", "NumViolationLs", "ViolationLsPerturbationPeriod", "ViolationLsCompoundMoveProbability", "SharedTreeNumWorkers", "UseSharedTreeSearch", "SharedTreeWorkerObjectiveSplitProbability", "SharedTreeMaxNodesPerWorker", "SharedTreeSplitStrategy", "EnumerateAllSolutions", "KeepAllFeasibleSolutionsInPresolve", "FillTightenedDomainsInResponse", "FillAdditionalSolutionsInResponse", "InstantiateAllVariables", "AutoDetectGreaterThanAtLeastOneOf", "StopAfterFirstSolution", "StopAfterPresolve", "StopAfterRootPropagation", "UseLnsOnly", "SolutionPoolSize", "UseRinsLns", "UseFeasibilityPump", "UseLbRelaxLns", "FpRounding", "DiversifyLnsParams", "RandomizeSearch", "SearchRandomVariablePoolSize", "PushAllTasksTowardStart", "UseOptionalVariables", "UseExactLpReason", "UseCombinedNoOverlap", "AtMostOneMaxExpansionSize", "CatchSigintSignal", "UseImpliedBounds", "PolishLpSolution", "LpPrimalTolerance", "LpDualTolerance", "ConvertIntervals", "SymmetryLevel", "NewLinearPropagation", "LinearSplitSize", "LinearizationLevel", "BooleanEncodingLevel", "MaxDomainSizeWhenEncodingEqNeqConstraints", "MaxNumCuts", "CutLevel", "OnlyAddCutsAtLevelZero", "AddObjectiveCut", "AddCgCuts", "AddMirCuts", "AddZeroHalfCuts", "AddCliqueCuts", "AddRltCuts", "MaxAllDiffCutSize", "AddLinMaxCuts", "MaxIntegerRoundingScaling", "AddLpConstraintsLazily", "RootLpIterations", "MinOrthogonalityForLpConstraints", "MaxCutRoundsAtLevelZero", "MaxConsecutiveInactiveCount", "CutMaxActiveCountValue", "CutActiveCountDecay", "CutCleanupTarget", "NewConstraintsBatchSize", "ExploitIntegerLpSolution", "ExploitAllLpSolution", "ExploitBestSolution", "ExploitRelaxationSolution", "ExploitObjective", "DetectLinearizedProduct", "MipMaxBound", "MipVarScaling", "MipScaleLargeDomain", "MipAutomaticallyScaleVariables", "OnlySolveIp", "MipWantedPrecision", "MipMaxActivityExponent", "MipCheckPrecision", "MipComputeTrueObjectiveBound", "MipMaxValidMagnitude", "MipTreatHighMagnitudeBoundsAsInfinity", "MipDropTolerance", "MipPresolveLevel" }, null, new[]{ typeof(global::Google.OrTools.Sat.SatParameters.Types.VariableOrder), typeof(global::Google.OrTools.Sat.SatParameters.Types.Polarity), typeof(global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm), typeof(global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm), typeof(global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection), typeof(global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering), typeof(global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm), typeof(global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder), typeof(global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm), typeof(global::Google.OrTools.Sat.SatParameters.Types.SearchBranching), typeof(global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy), typeof(global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod) }, null, null)
299 }));
300 }
301 #endregion
302
303 }
304 #region Messages
311 [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
312 public sealed partial class SatParameters : pb::IMessage<SatParameters>
313 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
314 , pb::IBufferMessage
315 #endif
316 {
317 private static readonly pb::MessageParser<SatParameters> _parser = new pb::MessageParser<SatParameters>(() => new SatParameters());
318 private pb::UnknownFieldSet _unknownFields;
319 private int _hasBits0;
320 private int _hasBits1;
321 private int _hasBits2;
322 private int _hasBits3;
323 private int _hasBits4;
324 private int _hasBits5;
325 private int _hasBits6;
326 private int _hasBits7;
327 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
328 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
329 public static pb::MessageParser<SatParameters> Parser { get { return _parser; } }
331 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
332 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
333 public static pbr::MessageDescriptor Descriptor {
334 get { return global::Google.OrTools.Sat.SatParametersReflection.Descriptor.MessageTypes[0]; }
335 }
336
337 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
338 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
339 pbr::MessageDescriptor pb::IMessage.Descriptor {
340 get { return Descriptor; }
341 }
342
343 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
344 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
345 public SatParameters() {
346 OnConstruction();
347 }
348
349 partial void OnConstruction();
350
351 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
352 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
353 public SatParameters(SatParameters other) : this() {
354 _hasBits0 = other._hasBits0;
355 _hasBits1 = other._hasBits1;
356 _hasBits2 = other._hasBits2;
357 _hasBits3 = other._hasBits3;
358 _hasBits4 = other._hasBits4;
359 _hasBits5 = other._hasBits5;
360 _hasBits6 = other._hasBits6;
361 _hasBits7 = other._hasBits7;
362 name_ = other.name_;
363 preferredVariableOrder_ = other.preferredVariableOrder_;
364 initialPolarity_ = other.initialPolarity_;
365 usePhaseSaving_ = other.usePhaseSaving_;
366 polarityRephaseIncrement_ = other.polarityRephaseIncrement_;
367 randomPolarityRatio_ = other.randomPolarityRatio_;
368 randomBranchesRatio_ = other.randomBranchesRatio_;
369 useErwaHeuristic_ = other.useErwaHeuristic_;
370 initialVariablesActivity_ = other.initialVariablesActivity_;
371 alsoBumpVariablesInConflictReasons_ = other.alsoBumpVariablesInConflictReasons_;
372 minimizationAlgorithm_ = other.minimizationAlgorithm_;
373 binaryMinimizationAlgorithm_ = other.binaryMinimizationAlgorithm_;
374 subsumptionDuringConflictAnalysis_ = other.subsumptionDuringConflictAnalysis_;
375 clauseCleanupPeriod_ = other.clauseCleanupPeriod_;
376 clauseCleanupTarget_ = other.clauseCleanupTarget_;
377 clauseCleanupRatio_ = other.clauseCleanupRatio_;
378 clauseCleanupProtection_ = other.clauseCleanupProtection_;
379 clauseCleanupLbdBound_ = other.clauseCleanupLbdBound_;
380 clauseCleanupOrdering_ = other.clauseCleanupOrdering_;
381 pbCleanupIncrement_ = other.pbCleanupIncrement_;
382 pbCleanupRatio_ = other.pbCleanupRatio_;
383 variableActivityDecay_ = other.variableActivityDecay_;
384 maxVariableActivityValue_ = other.maxVariableActivityValue_;
385 glucoseMaxDecay_ = other.glucoseMaxDecay_;
386 glucoseDecayIncrement_ = other.glucoseDecayIncrement_;
387 glucoseDecayIncrementPeriod_ = other.glucoseDecayIncrementPeriod_;
388 clauseActivityDecay_ = other.clauseActivityDecay_;
389 maxClauseActivityValue_ = other.maxClauseActivityValue_;
390 restartAlgorithms_ = other.restartAlgorithms_.Clone();
391 defaultRestartAlgorithms_ = other.defaultRestartAlgorithms_;
392 restartPeriod_ = other.restartPeriod_;
393 restartRunningWindowSize_ = other.restartRunningWindowSize_;
394 restartDlAverageRatio_ = other.restartDlAverageRatio_;
395 restartLbdAverageRatio_ = other.restartLbdAverageRatio_;
396 useBlockingRestart_ = other.useBlockingRestart_;
397 blockingRestartWindowSize_ = other.blockingRestartWindowSize_;
398 blockingRestartMultiplier_ = other.blockingRestartMultiplier_;
399 numConflictsBeforeStrategyChanges_ = other.numConflictsBeforeStrategyChanges_;
400 strategyChangeIncreaseRatio_ = other.strategyChangeIncreaseRatio_;
401 maxTimeInSeconds_ = other.maxTimeInSeconds_;
402 maxDeterministicTime_ = other.maxDeterministicTime_;
403 maxNumberOfConflicts_ = other.maxNumberOfConflicts_;
404 maxMemoryInMb_ = other.maxMemoryInMb_;
405 absoluteGapLimit_ = other.absoluteGapLimit_;
406 relativeGapLimit_ = other.relativeGapLimit_;
407 randomSeed_ = other.randomSeed_;
408 permuteVariableRandomly_ = other.permuteVariableRandomly_;
409 permutePresolveConstraintOrder_ = other.permutePresolveConstraintOrder_;
410 useAbslRandom_ = other.useAbslRandom_;
411 logSearchProgress_ = other.logSearchProgress_;
412 logSubsolverStatistics_ = other.logSubsolverStatistics_;
413 logPrefix_ = other.logPrefix_;
414 logToStdout_ = other.logToStdout_;
415 logToResponse_ = other.logToResponse_;
416 usePbResolution_ = other.usePbResolution_;
417 minimizeReductionDuringPbResolution_ = other.minimizeReductionDuringPbResolution_;
418 countAssumptionLevelsInLbd_ = other.countAssumptionLevelsInLbd_;
419 presolveBveThreshold_ = other.presolveBveThreshold_;
420 presolveBveClauseWeight_ = other.presolveBveClauseWeight_;
421 probingDeterministicTimeLimit_ = other.probingDeterministicTimeLimit_;
422 presolveProbingDeterministicTimeLimit_ = other.presolveProbingDeterministicTimeLimit_;
423 presolveBlockedClause_ = other.presolveBlockedClause_;
424 presolveUseBva_ = other.presolveUseBva_;
425 presolveBvaThreshold_ = other.presolveBvaThreshold_;
426 maxPresolveIterations_ = other.maxPresolveIterations_;
427 cpModelPresolve_ = other.cpModelPresolve_;
428 cpModelProbingLevel_ = other.cpModelProbingLevel_;
429 cpModelUseSatPresolve_ = other.cpModelUseSatPresolve_;
430 detectTableWithCost_ = other.detectTableWithCost_;
431 tableCompressionLevel_ = other.tableCompressionLevel_;
432 expandAlldiffConstraints_ = other.expandAlldiffConstraints_;
433 expandReservoirConstraints_ = other.expandReservoirConstraints_;
434 disableConstraintExpansion_ = other.disableConstraintExpansion_;
435 encodeComplexLinearConstraintWithInteger_ = other.encodeComplexLinearConstraintWithInteger_;
436 mergeNoOverlapWorkLimit_ = other.mergeNoOverlapWorkLimit_;
437 mergeAtMostOneWorkLimit_ = other.mergeAtMostOneWorkLimit_;
438 presolveSubstitutionLevel_ = other.presolveSubstitutionLevel_;
439 presolveExtractIntegerEnforcement_ = other.presolveExtractIntegerEnforcement_;
440 presolveInclusionWorkLimit_ = other.presolveInclusionWorkLimit_;
441 ignoreNames_ = other.ignoreNames_;
442 inferAllDiffs_ = other.inferAllDiffs_;
443 findBigLinearOverlap_ = other.findBigLinearOverlap_;
444 useSatInprocessing_ = other.useSatInprocessing_;
445 inprocessingDtimeRatio_ = other.inprocessingDtimeRatio_;
446 inprocessingProbingDtime_ = other.inprocessingProbingDtime_;
447 inprocessingMinimizationDtime_ = other.inprocessingMinimizationDtime_;
448 numWorkers_ = other.numWorkers_;
449 numSearchWorkers_ = other.numSearchWorkers_;
450 minNumLnsWorkers_ = other.minNumLnsWorkers_;
451 subsolvers_ = other.subsolvers_.Clone();
452 extraSubsolvers_ = other.extraSubsolvers_.Clone();
453 ignoreSubsolvers_ = other.ignoreSubsolvers_.Clone();
454 subsolverParams_ = other.subsolverParams_.Clone();
455 interleaveSearch_ = other.interleaveSearch_;
456 interleaveBatchSize_ = other.interleaveBatchSize_;
457 shareObjectiveBounds_ = other.shareObjectiveBounds_;
458 shareLevelZeroBounds_ = other.shareLevelZeroBounds_;
459 shareBinaryClauses_ = other.shareBinaryClauses_;
460 debugPostsolveWithFullSolver_ = other.debugPostsolveWithFullSolver_;
461 debugMaxNumPresolveOperations_ = other.debugMaxNumPresolveOperations_;
462 debugCrashOnBadHint_ = other.debugCrashOnBadHint_;
463 useOptimizationHints_ = other.useOptimizationHints_;
464 coreMinimizationLevel_ = other.coreMinimizationLevel_;
465 findMultipleCores_ = other.findMultipleCores_;
466 coverOptimization_ = other.coverOptimization_;
467 maxSatAssumptionOrder_ = other.maxSatAssumptionOrder_;
468 maxSatReverseAssumptionOrder_ = other.maxSatReverseAssumptionOrder_;
469 maxSatStratification_ = other.maxSatStratification_;
470 propagationLoopDetectionFactor_ = other.propagationLoopDetectionFactor_;
471 usePrecedencesInDisjunctiveConstraint_ = other.usePrecedencesInDisjunctiveConstraint_;
472 maxSizeToCreatePrecedenceLiteralsInDisjunctive_ = other.maxSizeToCreatePrecedenceLiteralsInDisjunctive_;
473 useStrongPropagationInDisjunctive_ = other.useStrongPropagationInDisjunctive_;
474 useDynamicPrecedenceInDisjunctive_ = other.useDynamicPrecedenceInDisjunctive_;
475 useDynamicPrecedenceInCumulative_ = other.useDynamicPrecedenceInCumulative_;
476 useOverloadCheckerInCumulative_ = other.useOverloadCheckerInCumulative_;
477 useTimetableEdgeFindingInCumulative_ = other.useTimetableEdgeFindingInCumulative_;
478 maxNumIntervalsForTimetableEdgeFinding_ = other.maxNumIntervalsForTimetableEdgeFinding_;
479 useHardPrecedencesInCumulative_ = other.useHardPrecedencesInCumulative_;
480 exploitAllPrecedences_ = other.exploitAllPrecedences_;
481 useDisjunctiveConstraintInCumulative_ = other.useDisjunctiveConstraintInCumulative_;
482 useTimetablingInNoOverlap2D_ = other.useTimetablingInNoOverlap2D_;
483 useEnergeticReasoningInNoOverlap2D_ = other.useEnergeticReasoningInNoOverlap2D_;
484 useAreaEnergeticReasoningInNoOverlap2D_ = other.useAreaEnergeticReasoningInNoOverlap2D_;
485 maxPairsPairwiseReasoningInNoOverlap2D_ = other.maxPairsPairwiseReasoningInNoOverlap2D_;
486 useDualSchedulingHeuristics_ = other.useDualSchedulingHeuristics_;
487 searchBranching_ = other.searchBranching_;
488 hintConflictLimit_ = other.hintConflictLimit_;
489 repairHint_ = other.repairHint_;
490 fixVariablesToTheirHintedValue_ = other.fixVariablesToTheirHintedValue_;
491 useProbingSearch_ = other.useProbingSearch_;
492 useExtendedProbing_ = other.useExtendedProbing_;
493 probingNumCombinationsLimit_ = other.probingNumCombinationsLimit_;
494 useShavingInProbingSearch_ = other.useShavingInProbingSearch_;
495 shavingSearchDeterministicTime_ = other.shavingSearchDeterministicTime_;
496 useObjectiveLbSearch_ = other.useObjectiveLbSearch_;
497 useObjectiveShavingSearch_ = other.useObjectiveShavingSearch_;
498 pseudoCostReliabilityThreshold_ = other.pseudoCostReliabilityThreshold_;
499 optimizeWithCore_ = other.optimizeWithCore_;
500 optimizeWithLbTreeSearch_ = other.optimizeWithLbTreeSearch_;
501 binarySearchNumConflicts_ = other.binarySearchNumConflicts_;
502 optimizeWithMaxHs_ = other.optimizeWithMaxHs_;
503 useFeasibilityJump_ = other.useFeasibilityJump_;
504 testFeasibilityJump_ = other.testFeasibilityJump_;
505 feasibilityJumpDecay_ = other.feasibilityJumpDecay_;
506 feasibilityJumpLinearizationLevel_ = other.feasibilityJumpLinearizationLevel_;
507 feasibilityJumpRestartFactor_ = other.feasibilityJumpRestartFactor_;
508 feasibilityJumpVarRandomizationProbability_ = other.feasibilityJumpVarRandomizationProbability_;
509 feasibilityJumpVarPerburbationRangeRatio_ = other.feasibilityJumpVarPerburbationRangeRatio_;
510 feasibilityJumpEnableRestarts_ = other.feasibilityJumpEnableRestarts_;
511 feasibilityJumpMaxExpandedConstraintSize_ = other.feasibilityJumpMaxExpandedConstraintSize_;
512 numViolationLs_ = other.numViolationLs_;
513 violationLsPerturbationPeriod_ = other.violationLsPerturbationPeriod_;
514 violationLsCompoundMoveProbability_ = other.violationLsCompoundMoveProbability_;
515 sharedTreeNumWorkers_ = other.sharedTreeNumWorkers_;
516 useSharedTreeSearch_ = other.useSharedTreeSearch_;
517 sharedTreeWorkerObjectiveSplitProbability_ = other.sharedTreeWorkerObjectiveSplitProbability_;
518 sharedTreeMaxNodesPerWorker_ = other.sharedTreeMaxNodesPerWorker_;
519 sharedTreeSplitStrategy_ = other.sharedTreeSplitStrategy_;
520 enumerateAllSolutions_ = other.enumerateAllSolutions_;
521 keepAllFeasibleSolutionsInPresolve_ = other.keepAllFeasibleSolutionsInPresolve_;
522 fillTightenedDomainsInResponse_ = other.fillTightenedDomainsInResponse_;
523 fillAdditionalSolutionsInResponse_ = other.fillAdditionalSolutionsInResponse_;
524 instantiateAllVariables_ = other.instantiateAllVariables_;
525 autoDetectGreaterThanAtLeastOneOf_ = other.autoDetectGreaterThanAtLeastOneOf_;
526 stopAfterFirstSolution_ = other.stopAfterFirstSolution_;
527 stopAfterPresolve_ = other.stopAfterPresolve_;
528 stopAfterRootPropagation_ = other.stopAfterRootPropagation_;
529 useLnsOnly_ = other.useLnsOnly_;
530 solutionPoolSize_ = other.solutionPoolSize_;
531 useRinsLns_ = other.useRinsLns_;
532 useFeasibilityPump_ = other.useFeasibilityPump_;
533 useLbRelaxLns_ = other.useLbRelaxLns_;
534 fpRounding_ = other.fpRounding_;
535 diversifyLnsParams_ = other.diversifyLnsParams_;
536 randomizeSearch_ = other.randomizeSearch_;
537 searchRandomVariablePoolSize_ = other.searchRandomVariablePoolSize_;
538 pushAllTasksTowardStart_ = other.pushAllTasksTowardStart_;
539 useOptionalVariables_ = other.useOptionalVariables_;
540 useExactLpReason_ = other.useExactLpReason_;
541 useCombinedNoOverlap_ = other.useCombinedNoOverlap_;
542 atMostOneMaxExpansionSize_ = other.atMostOneMaxExpansionSize_;
543 catchSigintSignal_ = other.catchSigintSignal_;
544 useImpliedBounds_ = other.useImpliedBounds_;
545 polishLpSolution_ = other.polishLpSolution_;
546 lpPrimalTolerance_ = other.lpPrimalTolerance_;
547 lpDualTolerance_ = other.lpDualTolerance_;
548 convertIntervals_ = other.convertIntervals_;
549 symmetryLevel_ = other.symmetryLevel_;
550 newLinearPropagation_ = other.newLinearPropagation_;
551 linearSplitSize_ = other.linearSplitSize_;
552 linearizationLevel_ = other.linearizationLevel_;
553 booleanEncodingLevel_ = other.booleanEncodingLevel_;
554 maxDomainSizeWhenEncodingEqNeqConstraints_ = other.maxDomainSizeWhenEncodingEqNeqConstraints_;
555 maxNumCuts_ = other.maxNumCuts_;
556 cutLevel_ = other.cutLevel_;
557 onlyAddCutsAtLevelZero_ = other.onlyAddCutsAtLevelZero_;
558 addObjectiveCut_ = other.addObjectiveCut_;
559 addCgCuts_ = other.addCgCuts_;
560 addMirCuts_ = other.addMirCuts_;
561 addZeroHalfCuts_ = other.addZeroHalfCuts_;
562 addCliqueCuts_ = other.addCliqueCuts_;
563 addRltCuts_ = other.addRltCuts_;
564 maxAllDiffCutSize_ = other.maxAllDiffCutSize_;
565 addLinMaxCuts_ = other.addLinMaxCuts_;
566 maxIntegerRoundingScaling_ = other.maxIntegerRoundingScaling_;
567 addLpConstraintsLazily_ = other.addLpConstraintsLazily_;
568 rootLpIterations_ = other.rootLpIterations_;
569 minOrthogonalityForLpConstraints_ = other.minOrthogonalityForLpConstraints_;
570 maxCutRoundsAtLevelZero_ = other.maxCutRoundsAtLevelZero_;
571 maxConsecutiveInactiveCount_ = other.maxConsecutiveInactiveCount_;
572 cutMaxActiveCountValue_ = other.cutMaxActiveCountValue_;
573 cutActiveCountDecay_ = other.cutActiveCountDecay_;
574 cutCleanupTarget_ = other.cutCleanupTarget_;
575 newConstraintsBatchSize_ = other.newConstraintsBatchSize_;
576 exploitIntegerLpSolution_ = other.exploitIntegerLpSolution_;
577 exploitAllLpSolution_ = other.exploitAllLpSolution_;
578 exploitBestSolution_ = other.exploitBestSolution_;
579 exploitRelaxationSolution_ = other.exploitRelaxationSolution_;
580 exploitObjective_ = other.exploitObjective_;
581 detectLinearizedProduct_ = other.detectLinearizedProduct_;
582 mipMaxBound_ = other.mipMaxBound_;
583 mipVarScaling_ = other.mipVarScaling_;
584 mipScaleLargeDomain_ = other.mipScaleLargeDomain_;
585 mipAutomaticallyScaleVariables_ = other.mipAutomaticallyScaleVariables_;
586 onlySolveIp_ = other.onlySolveIp_;
587 mipWantedPrecision_ = other.mipWantedPrecision_;
588 mipMaxActivityExponent_ = other.mipMaxActivityExponent_;
589 mipCheckPrecision_ = other.mipCheckPrecision_;
590 mipComputeTrueObjectiveBound_ = other.mipComputeTrueObjectiveBound_;
591 mipMaxValidMagnitude_ = other.mipMaxValidMagnitude_;
592 mipTreatHighMagnitudeBoundsAsInfinity_ = other.mipTreatHighMagnitudeBoundsAsInfinity_;
593 mipDropTolerance_ = other.mipDropTolerance_;
594 mipPresolveLevel_ = other.mipPresolveLevel_;
595 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
596 }
597
598 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
599 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
600 public SatParameters Clone() {
601 return new SatParameters(this);
602 }
603
605 public const int NameFieldNumber = 171;
606 private readonly static string NameDefaultValue = "";
607
608 private string name_;
613 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
614 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
615 public string Name {
616 get { return name_ ?? NameDefaultValue; }
617 set {
618 name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
619 }
620 }
622 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
623 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
624 public bool HasName {
625 get { return name_ != null; }
626 }
628 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
629 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
630 public void ClearName() {
631 name_ = null;
632 }
633
635 public const int PreferredVariableOrderFieldNumber = 1;
636 private readonly static global::Google.OrTools.Sat.SatParameters.Types.VariableOrder PreferredVariableOrderDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.VariableOrder.InOrder;
637
638 private global::Google.OrTools.Sat.SatParameters.Types.VariableOrder preferredVariableOrder_;
639 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
640 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
641 public global::Google.OrTools.Sat.SatParameters.Types.VariableOrder PreferredVariableOrder {
642 get { if ((_hasBits0 & 1) != 0) { return preferredVariableOrder_; } else { return PreferredVariableOrderDefaultValue; } }
643 set {
644 _hasBits0 |= 1;
645 preferredVariableOrder_ = value;
646 }
647 }
649 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
650 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
651 public bool HasPreferredVariableOrder {
652 get { return (_hasBits0 & 1) != 0; }
653 }
655 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
656 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
657 public void ClearPreferredVariableOrder() {
658 _hasBits0 &= ~1;
659 }
660
662 public const int InitialPolarityFieldNumber = 2;
663 private readonly static global::Google.OrTools.Sat.SatParameters.Types.Polarity InitialPolarityDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.Polarity.False;
664
665 private global::Google.OrTools.Sat.SatParameters.Types.Polarity initialPolarity_;
666 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
667 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
668 public global::Google.OrTools.Sat.SatParameters.Types.Polarity InitialPolarity {
669 get { if ((_hasBits0 & 2) != 0) { return initialPolarity_; } else { return InitialPolarityDefaultValue; } }
670 set {
671 _hasBits0 |= 2;
672 initialPolarity_ = value;
673 }
674 }
676 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
677 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
678 public bool HasInitialPolarity {
679 get { return (_hasBits0 & 2) != 0; }
680 }
682 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
683 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
684 public void ClearInitialPolarity() {
685 _hasBits0 &= ~2;
686 }
687
689 public const int UsePhaseSavingFieldNumber = 44;
690 private readonly static bool UsePhaseSavingDefaultValue = true;
691
692 private bool usePhaseSaving_;
706 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
707 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
708 public bool UsePhaseSaving {
709 get { if ((_hasBits0 & 4194304) != 0) { return usePhaseSaving_; } else { return UsePhaseSavingDefaultValue; } }
710 set {
711 _hasBits0 |= 4194304;
712 usePhaseSaving_ = value;
713 }
714 }
716 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
717 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
718 public bool HasUsePhaseSaving {
719 get { return (_hasBits0 & 4194304) != 0; }
720 }
722 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
723 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
724 public void ClearUsePhaseSaving() {
725 _hasBits0 &= ~4194304;
726 }
729 public const int PolarityRephaseIncrementFieldNumber = 168;
730 private readonly static int PolarityRephaseIncrementDefaultValue = 1000;
731
732 private int polarityRephaseIncrement_;
738 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
739 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
740 public int PolarityRephaseIncrement {
741 get { if ((_hasBits4 & 4) != 0) { return polarityRephaseIncrement_; } else { return PolarityRephaseIncrementDefaultValue; } }
742 set {
743 _hasBits4 |= 4;
744 polarityRephaseIncrement_ = value;
745 }
746 }
748 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
749 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
750 public bool HasPolarityRephaseIncrement {
751 get { return (_hasBits4 & 4) != 0; }
752 }
754 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
755 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
756 public void ClearPolarityRephaseIncrement() {
757 _hasBits4 &= ~4;
758 }
761 public const int RandomPolarityRatioFieldNumber = 45;
762 private readonly static double RandomPolarityRatioDefaultValue = 0D;
763
764 private double randomPolarityRatio_;
772 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
773 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
774 public double RandomPolarityRatio {
775 get { if ((_hasBits0 & 8388608) != 0) { return randomPolarityRatio_; } else { return RandomPolarityRatioDefaultValue; } }
776 set {
777 _hasBits0 |= 8388608;
778 randomPolarityRatio_ = value;
779 }
780 }
782 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
783 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
784 public bool HasRandomPolarityRatio {
785 get { return (_hasBits0 & 8388608) != 0; }
786 }
788 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
789 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
790 public void ClearRandomPolarityRatio() {
791 _hasBits0 &= ~8388608;
792 }
795 public const int RandomBranchesRatioFieldNumber = 32;
796 private readonly static double RandomBranchesRatioDefaultValue = 0D;
797
798 private double randomBranchesRatio_;
804 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
805 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
806 public double RandomBranchesRatio {
807 get { if ((_hasBits0 & 16384) != 0) { return randomBranchesRatio_; } else { return RandomBranchesRatioDefaultValue; } }
808 set {
809 _hasBits0 |= 16384;
810 randomBranchesRatio_ = value;
811 }
812 }
814 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
815 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
816 public bool HasRandomBranchesRatio {
817 get { return (_hasBits0 & 16384) != 0; }
818 }
820 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
821 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
822 public void ClearRandomBranchesRatio() {
823 _hasBits0 &= ~16384;
824 }
827 public const int UseErwaHeuristicFieldNumber = 75;
828 private readonly static bool UseErwaHeuristicDefaultValue = false;
829
830 private bool useErwaHeuristic_;
836 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
837 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
838 public bool UseErwaHeuristic {
839 get { if ((_hasBits1 & 524288) != 0) { return useErwaHeuristic_; } else { return UseErwaHeuristicDefaultValue; } }
840 set {
841 _hasBits1 |= 524288;
842 useErwaHeuristic_ = value;
843 }
844 }
846 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
847 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
848 public bool HasUseErwaHeuristic {
849 get { return (_hasBits1 & 524288) != 0; }
850 }
852 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
853 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
854 public void ClearUseErwaHeuristic() {
855 _hasBits1 &= ~524288;
856 }
859 public const int InitialVariablesActivityFieldNumber = 76;
860 private readonly static double InitialVariablesActivityDefaultValue = 0D;
861
862 private double initialVariablesActivity_;
871 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
872 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
873 public double InitialVariablesActivity {
874 get { if ((_hasBits1 & 1048576) != 0) { return initialVariablesActivity_; } else { return InitialVariablesActivityDefaultValue; } }
875 set {
876 _hasBits1 |= 1048576;
877 initialVariablesActivity_ = value;
878 }
879 }
881 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
882 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
883 public bool HasInitialVariablesActivity {
884 get { return (_hasBits1 & 1048576) != 0; }
885 }
887 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
888 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
889 public void ClearInitialVariablesActivity() {
890 _hasBits1 &= ~1048576;
891 }
895 private readonly static bool AlsoBumpVariablesInConflictReasonsDefaultValue = false;
896
897 private bool alsoBumpVariablesInConflictReasons_;
904 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
905 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
907 get { if ((_hasBits1 & 2097152) != 0) { return alsoBumpVariablesInConflictReasons_; } else { return AlsoBumpVariablesInConflictReasonsDefaultValue; } }
908 set {
909 _hasBits1 |= 2097152;
910 alsoBumpVariablesInConflictReasons_ = value;
911 }
912 }
914 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
915 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
917 get { return (_hasBits1 & 2097152) != 0; }
918 }
920 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
921 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
923 _hasBits1 &= ~2097152;
924 }
927 public const int MinimizationAlgorithmFieldNumber = 4;
928 private readonly static global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm MinimizationAlgorithmDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm.Recursive;
929
930 private global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm minimizationAlgorithm_;
931 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
932 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
933 public global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm MinimizationAlgorithm {
934 get { if ((_hasBits0 & 4) != 0) { return minimizationAlgorithm_; } else { return MinimizationAlgorithmDefaultValue; } }
935 set {
936 _hasBits0 |= 4;
937 minimizationAlgorithm_ = value;
938 }
939 }
941 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
942 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
943 public bool HasMinimizationAlgorithm {
944 get { return (_hasBits0 & 4) != 0; }
945 }
947 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
948 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
949 public void ClearMinimizationAlgorithm() {
950 _hasBits0 &= ~4;
951 }
954 public const int BinaryMinimizationAlgorithmFieldNumber = 34;
955 private readonly static global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm BinaryMinimizationAlgorithmDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm.BinaryMinimizationFirst;
956
957 private global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm binaryMinimizationAlgorithm_;
958 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
959 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
960 public global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm BinaryMinimizationAlgorithm {
961 get { if ((_hasBits0 & 32768) != 0) { return binaryMinimizationAlgorithm_; } else { return BinaryMinimizationAlgorithmDefaultValue; } }
962 set {
963 _hasBits0 |= 32768;
964 binaryMinimizationAlgorithm_ = value;
965 }
966 }
968 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
969 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
971 get { return (_hasBits0 & 32768) != 0; }
972 }
974 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
975 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
977 _hasBits0 &= ~32768;
978 }
982 private readonly static bool SubsumptionDuringConflictAnalysisDefaultValue = true;
983
984 private bool subsumptionDuringConflictAnalysis_;
991 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
992 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
994 get { if ((_hasBits1 & 4) != 0) { return subsumptionDuringConflictAnalysis_; } else { return SubsumptionDuringConflictAnalysisDefaultValue; } }
995 set {
996 _hasBits1 |= 4;
997 subsumptionDuringConflictAnalysis_ = value;
998 }
999 }
1001 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1002 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1004 get { return (_hasBits1 & 4) != 0; }
1005 }
1007 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1008 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1010 _hasBits1 &= ~4;
1011 }
1014 public const int ClauseCleanupPeriodFieldNumber = 11;
1015 private readonly static int ClauseCleanupPeriodDefaultValue = 10000;
1016
1017 private int clauseCleanupPeriod_;
1021 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1022 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1023 public int ClauseCleanupPeriod {
1024 get { if ((_hasBits0 & 8) != 0) { return clauseCleanupPeriod_; } else { return ClauseCleanupPeriodDefaultValue; } }
1025 set {
1026 _hasBits0 |= 8;
1027 clauseCleanupPeriod_ = value;
1028 }
1029 }
1031 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1032 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1033 public bool HasClauseCleanupPeriod {
1034 get { return (_hasBits0 & 8) != 0; }
1035 }
1037 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1038 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1039 public void ClearClauseCleanupPeriod() {
1040 _hasBits0 &= ~8;
1041 }
1044 public const int ClauseCleanupTargetFieldNumber = 13;
1045 private readonly static int ClauseCleanupTargetDefaultValue = 0;
1046
1047 private int clauseCleanupTarget_;
1052 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1053 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1054 public int ClauseCleanupTarget {
1055 get { if ((_hasBits0 & 16) != 0) { return clauseCleanupTarget_; } else { return ClauseCleanupTargetDefaultValue; } }
1056 set {
1057 _hasBits0 |= 16;
1058 clauseCleanupTarget_ = value;
1059 }
1060 }
1062 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1063 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1064 public bool HasClauseCleanupTarget {
1065 get { return (_hasBits0 & 16) != 0; }
1066 }
1068 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1069 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1070 public void ClearClauseCleanupTarget() {
1071 _hasBits0 &= ~16;
1072 }
1075 public const int ClauseCleanupRatioFieldNumber = 190;
1076 private readonly static double ClauseCleanupRatioDefaultValue = 0.5D;
1077
1078 private double clauseCleanupRatio_;
1084 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1085 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1086 public double ClauseCleanupRatio {
1087 get { if ((_hasBits4 & 2097152) != 0) { return clauseCleanupRatio_; } else { return ClauseCleanupRatioDefaultValue; } }
1088 set {
1089 _hasBits4 |= 2097152;
1090 clauseCleanupRatio_ = value;
1091 }
1092 }
1094 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1095 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1096 public bool HasClauseCleanupRatio {
1097 get { return (_hasBits4 & 2097152) != 0; }
1098 }
1100 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1101 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1102 public void ClearClauseCleanupRatio() {
1103 _hasBits4 &= ~2097152;
1104 }
1107 public const int ClauseCleanupProtectionFieldNumber = 58;
1108 private readonly static global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection ClauseCleanupProtectionDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection.ProtectionNone;
1109
1110 private global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection clauseCleanupProtection_;
1111 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1112 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1113 public global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection ClauseCleanupProtection {
1114 get { if ((_hasBits1 & 16) != 0) { return clauseCleanupProtection_; } else { return ClauseCleanupProtectionDefaultValue; } }
1115 set {
1116 _hasBits1 |= 16;
1117 clauseCleanupProtection_ = value;
1118 }
1119 }
1121 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1122 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1123 public bool HasClauseCleanupProtection {
1124 get { return (_hasBits1 & 16) != 0; }
1125 }
1127 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1128 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1129 public void ClearClauseCleanupProtection() {
1130 _hasBits1 &= ~16;
1131 }
1134 public const int ClauseCleanupLbdBoundFieldNumber = 59;
1135 private readonly static int ClauseCleanupLbdBoundDefaultValue = 5;
1136
1137 private int clauseCleanupLbdBound_;
1142 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1143 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1144 public int ClauseCleanupLbdBound {
1145 get { if ((_hasBits1 & 32) != 0) { return clauseCleanupLbdBound_; } else { return ClauseCleanupLbdBoundDefaultValue; } }
1146 set {
1147 _hasBits1 |= 32;
1148 clauseCleanupLbdBound_ = value;
1149 }
1150 }
1152 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1153 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1154 public bool HasClauseCleanupLbdBound {
1155 get { return (_hasBits1 & 32) != 0; }
1156 }
1158 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1159 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1160 public void ClearClauseCleanupLbdBound() {
1161 _hasBits1 &= ~32;
1162 }
1165 public const int ClauseCleanupOrderingFieldNumber = 60;
1166 private readonly static global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering ClauseCleanupOrderingDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering.ClauseActivity;
1167
1168 private global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering clauseCleanupOrdering_;
1169 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1170 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1171 public global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering ClauseCleanupOrdering {
1172 get { if ((_hasBits1 & 64) != 0) { return clauseCleanupOrdering_; } else { return ClauseCleanupOrderingDefaultValue; } }
1173 set {
1174 _hasBits1 |= 64;
1175 clauseCleanupOrdering_ = value;
1176 }
1177 }
1179 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1180 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1181 public bool HasClauseCleanupOrdering {
1182 get { return (_hasBits1 & 64) != 0; }
1183 }
1185 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1186 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1187 public void ClearClauseCleanupOrdering() {
1188 _hasBits1 &= ~64;
1189 }
1192 public const int PbCleanupIncrementFieldNumber = 46;
1193 private readonly static int PbCleanupIncrementDefaultValue = 200;
1194
1195 private int pbCleanupIncrement_;
1199 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1200 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1201 public int PbCleanupIncrement {
1202 get { if ((_hasBits0 & 16777216) != 0) { return pbCleanupIncrement_; } else { return PbCleanupIncrementDefaultValue; } }
1203 set {
1204 _hasBits0 |= 16777216;
1205 pbCleanupIncrement_ = value;
1206 }
1207 }
1209 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1210 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1211 public bool HasPbCleanupIncrement {
1212 get { return (_hasBits0 & 16777216) != 0; }
1213 }
1215 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1216 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1217 public void ClearPbCleanupIncrement() {
1218 _hasBits0 &= ~16777216;
1219 }
1222 public const int PbCleanupRatioFieldNumber = 47;
1223 private readonly static double PbCleanupRatioDefaultValue = 0.5D;
1224
1225 private double pbCleanupRatio_;
1226 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1227 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1228 public double PbCleanupRatio {
1229 get { if ((_hasBits0 & 33554432) != 0) { return pbCleanupRatio_; } else { return PbCleanupRatioDefaultValue; } }
1230 set {
1231 _hasBits0 |= 33554432;
1232 pbCleanupRatio_ = value;
1233 }
1234 }
1236 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1237 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1238 public bool HasPbCleanupRatio {
1239 get { return (_hasBits0 & 33554432) != 0; }
1240 }
1242 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1243 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1244 public void ClearPbCleanupRatio() {
1245 _hasBits0 &= ~33554432;
1246 }
1249 public const int VariableActivityDecayFieldNumber = 15;
1250 private readonly static double VariableActivityDecayDefaultValue = 0.8D;
1251
1252 private double variableActivityDecay_;
1263 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1264 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1265 public double VariableActivityDecay {
1266 get { if ((_hasBits0 & 32) != 0) { return variableActivityDecay_; } else { return VariableActivityDecayDefaultValue; } }
1267 set {
1268 _hasBits0 |= 32;
1269 variableActivityDecay_ = value;
1270 }
1271 }
1273 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1274 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1275 public bool HasVariableActivityDecay {
1276 get { return (_hasBits0 & 32) != 0; }
1277 }
1279 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1280 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1281 public void ClearVariableActivityDecay() {
1282 _hasBits0 &= ~32;
1283 }
1284
1286 public const int MaxVariableActivityValueFieldNumber = 16;
1287 private readonly static double MaxVariableActivityValueDefaultValue = 1e+100D;
1288
1289 private double maxVariableActivityValue_;
1290 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1291 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1292 public double MaxVariableActivityValue {
1293 get { if ((_hasBits0 & 64) != 0) { return maxVariableActivityValue_; } else { return MaxVariableActivityValueDefaultValue; } }
1294 set {
1295 _hasBits0 |= 64;
1296 maxVariableActivityValue_ = value;
1297 }
1298 }
1300 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1301 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1302 public bool HasMaxVariableActivityValue {
1303 get { return (_hasBits0 & 64) != 0; }
1304 }
1306 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1307 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1308 public void ClearMaxVariableActivityValue() {
1309 _hasBits0 &= ~64;
1310 }
1311
1313 public const int GlucoseMaxDecayFieldNumber = 22;
1314 private readonly static double GlucoseMaxDecayDefaultValue = 0.95D;
1315
1316 private double glucoseMaxDecay_;
1324 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1325 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1326 public double GlucoseMaxDecay {
1327 get { if ((_hasBits0 & 512) != 0) { return glucoseMaxDecay_; } else { return GlucoseMaxDecayDefaultValue; } }
1328 set {
1329 _hasBits0 |= 512;
1330 glucoseMaxDecay_ = value;
1332 }
1334 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1335 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1336 public bool HasGlucoseMaxDecay {
1337 get { return (_hasBits0 & 512) != 0; }
1338 }
1340 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1341 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1342 public void ClearGlucoseMaxDecay() {
1343 _hasBits0 &= ~512;
1344 }
1345
1348 private readonly static double GlucoseDecayIncrementDefaultValue = 0.01D;
1349
1350 private double glucoseDecayIncrement_;
1351 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1352 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1353 public double GlucoseDecayIncrement {
1354 get { if ((_hasBits0 & 1024) != 0) { return glucoseDecayIncrement_; } else { return GlucoseDecayIncrementDefaultValue; } }
1355 set {
1356 _hasBits0 |= 1024;
1357 glucoseDecayIncrement_ = value;
1359 }
1361 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1362 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1363 public bool HasGlucoseDecayIncrement {
1364 get { return (_hasBits0 & 1024) != 0; }
1365 }
1367 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1368 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1369 public void ClearGlucoseDecayIncrement() {
1370 _hasBits0 &= ~1024;
1371 }
1372
1375 private readonly static int GlucoseDecayIncrementPeriodDefaultValue = 5000;
1376
1377 private int glucoseDecayIncrementPeriod_;
1378 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1379 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1380 public int GlucoseDecayIncrementPeriod {
1381 get { if ((_hasBits0 & 2048) != 0) { return glucoseDecayIncrementPeriod_; } else { return GlucoseDecayIncrementPeriodDefaultValue; } }
1382 set {
1383 _hasBits0 |= 2048;
1384 glucoseDecayIncrementPeriod_ = value;
1386 }
1388 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1389 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1390 public bool HasGlucoseDecayIncrementPeriod {
1391 get { return (_hasBits0 & 2048) != 0; }
1392 }
1394 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1395 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1396 public void ClearGlucoseDecayIncrementPeriod() {
1397 _hasBits0 &= ~2048;
1398 }
1399
1401 public const int ClauseActivityDecayFieldNumber = 17;
1402 private readonly static double ClauseActivityDecayDefaultValue = 0.999D;
1403
1404 private double clauseActivityDecay_;
1408 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1409 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1410 public double ClauseActivityDecay {
1411 get { if ((_hasBits0 & 128) != 0) { return clauseActivityDecay_; } else { return ClauseActivityDecayDefaultValue; } }
1412 set {
1413 _hasBits0 |= 128;
1414 clauseActivityDecay_ = value;
1416 }
1418 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1419 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1420 public bool HasClauseActivityDecay {
1421 get { return (_hasBits0 & 128) != 0; }
1422 }
1424 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1425 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1426 public void ClearClauseActivityDecay() {
1427 _hasBits0 &= ~128;
1428 }
1429
1432 private readonly static double MaxClauseActivityValueDefaultValue = 1e+20D;
1433
1434 private double maxClauseActivityValue_;
1435 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1436 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1437 public double MaxClauseActivityValue {
1438 get { if ((_hasBits0 & 256) != 0) { return maxClauseActivityValue_; } else { return MaxClauseActivityValueDefaultValue; } }
1439 set {
1440 _hasBits0 |= 256;
1441 maxClauseActivityValue_ = value;
1443 }
1445 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1446 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1447 public bool HasMaxClauseActivityValue {
1448 get { return (_hasBits0 & 256) != 0; }
1449 }
1451 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1452 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1453 public void ClearMaxClauseActivityValue() {
1454 _hasBits0 &= ~256;
1455 }
1456
1458 public const int RestartAlgorithmsFieldNumber = 61;
1459 private static readonly pb::FieldCodec<global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm> _repeated_restartAlgorithms_codec
1460 = pb::FieldCodec.ForEnum(488, x => (int) x, x => (global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm) x);
1461 private readonly pbc::RepeatedField<global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm> restartAlgorithms_ = new pbc::RepeatedField<global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm>();
1473 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1474 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1475 public pbc::RepeatedField<global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm> RestartAlgorithms {
1476 get { return restartAlgorithms_; }
1477 }
1478
1480 public const int DefaultRestartAlgorithmsFieldNumber = 70;
1481 private readonly static string DefaultRestartAlgorithmsDefaultValue = global::System.Text.Encoding.UTF8.GetString(global::System.Convert.FromBase64String("TFVCWV9SRVNUQVJULExCRF9NT1ZJTkdfQVZFUkFHRV9SRVNUQVJULERMX01PVklOR19BVkVSQUdFX1JFU1RBUlQ="), 0, 65);
1482
1483 private string defaultRestartAlgorithms_;
1484 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1485 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1487 get { return defaultRestartAlgorithms_ ?? DefaultRestartAlgorithmsDefaultValue; }
1488 set {
1489 defaultRestartAlgorithms_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
1490 }
1491 }
1493 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1494 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1495 public bool HasDefaultRestartAlgorithms {
1496 get { return defaultRestartAlgorithms_ != null; }
1497 }
1499 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1500 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1502 defaultRestartAlgorithms_ = null;
1503 }
1504
1506 public const int RestartPeriodFieldNumber = 30;
1507 private readonly static int RestartPeriodDefaultValue = 50;
1508
1509 private int restartPeriod_;
1514 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1515 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1516 public int RestartPeriod {
1517 get { if ((_hasBits0 & 4096) != 0) { return restartPeriod_; } else { return RestartPeriodDefaultValue; } }
1518 set {
1519 _hasBits0 |= 4096;
1520 restartPeriod_ = value;
1521 }
1524 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1525 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1526 public bool HasRestartPeriod {
1527 get { return (_hasBits0 & 4096) != 0; }
1528 }
1530 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1531 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1532 public void ClearRestartPeriod() {
1533 _hasBits0 &= ~4096;
1534 }
1535
1537 public const int RestartRunningWindowSizeFieldNumber = 62;
1538 private readonly static int RestartRunningWindowSizeDefaultValue = 50;
1539
1540 private int restartRunningWindowSize_;
1544 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1545 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1546 public int RestartRunningWindowSize {
1547 get { if ((_hasBits1 & 128) != 0) { return restartRunningWindowSize_; } else { return RestartRunningWindowSizeDefaultValue; } }
1548 set {
1549 _hasBits1 |= 128;
1550 restartRunningWindowSize_ = value;
1551 }
1554 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1555 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1556 public bool HasRestartRunningWindowSize {
1557 get { return (_hasBits1 & 128) != 0; }
1558 }
1560 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1561 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1563 _hasBits1 &= ~128;
1564 }
1565
1567 public const int RestartDlAverageRatioFieldNumber = 63;
1568 private readonly static double RestartDlAverageRatioDefaultValue = 1D;
1569
1570 private double restartDlAverageRatio_;
1575 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1576 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1577 public double RestartDlAverageRatio {
1578 get { if ((_hasBits1 & 256) != 0) { return restartDlAverageRatio_; } else { return RestartDlAverageRatioDefaultValue; } }
1579 set {
1580 _hasBits1 |= 256;
1581 restartDlAverageRatio_ = value;
1582 }
1585 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1586 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1587 public bool HasRestartDlAverageRatio {
1588 get { return (_hasBits1 & 256) != 0; }
1589 }
1591 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1592 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1594 _hasBits1 &= ~256;
1595 }
1596
1598 public const int RestartLbdAverageRatioFieldNumber = 71;
1599 private readonly static double RestartLbdAverageRatioDefaultValue = 1D;
1600
1601 private double restartLbdAverageRatio_;
1602 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1603 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1605 get { if ((_hasBits1 & 32768) != 0) { return restartLbdAverageRatio_; } else { return RestartLbdAverageRatioDefaultValue; } }
1606 set {
1607 _hasBits1 |= 32768;
1608 restartLbdAverageRatio_ = value;
1609 }
1612 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1613 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1614 public bool HasRestartLbdAverageRatio {
1615 get { return (_hasBits1 & 32768) != 0; }
1616 }
1618 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1619 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1621 _hasBits1 &= ~32768;
1622 }
1623
1625 public const int UseBlockingRestartFieldNumber = 64;
1626 private readonly static bool UseBlockingRestartDefaultValue = false;
1627
1628 private bool useBlockingRestart_;
1634 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1635 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1636 public bool UseBlockingRestart {
1637 get { if ((_hasBits1 & 512) != 0) { return useBlockingRestart_; } else { return UseBlockingRestartDefaultValue; } }
1638 set {
1639 _hasBits1 |= 512;
1640 useBlockingRestart_ = value;
1641 }
1644 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1645 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1646 public bool HasUseBlockingRestart {
1647 get { return (_hasBits1 & 512) != 0; }
1648 }
1650 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1651 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1653 _hasBits1 &= ~512;
1654 }
1655
1657 public const int BlockingRestartWindowSizeFieldNumber = 65;
1658 private readonly static int BlockingRestartWindowSizeDefaultValue = 5000;
1659
1660 private int blockingRestartWindowSize_;
1661 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1662 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1664 get { if ((_hasBits1 & 1024) != 0) { return blockingRestartWindowSize_; } else { return BlockingRestartWindowSizeDefaultValue; } }
1665 set {
1666 _hasBits1 |= 1024;
1667 blockingRestartWindowSize_ = value;
1668 }
1671 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1672 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1673 public bool HasBlockingRestartWindowSize {
1674 get { return (_hasBits1 & 1024) != 0; }
1675 }
1677 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1678 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1680 _hasBits1 &= ~1024;
1681 }
1682
1684 public const int BlockingRestartMultiplierFieldNumber = 66;
1685 private readonly static double BlockingRestartMultiplierDefaultValue = 1.4D;
1686
1687 private double blockingRestartMultiplier_;
1688 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1689 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1691 get { if ((_hasBits1 & 2048) != 0) { return blockingRestartMultiplier_; } else { return BlockingRestartMultiplierDefaultValue; } }
1692 set {
1693 _hasBits1 |= 2048;
1694 blockingRestartMultiplier_ = value;
1695 }
1698 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1699 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1700 public bool HasBlockingRestartMultiplier {
1701 get { return (_hasBits1 & 2048) != 0; }
1702 }
1704 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1705 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1707 _hasBits1 &= ~2048;
1708 }
1709
1712 private readonly static int NumConflictsBeforeStrategyChangesDefaultValue = 0;
1713
1714 private int numConflictsBeforeStrategyChanges_;
1720 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1721 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1723 get { if ((_hasBits1 & 8192) != 0) { return numConflictsBeforeStrategyChanges_; } else { return NumConflictsBeforeStrategyChangesDefaultValue; } }
1724 set {
1725 _hasBits1 |= 8192;
1726 numConflictsBeforeStrategyChanges_ = value;
1727 }
1730 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1731 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1733 get { return (_hasBits1 & 8192) != 0; }
1734 }
1736 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1737 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1739 _hasBits1 &= ~8192;
1740 }
1741
1743 public const int StrategyChangeIncreaseRatioFieldNumber = 69;
1744 private readonly static double StrategyChangeIncreaseRatioDefaultValue = 0D;
1745
1746 private double strategyChangeIncreaseRatio_;
1751 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1752 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1753 public double StrategyChangeIncreaseRatio {
1754 get { if ((_hasBits1 & 16384) != 0) { return strategyChangeIncreaseRatio_; } else { return StrategyChangeIncreaseRatioDefaultValue; } }
1755 set {
1756 _hasBits1 |= 16384;
1757 strategyChangeIncreaseRatio_ = value;
1758 }
1761 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1762 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1763 public bool HasStrategyChangeIncreaseRatio {
1764 get { return (_hasBits1 & 16384) != 0; }
1765 }
1767 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1768 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1770 _hasBits1 &= ~16384;
1771 }
1772
1774 public const int MaxTimeInSecondsFieldNumber = 36;
1775 private readonly static double MaxTimeInSecondsDefaultValue = double.PositiveInfinity;
1776
1777 private double maxTimeInSeconds_;
1782 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1783 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1784 public double MaxTimeInSeconds {
1785 get { if ((_hasBits0 & 131072) != 0) { return maxTimeInSeconds_; } else { return MaxTimeInSecondsDefaultValue; } }
1786 set {
1787 _hasBits0 |= 131072;
1788 maxTimeInSeconds_ = value;
1789 }
1792 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1793 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1794 public bool HasMaxTimeInSeconds {
1795 get { return (_hasBits0 & 131072) != 0; }
1796 }
1798 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1799 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1801 _hasBits0 &= ~131072;
1802 }
1803
1805 public const int MaxDeterministicTimeFieldNumber = 67;
1806 private readonly static double MaxDeterministicTimeDefaultValue = double.PositiveInfinity;
1807
1808 private double maxDeterministicTime_;
1814 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1815 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1816 public double MaxDeterministicTime {
1817 get { if ((_hasBits1 & 4096) != 0) { return maxDeterministicTime_; } else { return MaxDeterministicTimeDefaultValue; } }
1818 set {
1819 _hasBits1 |= 4096;
1820 maxDeterministicTime_ = value;
1821 }
1824 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1825 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1826 public bool HasMaxDeterministicTime {
1827 get { return (_hasBits1 & 4096) != 0; }
1828 }
1830 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1831 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1833 _hasBits1 &= ~4096;
1834 }
1835
1837 public const int MaxNumberOfConflictsFieldNumber = 37;
1838 private readonly static long MaxNumberOfConflictsDefaultValue = 9223372036854775807L;
1839
1840 private long maxNumberOfConflicts_;
1850 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1851 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1852 public long MaxNumberOfConflicts {
1853 get { if ((_hasBits0 & 262144) != 0) { return maxNumberOfConflicts_; } else { return MaxNumberOfConflictsDefaultValue; } }
1854 set {
1855 _hasBits0 |= 262144;
1856 maxNumberOfConflicts_ = value;
1857 }
1858 }
1860 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1861 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1862 public bool HasMaxNumberOfConflicts {
1863 get { return (_hasBits0 & 262144) != 0; }
1864 }
1866 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1867 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1868 public void ClearMaxNumberOfConflicts() {
1869 _hasBits0 &= ~262144;
1870 }
1871
1873 public const int MaxMemoryInMbFieldNumber = 40;
1874 private readonly static long MaxMemoryInMbDefaultValue = 10000L;
1876 private long maxMemoryInMb_;
1885 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1886 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1887 public long MaxMemoryInMb {
1888 get { if ((_hasBits0 & 524288) != 0) { return maxMemoryInMb_; } else { return MaxMemoryInMbDefaultValue; } }
1889 set {
1890 _hasBits0 |= 524288;
1891 maxMemoryInMb_ = value;
1892 }
1893 }
1895 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1896 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1897 public bool HasMaxMemoryInMb {
1898 get { return (_hasBits0 & 524288) != 0; }
1899 }
1901 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1902 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1903 public void ClearMaxMemoryInMb() {
1904 _hasBits0 &= ~524288;
1906
1908 public const int AbsoluteGapLimitFieldNumber = 159;
1909 private readonly static double AbsoluteGapLimitDefaultValue = 0.0001D;
1910
1911 private double absoluteGapLimit_;
1932 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1933 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1934 public double AbsoluteGapLimit {
1935 get { if ((_hasBits3 & 33554432) != 0) { return absoluteGapLimit_; } else { return AbsoluteGapLimitDefaultValue; } }
1936 set {
1937 _hasBits3 |= 33554432;
1938 absoluteGapLimit_ = value;
1939 }
1940 }
1942 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1943 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1944 public bool HasAbsoluteGapLimit {
1945 get { return (_hasBits3 & 33554432) != 0; }
1946 }
1948 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1949 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1950 public void ClearAbsoluteGapLimit() {
1951 _hasBits3 &= ~33554432;
1952 }
1953
1955 public const int RelativeGapLimitFieldNumber = 160;
1956 private readonly static double RelativeGapLimitDefaultValue = 0D;
1957
1958 private double relativeGapLimit_;
1959 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1960 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1961 public double RelativeGapLimit {
1962 get { if ((_hasBits3 & 67108864) != 0) { return relativeGapLimit_; } else { return RelativeGapLimitDefaultValue; } }
1963 set {
1964 _hasBits3 |= 67108864;
1965 relativeGapLimit_ = value;
1967 }
1969 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1970 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1971 public bool HasRelativeGapLimit {
1972 get { return (_hasBits3 & 67108864) != 0; }
1973 }
1975 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1976 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1977 public void ClearRelativeGapLimit() {
1978 _hasBits3 &= ~67108864;
1979 }
1980
1982 public const int RandomSeedFieldNumber = 31;
1983 private readonly static int RandomSeedDefaultValue = 1;
1984
1985 private int randomSeed_;
1995 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1996 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1997 public int RandomSeed {
1998 get { if ((_hasBits0 & 8192) != 0) { return randomSeed_; } else { return RandomSeedDefaultValue; } }
1999 set {
2000 _hasBits0 |= 8192;
2001 randomSeed_ = value;
2002 }
2003 }
2005 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2006 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2007 public bool HasRandomSeed {
2008 get { return (_hasBits0 & 8192) != 0; }
2011 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2012 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2013 public void ClearRandomSeed() {
2014 _hasBits0 &= ~8192;
2015 }
2016
2018 public const int PermuteVariableRandomlyFieldNumber = 178;
2019 private readonly static bool PermuteVariableRandomlyDefaultValue = false;
2020
2021 private bool permuteVariableRandomly_;
2028 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2029 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2031 get { if ((_hasBits4 & 2048) != 0) { return permuteVariableRandomly_; } else { return PermuteVariableRandomlyDefaultValue; } }
2032 set {
2033 _hasBits4 |= 2048;
2034 permuteVariableRandomly_ = value;
2035 }
2036 }
2038 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2039 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2040 public bool HasPermuteVariableRandomly {
2041 get { return (_hasBits4 & 2048) != 0; }
2044 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2045 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2046 public void ClearPermuteVariableRandomly() {
2047 _hasBits4 &= ~2048;
2048 }
2049
2051 public const int PermutePresolveConstraintOrderFieldNumber = 179;
2052 private readonly static bool PermutePresolveConstraintOrderDefaultValue = false;
2053
2054 private bool permutePresolveConstraintOrder_;
2055 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2056 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2057 public bool PermutePresolveConstraintOrder {
2058 get { if ((_hasBits4 & 4096) != 0) { return permutePresolveConstraintOrder_; } else { return PermutePresolveConstraintOrderDefaultValue; } }
2059 set {
2060 _hasBits4 |= 4096;
2061 permutePresolveConstraintOrder_ = value;
2062 }
2065 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2066 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2068 get { return (_hasBits4 & 4096) != 0; }
2071 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2072 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2074 _hasBits4 &= ~4096;
2075 }
2076
2078 public const int UseAbslRandomFieldNumber = 180;
2079 private readonly static bool UseAbslRandomDefaultValue = false;
2080
2081 private bool useAbslRandom_;
2082 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2083 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2084 public bool UseAbslRandom {
2085 get { if ((_hasBits4 & 8192) != 0) { return useAbslRandom_; } else { return UseAbslRandomDefaultValue; } }
2086 set {
2087 _hasBits4 |= 8192;
2088 useAbslRandom_ = value;
2089 }
2092 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2093 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2094 public bool HasUseAbslRandom {
2095 get { return (_hasBits4 & 8192) != 0; }
2098 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2099 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2100 public void ClearUseAbslRandom() {
2101 _hasBits4 &= ~8192;
2102 }
2103
2105 public const int LogSearchProgressFieldNumber = 41;
2106 private readonly static bool LogSearchProgressDefaultValue = false;
2107
2108 private bool logSearchProgress_;
2114 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2115 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2116 public bool LogSearchProgress {
2117 get { if ((_hasBits0 & 1048576) != 0) { return logSearchProgress_; } else { return LogSearchProgressDefaultValue; } }
2118 set {
2119 _hasBits0 |= 1048576;
2120 logSearchProgress_ = value;
2121 }
2122 }
2124 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2125 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2126 public bool HasLogSearchProgress {
2127 get { return (_hasBits0 & 1048576) != 0; }
2130 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2131 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2132 public void ClearLogSearchProgress() {
2133 _hasBits0 &= ~1048576;
2134 }
2135
2137 public const int LogSubsolverStatisticsFieldNumber = 189;
2138 private readonly static bool LogSubsolverStatisticsDefaultValue = false;
2139
2140 private bool logSubsolverStatistics_;
2147 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2148 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2150 get { if ((_hasBits4 & 1048576) != 0) { return logSubsolverStatistics_; } else { return LogSubsolverStatisticsDefaultValue; } }
2151 set {
2152 _hasBits4 |= 1048576;
2153 logSubsolverStatistics_ = value;
2154 }
2155 }
2157 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2158 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2159 public bool HasLogSubsolverStatistics {
2160 get { return (_hasBits4 & 1048576) != 0; }
2163 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2164 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2165 public void ClearLogSubsolverStatistics() {
2166 _hasBits4 &= ~1048576;
2167 }
2168
2170 public const int LogPrefixFieldNumber = 185;
2171 private readonly static string LogPrefixDefaultValue = "";
2172
2173 private string logPrefix_;
2177 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2178 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2179 public string LogPrefix {
2180 get { return logPrefix_ ?? LogPrefixDefaultValue; }
2181 set {
2182 logPrefix_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
2183 }
2184 }
2186 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2187 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2188 public bool HasLogPrefix {
2189 get { return logPrefix_ != null; }
2190 }
2192 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2193 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2194 public void ClearLogPrefix() {
2195 logPrefix_ = null;
2196 }
2197
2199 public const int LogToStdoutFieldNumber = 186;
2200 private readonly static bool LogToStdoutDefaultValue = true;
2201
2202 private bool logToStdout_;
2206 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2207 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2208 public bool LogToStdout {
2209 get { if ((_hasBits4 & 131072) != 0) { return logToStdout_; } else { return LogToStdoutDefaultValue; } }
2210 set {
2211 _hasBits4 |= 131072;
2212 logToStdout_ = value;
2213 }
2214 }
2216 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2217 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2218 public bool HasLogToStdout {
2219 get { return (_hasBits4 & 131072) != 0; }
2222 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2223 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2224 public void ClearLogToStdout() {
2225 _hasBits4 &= ~131072;
2226 }
2227
2229 public const int LogToResponseFieldNumber = 187;
2230 private readonly static bool LogToResponseDefaultValue = false;
2231
2232 private bool logToResponse_;
2236 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2237 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2238 public bool LogToResponse {
2239 get { if ((_hasBits4 & 262144) != 0) { return logToResponse_; } else { return LogToResponseDefaultValue; } }
2240 set {
2241 _hasBits4 |= 262144;
2242 logToResponse_ = value;
2243 }
2244 }
2246 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2247 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2248 public bool HasLogToResponse {
2249 get { return (_hasBits4 & 262144) != 0; }
2252 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2253 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2254 public void ClearLogToResponse() {
2255 _hasBits4 &= ~262144;
2256 }
2257
2259 public const int UsePbResolutionFieldNumber = 43;
2260 private readonly static bool UsePbResolutionDefaultValue = false;
2261
2262 private bool usePbResolution_;
2269 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2270 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2271 public bool UsePbResolution {
2272 get { if ((_hasBits0 & 2097152) != 0) { return usePbResolution_; } else { return UsePbResolutionDefaultValue; } }
2273 set {
2274 _hasBits0 |= 2097152;
2275 usePbResolution_ = value;
2276 }
2277 }
2279 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2280 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2281 public bool HasUsePbResolution {
2282 get { return (_hasBits0 & 2097152) != 0; }
2285 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2286 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2287 public void ClearUsePbResolution() {
2288 _hasBits0 &= ~2097152;
2289 }
2290
2293 private readonly static bool MinimizeReductionDuringPbResolutionDefaultValue = false;
2294
2295 private bool minimizeReductionDuringPbResolution_;
2302 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2303 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2305 get { if ((_hasBits0 & 67108864) != 0) { return minimizeReductionDuringPbResolution_; } else { return MinimizeReductionDuringPbResolutionDefaultValue; } }
2306 set {
2307 _hasBits0 |= 67108864;
2308 minimizeReductionDuringPbResolution_ = value;
2309 }
2310 }
2312 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2313 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2315 get { return (_hasBits0 & 67108864) != 0; }
2318 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2319 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2321 _hasBits0 &= ~67108864;
2322 }
2323
2325 public const int CountAssumptionLevelsInLbdFieldNumber = 49;
2326 private readonly static bool CountAssumptionLevelsInLbdDefaultValue = true;
2327
2328 private bool countAssumptionLevelsInLbd_;
2340 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2341 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2342 public bool CountAssumptionLevelsInLbd {
2343 get { if ((_hasBits0 & 134217728) != 0) { return countAssumptionLevelsInLbd_; } else { return CountAssumptionLevelsInLbdDefaultValue; } }
2344 set {
2345 _hasBits0 |= 134217728;
2346 countAssumptionLevelsInLbd_ = value;
2347 }
2348 }
2350 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2351 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2352 public bool HasCountAssumptionLevelsInLbd {
2353 get { return (_hasBits0 & 134217728) != 0; }
2354 }
2356 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2357 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2358 public void ClearCountAssumptionLevelsInLbd() {
2359 _hasBits0 &= ~134217728;
2360 }
2361
2363 public const int PresolveBveThresholdFieldNumber = 54;
2364 private readonly static int PresolveBveThresholdDefaultValue = 500;
2366 private int presolveBveThreshold_;
2372 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2373 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2374 public int PresolveBveThreshold {
2375 get { if ((_hasBits1 & 1) != 0) { return presolveBveThreshold_; } else { return PresolveBveThresholdDefaultValue; } }
2376 set {
2377 _hasBits1 |= 1;
2378 presolveBveThreshold_ = value;
2379 }
2380 }
2382 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2383 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2384 public bool HasPresolveBveThreshold {
2385 get { return (_hasBits1 & 1) != 0; }
2386 }
2388 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2389 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2390 public void ClearPresolveBveThreshold() {
2391 _hasBits1 &= ~1;
2392 }
2393
2395 public const int PresolveBveClauseWeightFieldNumber = 55;
2396 private readonly static int PresolveBveClauseWeightDefaultValue = 3;
2398 private int presolveBveClauseWeight_;
2403 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2404 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2405 public int PresolveBveClauseWeight {
2406 get { if ((_hasBits1 & 2) != 0) { return presolveBveClauseWeight_; } else { return PresolveBveClauseWeightDefaultValue; } }
2407 set {
2408 _hasBits1 |= 2;
2409 presolveBveClauseWeight_ = value;
2410 }
2411 }
2413 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2414 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2415 public bool HasPresolveBveClauseWeight {
2416 get { return (_hasBits1 & 2) != 0; }
2417 }
2419 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2420 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2421 public void ClearPresolveBveClauseWeight() {
2422 _hasBits1 &= ~2;
2423 }
2424
2426 public const int ProbingDeterministicTimeLimitFieldNumber = 226;
2427 private readonly static double ProbingDeterministicTimeLimitDefaultValue = 1D;
2429 private double probingDeterministicTimeLimit_;
2437 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2438 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2440 get { if ((_hasBits5 & 262144) != 0) { return probingDeterministicTimeLimit_; } else { return ProbingDeterministicTimeLimitDefaultValue; } }
2441 set {
2442 _hasBits5 |= 262144;
2443 probingDeterministicTimeLimit_ = value;
2444 }
2445 }
2447 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2448 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2450 get { return (_hasBits5 & 262144) != 0; }
2451 }
2453 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2454 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2456 _hasBits5 &= ~262144;
2457 }
2458
2461 private readonly static double PresolveProbingDeterministicTimeLimitDefaultValue = 30D;
2462
2463 private double presolveProbingDeterministicTimeLimit_;
2464 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2465 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2467 get { if ((_hasBits1 & 8) != 0) { return presolveProbingDeterministicTimeLimit_; } else { return PresolveProbingDeterministicTimeLimitDefaultValue; } }
2468 set {
2469 _hasBits1 |= 8;
2470 presolveProbingDeterministicTimeLimit_ = value;
2471 }
2472 }
2474 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2475 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2477 get { return (_hasBits1 & 8) != 0; }
2478 }
2480 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2481 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2483 _hasBits1 &= ~8;
2484 }
2485
2487 public const int PresolveBlockedClauseFieldNumber = 88;
2488 private readonly static bool PresolveBlockedClauseDefaultValue = true;
2489
2490 private bool presolveBlockedClause_;
2495 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2496 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2497 public bool PresolveBlockedClause {
2498 get { if ((_hasBits1 & -2147483648) != 0) { return presolveBlockedClause_; } else { return PresolveBlockedClauseDefaultValue; } }
2499 set {
2500 _hasBits1 |= -2147483648;
2501 presolveBlockedClause_ = value;
2502 }
2503 }
2505 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2506 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2507 public bool HasPresolveBlockedClause {
2508 get { return (_hasBits1 & -2147483648) != 0; }
2509 }
2511 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2512 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2513 public void ClearPresolveBlockedClause() {
2514 _hasBits1 &= ~-2147483648;
2515 }
2516
2518 public const int PresolveUseBvaFieldNumber = 72;
2519 private readonly static bool PresolveUseBvaDefaultValue = true;
2520
2521 private bool presolveUseBva_;
2525 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2526 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2527 public bool PresolveUseBva {
2528 get { if ((_hasBits1 & 65536) != 0) { return presolveUseBva_; } else { return PresolveUseBvaDefaultValue; } }
2529 set {
2530 _hasBits1 |= 65536;
2531 presolveUseBva_ = value;
2533 }
2535 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2536 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2537 public bool HasPresolveUseBva {
2538 get { return (_hasBits1 & 65536) != 0; }
2539 }
2541 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2542 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2543 public void ClearPresolveUseBva() {
2544 _hasBits1 &= ~65536;
2545 }
2546
2548 public const int PresolveBvaThresholdFieldNumber = 73;
2549 private readonly static int PresolveBvaThresholdDefaultValue = 1;
2550
2551 private int presolveBvaThreshold_;
2558 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2559 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2560 public int PresolveBvaThreshold {
2561 get { if ((_hasBits1 & 131072) != 0) { return presolveBvaThreshold_; } else { return PresolveBvaThresholdDefaultValue; } }
2562 set {
2563 _hasBits1 |= 131072;
2564 presolveBvaThreshold_ = value;
2565 }
2566 }
2568 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2569 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2570 public bool HasPresolveBvaThreshold {
2571 get { return (_hasBits1 & 131072) != 0; }
2572 }
2574 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2575 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2576 public void ClearPresolveBvaThreshold() {
2577 _hasBits1 &= ~131072;
2578 }
2579
2581 public const int MaxPresolveIterationsFieldNumber = 138;
2582 private readonly static int MaxPresolveIterationsDefaultValue = 3;
2583
2584 private int maxPresolveIterations_;
2590 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2591 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2592 public int MaxPresolveIterations {
2593 get { if ((_hasBits3 & 2048) != 0) { return maxPresolveIterations_; } else { return MaxPresolveIterationsDefaultValue; } }
2594 set {
2595 _hasBits3 |= 2048;
2596 maxPresolveIterations_ = value;
2597 }
2598 }
2600 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2601 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2602 public bool HasMaxPresolveIterations {
2603 get { return (_hasBits3 & 2048) != 0; }
2604 }
2606 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2607 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2608 public void ClearMaxPresolveIterations() {
2609 _hasBits3 &= ~2048;
2610 }
2611
2613 public const int CpModelPresolveFieldNumber = 86;
2614 private readonly static bool CpModelPresolveDefaultValue = true;
2615
2616 private bool cpModelPresolve_;
2620 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2621 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2622 public bool CpModelPresolve {
2623 get { if ((_hasBits1 & 536870912) != 0) { return cpModelPresolve_; } else { return CpModelPresolveDefaultValue; } }
2624 set {
2625 _hasBits1 |= 536870912;
2626 cpModelPresolve_ = value;
2628 }
2630 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2631 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2632 public bool HasCpModelPresolve {
2633 get { return (_hasBits1 & 536870912) != 0; }
2634 }
2636 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2637 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2638 public void ClearCpModelPresolve() {
2639 _hasBits1 &= ~536870912;
2640 }
2641
2643 public const int CpModelProbingLevelFieldNumber = 110;
2644 private readonly static int CpModelProbingLevelDefaultValue = 2;
2645
2646 private int cpModelProbingLevel_;
2650 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2651 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2653 get { if ((_hasBits2 & 131072) != 0) { return cpModelProbingLevel_; } else { return CpModelProbingLevelDefaultValue; } }
2654 set {
2655 _hasBits2 |= 131072;
2656 cpModelProbingLevel_ = value;
2658 }
2660 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2661 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2662 public bool HasCpModelProbingLevel {
2663 get { return (_hasBits2 & 131072) != 0; }
2664 }
2666 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2667 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2668 public void ClearCpModelProbingLevel() {
2669 _hasBits2 &= ~131072;
2670 }
2671
2673 public const int CpModelUseSatPresolveFieldNumber = 93;
2674 private readonly static bool CpModelUseSatPresolveDefaultValue = true;
2675
2676 private bool cpModelUseSatPresolve_;
2680 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2681 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2683 get { if ((_hasBits2 & 16) != 0) { return cpModelUseSatPresolve_; } else { return CpModelUseSatPresolveDefaultValue; } }
2684 set {
2685 _hasBits2 |= 16;
2686 cpModelUseSatPresolve_ = value;
2688 }
2690 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2691 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2692 public bool HasCpModelUseSatPresolve {
2693 get { return (_hasBits2 & 16) != 0; }
2694 }
2696 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2697 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2698 public void ClearCpModelUseSatPresolve() {
2699 _hasBits2 &= ~16;
2700 }
2701
2703 public const int DetectTableWithCostFieldNumber = 216;
2704 private readonly static bool DetectTableWithCostDefaultValue = false;
2705
2706 private bool detectTableWithCost_;
2715 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2716 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2718 get { if ((_hasBits5 & 1024) != 0) { return detectTableWithCost_; } else { return DetectTableWithCostDefaultValue; } }
2719 set {
2720 _hasBits5 |= 1024;
2721 detectTableWithCost_ = value;
2722 }
2723 }
2725 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2726 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2727 public bool HasDetectTableWithCost {
2728 get { return (_hasBits5 & 1024) != 0; }
2729 }
2731 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2732 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2733 public void ClearDetectTableWithCost() {
2734 _hasBits5 &= ~1024;
2735 }
2736
2738 public const int TableCompressionLevelFieldNumber = 217;
2739 private readonly static int TableCompressionLevelDefaultValue = 2;
2740
2741 private int tableCompressionLevel_;
2748 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2749 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2750 public int TableCompressionLevel {
2751 get { if ((_hasBits5 & 2048) != 0) { return tableCompressionLevel_; } else { return TableCompressionLevelDefaultValue; } }
2752 set {
2753 _hasBits5 |= 2048;
2754 tableCompressionLevel_ = value;
2755 }
2756 }
2758 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2759 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2760 public bool HasTableCompressionLevel {
2761 get { return (_hasBits5 & 2048) != 0; }
2762 }
2764 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2765 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2766 public void ClearTableCompressionLevel() {
2767 _hasBits5 &= ~2048;
2768 }
2769
2771 public const int ExpandAlldiffConstraintsFieldNumber = 170;
2772 private readonly static bool ExpandAlldiffConstraintsDefaultValue = false;
2773
2774 private bool expandAlldiffConstraints_;
2779 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2780 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2782 get { if ((_hasBits4 & 16) != 0) { return expandAlldiffConstraints_; } else { return ExpandAlldiffConstraintsDefaultValue; } }
2783 set {
2784 _hasBits4 |= 16;
2785 expandAlldiffConstraints_ = value;
2787 }
2789 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2790 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2791 public bool HasExpandAlldiffConstraints {
2792 get { return (_hasBits4 & 16) != 0; }
2793 }
2795 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2796 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2797 public void ClearExpandAlldiffConstraints() {
2798 _hasBits4 &= ~16;
2799 }
2800
2802 public const int ExpandReservoirConstraintsFieldNumber = 182;
2803 private readonly static bool ExpandReservoirConstraintsDefaultValue = true;
2804
2805 private bool expandReservoirConstraints_;
2810 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2811 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2813 get { if ((_hasBits4 & 32768) != 0) { return expandReservoirConstraints_; } else { return ExpandReservoirConstraintsDefaultValue; } }
2814 set {
2815 _hasBits4 |= 32768;
2816 expandReservoirConstraints_ = value;
2818 }
2820 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2821 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2822 public bool HasExpandReservoirConstraints {
2823 get { return (_hasBits4 & 32768) != 0; }
2824 }
2826 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2827 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2828 public void ClearExpandReservoirConstraints() {
2829 _hasBits4 &= ~32768;
2830 }
2831
2833 public const int DisableConstraintExpansionFieldNumber = 181;
2834 private readonly static bool DisableConstraintExpansionDefaultValue = false;
2835
2836 private bool disableConstraintExpansion_;
2841 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2842 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2844 get { if ((_hasBits4 & 16384) != 0) { return disableConstraintExpansion_; } else { return DisableConstraintExpansionDefaultValue; } }
2845 set {
2846 _hasBits4 |= 16384;
2847 disableConstraintExpansion_ = value;
2849 }
2851 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2852 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2853 public bool HasDisableConstraintExpansion {
2854 get { return (_hasBits4 & 16384) != 0; }
2855 }
2857 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2858 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2859 public void ClearDisableConstraintExpansion() {
2860 _hasBits4 &= ~16384;
2861 }
2862
2865 private readonly static bool EncodeComplexLinearConstraintWithIntegerDefaultValue = false;
2866
2867 private bool encodeComplexLinearConstraintWithInteger_;
2872 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2873 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2875 get { if ((_hasBits5 & 32768) != 0) { return encodeComplexLinearConstraintWithInteger_; } else { return EncodeComplexLinearConstraintWithIntegerDefaultValue; } }
2876 set {
2877 _hasBits5 |= 32768;
2878 encodeComplexLinearConstraintWithInteger_ = value;
2880 }
2882 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2883 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2885 get { return (_hasBits5 & 32768) != 0; }
2886 }
2888 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2889 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2891 _hasBits5 &= ~32768;
2892 }
2893
2895 public const int MergeNoOverlapWorkLimitFieldNumber = 145;
2896 private readonly static double MergeNoOverlapWorkLimitDefaultValue = 1e+12D;
2897
2898 private double mergeNoOverlapWorkLimit_;
2906 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2907 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2908 public double MergeNoOverlapWorkLimit {
2909 get { if ((_hasBits3 & 8192) != 0) { return mergeNoOverlapWorkLimit_; } else { return MergeNoOverlapWorkLimitDefaultValue; } }
2910 set {
2911 _hasBits3 |= 8192;
2912 mergeNoOverlapWorkLimit_ = value;
2913 }
2914 }
2916 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2917 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2918 public bool HasMergeNoOverlapWorkLimit {
2919 get { return (_hasBits3 & 8192) != 0; }
2920 }
2922 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2923 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2924 public void ClearMergeNoOverlapWorkLimit() {
2925 _hasBits3 &= ~8192;
2926 }
2927
2929 public const int MergeAtMostOneWorkLimitFieldNumber = 146;
2930 private readonly static double MergeAtMostOneWorkLimitDefaultValue = 1e+08D;
2931
2932 private double mergeAtMostOneWorkLimit_;
2933 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2934 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2935 public double MergeAtMostOneWorkLimit {
2936 get { if ((_hasBits3 & 16384) != 0) { return mergeAtMostOneWorkLimit_; } else { return MergeAtMostOneWorkLimitDefaultValue; } }
2937 set {
2938 _hasBits3 |= 16384;
2939 mergeAtMostOneWorkLimit_ = value;
2940 }
2941 }
2943 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2944 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2945 public bool HasMergeAtMostOneWorkLimit {
2946 get { return (_hasBits3 & 16384) != 0; }
2947 }
2949 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2950 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2951 public void ClearMergeAtMostOneWorkLimit() {
2952 _hasBits3 &= ~16384;
2953 }
2954
2956 public const int PresolveSubstitutionLevelFieldNumber = 147;
2957 private readonly static int PresolveSubstitutionLevelDefaultValue = 1;
2958
2959 private int presolveSubstitutionLevel_;
2966 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2967 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2968 public int PresolveSubstitutionLevel {
2969 get { if ((_hasBits3 & 32768) != 0) { return presolveSubstitutionLevel_; } else { return PresolveSubstitutionLevelDefaultValue; } }
2970 set {
2971 _hasBits3 |= 32768;
2972 presolveSubstitutionLevel_ = value;
2973 }
2974 }
2976 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2977 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2978 public bool HasPresolveSubstitutionLevel {
2979 get { return (_hasBits3 & 32768) != 0; }
2980 }
2982 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2983 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2984 public void ClearPresolveSubstitutionLevel() {
2985 _hasBits3 &= ~32768;
2986 }
2987
2989 public const int PresolveExtractIntegerEnforcementFieldNumber = 174;
2990 private readonly static bool PresolveExtractIntegerEnforcementDefaultValue = false;
2991
2992 private bool presolveExtractIntegerEnforcement_;
3001 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3002 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3004 get { if ((_hasBits4 & 128) != 0) { return presolveExtractIntegerEnforcement_; } else { return PresolveExtractIntegerEnforcementDefaultValue; } }
3005 set {
3006 _hasBits4 |= 128;
3007 presolveExtractIntegerEnforcement_ = value;
3008 }
3009 }
3011 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3012 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3014 get { return (_hasBits4 & 128) != 0; }
3015 }
3017 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3018 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3020 _hasBits4 &= ~128;
3021 }
3022
3024 public const int PresolveInclusionWorkLimitFieldNumber = 201;
3025 private readonly static long PresolveInclusionWorkLimitDefaultValue = 100000000L;
3026
3027 private long presolveInclusionWorkLimit_;
3037 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3038 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3040 get { if ((_hasBits5 & 1) != 0) { return presolveInclusionWorkLimit_; } else { return PresolveInclusionWorkLimitDefaultValue; } }
3041 set {
3042 _hasBits5 |= 1;
3043 presolveInclusionWorkLimit_ = value;
3044 }
3045 }
3047 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3048 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3049 public bool HasPresolveInclusionWorkLimit {
3050 get { return (_hasBits5 & 1) != 0; }
3051 }
3053 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3054 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3056 _hasBits5 &= ~1;
3057 }
3058
3060 public const int IgnoreNamesFieldNumber = 202;
3061 private readonly static bool IgnoreNamesDefaultValue = true;
3062
3063 private bool ignoreNames_;
3067 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3068 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3069 public bool IgnoreNames {
3070 get { if ((_hasBits5 & 2) != 0) { return ignoreNames_; } else { return IgnoreNamesDefaultValue; } }
3071 set {
3072 _hasBits5 |= 2;
3073 ignoreNames_ = value;
3074 }
3075 }
3077 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3078 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3079 public bool HasIgnoreNames {
3080 get { return (_hasBits5 & 2) != 0; }
3081 }
3083 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3084 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3085 public void ClearIgnoreNames() {
3086 _hasBits5 &= ~2;
3087 }
3088
3090 public const int InferAllDiffsFieldNumber = 233;
3091 private readonly static bool InferAllDiffsDefaultValue = true;
3092
3093 private bool inferAllDiffs_;
3101 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3102 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3103 public bool InferAllDiffs {
3104 get { if ((_hasBits5 & 16777216) != 0) { return inferAllDiffs_; } else { return InferAllDiffsDefaultValue; } }
3105 set {
3106 _hasBits5 |= 16777216;
3107 inferAllDiffs_ = value;
3108 }
3109 }
3111 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3112 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3113 public bool HasInferAllDiffs {
3114 get { return (_hasBits5 & 16777216) != 0; }
3115 }
3117 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3118 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3119 public void ClearInferAllDiffs() {
3120 _hasBits5 &= ~16777216;
3121 }
3122
3124 public const int FindBigLinearOverlapFieldNumber = 234;
3125 private readonly static bool FindBigLinearOverlapDefaultValue = true;
3126
3127 private bool findBigLinearOverlap_;
3134 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3135 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3136 public bool FindBigLinearOverlap {
3137 get { if ((_hasBits5 & 33554432) != 0) { return findBigLinearOverlap_; } else { return FindBigLinearOverlapDefaultValue; } }
3138 set {
3139 _hasBits5 |= 33554432;
3140 findBigLinearOverlap_ = value;
3141 }
3142 }
3144 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3145 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3146 public bool HasFindBigLinearOverlap {
3147 get { return (_hasBits5 & 33554432) != 0; }
3148 }
3150 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3151 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3153 _hasBits5 &= ~33554432;
3154 }
3155
3157 public const int UseSatInprocessingFieldNumber = 163;
3158 private readonly static bool UseSatInprocessingDefaultValue = true;
3159
3160 private bool useSatInprocessing_;
3165 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3166 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3167 public bool UseSatInprocessing {
3168 get { if ((_hasBits3 & 536870912) != 0) { return useSatInprocessing_; } else { return UseSatInprocessingDefaultValue; } }
3169 set {
3170 _hasBits3 |= 536870912;
3171 useSatInprocessing_ = value;
3172 }
3175 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3176 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3177 public bool HasUseSatInprocessing {
3178 get { return (_hasBits3 & 536870912) != 0; }
3179 }
3181 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3182 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3184 _hasBits3 &= ~536870912;
3185 }
3186
3188 public const int InprocessingDtimeRatioFieldNumber = 273;
3189 private readonly static double InprocessingDtimeRatioDefaultValue = 0.2D;
3190
3191 private double inprocessingDtimeRatio_;
3197 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3198 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3200 get { if ((_hasBits6 & 67108864) != 0) { return inprocessingDtimeRatio_; } else { return InprocessingDtimeRatioDefaultValue; } }
3201 set {
3202 _hasBits6 |= 67108864;
3203 inprocessingDtimeRatio_ = value;
3205 }
3207 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3208 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3209 public bool HasInprocessingDtimeRatio {
3210 get { return (_hasBits6 & 67108864) != 0; }
3211 }
3213 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3214 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3216 _hasBits6 &= ~67108864;
3217 }
3218
3220 public const int InprocessingProbingDtimeFieldNumber = 274;
3221 private readonly static double InprocessingProbingDtimeDefaultValue = 1D;
3222
3223 private double inprocessingProbingDtime_;
3227 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3228 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3229 public double InprocessingProbingDtime {
3230 get { if ((_hasBits6 & 134217728) != 0) { return inprocessingProbingDtime_; } else { return InprocessingProbingDtimeDefaultValue; } }
3231 set {
3232 _hasBits6 |= 134217728;
3233 inprocessingProbingDtime_ = value;
3234 }
3235 }
3237 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3238 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3239 public bool HasInprocessingProbingDtime {
3240 get { return (_hasBits6 & 134217728) != 0; }
3241 }
3243 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3244 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3246 _hasBits6 &= ~134217728;
3247 }
3248
3250 public const int InprocessingMinimizationDtimeFieldNumber = 275;
3251 private readonly static double InprocessingMinimizationDtimeDefaultValue = 1D;
3252
3253 private double inprocessingMinimizationDtime_;
3266 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3267 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3268 public double InprocessingMinimizationDtime {
3269 get { if ((_hasBits6 & 268435456) != 0) { return inprocessingMinimizationDtime_; } else { return InprocessingMinimizationDtimeDefaultValue; } }
3270 set {
3271 _hasBits6 |= 268435456;
3272 inprocessingMinimizationDtime_ = value;
3273 }
3274 }
3276 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3277 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3279 get { return (_hasBits6 & 268435456) != 0; }
3280 }
3282 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3283 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3285 _hasBits6 &= ~268435456;
3287
3289 public const int NumWorkersFieldNumber = 206;
3290 private readonly static int NumWorkersDefaultValue = 0;
3291
3292 private int numWorkers_;
3309 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3310 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3311 public int NumWorkers {
3312 get { if ((_hasBits5 & 32) != 0) { return numWorkers_; } else { return NumWorkersDefaultValue; } }
3313 set {
3314 _hasBits5 |= 32;
3315 numWorkers_ = value;
3316 }
3317 }
3319 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3320 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3321 public bool HasNumWorkers {
3322 get { return (_hasBits5 & 32) != 0; }
3323 }
3325 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3326 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3327 public void ClearNumWorkers() {
3328 _hasBits5 &= ~32;
3329 }
3330
3332 public const int NumSearchWorkersFieldNumber = 100;
3333 private readonly static int NumSearchWorkersDefaultValue = 0;
3334
3335 private int numSearchWorkers_;
3336 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3337 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3338 public int NumSearchWorkers {
3339 get { if ((_hasBits2 & 512) != 0) { return numSearchWorkers_; } else { return NumSearchWorkersDefaultValue; } }
3340 set {
3341 _hasBits2 |= 512;
3342 numSearchWorkers_ = value;
3343 }
3344 }
3346 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3347 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3349 get { return (_hasBits2 & 512) != 0; }
3350 }
3352 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3353 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3354 public void ClearNumSearchWorkers() {
3355 _hasBits2 &= ~512;
3356 }
3357
3359 public const int MinNumLnsWorkersFieldNumber = 211;
3360 private readonly static int MinNumLnsWorkersDefaultValue = 2;
3361
3362 private int minNumLnsWorkers_;
3366 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3367 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3368 public int MinNumLnsWorkers {
3369 get { if ((_hasBits5 & 64) != 0) { return minNumLnsWorkers_; } else { return MinNumLnsWorkersDefaultValue; } }
3370 set {
3371 _hasBits5 |= 64;
3372 minNumLnsWorkers_ = value;
3373 }
3374 }
3376 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3377 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3378 public bool HasMinNumLnsWorkers {
3379 get { return (_hasBits5 & 64) != 0; }
3382 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3383 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3384 public void ClearMinNumLnsWorkers() {
3385 _hasBits5 &= ~64;
3386 }
3387
3389 public const int SubsolversFieldNumber = 207;
3390 private static readonly pb::FieldCodec<string> _repeated_subsolvers_codec
3391 = pb::FieldCodec.ForString(1658);
3392 private readonly pbc::RepeatedField<string> subsolvers_ = new pbc::RepeatedField<string>();
3422 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3423 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3424 public pbc::RepeatedField<string> Subsolvers {
3425 get { return subsolvers_; }
3426 }
3427
3429 public const int ExtraSubsolversFieldNumber = 219;
3430 private static readonly pb::FieldCodec<string> _repeated_extraSubsolvers_codec
3431 = pb::FieldCodec.ForString(1754);
3432 private readonly pbc::RepeatedField<string> extraSubsolvers_ = new pbc::RepeatedField<string>();
3437 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3438 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3439 public pbc::RepeatedField<string> ExtraSubsolvers {
3440 get { return extraSubsolvers_; }
3441 }
3442
3444 public const int IgnoreSubsolversFieldNumber = 209;
3445 private static readonly pb::FieldCodec<string> _repeated_ignoreSubsolvers_codec
3446 = pb::FieldCodec.ForString(1674);
3447 private readonly pbc::RepeatedField<string> ignoreSubsolvers_ = new pbc::RepeatedField<string>();
3452 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3453 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3454 public pbc::RepeatedField<string> IgnoreSubsolvers {
3455 get { return ignoreSubsolvers_; }
3456 }
3457
3459 public const int SubsolverParamsFieldNumber = 210;
3460 private static readonly pb::FieldCodec<global::Google.OrTools.Sat.SatParameters> _repeated_subsolverParams_codec
3461 = pb::FieldCodec.ForMessage(1682, global::Google.OrTools.Sat.SatParameters.Parser);
3462 private readonly pbc::RepeatedField<global::Google.OrTools.Sat.SatParameters> subsolverParams_ = new pbc::RepeatedField<global::Google.OrTools.Sat.SatParameters>();
3470 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3471 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3472 public pbc::RepeatedField<global::Google.OrTools.Sat.SatParameters> SubsolverParams {
3473 get { return subsolverParams_; }
3474 }
3475
3477 public const int InterleaveSearchFieldNumber = 136;
3478 private readonly static bool InterleaveSearchDefaultValue = false;
3479
3480 private bool interleaveSearch_;
3489 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3490 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3491 public bool InterleaveSearch {
3492 get { if ((_hasBits3 & 512) != 0) { return interleaveSearch_; } else { return InterleaveSearchDefaultValue; } }
3493 set {
3494 _hasBits3 |= 512;
3495 interleaveSearch_ = value;
3497 }
3499 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3500 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3502 get { return (_hasBits3 & 512) != 0; }
3503 }
3505 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3506 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3507 public void ClearInterleaveSearch() {
3508 _hasBits3 &= ~512;
3509 }
3510
3512 public const int InterleaveBatchSizeFieldNumber = 134;
3513 private readonly static int InterleaveBatchSizeDefaultValue = 0;
3514
3515 private int interleaveBatchSize_;
3516 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3517 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3518 public int InterleaveBatchSize {
3519 get { if ((_hasBits3 & 128) != 0) { return interleaveBatchSize_; } else { return InterleaveBatchSizeDefaultValue; } }
3520 set {
3521 _hasBits3 |= 128;
3522 interleaveBatchSize_ = value;
3523 }
3524 }
3526 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3527 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3528 public bool HasInterleaveBatchSize {
3529 get { return (_hasBits3 & 128) != 0; }
3530 }
3532 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3533 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3534 public void ClearInterleaveBatchSize() {
3535 _hasBits3 &= ~128;
3536 }
3539 public const int ShareObjectiveBoundsFieldNumber = 113;
3540 private readonly static bool ShareObjectiveBoundsDefaultValue = true;
3541
3542 private bool shareObjectiveBounds_;
3546 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3547 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3548 public bool ShareObjectiveBounds {
3549 get { if ((_hasBits2 & 524288) != 0) { return shareObjectiveBounds_; } else { return ShareObjectiveBoundsDefaultValue; } }
3550 set {
3551 _hasBits2 |= 524288;
3552 shareObjectiveBounds_ = value;
3554 }
3556 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3557 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3558 public bool HasShareObjectiveBounds {
3559 get { return (_hasBits2 & 524288) != 0; }
3560 }
3562 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3563 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3565 _hasBits2 &= ~524288;
3566 }
3567
3569 public const int ShareLevelZeroBoundsFieldNumber = 114;
3570 private readonly static bool ShareLevelZeroBoundsDefaultValue = true;
3571
3572 private bool shareLevelZeroBounds_;
3576 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3577 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3578 public bool ShareLevelZeroBounds {
3579 get { if ((_hasBits2 & 1048576) != 0) { return shareLevelZeroBounds_; } else { return ShareLevelZeroBoundsDefaultValue; } }
3580 set {
3581 _hasBits2 |= 1048576;
3582 shareLevelZeroBounds_ = value;
3584 }
3586 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3587 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3588 public bool HasShareLevelZeroBounds {
3589 get { return (_hasBits2 & 1048576) != 0; }
3590 }
3592 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3593 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3595 _hasBits2 &= ~1048576;
3596 }
3597
3599 public const int ShareBinaryClausesFieldNumber = 203;
3600 private readonly static bool ShareBinaryClausesDefaultValue = true;
3601
3602 private bool shareBinaryClauses_;
3606 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3607 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3608 public bool ShareBinaryClauses {
3609 get { if ((_hasBits5 & 4) != 0) { return shareBinaryClauses_; } else { return ShareBinaryClausesDefaultValue; } }
3610 set {
3611 _hasBits5 |= 4;
3612 shareBinaryClauses_ = value;
3614 }
3616 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3617 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3618 public bool HasShareBinaryClauses {
3619 get { return (_hasBits5 & 4) != 0; }
3620 }
3622 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3623 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3625 _hasBits5 &= ~4;
3626 }
3627
3629 public const int DebugPostsolveWithFullSolverFieldNumber = 162;
3630 private readonly static bool DebugPostsolveWithFullSolverDefaultValue = false;
3631
3632 private bool debugPostsolveWithFullSolver_;
3638 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3639 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3640 public bool DebugPostsolveWithFullSolver {
3641 get { if ((_hasBits3 & 268435456) != 0) { return debugPostsolveWithFullSolver_; } else { return DebugPostsolveWithFullSolverDefaultValue; } }
3642 set {
3643 _hasBits3 |= 268435456;
3644 debugPostsolveWithFullSolver_ = value;
3645 }
3646 }
3648 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3649 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3651 get { return (_hasBits3 & 268435456) != 0; }
3652 }
3654 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3655 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3656 public void ClearDebugPostsolveWithFullSolver() {
3657 _hasBits3 &= ~268435456;
3658 }
3659
3661 public const int DebugMaxNumPresolveOperationsFieldNumber = 151;
3662 private readonly static int DebugMaxNumPresolveOperationsDefaultValue = 0;
3663
3664 private int debugMaxNumPresolveOperations_;
3669 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3670 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3672 get { if ((_hasBits3 & 262144) != 0) { return debugMaxNumPresolveOperations_; } else { return DebugMaxNumPresolveOperationsDefaultValue; } }
3673 set {
3674 _hasBits3 |= 262144;
3675 debugMaxNumPresolveOperations_ = value;
3676 }
3677 }
3679 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3680 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3682 get { return (_hasBits3 & 262144) != 0; }
3683 }
3685 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3686 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3688 _hasBits3 &= ~262144;
3689 }
3690
3692 public const int DebugCrashOnBadHintFieldNumber = 195;
3693 private readonly static bool DebugCrashOnBadHintDefaultValue = false;
3694
3695 private bool debugCrashOnBadHint_;
3699 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3700 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3701 public bool DebugCrashOnBadHint {
3702 get { if ((_hasBits4 & 67108864) != 0) { return debugCrashOnBadHint_; } else { return DebugCrashOnBadHintDefaultValue; } }
3703 set {
3704 _hasBits4 |= 67108864;
3705 debugCrashOnBadHint_ = value;
3707 }
3709 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3710 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3711 public bool HasDebugCrashOnBadHint {
3712 get { return (_hasBits4 & 67108864) != 0; }
3713 }
3715 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3716 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3718 _hasBits4 &= ~67108864;
3719 }
3720
3722 public const int UseOptimizationHintsFieldNumber = 35;
3723 private readonly static bool UseOptimizationHintsDefaultValue = true;
3724
3725 private bool useOptimizationHints_;
3732 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3733 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3734 public bool UseOptimizationHints {
3735 get { if ((_hasBits0 & 65536) != 0) { return useOptimizationHints_; } else { return UseOptimizationHintsDefaultValue; } }
3736 set {
3737 _hasBits0 |= 65536;
3738 useOptimizationHints_ = value;
3739 }
3740 }
3742 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3743 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3744 public bool HasUseOptimizationHints {
3745 get { return (_hasBits0 & 65536) != 0; }
3746 }
3748 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3749 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3750 public void ClearUseOptimizationHints() {
3751 _hasBits0 &= ~65536;
3752 }
3753
3755 public const int CoreMinimizationLevelFieldNumber = 50;
3756 private readonly static int CoreMinimizationLevelDefaultValue = 2;
3757
3758 private int coreMinimizationLevel_;
3765 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3766 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3767 public int CoreMinimizationLevel {
3768 get { if ((_hasBits0 & 268435456) != 0) { return coreMinimizationLevel_; } else { return CoreMinimizationLevelDefaultValue; } }
3769 set {
3770 _hasBits0 |= 268435456;
3771 coreMinimizationLevel_ = value;
3772 }
3773 }
3775 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3776 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3777 public bool HasCoreMinimizationLevel {
3778 get { return (_hasBits0 & 268435456) != 0; }
3779 }
3781 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3782 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3783 public void ClearCoreMinimizationLevel() {
3784 _hasBits0 &= ~268435456;
3785 }
3786
3788 public const int FindMultipleCoresFieldNumber = 84;
3789 private readonly static bool FindMultipleCoresDefaultValue = true;
3790
3791 private bool findMultipleCores_;
3796 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3797 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3798 public bool FindMultipleCores {
3799 get { if ((_hasBits1 & 134217728) != 0) { return findMultipleCores_; } else { return FindMultipleCoresDefaultValue; } }
3800 set {
3801 _hasBits1 |= 134217728;
3802 findMultipleCores_ = value;
3803 }
3804 }
3806 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3807 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3809 get { return (_hasBits1 & 134217728) != 0; }
3810 }
3812 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3813 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3814 public void ClearFindMultipleCores() {
3815 _hasBits1 &= ~134217728;
3816 }
3817
3819 public const int CoverOptimizationFieldNumber = 89;
3820 private readonly static bool CoverOptimizationDefaultValue = true;
3821
3822 private bool coverOptimization_;
3828 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3829 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3830 public bool CoverOptimization {
3831 get { if ((_hasBits2 & 1) != 0) { return coverOptimization_; } else { return CoverOptimizationDefaultValue; } }
3832 set {
3833 _hasBits2 |= 1;
3834 coverOptimization_ = value;
3835 }
3836 }
3838 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3839 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3840 public bool HasCoverOptimization {
3841 get { return (_hasBits2 & 1) != 0; }
3842 }
3844 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3845 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3846 public void ClearCoverOptimization() {
3847 _hasBits2 &= ~1;
3848 }
3849
3851 public const int MaxSatAssumptionOrderFieldNumber = 51;
3852 private readonly static global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder MaxSatAssumptionOrderDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder.DefaultAssumptionOrder;
3853
3854 private global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder maxSatAssumptionOrder_;
3855 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3856 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3857 public global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder MaxSatAssumptionOrder {
3858 get { if ((_hasBits0 & 536870912) != 0) { return maxSatAssumptionOrder_; } else { return MaxSatAssumptionOrderDefaultValue; } }
3859 set {
3860 _hasBits0 |= 536870912;
3861 maxSatAssumptionOrder_ = value;
3862 }
3863 }
3865 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3866 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3867 public bool HasMaxSatAssumptionOrder {
3868 get { return (_hasBits0 & 536870912) != 0; }
3869 }
3871 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3872 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3873 public void ClearMaxSatAssumptionOrder() {
3874 _hasBits0 &= ~536870912;
3875 }
3878 public const int MaxSatReverseAssumptionOrderFieldNumber = 52;
3879 private readonly static bool MaxSatReverseAssumptionOrderDefaultValue = false;
3880
3881 private bool maxSatReverseAssumptionOrder_;
3886 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3887 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3888 public bool MaxSatReverseAssumptionOrder {
3889 get { if ((_hasBits0 & 1073741824) != 0) { return maxSatReverseAssumptionOrder_; } else { return MaxSatReverseAssumptionOrderDefaultValue; } }
3890 set {
3891 _hasBits0 |= 1073741824;
3892 maxSatReverseAssumptionOrder_ = value;
3893 }
3894 }
3896 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3897 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3899 get { return (_hasBits0 & 1073741824) != 0; }
3900 }
3902 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3903 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3904 public void ClearMaxSatReverseAssumptionOrder() {
3905 _hasBits0 &= ~1073741824;
3906 }
3907
3909 public const int MaxSatStratificationFieldNumber = 53;
3910 private readonly static global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm MaxSatStratificationDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm.StratificationDescent;
3911
3912 private global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm maxSatStratification_;
3913 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3914 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3915 public global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm MaxSatStratification {
3916 get { if ((_hasBits0 & -2147483648) != 0) { return maxSatStratification_; } else { return MaxSatStratificationDefaultValue; } }
3917 set {
3918 _hasBits0 |= -2147483648;
3919 maxSatStratification_ = value;
3920 }
3921 }
3923 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3924 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3925 public bool HasMaxSatStratification {
3926 get { return (_hasBits0 & -2147483648) != 0; }
3927 }
3929 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3930 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3931 public void ClearMaxSatStratification() {
3932 _hasBits0 &= ~-2147483648;
3933 }
3936 public const int PropagationLoopDetectionFactorFieldNumber = 221;
3937 private readonly static double PropagationLoopDetectionFactorDefaultValue = 10D;
3938
3939 private double propagationLoopDetectionFactor_;
3951 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3952 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3953 public double PropagationLoopDetectionFactor {
3954 get { if ((_hasBits5 & 8192) != 0) { return propagationLoopDetectionFactor_; } else { return PropagationLoopDetectionFactorDefaultValue; } }
3955 set {
3956 _hasBits5 |= 8192;
3957 propagationLoopDetectionFactor_ = value;
3958 }
3959 }
3961 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3962 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3964 get { return (_hasBits5 & 8192) != 0; }
3965 }
3967 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3968 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3970 _hasBits5 &= ~8192;
3971 }
3972
3975 private readonly static bool UsePrecedencesInDisjunctiveConstraintDefaultValue = true;
3976
3977 private bool usePrecedencesInDisjunctiveConstraint_;
3989 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3990 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3992 get { if ((_hasBits1 & 262144) != 0) { return usePrecedencesInDisjunctiveConstraint_; } else { return UsePrecedencesInDisjunctiveConstraintDefaultValue; } }
3993 set {
3994 _hasBits1 |= 262144;
3995 usePrecedencesInDisjunctiveConstraint_ = value;
3996 }
3997 }
3999 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4000 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4002 get { return (_hasBits1 & 262144) != 0; }
4003 }
4005 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4006 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4008 _hasBits1 &= ~262144;
4009 }
4010
4013 private readonly static int MaxSizeToCreatePrecedenceLiteralsInDisjunctiveDefaultValue = 60;
4014
4015 private int maxSizeToCreatePrecedenceLiteralsInDisjunctive_;
4023 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4024 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4026 get { if ((_hasBits5 & 2097152) != 0) { return maxSizeToCreatePrecedenceLiteralsInDisjunctive_; } else { return MaxSizeToCreatePrecedenceLiteralsInDisjunctiveDefaultValue; } }
4027 set {
4028 _hasBits5 |= 2097152;
4029 maxSizeToCreatePrecedenceLiteralsInDisjunctive_ = value;
4030 }
4031 }
4033 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4034 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4036 get { return (_hasBits5 & 2097152) != 0; }
4037 }
4039 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4040 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4042 _hasBits5 &= ~2097152;
4043 }
4044
4046 public const int UseStrongPropagationInDisjunctiveFieldNumber = 230;
4047 private readonly static bool UseStrongPropagationInDisjunctiveDefaultValue = false;
4048
4049 private bool useStrongPropagationInDisjunctive_;
4053 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4054 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4056 get { if ((_hasBits5 & 4194304) != 0) { return useStrongPropagationInDisjunctive_; } else { return UseStrongPropagationInDisjunctiveDefaultValue; } }
4057 set {
4058 _hasBits5 |= 4194304;
4059 useStrongPropagationInDisjunctive_ = value;
4060 }
4061 }
4063 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4064 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4066 get { return (_hasBits5 & 4194304) != 0; }
4067 }
4069 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4070 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4072 _hasBits5 &= ~4194304;
4074
4076 public const int UseDynamicPrecedenceInDisjunctiveFieldNumber = 263;
4077 private readonly static bool UseDynamicPrecedenceInDisjunctiveDefaultValue = false;
4078
4079 private bool useDynamicPrecedenceInDisjunctive_;
4088 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4089 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4091 get { if ((_hasBits6 & 65536) != 0) { return useDynamicPrecedenceInDisjunctive_; } else { return UseDynamicPrecedenceInDisjunctiveDefaultValue; } }
4092 set {
4093 _hasBits6 |= 65536;
4094 useDynamicPrecedenceInDisjunctive_ = value;
4095 }
4096 }
4098 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4099 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4101 get { return (_hasBits6 & 65536) != 0; }
4102 }
4104 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4105 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4107 _hasBits6 &= ~65536;
4108 }
4109
4111 public const int UseDynamicPrecedenceInCumulativeFieldNumber = 268;
4112 private readonly static bool UseDynamicPrecedenceInCumulativeDefaultValue = false;
4113
4114 private bool useDynamicPrecedenceInCumulative_;
4115 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4116 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4118 get { if ((_hasBits6 & 2097152) != 0) { return useDynamicPrecedenceInCumulative_; } else { return UseDynamicPrecedenceInCumulativeDefaultValue; } }
4119 set {
4120 _hasBits6 |= 2097152;
4121 useDynamicPrecedenceInCumulative_ = value;
4122 }
4123 }
4125 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4126 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4128 get { return (_hasBits6 & 2097152) != 0; }
4129 }
4131 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4132 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4134 _hasBits6 &= ~2097152;
4135 }
4136
4138 public const int UseOverloadCheckerInCumulativeFieldNumber = 78;
4139 private readonly static bool UseOverloadCheckerInCumulativeDefaultValue = false;
4140
4141 private bool useOverloadCheckerInCumulative_;
4151 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4152 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4153 public bool UseOverloadCheckerInCumulative {
4154 get { if ((_hasBits1 & 4194304) != 0) { return useOverloadCheckerInCumulative_; } else { return UseOverloadCheckerInCumulativeDefaultValue; } }
4155 set {
4156 _hasBits1 |= 4194304;
4157 useOverloadCheckerInCumulative_ = value;
4158 }
4159 }
4161 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4162 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4164 get { return (_hasBits1 & 4194304) != 0; }
4165 }
4167 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4168 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4170 _hasBits1 &= ~4194304;
4171 }
4172
4175 private readonly static bool UseTimetableEdgeFindingInCumulativeDefaultValue = false;
4176
4177 private bool useTimetableEdgeFindingInCumulative_;
4187 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4188 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4190 get { if ((_hasBits1 & 8388608) != 0) { return useTimetableEdgeFindingInCumulative_; } else { return UseTimetableEdgeFindingInCumulativeDefaultValue; } }
4191 set {
4192 _hasBits1 |= 8388608;
4193 useTimetableEdgeFindingInCumulative_ = value;
4194 }
4195 }
4197 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4198 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4200 get { return (_hasBits1 & 8388608) != 0; }
4201 }
4203 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4204 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4206 _hasBits1 &= ~8388608;
4207 }
4208
4211 private readonly static int MaxNumIntervalsForTimetableEdgeFindingDefaultValue = 100;
4212
4213 private int maxNumIntervalsForTimetableEdgeFinding_;
4218 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4219 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4221 get { if ((_hasBits6 & 8192) != 0) { return maxNumIntervalsForTimetableEdgeFinding_; } else { return MaxNumIntervalsForTimetableEdgeFindingDefaultValue; } }
4222 set {
4223 _hasBits6 |= 8192;
4224 maxNumIntervalsForTimetableEdgeFinding_ = value;
4225 }
4226 }
4228 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4229 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4231 get { return (_hasBits6 & 8192) != 0; }
4232 }
4234 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4235 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4237 _hasBits6 &= ~8192;
4238 }
4239
4241 public const int UseHardPrecedencesInCumulativeFieldNumber = 215;
4242 private readonly static bool UseHardPrecedencesInCumulativeDefaultValue = false;
4243
4244 private bool useHardPrecedencesInCumulative_;
4253 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4254 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4255 public bool UseHardPrecedencesInCumulative {
4256 get { if ((_hasBits5 & 512) != 0) { return useHardPrecedencesInCumulative_; } else { return UseHardPrecedencesInCumulativeDefaultValue; } }
4257 set {
4258 _hasBits5 |= 512;
4259 useHardPrecedencesInCumulative_ = value;
4261 }
4263 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4264 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4266 get { return (_hasBits5 & 512) != 0; }
4267 }
4269 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4270 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4272 _hasBits5 &= ~512;
4273 }
4274
4276 public const int ExploitAllPrecedencesFieldNumber = 220;
4277 private readonly static bool ExploitAllPrecedencesDefaultValue = false;
4278
4279 private bool exploitAllPrecedences_;
4280 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4281 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4282 public bool ExploitAllPrecedences {
4283 get { if ((_hasBits5 & 4096) != 0) { return exploitAllPrecedences_; } else { return ExploitAllPrecedencesDefaultValue; } }
4284 set {
4285 _hasBits5 |= 4096;
4286 exploitAllPrecedences_ = value;
4287 }
4288 }
4290 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4291 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4292 public bool HasExploitAllPrecedences {
4293 get { return (_hasBits5 & 4096) != 0; }
4294 }
4296 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4297 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4298 public void ClearExploitAllPrecedences() {
4299 _hasBits5 &= ~4096;
4300 }
4301
4304 private readonly static bool UseDisjunctiveConstraintInCumulativeDefaultValue = true;
4305
4306 private bool useDisjunctiveConstraintInCumulative_;
4319 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4320 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4322 get { if ((_hasBits1 & 16777216) != 0) { return useDisjunctiveConstraintInCumulative_; } else { return UseDisjunctiveConstraintInCumulativeDefaultValue; } }
4323 set {
4324 _hasBits1 |= 16777216;
4325 useDisjunctiveConstraintInCumulative_ = value;
4326 }
4327 }
4329 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4330 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4332 get { return (_hasBits1 & 16777216) != 0; }
4333 }
4335 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4336 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4338 _hasBits1 &= ~16777216;
4339 }
4340
4342 public const int UseTimetablingInNoOverlap2DFieldNumber = 200;
4343 private readonly static bool UseTimetablingInNoOverlap2DDefaultValue = false;
4344
4345 private bool useTimetablingInNoOverlap2D_;
4353 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4354 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4355 public bool UseTimetablingInNoOverlap2D {
4356 get { if ((_hasBits4 & -2147483648) != 0) { return useTimetablingInNoOverlap2D_; } else { return UseTimetablingInNoOverlap2DDefaultValue; } }
4357 set {
4358 _hasBits4 |= -2147483648;
4359 useTimetablingInNoOverlap2D_ = value;
4360 }
4361 }
4363 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4364 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4365 public bool HasUseTimetablingInNoOverlap2D {
4366 get { return (_hasBits4 & -2147483648) != 0; }
4367 }
4369 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4370 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4371 public void ClearUseTimetablingInNoOverlap2D() {
4372 _hasBits4 &= ~-2147483648;
4373 }
4374
4376 public const int UseEnergeticReasoningInNoOverlap2DFieldNumber = 213;
4377 private readonly static bool UseEnergeticReasoningInNoOverlap2DDefaultValue = false;
4378
4379 private bool useEnergeticReasoningInNoOverlap2D_;
4385 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4386 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4388 get { if ((_hasBits5 & 128) != 0) { return useEnergeticReasoningInNoOverlap2D_; } else { return UseEnergeticReasoningInNoOverlap2DDefaultValue; } }
4389 set {
4390 _hasBits5 |= 128;
4391 useEnergeticReasoningInNoOverlap2D_ = value;
4392 }
4393 }
4395 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4396 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4398 get { return (_hasBits5 & 128) != 0; }
4399 }
4401 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4402 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4404 _hasBits5 &= ~128;
4405 }
4406
4409 private readonly static bool UseAreaEnergeticReasoningInNoOverlap2DDefaultValue = false;
4410
4411 private bool useAreaEnergeticReasoningInNoOverlap2D_;
4417 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4418 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4420 get { if ((_hasBits6 & 16777216) != 0) { return useAreaEnergeticReasoningInNoOverlap2D_; } else { return UseAreaEnergeticReasoningInNoOverlap2DDefaultValue; } }
4421 set {
4422 _hasBits6 |= 16777216;
4423 useAreaEnergeticReasoningInNoOverlap2D_ = value;
4424 }
4425 }
4427 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4428 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4430 get { return (_hasBits6 & 16777216) != 0; }
4431 }
4433 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4434 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4436 _hasBits6 &= ~16777216;
4437 }
4438
4441 private readonly static int MaxPairsPairwiseReasoningInNoOverlap2DDefaultValue = 1250;
4442
4443 private int maxPairsPairwiseReasoningInNoOverlap2D_;
4449 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4450 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4452 get { if ((_hasBits6 & 536870912) != 0) { return maxPairsPairwiseReasoningInNoOverlap2D_; } else { return MaxPairsPairwiseReasoningInNoOverlap2DDefaultValue; } }
4453 set {
4454 _hasBits6 |= 536870912;
4455 maxPairsPairwiseReasoningInNoOverlap2D_ = value;
4456 }
4457 }
4459 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4460 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4462 get { return (_hasBits6 & 536870912) != 0; }
4463 }
4465 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4466 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4468 _hasBits6 &= ~536870912;
4469 }
4470
4472 public const int UseDualSchedulingHeuristicsFieldNumber = 214;
4473 private readonly static bool UseDualSchedulingHeuristicsDefaultValue = true;
4474
4475 private bool useDualSchedulingHeuristics_;
4481 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4482 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4483 public bool UseDualSchedulingHeuristics {
4484 get { if ((_hasBits5 & 256) != 0) { return useDualSchedulingHeuristics_; } else { return UseDualSchedulingHeuristicsDefaultValue; } }
4485 set {
4486 _hasBits5 |= 256;
4487 useDualSchedulingHeuristics_ = value;
4488 }
4489 }
4491 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4492 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4493 public bool HasUseDualSchedulingHeuristics {
4494 get { return (_hasBits5 & 256) != 0; }
4495 }
4497 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4498 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4499 public void ClearUseDualSchedulingHeuristics() {
4500 _hasBits5 &= ~256;
4501 }
4502
4504 public const int SearchBranchingFieldNumber = 82;
4505 private readonly static global::Google.OrTools.Sat.SatParameters.Types.SearchBranching SearchBranchingDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.SearchBranching.AutomaticSearch;
4506
4507 private global::Google.OrTools.Sat.SatParameters.Types.SearchBranching searchBranching_;
4508 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4509 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4510 public global::Google.OrTools.Sat.SatParameters.Types.SearchBranching SearchBranching {
4511 get { if ((_hasBits1 & 33554432) != 0) { return searchBranching_; } else { return SearchBranchingDefaultValue; } }
4512 set {
4513 _hasBits1 |= 33554432;
4514 searchBranching_ = value;
4515 }
4518 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4519 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4520 public bool HasSearchBranching {
4521 get { return (_hasBits1 & 33554432) != 0; }
4522 }
4524 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4525 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4526 public void ClearSearchBranching() {
4527 _hasBits1 &= ~33554432;
4528 }
4529
4531 public const int HintConflictLimitFieldNumber = 153;
4532 private readonly static int HintConflictLimitDefaultValue = 10;
4533
4534 private int hintConflictLimit_;
4538 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4539 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4540 public int HintConflictLimit {
4541 get { if ((_hasBits3 & 1048576) != 0) { return hintConflictLimit_; } else { return HintConflictLimitDefaultValue; } }
4542 set {
4543 _hasBits3 |= 1048576;
4544 hintConflictLimit_ = value;
4545 }
4546 }
4548 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4549 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4550 public bool HasHintConflictLimit {
4551 get { return (_hasBits3 & 1048576) != 0; }
4552 }
4554 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4555 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4556 public void ClearHintConflictLimit() {
4557 _hasBits3 &= ~1048576;
4558 }
4561 public const int RepairHintFieldNumber = 167;
4562 private readonly static bool RepairHintDefaultValue = false;
4563
4564 private bool repairHint_;
4571 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4572 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4573 public bool RepairHint {
4574 get { if ((_hasBits4 & 2) != 0) { return repairHint_; } else { return RepairHintDefaultValue; } }
4575 set {
4576 _hasBits4 |= 2;
4577 repairHint_ = value;
4578 }
4579 }
4581 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4582 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4583 public bool HasRepairHint {
4584 get { return (_hasBits4 & 2) != 0; }
4585 }
4587 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4588 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4589 public void ClearRepairHint() {
4590 _hasBits4 &= ~2;
4591 }
4592
4595 private readonly static bool FixVariablesToTheirHintedValueDefaultValue = false;
4596
4597 private bool fixVariablesToTheirHintedValue_;
4602 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4603 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4604 public bool FixVariablesToTheirHintedValue {
4605 get { if ((_hasBits4 & 8388608) != 0) { return fixVariablesToTheirHintedValue_; } else { return FixVariablesToTheirHintedValueDefaultValue; } }
4606 set {
4607 _hasBits4 |= 8388608;
4608 fixVariablesToTheirHintedValue_ = value;
4609 }
4610 }
4612 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4613 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4615 get { return (_hasBits4 & 8388608) != 0; }
4618 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4619 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4621 _hasBits4 &= ~8388608;
4623
4625 public const int UseProbingSearchFieldNumber = 176;
4626 private readonly static bool UseProbingSearchDefaultValue = false;
4628 private bool useProbingSearch_;
4634 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4635 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4636 public bool UseProbingSearch {
4637 get { if ((_hasBits4 & 512) != 0) { return useProbingSearch_; } else { return UseProbingSearchDefaultValue; } }
4638 set {
4639 _hasBits4 |= 512;
4640 useProbingSearch_ = value;
4641 }
4642 }
4644 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4645 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4646 public bool HasUseProbingSearch {
4647 get { return (_hasBits4 & 512) != 0; }
4648 }
4650 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4651 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4652 public void ClearUseProbingSearch() {
4653 _hasBits4 &= ~512;
4654 }
4655
4657 public const int UseExtendedProbingFieldNumber = 269;
4658 private readonly static bool UseExtendedProbingDefaultValue = true;
4659
4660 private bool useExtendedProbing_;
4664 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4665 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4666 public bool UseExtendedProbing {
4667 get { if ((_hasBits6 & 4194304) != 0) { return useExtendedProbing_; } else { return UseExtendedProbingDefaultValue; } }
4668 set {
4669 _hasBits6 |= 4194304;
4670 useExtendedProbing_ = value;
4671 }
4672 }
4674 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4675 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4676 public bool HasUseExtendedProbing {
4677 get { return (_hasBits6 & 4194304) != 0; }
4678 }
4680 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4681 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4682 public void ClearUseExtendedProbing() {
4683 _hasBits6 &= ~4194304;
4684 }
4687 public const int ProbingNumCombinationsLimitFieldNumber = 272;
4688 private readonly static int ProbingNumCombinationsLimitDefaultValue = 20000;
4689
4690 private int probingNumCombinationsLimit_;
4694 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4695 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4696 public int ProbingNumCombinationsLimit {
4697 get { if ((_hasBits6 & 33554432) != 0) { return probingNumCombinationsLimit_; } else { return ProbingNumCombinationsLimitDefaultValue; } }
4698 set {
4699 _hasBits6 |= 33554432;
4700 probingNumCombinationsLimit_ = value;
4701 }
4702 }
4704 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4705 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4706 public bool HasProbingNumCombinationsLimit {
4707 get { return (_hasBits6 & 33554432) != 0; }
4708 }
4710 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4711 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4712 public void ClearProbingNumCombinationsLimit() {
4713 _hasBits6 &= ~33554432;
4714 }
4717 public const int UseShavingInProbingSearchFieldNumber = 204;
4718 private readonly static bool UseShavingInProbingSearchDefaultValue = true;
4719
4720 private bool useShavingInProbingSearch_;
4725 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4726 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4727 public bool UseShavingInProbingSearch {
4728 get { if ((_hasBits5 & 8) != 0) { return useShavingInProbingSearch_; } else { return UseShavingInProbingSearchDefaultValue; } }
4729 set {
4730 _hasBits5 |= 8;
4731 useShavingInProbingSearch_ = value;
4732 }
4733 }
4735 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4736 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4737 public bool HasUseShavingInProbingSearch {
4738 get { return (_hasBits5 & 8) != 0; }
4741 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4742 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4743 public void ClearUseShavingInProbingSearch() {
4744 _hasBits5 &= ~8;
4746
4748 public const int ShavingSearchDeterministicTimeFieldNumber = 205;
4749 private readonly static double ShavingSearchDeterministicTimeDefaultValue = 0.001D;
4751 private double shavingSearchDeterministicTime_;
4756 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4757 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4758 public double ShavingSearchDeterministicTime {
4759 get { if ((_hasBits5 & 16) != 0) { return shavingSearchDeterministicTime_; } else { return ShavingSearchDeterministicTimeDefaultValue; } }
4760 set {
4761 _hasBits5 |= 16;
4762 shavingSearchDeterministicTime_ = value;
4763 }
4764 }
4766 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4767 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4769 get { return (_hasBits5 & 16) != 0; }
4772 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4773 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4775 _hasBits5 &= ~16;
4777
4779 public const int UseObjectiveLbSearchFieldNumber = 228;
4780 private readonly static bool UseObjectiveLbSearchDefaultValue = false;
4782 private bool useObjectiveLbSearch_;
4787 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4788 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4789 public bool UseObjectiveLbSearch {
4790 get { if ((_hasBits5 & 1048576) != 0) { return useObjectiveLbSearch_; } else { return UseObjectiveLbSearchDefaultValue; } }
4791 set {
4792 _hasBits5 |= 1048576;
4793 useObjectiveLbSearch_ = value;
4794 }
4795 }
4797 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4798 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4799 public bool HasUseObjectiveLbSearch {
4800 get { return (_hasBits5 & 1048576) != 0; }
4803 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4804 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4805 public void ClearUseObjectiveLbSearch() {
4806 _hasBits5 &= ~1048576;
4808
4810 public const int UseObjectiveShavingSearchFieldNumber = 253;
4811 private readonly static bool UseObjectiveShavingSearchDefaultValue = false;
4813 private bool useObjectiveShavingSearch_;
4819 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4820 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4821 public bool UseObjectiveShavingSearch {
4822 get { if ((_hasBits6 & 128) != 0) { return useObjectiveShavingSearch_; } else { return UseObjectiveShavingSearchDefaultValue; } }
4823 set {
4824 _hasBits6 |= 128;
4825 useObjectiveShavingSearch_ = value;
4826 }
4827 }
4829 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4830 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4831 public bool HasUseObjectiveShavingSearch {
4832 get { return (_hasBits6 & 128) != 0; }
4833 }
4835 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4836 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4837 public void ClearUseObjectiveShavingSearch() {
4838 _hasBits6 &= ~128;
4839 }
4840
4842 public const int PseudoCostReliabilityThresholdFieldNumber = 123;
4843 private readonly static long PseudoCostReliabilityThresholdDefaultValue = 100L;
4844
4845 private long pseudoCostReliabilityThreshold_;
4850 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4851 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4852 public long PseudoCostReliabilityThreshold {
4853 get { if ((_hasBits2 & 268435456) != 0) { return pseudoCostReliabilityThreshold_; } else { return PseudoCostReliabilityThresholdDefaultValue; } }
4854 set {
4855 _hasBits2 |= 268435456;
4856 pseudoCostReliabilityThreshold_ = value;
4857 }
4858 }
4860 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4861 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4863 get { return (_hasBits2 & 268435456) != 0; }
4866 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4867 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4869 _hasBits2 &= ~268435456;
4871
4873 public const int OptimizeWithCoreFieldNumber = 83;
4874 private readonly static bool OptimizeWithCoreDefaultValue = false;
4876 private bool optimizeWithCore_;
4883 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4884 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4885 public bool OptimizeWithCore {
4886 get { if ((_hasBits1 & 67108864) != 0) { return optimizeWithCore_; } else { return OptimizeWithCoreDefaultValue; } }
4887 set {
4888 _hasBits1 |= 67108864;
4889 optimizeWithCore_ = value;
4890 }
4891 }
4893 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4894 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4896 get { return (_hasBits1 & 67108864) != 0; }
4897 }
4899 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4900 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4902 _hasBits1 &= ~67108864;
4903 }
4904
4907 private readonly static bool OptimizeWithLbTreeSearchDefaultValue = false;
4908
4909 private bool optimizeWithLbTreeSearch_;
4917 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4918 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4919 public bool OptimizeWithLbTreeSearch {
4920 get { if ((_hasBits4 & 524288) != 0) { return optimizeWithLbTreeSearch_; } else { return OptimizeWithLbTreeSearchDefaultValue; } }
4921 set {
4922 _hasBits4 |= 524288;
4923 optimizeWithLbTreeSearch_ = value;
4924 }
4925 }
4927 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4928 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4929 public bool HasOptimizeWithLbTreeSearch {
4930 get { return (_hasBits4 & 524288) != 0; }
4931 }
4933 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4934 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4935 public void ClearOptimizeWithLbTreeSearch() {
4936 _hasBits4 &= ~524288;
4937 }
4938
4940 public const int BinarySearchNumConflictsFieldNumber = 99;
4941 private readonly static int BinarySearchNumConflictsDefaultValue = -1;
4942
4943 private int binarySearchNumConflicts_;
4950 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4951 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4953 get { if ((_hasBits2 & 256) != 0) { return binarySearchNumConflicts_; } else { return BinarySearchNumConflictsDefaultValue; } }
4954 set {
4955 _hasBits2 |= 256;
4956 binarySearchNumConflicts_ = value;
4957 }
4958 }
4960 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4961 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4963 get { return (_hasBits2 & 256) != 0; }
4964 }
4966 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4967 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4969 _hasBits2 &= ~256;
4970 }
4971
4973 public const int OptimizeWithMaxHsFieldNumber = 85;
4974 private readonly static bool OptimizeWithMaxHsDefaultValue = false;
4975
4976 private bool optimizeWithMaxHs_;
4985 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4986 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4987 public bool OptimizeWithMaxHs {
4988 get { if ((_hasBits1 & 268435456) != 0) { return optimizeWithMaxHs_; } else { return OptimizeWithMaxHsDefaultValue; } }
4989 set {
4990 _hasBits1 |= 268435456;
4991 optimizeWithMaxHs_ = value;
4992 }
4993 }
4995 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4996 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4997 public bool HasOptimizeWithMaxHs {
4998 get { return (_hasBits1 & 268435456) != 0; }
4999 }
5001 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5002 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5003 public void ClearOptimizeWithMaxHs() {
5004 _hasBits1 &= ~268435456;
5005 }
5008 public const int UseFeasibilityJumpFieldNumber = 265;
5009 private readonly static bool UseFeasibilityJumpDefaultValue = true;
5010
5011 private bool useFeasibilityJump_;
5017 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5018 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5019 public bool UseFeasibilityJump {
5020 get { if ((_hasBits6 & 262144) != 0) { return useFeasibilityJump_; } else { return UseFeasibilityJumpDefaultValue; } }
5021 set {
5022 _hasBits6 |= 262144;
5023 useFeasibilityJump_ = value;
5024 }
5025 }
5027 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5028 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5029 public bool HasUseFeasibilityJump {
5030 get { return (_hasBits6 & 262144) != 0; }
5031 }
5033 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5034 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5035 public void ClearUseFeasibilityJump() {
5036 _hasBits6 &= ~262144;
5037 }
5038
5040 public const int TestFeasibilityJumpFieldNumber = 240;
5041 private readonly static bool TestFeasibilityJumpDefaultValue = false;
5042
5043 private bool testFeasibilityJump_;
5048 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5049 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5050 public bool TestFeasibilityJump {
5051 get { if ((_hasBits5 & -2147483648) != 0) { return testFeasibilityJump_; } else { return TestFeasibilityJumpDefaultValue; } }
5052 set {
5053 _hasBits5 |= -2147483648;
5054 testFeasibilityJump_ = value;
5055 }
5056 }
5058 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5059 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5060 public bool HasTestFeasibilityJump {
5061 get { return (_hasBits5 & -2147483648) != 0; }
5064 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5065 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5066 public void ClearTestFeasibilityJump() {
5067 _hasBits5 &= ~-2147483648;
5069
5071 public const int FeasibilityJumpDecayFieldNumber = 242;
5072 private readonly static double FeasibilityJumpDecayDefaultValue = 0.95D;
5074 private double feasibilityJumpDecay_;
5079 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5080 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5081 public double FeasibilityJumpDecay {
5082 get { if ((_hasBits6 & 1) != 0) { return feasibilityJumpDecay_; } else { return FeasibilityJumpDecayDefaultValue; } }
5083 set {
5084 _hasBits6 |= 1;
5085 feasibilityJumpDecay_ = value;
5086 }
5087 }
5089 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5090 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5091 public bool HasFeasibilityJumpDecay {
5092 get { return (_hasBits6 & 1) != 0; }
5095 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5096 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5097 public void ClearFeasibilityJumpDecay() {
5098 _hasBits6 &= ~1;
5100
5102 public const int FeasibilityJumpLinearizationLevelFieldNumber = 257;
5103 private readonly static int FeasibilityJumpLinearizationLevelDefaultValue = 2;
5105 private int feasibilityJumpLinearizationLevel_;
5109 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5110 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5112 get { if ((_hasBits6 & 1024) != 0) { return feasibilityJumpLinearizationLevel_; } else { return FeasibilityJumpLinearizationLevelDefaultValue; } }
5113 set {
5114 _hasBits6 |= 1024;
5115 feasibilityJumpLinearizationLevel_ = value;
5116 }
5117 }
5119 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5120 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5122 get { return (_hasBits6 & 1024) != 0; }
5123 }
5125 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5126 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5128 _hasBits6 &= ~1024;
5129 }
5132 public const int FeasibilityJumpRestartFactorFieldNumber = 258;
5133 private readonly static int FeasibilityJumpRestartFactorDefaultValue = 1;
5134
5135 private int feasibilityJumpRestartFactor_;
5141 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5142 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5143 public int FeasibilityJumpRestartFactor {
5144 get { if ((_hasBits6 & 2048) != 0) { return feasibilityJumpRestartFactor_; } else { return FeasibilityJumpRestartFactorDefaultValue; } }
5145 set {
5146 _hasBits6 |= 2048;
5147 feasibilityJumpRestartFactor_ = value;
5148 }
5149 }
5151 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5152 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5154 get { return (_hasBits6 & 2048) != 0; }
5155 }
5157 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5158 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5159 public void ClearFeasibilityJumpRestartFactor() {
5160 _hasBits6 &= ~2048;
5161 }
5162
5165 private readonly static double FeasibilityJumpVarRandomizationProbabilityDefaultValue = 0D;
5166
5167 private double feasibilityJumpVarRandomizationProbability_;
5172 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5173 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5175 get { if ((_hasBits6 & 4) != 0) { return feasibilityJumpVarRandomizationProbability_; } else { return FeasibilityJumpVarRandomizationProbabilityDefaultValue; } }
5176 set {
5177 _hasBits6 |= 4;
5178 feasibilityJumpVarRandomizationProbability_ = value;
5179 }
5180 }
5182 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5183 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5185 get { return (_hasBits6 & 4) != 0; }
5188 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5189 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5191 _hasBits6 &= ~4;
5193
5196 private readonly static double FeasibilityJumpVarPerburbationRangeRatioDefaultValue = 0.2D;
5198 private double feasibilityJumpVarPerburbationRangeRatio_;
5203 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5204 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5206 get { if ((_hasBits6 & 8) != 0) { return feasibilityJumpVarPerburbationRangeRatio_; } else { return FeasibilityJumpVarPerburbationRangeRatioDefaultValue; } }
5207 set {
5208 _hasBits6 |= 8;
5209 feasibilityJumpVarPerburbationRangeRatio_ = value;
5210 }
5211 }
5213 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5214 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5216 get { return (_hasBits6 & 8) != 0; }
5219 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5220 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5222 _hasBits6 &= ~8;
5224
5226 public const int FeasibilityJumpEnableRestartsFieldNumber = 250;
5227 private readonly static bool FeasibilityJumpEnableRestartsDefaultValue = true;
5229 private bool feasibilityJumpEnableRestarts_;
5235 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5236 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5237 public bool FeasibilityJumpEnableRestarts {
5238 get { if ((_hasBits6 & 32) != 0) { return feasibilityJumpEnableRestarts_; } else { return FeasibilityJumpEnableRestartsDefaultValue; } }
5239 set {
5240 _hasBits6 |= 32;
5241 feasibilityJumpEnableRestarts_ = value;
5242 }
5243 }
5245 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5246 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5248 get { return (_hasBits6 & 32) != 0; }
5249 }
5251 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5252 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5254 _hasBits6 &= ~32;
5255 }
5256
5259 private readonly static int FeasibilityJumpMaxExpandedConstraintSizeDefaultValue = 100;
5260
5261 private int feasibilityJumpMaxExpandedConstraintSize_;
5266 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5267 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5269 get { if ((_hasBits6 & 131072) != 0) { return feasibilityJumpMaxExpandedConstraintSize_; } else { return FeasibilityJumpMaxExpandedConstraintSizeDefaultValue; } }
5270 set {
5271 _hasBits6 |= 131072;
5272 feasibilityJumpMaxExpandedConstraintSize_ = value;
5273 }
5274 }
5276 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5277 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5279 get { return (_hasBits6 & 131072) != 0; }
5282 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5283 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5285 _hasBits6 &= ~131072;
5287
5289 public const int NumViolationLsFieldNumber = 244;
5290 private readonly static int NumViolationLsDefaultValue = 0;
5292 private int numViolationLs_;
5298 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5299 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5300 public int NumViolationLs {
5301 get { if ((_hasBits6 & 2) != 0) { return numViolationLs_; } else { return NumViolationLsDefaultValue; } }
5302 set {
5303 _hasBits6 |= 2;
5304 numViolationLs_ = value;
5305 }
5306 }
5308 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5309 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5310 public bool HasNumViolationLs {
5311 get { return (_hasBits6 & 2) != 0; }
5312 }
5314 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5315 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5316 public void ClearNumViolationLs() {
5317 _hasBits6 &= ~2;
5318 }
5319
5321 public const int ViolationLsPerturbationPeriodFieldNumber = 249;
5322 private readonly static int ViolationLsPerturbationPeriodDefaultValue = 100;
5323
5324 private int violationLsPerturbationPeriod_;
5328 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5329 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5331 get { if ((_hasBits6 & 16) != 0) { return violationLsPerturbationPeriod_; } else { return ViolationLsPerturbationPeriodDefaultValue; } }
5332 set {
5333 _hasBits6 |= 16;
5334 violationLsPerturbationPeriod_ = value;
5335 }
5336 }
5338 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5339 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5341 get { return (_hasBits6 & 16) != 0; }
5342 }
5344 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5345 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5347 _hasBits6 &= ~16;
5348 }
5352 private readonly static double ViolationLsCompoundMoveProbabilityDefaultValue = 0.5D;
5353
5354 private double violationLsCompoundMoveProbability_;
5359 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5360 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5362 get { if ((_hasBits6 & 4096) != 0) { return violationLsCompoundMoveProbability_; } else { return ViolationLsCompoundMoveProbabilityDefaultValue; } }
5363 set {
5364 _hasBits6 |= 4096;
5365 violationLsCompoundMoveProbability_ = value;
5366 }
5367 }
5369 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5370 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5372 get { return (_hasBits6 & 4096) != 0; }
5375 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5376 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5378 _hasBits6 &= ~4096;
5380
5382 public const int SharedTreeNumWorkersFieldNumber = 235;
5383 private readonly static int SharedTreeNumWorkersDefaultValue = 0;
5385 private int sharedTreeNumWorkers_;
5393 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5394 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5395 public int SharedTreeNumWorkers {
5396 get { if ((_hasBits5 & 67108864) != 0) { return sharedTreeNumWorkers_; } else { return SharedTreeNumWorkersDefaultValue; } }
5397 set {
5398 _hasBits5 |= 67108864;
5399 sharedTreeNumWorkers_ = value;
5400 }
5401 }
5403 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5404 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5405 public bool HasSharedTreeNumWorkers {
5406 get { return (_hasBits5 & 67108864) != 0; }
5407 }
5409 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5410 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5411 public void ClearSharedTreeNumWorkers() {
5412 _hasBits5 &= ~67108864;
5413 }
5414
5416 public const int UseSharedTreeSearchFieldNumber = 236;
5417 private readonly static bool UseSharedTreeSearchDefaultValue = false;
5418
5419 private bool useSharedTreeSearch_;
5423 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5424 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5425 public bool UseSharedTreeSearch {
5426 get { if ((_hasBits5 & 134217728) != 0) { return useSharedTreeSearch_; } else { return UseSharedTreeSearchDefaultValue; } }
5427 set {
5428 _hasBits5 |= 134217728;
5429 useSharedTreeSearch_ = value;
5430 }
5431 }
5433 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5434 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5435 public bool HasUseSharedTreeSearch {
5436 get { return (_hasBits5 & 134217728) != 0; }
5437 }
5439 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5440 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5441 public void ClearUseSharedTreeSearch() {
5442 _hasBits5 &= ~134217728;
5443 }
5447 private readonly static double SharedTreeWorkerObjectiveSplitProbabilityDefaultValue = 0.5D;
5448
5449 private double sharedTreeWorkerObjectiveSplitProbability_;
5455 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5456 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5458 get { if ((_hasBits5 & 268435456) != 0) { return sharedTreeWorkerObjectiveSplitProbability_; } else { return SharedTreeWorkerObjectiveSplitProbabilityDefaultValue; } }
5459 set {
5460 _hasBits5 |= 268435456;
5461 sharedTreeWorkerObjectiveSplitProbability_ = value;
5462 }
5463 }
5465 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5466 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5468 get { return (_hasBits5 & 268435456) != 0; }
5469 }
5471 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5472 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5474 _hasBits5 &= ~268435456;
5475 }
5476
5478 public const int SharedTreeMaxNodesPerWorkerFieldNumber = 238;
5479 private readonly static int SharedTreeMaxNodesPerWorkerDefaultValue = 128;
5480
5481 private int sharedTreeMaxNodesPerWorker_;
5488 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5489 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5491 get { if ((_hasBits5 & 536870912) != 0) { return sharedTreeMaxNodesPerWorker_; } else { return SharedTreeMaxNodesPerWorkerDefaultValue; } }
5492 set {
5493 _hasBits5 |= 536870912;
5494 sharedTreeMaxNodesPerWorker_ = value;
5495 }
5496 }
5498 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5499 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5501 get { return (_hasBits5 & 536870912) != 0; }
5502 }
5504 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5505 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5507 _hasBits5 &= ~536870912;
5508 }
5509
5512 private readonly static global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy SharedTreeSplitStrategyDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy.SplitStrategyAuto;
5513
5514 private global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy sharedTreeSplitStrategy_;
5515 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5516 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5517 public global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy SharedTreeSplitStrategy {
5518 get { if ((_hasBits5 & 1073741824) != 0) { return sharedTreeSplitStrategy_; } else { return SharedTreeSplitStrategyDefaultValue; } }
5519 set {
5520 _hasBits5 |= 1073741824;
5521 sharedTreeSplitStrategy_ = value;
5522 }
5525 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5526 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5527 public bool HasSharedTreeSplitStrategy {
5528 get { return (_hasBits5 & 1073741824) != 0; }
5529 }
5531 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5532 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5534 _hasBits5 &= ~1073741824;
5535 }
5536
5538 public const int EnumerateAllSolutionsFieldNumber = 87;
5539 private readonly static bool EnumerateAllSolutionsDefaultValue = false;
5540
5541 private bool enumerateAllSolutions_;
5551 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5552 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5553 public bool EnumerateAllSolutions {
5554 get { if ((_hasBits1 & 1073741824) != 0) { return enumerateAllSolutions_; } else { return EnumerateAllSolutionsDefaultValue; } }
5555 set {
5556 _hasBits1 |= 1073741824;
5557 enumerateAllSolutions_ = value;
5558 }
5559 }
5561 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5562 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5563 public bool HasEnumerateAllSolutions {
5564 get { return (_hasBits1 & 1073741824) != 0; }
5565 }
5567 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5568 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5569 public void ClearEnumerateAllSolutions() {
5570 _hasBits1 &= ~1073741824;
5572
5574 public const int KeepAllFeasibleSolutionsInPresolveFieldNumber = 173;
5575 private readonly static bool KeepAllFeasibleSolutionsInPresolveDefaultValue = false;
5576
5577 private bool keepAllFeasibleSolutionsInPresolve_;
5588 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5589 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5591 get { if ((_hasBits4 & 64) != 0) { return keepAllFeasibleSolutionsInPresolve_; } else { return KeepAllFeasibleSolutionsInPresolveDefaultValue; } }
5592 set {
5593 _hasBits4 |= 64;
5594 keepAllFeasibleSolutionsInPresolve_ = value;
5595 }
5596 }
5598 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5599 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5601 get { return (_hasBits4 & 64) != 0; }
5602 }
5604 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5605 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5607 _hasBits4 &= ~64;
5609
5611 public const int FillTightenedDomainsInResponseFieldNumber = 132;
5612 private readonly static bool FillTightenedDomainsInResponseDefaultValue = false;
5613
5614 private bool fillTightenedDomainsInResponse_;
5622 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5623 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5624 public bool FillTightenedDomainsInResponse {
5625 get { if ((_hasBits3 & 32) != 0) { return fillTightenedDomainsInResponse_; } else { return FillTightenedDomainsInResponseDefaultValue; } }
5626 set {
5627 _hasBits3 |= 32;
5628 fillTightenedDomainsInResponse_ = value;
5629 }
5630 }
5632 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5633 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5635 get { return (_hasBits3 & 32) != 0; }
5636 }
5638 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5639 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5641 _hasBits3 &= ~32;
5642 }
5643
5645 public const int FillAdditionalSolutionsInResponseFieldNumber = 194;
5646 private readonly static bool FillAdditionalSolutionsInResponseDefaultValue = false;
5647
5648 private bool fillAdditionalSolutionsInResponse_;
5661 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5662 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5664 get { if ((_hasBits4 & 33554432) != 0) { return fillAdditionalSolutionsInResponse_; } else { return FillAdditionalSolutionsInResponseDefaultValue; } }
5665 set {
5666 _hasBits4 |= 33554432;
5667 fillAdditionalSolutionsInResponse_ = value;
5668 }
5671 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5672 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5674 get { return (_hasBits4 & 33554432) != 0; }
5677 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5678 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5680 _hasBits4 &= ~33554432;
5681 }
5682
5684 public const int InstantiateAllVariablesFieldNumber = 106;
5685 private readonly static bool InstantiateAllVariablesDefaultValue = true;
5686
5687 private bool instantiateAllVariables_;
5694 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5695 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5696 public bool InstantiateAllVariables {
5697 get { if ((_hasBits2 & 8192) != 0) { return instantiateAllVariables_; } else { return InstantiateAllVariablesDefaultValue; } }
5698 set {
5699 _hasBits2 |= 8192;
5700 instantiateAllVariables_ = value;
5701 }
5702 }
5704 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5705 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5706 public bool HasInstantiateAllVariables {
5707 get { return (_hasBits2 & 8192) != 0; }
5708 }
5710 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5711 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5712 public void ClearInstantiateAllVariables() {
5713 _hasBits2 &= ~8192;
5714 }
5715
5718 private readonly static bool AutoDetectGreaterThanAtLeastOneOfDefaultValue = true;
5719
5720 private bool autoDetectGreaterThanAtLeastOneOf_;
5727 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5728 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5730 get { if ((_hasBits2 & 64) != 0) { return autoDetectGreaterThanAtLeastOneOf_; } else { return AutoDetectGreaterThanAtLeastOneOfDefaultValue; } }
5731 set {
5732 _hasBits2 |= 64;
5733 autoDetectGreaterThanAtLeastOneOf_ = value;
5734 }
5735 }
5737 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5738 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5740 get { return (_hasBits2 & 64) != 0; }
5741 }
5743 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5744 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5746 _hasBits2 &= ~64;
5747 }
5748
5750 public const int StopAfterFirstSolutionFieldNumber = 98;
5751 private readonly static bool StopAfterFirstSolutionDefaultValue = false;
5752
5753 private bool stopAfterFirstSolution_;
5757 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5758 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5759 public bool StopAfterFirstSolution {
5760 get { if ((_hasBits2 & 128) != 0) { return stopAfterFirstSolution_; } else { return StopAfterFirstSolutionDefaultValue; } }
5761 set {
5762 _hasBits2 |= 128;
5763 stopAfterFirstSolution_ = value;
5764 }
5765 }
5767 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5768 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5769 public bool HasStopAfterFirstSolution {
5770 get { return (_hasBits2 & 128) != 0; }
5771 }
5773 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5774 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5775 public void ClearStopAfterFirstSolution() {
5776 _hasBits2 &= ~128;
5777 }
5778
5780 public const int StopAfterPresolveFieldNumber = 149;
5781 private readonly static bool StopAfterPresolveDefaultValue = false;
5783 private bool stopAfterPresolve_;
5788 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5789 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5790 public bool StopAfterPresolve {
5791 get { if ((_hasBits3 & 131072) != 0) { return stopAfterPresolve_; } else { return StopAfterPresolveDefaultValue; } }
5792 set {
5793 _hasBits3 |= 131072;
5794 stopAfterPresolve_ = value;
5795 }
5798 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5799 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5800 public bool HasStopAfterPresolve {
5801 get { return (_hasBits3 & 131072) != 0; }
5802 }
5804 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5805 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5807 _hasBits3 &= ~131072;
5808 }
5809
5811 public const int StopAfterRootPropagationFieldNumber = 252;
5812 private readonly static bool StopAfterRootPropagationDefaultValue = false;
5813
5814 private bool stopAfterRootPropagation_;
5815 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5816 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5818 get { if ((_hasBits6 & 64) != 0) { return stopAfterRootPropagation_; } else { return StopAfterRootPropagationDefaultValue; } }
5819 set {
5820 _hasBits6 |= 64;
5821 stopAfterRootPropagation_ = value;
5822 }
5823 }
5825 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5826 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5828 get { return (_hasBits6 & 64) != 0; }
5829 }
5831 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5832 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5833 public void ClearStopAfterRootPropagation() {
5834 _hasBits6 &= ~64;
5835 }
5836
5838 public const int UseLnsOnlyFieldNumber = 101;
5839 private readonly static bool UseLnsOnlyDefaultValue = false;
5840
5841 private bool useLnsOnly_;
5845 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5846 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5847 public bool UseLnsOnly {
5848 get { if ((_hasBits2 & 1024) != 0) { return useLnsOnly_; } else { return UseLnsOnlyDefaultValue; } }
5849 set {
5850 _hasBits2 |= 1024;
5851 useLnsOnly_ = value;
5852 }
5853 }
5855 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5856 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5857 public bool HasUseLnsOnly {
5858 get { return (_hasBits2 & 1024) != 0; }
5859 }
5861 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5862 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5863 public void ClearUseLnsOnly() {
5864 _hasBits2 &= ~1024;
5865 }
5866
5868 public const int SolutionPoolSizeFieldNumber = 193;
5869 private readonly static int SolutionPoolSizeDefaultValue = 3;
5871 private int solutionPoolSize_;
5877 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5878 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5879 public int SolutionPoolSize {
5880 get { if ((_hasBits4 & 16777216) != 0) { return solutionPoolSize_; } else { return SolutionPoolSizeDefaultValue; } }
5881 set {
5882 _hasBits4 |= 16777216;
5883 solutionPoolSize_ = value;
5885 }
5887 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5888 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5889 public bool HasSolutionPoolSize {
5890 get { return (_hasBits4 & 16777216) != 0; }
5891 }
5893 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5894 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5895 public void ClearSolutionPoolSize() {
5896 _hasBits4 &= ~16777216;
5897 }
5898
5900 public const int UseRinsLnsFieldNumber = 129;
5901 private readonly static bool UseRinsLnsDefaultValue = true;
5902
5903 private bool useRinsLns_;
5907 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5908 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5909 public bool UseRinsLns {
5910 get { if ((_hasBits3 & 4) != 0) { return useRinsLns_; } else { return UseRinsLnsDefaultValue; } }
5911 set {
5912 _hasBits3 |= 4;
5913 useRinsLns_ = value;
5914 }
5915 }
5917 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5918 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5919 public bool HasUseRinsLns {
5920 get { return (_hasBits3 & 4) != 0; }
5921 }
5923 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5924 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5925 public void ClearUseRinsLns() {
5926 _hasBits3 &= ~4;
5927 }
5928
5930 public const int UseFeasibilityPumpFieldNumber = 164;
5931 private readonly static bool UseFeasibilityPumpDefaultValue = true;
5933 private bool useFeasibilityPump_;
5937 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5938 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5939 public bool UseFeasibilityPump {
5940 get { if ((_hasBits3 & 1073741824) != 0) { return useFeasibilityPump_; } else { return UseFeasibilityPumpDefaultValue; } }
5941 set {
5942 _hasBits3 |= 1073741824;
5943 useFeasibilityPump_ = value;
5944 }
5945 }
5947 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5948 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5949 public bool HasUseFeasibilityPump {
5950 get { return (_hasBits3 & 1073741824) != 0; }
5951 }
5953 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5954 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5955 public void ClearUseFeasibilityPump() {
5956 _hasBits3 &= ~1073741824;
5957 }
5958
5960 public const int UseLbRelaxLnsFieldNumber = 255;
5961 private readonly static bool UseLbRelaxLnsDefaultValue = false;
5963 private bool useLbRelaxLns_;
5969 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5970 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5971 public bool UseLbRelaxLns {
5972 get { if ((_hasBits6 & 256) != 0) { return useLbRelaxLns_; } else { return UseLbRelaxLnsDefaultValue; } }
5973 set {
5974 _hasBits6 |= 256;
5975 useLbRelaxLns_ = value;
5977 }
5979 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5980 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5981 public bool HasUseLbRelaxLns {
5982 get { return (_hasBits6 & 256) != 0; }
5983 }
5985 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5986 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5987 public void ClearUseLbRelaxLns() {
5988 _hasBits6 &= ~256;
5989 }
5990
5992 public const int FpRoundingFieldNumber = 165;
5993 private readonly static global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod FpRoundingDefaultValue = global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod.PropagationAssisted;
5994
5995 private global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod fpRounding_;
5996 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
5997 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
5998 public global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod FpRounding {
5999 get { if ((_hasBits3 & -2147483648) != 0) { return fpRounding_; } else { return FpRoundingDefaultValue; } }
6000 set {
6001 _hasBits3 |= -2147483648;
6002 fpRounding_ = value;
6003 }
6004 }
6006 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6007 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6008 public bool HasFpRounding {
6009 get { return (_hasBits3 & -2147483648) != 0; }
6010 }
6012 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6013 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6014 public void ClearFpRounding() {
6015 _hasBits3 &= ~-2147483648;
6016 }
6017
6019 public const int DiversifyLnsParamsFieldNumber = 137;
6020 private readonly static bool DiversifyLnsParamsDefaultValue = false;
6021
6022 private bool diversifyLnsParams_;
6026 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6027 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6028 public bool DiversifyLnsParams {
6029 get { if ((_hasBits3 & 1024) != 0) { return diversifyLnsParams_; } else { return DiversifyLnsParamsDefaultValue; } }
6030 set {
6031 _hasBits3 |= 1024;
6032 diversifyLnsParams_ = value;
6033 }
6034 }
6036 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6037 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6038 public bool HasDiversifyLnsParams {
6039 get { return (_hasBits3 & 1024) != 0; }
6040 }
6042 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6043 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6044 public void ClearDiversifyLnsParams() {
6045 _hasBits3 &= ~1024;
6046 }
6047
6049 public const int RandomizeSearchFieldNumber = 103;
6050 private readonly static bool RandomizeSearchDefaultValue = false;
6052 private bool randomizeSearch_;
6056 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6057 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6058 public bool RandomizeSearch {
6059 get { if ((_hasBits2 & 2048) != 0) { return randomizeSearch_; } else { return RandomizeSearchDefaultValue; } }
6060 set {
6061 _hasBits2 |= 2048;
6062 randomizeSearch_ = value;
6063 }
6064 }
6066 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6067 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6068 public bool HasRandomizeSearch {
6069 get { return (_hasBits2 & 2048) != 0; }
6070 }
6072 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6073 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6074 public void ClearRandomizeSearch() {
6075 _hasBits2 &= ~2048;
6076 }
6077
6079 public const int SearchRandomVariablePoolSizeFieldNumber = 104;
6080 private readonly static long SearchRandomVariablePoolSizeDefaultValue = 0L;
6082 private long searchRandomVariablePoolSize_;
6088 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6089 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6090 public long SearchRandomVariablePoolSize {
6091 get { if ((_hasBits2 & 4096) != 0) { return searchRandomVariablePoolSize_; } else { return SearchRandomVariablePoolSizeDefaultValue; } }
6092 set {
6093 _hasBits2 |= 4096;
6094 searchRandomVariablePoolSize_ = value;
6096 }
6098 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6099 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6101 get { return (_hasBits2 & 4096) != 0; }
6102 }
6104 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6105 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6106 public void ClearSearchRandomVariablePoolSize() {
6107 _hasBits2 &= ~4096;
6108 }
6109
6112 private readonly static bool PushAllTasksTowardStartDefaultValue = false;
6113
6114 private bool pushAllTasksTowardStart_;
6119 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6120 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6121 public bool PushAllTasksTowardStart {
6122 get { if ((_hasBits6 & 32768) != 0) { return pushAllTasksTowardStart_; } else { return PushAllTasksTowardStartDefaultValue; } }
6123 set {
6124 _hasBits6 |= 32768;
6125 pushAllTasksTowardStart_ = value;
6126 }
6129 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6130 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6131 public bool HasPushAllTasksTowardStart {
6132 get { return (_hasBits6 & 32768) != 0; }
6133 }
6135 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6136 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6138 _hasBits6 &= ~32768;
6139 }
6140
6142 public const int UseOptionalVariablesFieldNumber = 108;
6143 private readonly static bool UseOptionalVariablesDefaultValue = false;
6144
6145 private bool useOptionalVariables_;
6154 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6155 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6156 public bool UseOptionalVariables {
6157 get { if ((_hasBits2 & 32768) != 0) { return useOptionalVariables_; } else { return UseOptionalVariablesDefaultValue; } }
6158 set {
6159 _hasBits2 |= 32768;
6160 useOptionalVariables_ = value;
6161 }
6162 }
6164 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6165 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6166 public bool HasUseOptionalVariables {
6167 get { return (_hasBits2 & 32768) != 0; }
6170 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6171 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6172 public void ClearUseOptionalVariables() {
6173 _hasBits2 &= ~32768;
6175
6177 public const int UseExactLpReasonFieldNumber = 109;
6178 private readonly static bool UseExactLpReasonDefaultValue = true;
6180 private bool useExactLpReason_;
6187 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6188 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6189 public bool UseExactLpReason {
6190 get { if ((_hasBits2 & 65536) != 0) { return useExactLpReason_; } else { return UseExactLpReasonDefaultValue; } }
6191 set {
6192 _hasBits2 |= 65536;
6193 useExactLpReason_ = value;
6195 }
6197 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6198 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6199 public bool HasUseExactLpReason {
6200 get { return (_hasBits2 & 65536) != 0; }
6201 }
6203 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6204 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6205 public void ClearUseExactLpReason() {
6206 _hasBits2 &= ~65536;
6207 }
6208
6210 public const int UseCombinedNoOverlapFieldNumber = 133;
6211 private readonly static bool UseCombinedNoOverlapDefaultValue = false;
6212
6213 private bool useCombinedNoOverlap_;
6219 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6220 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6221 public bool UseCombinedNoOverlap {
6222 get { if ((_hasBits3 & 64) != 0) { return useCombinedNoOverlap_; } else { return UseCombinedNoOverlapDefaultValue; } }
6223 set {
6224 _hasBits3 |= 64;
6225 useCombinedNoOverlap_ = value;
6226 }
6229 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6230 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6231 public bool HasUseCombinedNoOverlap {
6232 get { return (_hasBits3 & 64) != 0; }
6233 }
6235 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6236 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6238 _hasBits3 &= ~64;
6239 }
6240
6242 public const int AtMostOneMaxExpansionSizeFieldNumber = 270;
6243 private readonly static int AtMostOneMaxExpansionSizeDefaultValue = 3;
6244
6245 private int atMostOneMaxExpansionSize_;
6250 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6251 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6252 public int AtMostOneMaxExpansionSize {
6253 get { if ((_hasBits6 & 8388608) != 0) { return atMostOneMaxExpansionSize_; } else { return AtMostOneMaxExpansionSizeDefaultValue; } }
6254 set {
6255 _hasBits6 |= 8388608;
6256 atMostOneMaxExpansionSize_ = value;
6257 }
6258 }
6260 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6261 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6262 public bool HasAtMostOneMaxExpansionSize {
6263 get { return (_hasBits6 & 8388608) != 0; }
6264 }
6266 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6267 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6268 public void ClearAtMostOneMaxExpansionSize() {
6269 _hasBits6 &= ~8388608;
6270 }
6271
6273 public const int CatchSigintSignalFieldNumber = 135;
6274 private readonly static bool CatchSigintSignalDefaultValue = true;
6276 private bool catchSigintSignal_;
6282 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6283 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6284 public bool CatchSigintSignal {
6285 get { if ((_hasBits3 & 256) != 0) { return catchSigintSignal_; } else { return CatchSigintSignalDefaultValue; } }
6286 set {
6287 _hasBits3 |= 256;
6288 catchSigintSignal_ = value;
6289 }
6292 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6293 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6294 public bool HasCatchSigintSignal {
6295 get { return (_hasBits3 & 256) != 0; }
6296 }
6298 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6299 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6301 _hasBits3 &= ~256;
6302 }
6303
6305 public const int UseImpliedBoundsFieldNumber = 144;
6306 private readonly static bool UseImpliedBoundsDefaultValue = true;
6307
6308 private bool useImpliedBounds_;
6314 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6315 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6316 public bool UseImpliedBounds {
6317 get { if ((_hasBits3 & 4096) != 0) { return useImpliedBounds_; } else { return UseImpliedBoundsDefaultValue; } }
6318 set {
6319 _hasBits3 |= 4096;
6320 useImpliedBounds_ = value;
6321 }
6324 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6325 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6326 public bool HasUseImpliedBounds {
6327 get { return (_hasBits3 & 4096) != 0; }
6328 }
6330 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6331 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6333 _hasBits3 &= ~4096;
6334 }
6335
6337 public const int PolishLpSolutionFieldNumber = 175;
6338 private readonly static bool PolishLpSolutionDefaultValue = false;
6339
6340 private bool polishLpSolution_;
6347 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6348 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6349 public bool PolishLpSolution {
6350 get { if ((_hasBits4 & 256) != 0) { return polishLpSolution_; } else { return PolishLpSolutionDefaultValue; } }
6351 set {
6352 _hasBits4 |= 256;
6353 polishLpSolution_ = value;
6355 }
6357 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6358 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6359 public bool HasPolishLpSolution {
6360 get { return (_hasBits4 & 256) != 0; }
6361 }
6363 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6364 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6365 public void ClearPolishLpSolution() {
6366 _hasBits4 &= ~256;
6367 }
6368
6370 public const int LpPrimalToleranceFieldNumber = 266;
6371 private readonly static double LpPrimalToleranceDefaultValue = 1e-07D;
6372
6373 private double lpPrimalTolerance_;
6381 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6382 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6383 public double LpPrimalTolerance {
6384 get { if ((_hasBits6 & 524288) != 0) { return lpPrimalTolerance_; } else { return LpPrimalToleranceDefaultValue; } }
6385 set {
6386 _hasBits6 |= 524288;
6387 lpPrimalTolerance_ = value;
6388 }
6389 }
6391 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6392 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6393 public bool HasLpPrimalTolerance {
6394 get { return (_hasBits6 & 524288) != 0; }
6395 }
6397 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6398 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6399 public void ClearLpPrimalTolerance() {
6400 _hasBits6 &= ~524288;
6401 }
6402
6404 public const int LpDualToleranceFieldNumber = 267;
6405 private readonly static double LpDualToleranceDefaultValue = 1e-07D;
6406
6407 private double lpDualTolerance_;
6408 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6409 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6410 public double LpDualTolerance {
6411 get { if ((_hasBits6 & 1048576) != 0) { return lpDualTolerance_; } else { return LpDualToleranceDefaultValue; } }
6412 set {
6413 _hasBits6 |= 1048576;
6414 lpDualTolerance_ = value;
6415 }
6416 }
6418 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6419 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6420 public bool HasLpDualTolerance {
6421 get { return (_hasBits6 & 1048576) != 0; }
6422 }
6424 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6425 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6426 public void ClearLpDualTolerance() {
6427 _hasBits6 &= ~1048576;
6428 }
6429
6431 public const int ConvertIntervalsFieldNumber = 177;
6432 private readonly static bool ConvertIntervalsDefaultValue = true;
6433
6434 private bool convertIntervals_;
6440 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6441 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6442 public bool ConvertIntervals {
6443 get { if ((_hasBits4 & 1024) != 0) { return convertIntervals_; } else { return ConvertIntervalsDefaultValue; } }
6444 set {
6445 _hasBits4 |= 1024;
6446 convertIntervals_ = value;
6447 }
6450 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6451 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6452 public bool HasConvertIntervals {
6453 get { return (_hasBits4 & 1024) != 0; }
6454 }
6456 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6457 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6459 _hasBits4 &= ~1024;
6460 }
6461
6463 public const int SymmetryLevelFieldNumber = 183;
6464 private readonly static int SymmetryLevelDefaultValue = 2;
6465
6466 private int symmetryLevel_;
6473 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6474 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6475 public int SymmetryLevel {
6476 get { if ((_hasBits4 & 65536) != 0) { return symmetryLevel_; } else { return SymmetryLevelDefaultValue; } }
6477 set {
6478 _hasBits4 |= 65536;
6479 symmetryLevel_ = value;
6481 }
6483 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6484 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6485 public bool HasSymmetryLevel {
6486 get { return (_hasBits4 & 65536) != 0; }
6487 }
6489 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6490 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6491 public void ClearSymmetryLevel() {
6492 _hasBits4 &= ~65536;
6493 }
6494
6496 public const int NewLinearPropagationFieldNumber = 224;
6497 private readonly static bool NewLinearPropagationDefaultValue = false;
6498
6499 private bool newLinearPropagation_;
6503 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6504 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6505 public bool NewLinearPropagation {
6506 get { if ((_hasBits5 & 65536) != 0) { return newLinearPropagation_; } else { return NewLinearPropagationDefaultValue; } }
6507 set {
6508 _hasBits5 |= 65536;
6509 newLinearPropagation_ = value;
6510 }
6511 }
6513 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6514 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6515 public bool HasNewLinearPropagation {
6516 get { return (_hasBits5 & 65536) != 0; }
6517 }
6519 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6520 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6521 public void ClearNewLinearPropagation() {
6522 _hasBits5 &= ~65536;
6524
6526 public const int LinearSplitSizeFieldNumber = 256;
6527 private readonly static int LinearSplitSizeDefaultValue = 100;
6528
6529 private int linearSplitSize_;
6535 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6536 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6537 public int LinearSplitSize {
6538 get { if ((_hasBits6 & 512) != 0) { return linearSplitSize_; } else { return LinearSplitSizeDefaultValue; } }
6539 set {
6540 _hasBits6 |= 512;
6541 linearSplitSize_ = value;
6542 }
6545 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6546 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6547 public bool HasLinearSplitSize {
6548 get { return (_hasBits6 & 512) != 0; }
6549 }
6551 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6552 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6553 public void ClearLinearSplitSize() {
6554 _hasBits6 &= ~512;
6555 }
6556
6558 public const int LinearizationLevelFieldNumber = 90;
6559 private readonly static int LinearizationLevelDefaultValue = 1;
6560
6561 private int linearizationLevel_;
6568 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6569 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6570 public int LinearizationLevel {
6571 get { if ((_hasBits2 & 2) != 0) { return linearizationLevel_; } else { return LinearizationLevelDefaultValue; } }
6572 set {
6573 _hasBits2 |= 2;
6574 linearizationLevel_ = value;
6576 }
6578 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6579 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6580 public bool HasLinearizationLevel {
6581 get { return (_hasBits2 & 2) != 0; }
6582 }
6584 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6585 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6586 public void ClearLinearizationLevel() {
6587 _hasBits2 &= ~2;
6588 }
6589
6591 public const int BooleanEncodingLevelFieldNumber = 107;
6592 private readonly static int BooleanEncodingLevelDefaultValue = 1;
6593
6594 private int booleanEncodingLevel_;
6599 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6600 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6601 public int BooleanEncodingLevel {
6602 get { if ((_hasBits2 & 16384) != 0) { return booleanEncodingLevel_; } else { return BooleanEncodingLevelDefaultValue; } }
6603 set {
6604 _hasBits2 |= 16384;
6605 booleanEncodingLevel_ = value;
6606 }
6607 }
6609 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6610 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6611 public bool HasBooleanEncodingLevel {
6612 get { return (_hasBits2 & 16384) != 0; }
6613 }
6615 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6616 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6617 public void ClearBooleanEncodingLevel() {
6618 _hasBits2 &= ~16384;
6619 }
6620
6623 private readonly static int MaxDomainSizeWhenEncodingEqNeqConstraintsDefaultValue = 16;
6625 private int maxDomainSizeWhenEncodingEqNeqConstraints_;
6632 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6633 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6635 get { if ((_hasBits4 & 4194304) != 0) { return maxDomainSizeWhenEncodingEqNeqConstraints_; } else { return MaxDomainSizeWhenEncodingEqNeqConstraintsDefaultValue; } }
6636 set {
6637 _hasBits4 |= 4194304;
6638 maxDomainSizeWhenEncodingEqNeqConstraints_ = value;
6640 }
6642 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6643 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6645 get { return (_hasBits4 & 4194304) != 0; }
6646 }
6648 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6649 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6651 _hasBits4 &= ~4194304;
6652 }
6653
6655 public const int MaxNumCutsFieldNumber = 91;
6656 private readonly static int MaxNumCutsDefaultValue = 10000;
6657
6658 private int maxNumCuts_;
6666 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6667 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6668 public int MaxNumCuts {
6669 get { if ((_hasBits2 & 4) != 0) { return maxNumCuts_; } else { return MaxNumCutsDefaultValue; } }
6670 set {
6671 _hasBits2 |= 4;
6672 maxNumCuts_ = value;
6673 }
6674 }
6676 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6677 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6678 public bool HasMaxNumCuts {
6679 get { return (_hasBits2 & 4) != 0; }
6680 }
6682 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6683 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6684 public void ClearMaxNumCuts() {
6685 _hasBits2 &= ~4;
6686 }
6687
6689 public const int CutLevelFieldNumber = 196;
6690 private readonly static int CutLevelDefaultValue = 1;
6691
6692 private int cutLevel_;
6698 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6699 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6700 public int CutLevel {
6701 get { if ((_hasBits4 & 134217728) != 0) { return cutLevel_; } else { return CutLevelDefaultValue; } }
6702 set {
6703 _hasBits4 |= 134217728;
6704 cutLevel_ = value;
6705 }
6706 }
6708 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6709 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6710 public bool HasCutLevel {
6711 get { return (_hasBits4 & 134217728) != 0; }
6712 }
6714 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6715 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6716 public void ClearCutLevel() {
6717 _hasBits4 &= ~134217728;
6718 }
6719
6721 public const int OnlyAddCutsAtLevelZeroFieldNumber = 92;
6722 private readonly static bool OnlyAddCutsAtLevelZeroDefaultValue = false;
6724 private bool onlyAddCutsAtLevelZero_;
6729 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6730 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6731 public bool OnlyAddCutsAtLevelZero {
6732 get { if ((_hasBits2 & 8) != 0) { return onlyAddCutsAtLevelZero_; } else { return OnlyAddCutsAtLevelZeroDefaultValue; } }
6733 set {
6734 _hasBits2 |= 8;
6735 onlyAddCutsAtLevelZero_ = value;
6736 }
6737 }
6739 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6740 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6741 public bool HasOnlyAddCutsAtLevelZero {
6742 get { return (_hasBits2 & 8) != 0; }
6743 }
6745 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6746 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6747 public void ClearOnlyAddCutsAtLevelZero() {
6748 _hasBits2 &= ~8;
6750
6752 public const int AddObjectiveCutFieldNumber = 197;
6753 private readonly static bool AddObjectiveCutDefaultValue = false;
6754
6755 private bool addObjectiveCut_;
6763 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6764 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6765 public bool AddObjectiveCut {
6766 get { if ((_hasBits4 & 268435456) != 0) { return addObjectiveCut_; } else { return AddObjectiveCutDefaultValue; } }
6767 set {
6768 _hasBits4 |= 268435456;
6769 addObjectiveCut_ = value;
6771 }
6773 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6774 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6775 public bool HasAddObjectiveCut {
6776 get { return (_hasBits4 & 268435456) != 0; }
6777 }
6779 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6780 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6781 public void ClearAddObjectiveCut() {
6782 _hasBits4 &= ~268435456;
6783 }
6784
6786 public const int AddCgCutsFieldNumber = 117;
6787 private readonly static bool AddCgCutsDefaultValue = true;
6788
6789 private bool addCgCuts_;
6794 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6795 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6796 public bool AddCgCuts {
6797 get { if ((_hasBits2 & 8388608) != 0) { return addCgCuts_; } else { return AddCgCutsDefaultValue; } }
6798 set {
6799 _hasBits2 |= 8388608;
6800 addCgCuts_ = value;
6801 }
6802 }
6804 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6805 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6806 public bool HasAddCgCuts {
6807 get { return (_hasBits2 & 8388608) != 0; }
6808 }
6810 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6811 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6812 public void ClearAddCgCuts() {
6813 _hasBits2 &= ~8388608;
6815
6817 public const int AddMirCutsFieldNumber = 120;
6818 private readonly static bool AddMirCutsDefaultValue = true;
6819
6820 private bool addMirCuts_;
6825 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6826 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6827 public bool AddMirCuts {
6828 get { if ((_hasBits2 & 33554432) != 0) { return addMirCuts_; } else { return AddMirCutsDefaultValue; } }
6829 set {
6830 _hasBits2 |= 33554432;
6831 addMirCuts_ = value;
6832 }
6833 }
6835 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6836 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6837 public bool HasAddMirCuts {
6838 get { return (_hasBits2 & 33554432) != 0; }
6839 }
6841 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6842 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6843 public void ClearAddMirCuts() {
6844 _hasBits2 &= ~33554432;
6846
6848 public const int AddZeroHalfCutsFieldNumber = 169;
6849 private readonly static bool AddZeroHalfCutsDefaultValue = true;
6850
6851 private bool addZeroHalfCuts_;
6856 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6857 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6858 public bool AddZeroHalfCuts {
6859 get { if ((_hasBits4 & 8) != 0) { return addZeroHalfCuts_; } else { return AddZeroHalfCutsDefaultValue; } }
6860 set {
6861 _hasBits4 |= 8;
6862 addZeroHalfCuts_ = value;
6863 }
6864 }
6866 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6867 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6868 public bool HasAddZeroHalfCuts {
6869 get { return (_hasBits4 & 8) != 0; }
6870 }
6872 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6873 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6874 public void ClearAddZeroHalfCuts() {
6875 _hasBits4 &= ~8;
6877
6879 public const int AddCliqueCutsFieldNumber = 172;
6880 private readonly static bool AddCliqueCutsDefaultValue = true;
6881
6882 private bool addCliqueCuts_;
6888 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6889 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6890 public bool AddCliqueCuts {
6891 get { if ((_hasBits4 & 32) != 0) { return addCliqueCuts_; } else { return AddCliqueCutsDefaultValue; } }
6892 set {
6893 _hasBits4 |= 32;
6894 addCliqueCuts_ = value;
6895 }
6896 }
6898 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6899 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6900 public bool HasAddCliqueCuts {
6901 get { return (_hasBits4 & 32) != 0; }
6902 }
6904 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6905 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6906 public void ClearAddCliqueCuts() {
6907 _hasBits4 &= ~32;
6908 }
6909
6911 public const int AddRltCutsFieldNumber = 279;
6912 private readonly static bool AddRltCutsDefaultValue = true;
6914 private bool addRltCuts_;
6919 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6920 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6921 public bool AddRltCuts {
6922 get { if ((_hasBits7 & 1) != 0) { return addRltCuts_; } else { return AddRltCutsDefaultValue; } }
6923 set {
6924 _hasBits7 |= 1;
6925 addRltCuts_ = value;
6926 }
6927 }
6929 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6930 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6931 public bool HasAddRltCuts {
6932 get { return (_hasBits7 & 1) != 0; }
6933 }
6935 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6936 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6937 public void ClearAddRltCuts() {
6938 _hasBits7 &= ~1;
6940
6942 public const int MaxAllDiffCutSizeFieldNumber = 148;
6943 private readonly static int MaxAllDiffCutSizeDefaultValue = 64;
6944
6945 private int maxAllDiffCutSize_;
6951 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6952 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6953 public int MaxAllDiffCutSize {
6954 get { if ((_hasBits3 & 65536) != 0) { return maxAllDiffCutSize_; } else { return MaxAllDiffCutSizeDefaultValue; } }
6955 set {
6956 _hasBits3 |= 65536;
6957 maxAllDiffCutSize_ = value;
6958 }
6959 }
6961 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6962 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6963 public bool HasMaxAllDiffCutSize {
6964 get { return (_hasBits3 & 65536) != 0; }
6965 }
6967 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6968 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6969 public void ClearMaxAllDiffCutSize() {
6970 _hasBits3 &= ~65536;
6971 }
6972
6974 public const int AddLinMaxCutsFieldNumber = 152;
6975 private readonly static bool AddLinMaxCutsDefaultValue = true;
6977 private bool addLinMaxCuts_;
6983 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6984 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6985 public bool AddLinMaxCuts {
6986 get { if ((_hasBits3 & 524288) != 0) { return addLinMaxCuts_; } else { return AddLinMaxCutsDefaultValue; } }
6987 set {
6988 _hasBits3 |= 524288;
6989 addLinMaxCuts_ = value;
6990 }
6991 }
6993 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
6994 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
6995 public bool HasAddLinMaxCuts {
6996 get { return (_hasBits3 & 524288) != 0; }
6997 }
6999 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7000 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7001 public void ClearAddLinMaxCuts() {
7002 _hasBits3 &= ~524288;
7003 }
7004
7006 public const int MaxIntegerRoundingScalingFieldNumber = 119;
7007 private readonly static int MaxIntegerRoundingScalingDefaultValue = 600;
7009 private int maxIntegerRoundingScaling_;
7020 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7021 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7022 public int MaxIntegerRoundingScaling {
7023 get { if ((_hasBits2 & 16777216) != 0) { return maxIntegerRoundingScaling_; } else { return MaxIntegerRoundingScalingDefaultValue; } }
7024 set {
7025 _hasBits2 |= 16777216;
7026 maxIntegerRoundingScaling_ = value;
7027 }
7028 }
7030 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7031 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7032 public bool HasMaxIntegerRoundingScaling {
7033 get { return (_hasBits2 & 16777216) != 0; }
7036 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7037 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7038 public void ClearMaxIntegerRoundingScaling() {
7039 _hasBits2 &= ~16777216;
7041
7043 public const int AddLpConstraintsLazilyFieldNumber = 112;
7044 private readonly static bool AddLpConstraintsLazilyDefaultValue = true;
7046 private bool addLpConstraintsLazily_;
7053 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7054 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7055 public bool AddLpConstraintsLazily {
7056 get { if ((_hasBits2 & 262144) != 0) { return addLpConstraintsLazily_; } else { return AddLpConstraintsLazilyDefaultValue; } }
7057 set {
7058 _hasBits2 |= 262144;
7059 addLpConstraintsLazily_ = value;
7060 }
7061 }
7063 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7064 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7065 public bool HasAddLpConstraintsLazily {
7066 get { return (_hasBits2 & 262144) != 0; }
7067 }
7069 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7070 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7071 public void ClearAddLpConstraintsLazily() {
7072 _hasBits2 &= ~262144;
7073 }
7074
7076 public const int RootLpIterationsFieldNumber = 227;
7077 private readonly static int RootLpIterationsDefaultValue = 2000;
7079 private int rootLpIterations_;
7086 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7087 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7088 public int RootLpIterations {
7089 get { if ((_hasBits5 & 524288) != 0) { return rootLpIterations_; } else { return RootLpIterationsDefaultValue; } }
7090 set {
7091 _hasBits5 |= 524288;
7092 rootLpIterations_ = value;
7093 }
7094 }
7096 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7097 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7098 public bool HasRootLpIterations {
7099 get { return (_hasBits5 & 524288) != 0; }
7100 }
7102 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7103 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7104 public void ClearRootLpIterations() {
7105 _hasBits5 &= ~524288;
7106 }
7107
7109 public const int MinOrthogonalityForLpConstraintsFieldNumber = 115;
7110 private readonly static double MinOrthogonalityForLpConstraintsDefaultValue = 0.05D;
7112 private double minOrthogonalityForLpConstraints_;
7120 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7121 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7122 public double MinOrthogonalityForLpConstraints {
7123 get { if ((_hasBits2 & 2097152) != 0) { return minOrthogonalityForLpConstraints_; } else { return MinOrthogonalityForLpConstraintsDefaultValue; } }
7124 set {
7125 _hasBits2 |= 2097152;
7126 minOrthogonalityForLpConstraints_ = value;
7127 }
7130 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7131 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7133 get { return (_hasBits2 & 2097152) != 0; }
7134 }
7136 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7137 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7139 _hasBits2 &= ~2097152;
7140 }
7141
7143 public const int MaxCutRoundsAtLevelZeroFieldNumber = 154;
7144 private readonly static int MaxCutRoundsAtLevelZeroDefaultValue = 1;
7145
7146 private int maxCutRoundsAtLevelZero_;
7150 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7151 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7152 public int MaxCutRoundsAtLevelZero {
7153 get { if ((_hasBits3 & 2097152) != 0) { return maxCutRoundsAtLevelZero_; } else { return MaxCutRoundsAtLevelZeroDefaultValue; } }
7154 set {
7155 _hasBits3 |= 2097152;
7156 maxCutRoundsAtLevelZero_ = value;
7157 }
7158 }
7160 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7161 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7163 get { return (_hasBits3 & 2097152) != 0; }
7164 }
7166 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7167 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7168 public void ClearMaxCutRoundsAtLevelZero() {
7169 _hasBits3 &= ~2097152;
7170 }
7171
7173 public const int MaxConsecutiveInactiveCountFieldNumber = 121;
7174 private readonly static int MaxConsecutiveInactiveCountDefaultValue = 100;
7175
7176 private int maxConsecutiveInactiveCount_;
7182 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7183 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7184 public int MaxConsecutiveInactiveCount {
7185 get { if ((_hasBits2 & 67108864) != 0) { return maxConsecutiveInactiveCount_; } else { return MaxConsecutiveInactiveCountDefaultValue; } }
7186 set {
7187 _hasBits2 |= 67108864;
7188 maxConsecutiveInactiveCount_ = value;
7189 }
7190 }
7192 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7193 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7194 public bool HasMaxConsecutiveInactiveCount {
7195 get { return (_hasBits2 & 67108864) != 0; }
7196 }
7198 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7199 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7200 public void ClearMaxConsecutiveInactiveCount() {
7201 _hasBits2 &= ~67108864;
7203
7205 public const int CutMaxActiveCountValueFieldNumber = 155;
7206 private readonly static double CutMaxActiveCountValueDefaultValue = 1e+10D;
7207
7208 private double cutMaxActiveCountValue_;
7214 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7215 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7216 public double CutMaxActiveCountValue {
7217 get { if ((_hasBits3 & 4194304) != 0) { return cutMaxActiveCountValue_; } else { return CutMaxActiveCountValueDefaultValue; } }
7218 set {
7219 _hasBits3 |= 4194304;
7220 cutMaxActiveCountValue_ = value;
7221 }
7222 }
7224 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7225 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7226 public bool HasCutMaxActiveCountValue {
7227 get { return (_hasBits3 & 4194304) != 0; }
7228 }
7230 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7231 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7232 public void ClearCutMaxActiveCountValue() {
7233 _hasBits3 &= ~4194304;
7235
7237 public const int CutActiveCountDecayFieldNumber = 156;
7238 private readonly static double CutActiveCountDecayDefaultValue = 0.8D;
7239
7240 private double cutActiveCountDecay_;
7241 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7242 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7243 public double CutActiveCountDecay {
7244 get { if ((_hasBits3 & 8388608) != 0) { return cutActiveCountDecay_; } else { return CutActiveCountDecayDefaultValue; } }
7245 set {
7246 _hasBits3 |= 8388608;
7247 cutActiveCountDecay_ = value;
7248 }
7249 }
7251 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7252 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7253 public bool HasCutActiveCountDecay {
7254 get { return (_hasBits3 & 8388608) != 0; }
7255 }
7257 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7258 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7259 public void ClearCutActiveCountDecay() {
7260 _hasBits3 &= ~8388608;
7261 }
7262
7264 public const int CutCleanupTargetFieldNumber = 157;
7265 private readonly static int CutCleanupTargetDefaultValue = 1000;
7267 private int cutCleanupTarget_;
7271 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7272 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7273 public int CutCleanupTarget {
7274 get { if ((_hasBits3 & 16777216) != 0) { return cutCleanupTarget_; } else { return CutCleanupTargetDefaultValue; } }
7275 set {
7276 _hasBits3 |= 16777216;
7277 cutCleanupTarget_ = value;
7278 }
7279 }
7281 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7282 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7284 get { return (_hasBits3 & 16777216) != 0; }
7285 }
7287 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7288 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7289 public void ClearCutCleanupTarget() {
7290 _hasBits3 &= ~16777216;
7291 }
7292
7294 public const int NewConstraintsBatchSizeFieldNumber = 122;
7295 private readonly static int NewConstraintsBatchSizeDefaultValue = 50;
7296
7297 private int newConstraintsBatchSize_;
7302 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7303 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7305 get { if ((_hasBits2 & 134217728) != 0) { return newConstraintsBatchSize_; } else { return NewConstraintsBatchSizeDefaultValue; } }
7306 set {
7307 _hasBits2 |= 134217728;
7308 newConstraintsBatchSize_ = value;
7309 }
7310 }
7312 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7313 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7314 public bool HasNewConstraintsBatchSize {
7315 get { return (_hasBits2 & 134217728) != 0; }
7316 }
7318 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7319 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7320 public void ClearNewConstraintsBatchSize() {
7321 _hasBits2 &= ~134217728;
7322 }
7325 public const int ExploitIntegerLpSolutionFieldNumber = 94;
7326 private readonly static bool ExploitIntegerLpSolutionDefaultValue = true;
7327
7328 private bool exploitIntegerLpSolution_;
7335 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7336 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7337 public bool ExploitIntegerLpSolution {
7338 get { if ((_hasBits2 & 32) != 0) { return exploitIntegerLpSolution_; } else { return ExploitIntegerLpSolutionDefaultValue; } }
7339 set {
7340 _hasBits2 |= 32;
7341 exploitIntegerLpSolution_ = value;
7342 }
7343 }
7345 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7346 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7347 public bool HasExploitIntegerLpSolution {
7348 get { return (_hasBits2 & 32) != 0; }
7349 }
7351 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7352 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7353 public void ClearExploitIntegerLpSolution() {
7354 _hasBits2 &= ~32;
7355 }
7356
7358 public const int ExploitAllLpSolutionFieldNumber = 116;
7359 private readonly static bool ExploitAllLpSolutionDefaultValue = true;
7361 private bool exploitAllLpSolution_;
7367 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7368 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7369 public bool ExploitAllLpSolution {
7370 get { if ((_hasBits2 & 4194304) != 0) { return exploitAllLpSolution_; } else { return ExploitAllLpSolutionDefaultValue; } }
7371 set {
7372 _hasBits2 |= 4194304;
7373 exploitAllLpSolution_ = value;
7374 }
7375 }
7377 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7378 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7379 public bool HasExploitAllLpSolution {
7380 get { return (_hasBits2 & 4194304) != 0; }
7381 }
7383 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7384 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7385 public void ClearExploitAllLpSolution() {
7386 _hasBits2 &= ~4194304;
7388
7390 public const int ExploitBestSolutionFieldNumber = 130;
7391 private readonly static bool ExploitBestSolutionDefaultValue = false;
7392
7393 private bool exploitBestSolution_;
7397 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7398 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7399 public bool ExploitBestSolution {
7400 get { if ((_hasBits3 & 8) != 0) { return exploitBestSolution_; } else { return ExploitBestSolutionDefaultValue; } }
7401 set {
7402 _hasBits3 |= 8;
7403 exploitBestSolution_ = value;
7404 }
7405 }
7407 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7408 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7410 get { return (_hasBits3 & 8) != 0; }
7411 }
7413 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7414 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7415 public void ClearExploitBestSolution() {
7416 _hasBits3 &= ~8;
7417 }
7418
7420 public const int ExploitRelaxationSolutionFieldNumber = 161;
7421 private readonly static bool ExploitRelaxationSolutionDefaultValue = false;
7422
7423 private bool exploitRelaxationSolution_;
7429 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7430 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7431 public bool ExploitRelaxationSolution {
7432 get { if ((_hasBits3 & 134217728) != 0) { return exploitRelaxationSolution_; } else { return ExploitRelaxationSolutionDefaultValue; } }
7433 set {
7434 _hasBits3 |= 134217728;
7435 exploitRelaxationSolution_ = value;
7436 }
7437 }
7439 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7440 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7441 public bool HasExploitRelaxationSolution {
7442 get { return (_hasBits3 & 134217728) != 0; }
7443 }
7445 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7446 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7447 public void ClearExploitRelaxationSolution() {
7448 _hasBits3 &= ~134217728;
7450
7452 public const int ExploitObjectiveFieldNumber = 131;
7453 private readonly static bool ExploitObjectiveDefaultValue = true;
7454
7455 private bool exploitObjective_;
7460 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7461 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7462 public bool ExploitObjective {
7463 get { if ((_hasBits3 & 16) != 0) { return exploitObjective_; } else { return ExploitObjectiveDefaultValue; } }
7464 set {
7465 _hasBits3 |= 16;
7466 exploitObjective_ = value;
7467 }
7468 }
7470 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7471 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7472 public bool HasExploitObjective {
7473 get { return (_hasBits3 & 16) != 0; }
7474 }
7476 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7477 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7478 public void ClearExploitObjective() {
7479 _hasBits3 &= ~16;
7480 }
7483 public const int DetectLinearizedProductFieldNumber = 277;
7484 private readonly static bool DetectLinearizedProductDefaultValue = false;
7485
7486 private bool detectLinearizedProduct_;
7492 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7493 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7494 public bool DetectLinearizedProduct {
7495 get { if ((_hasBits6 & 1073741824) != 0) { return detectLinearizedProduct_; } else { return DetectLinearizedProductDefaultValue; } }
7496 set {
7497 _hasBits6 |= 1073741824;
7498 detectLinearizedProduct_ = value;
7499 }
7500 }
7502 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7503 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7504 public bool HasDetectLinearizedProduct {
7505 get { return (_hasBits6 & 1073741824) != 0; }
7506 }
7508 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7509 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7510 public void ClearDetectLinearizedProduct() {
7511 _hasBits6 &= ~1073741824;
7513
7515 public const int MipMaxBoundFieldNumber = 124;
7516 private readonly static double MipMaxBoundDefaultValue = 1e+07D;
7517
7518 private double mipMaxBound_;
7524 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7525 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7526 public double MipMaxBound {
7527 get { if ((_hasBits2 & 536870912) != 0) { return mipMaxBound_; } else { return MipMaxBoundDefaultValue; } }
7528 set {
7529 _hasBits2 |= 536870912;
7530 mipMaxBound_ = value;
7531 }
7532 }
7534 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7535 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7536 public bool HasMipMaxBound {
7537 get { return (_hasBits2 & 536870912) != 0; }
7538 }
7540 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7541 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7542 public void ClearMipMaxBound() {
7543 _hasBits2 &= ~536870912;
7545
7547 public const int MipVarScalingFieldNumber = 125;
7548 private readonly static double MipVarScalingDefaultValue = 1D;
7549
7550 private double mipVarScaling_;
7556 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7557 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7558 public double MipVarScaling {
7559 get { if ((_hasBits2 & 1073741824) != 0) { return mipVarScaling_; } else { return MipVarScalingDefaultValue; } }
7560 set {
7561 _hasBits2 |= 1073741824;
7562 mipVarScaling_ = value;
7563 }
7564 }
7566 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7567 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7568 public bool HasMipVarScaling {
7569 get { return (_hasBits2 & 1073741824) != 0; }
7570 }
7572 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7573 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7574 public void ClearMipVarScaling() {
7575 _hasBits2 &= ~1073741824;
7577
7579 public const int MipScaleLargeDomainFieldNumber = 225;
7580 private readonly static bool MipScaleLargeDomainDefaultValue = false;
7581
7582 private bool mipScaleLargeDomain_;
7588 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7589 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7590 public bool MipScaleLargeDomain {
7591 get { if ((_hasBits5 & 131072) != 0) { return mipScaleLargeDomain_; } else { return MipScaleLargeDomainDefaultValue; } }
7592 set {
7593 _hasBits5 |= 131072;
7594 mipScaleLargeDomain_ = value;
7595 }
7596 }
7598 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7599 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7600 public bool HasMipScaleLargeDomain {
7601 get { return (_hasBits5 & 131072) != 0; }
7602 }
7604 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7605 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7606 public void ClearMipScaleLargeDomain() {
7607 _hasBits5 &= ~131072;
7609
7611 public const int MipAutomaticallyScaleVariablesFieldNumber = 166;
7612 private readonly static bool MipAutomaticallyScaleVariablesDefaultValue = true;
7613
7614 private bool mipAutomaticallyScaleVariables_;
7622 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7623 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7624 public bool MipAutomaticallyScaleVariables {
7625 get { if ((_hasBits4 & 1) != 0) { return mipAutomaticallyScaleVariables_; } else { return MipAutomaticallyScaleVariablesDefaultValue; } }
7626 set {
7627 _hasBits4 |= 1;
7628 mipAutomaticallyScaleVariables_ = value;
7629 }
7632 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7633 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7635 get { return (_hasBits4 & 1) != 0; }
7636 }
7638 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7639 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7641 _hasBits4 &= ~1;
7642 }
7643
7645 public const int OnlySolveIpFieldNumber = 222;
7646 private readonly static bool OnlySolveIpDefaultValue = false;
7647
7648 private bool onlySolveIp_;
7663 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7664 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7665 public bool OnlySolveIp {
7666 get { if ((_hasBits5 & 16384) != 0) { return onlySolveIp_; } else { return OnlySolveIpDefaultValue; } }
7667 set {
7668 _hasBits5 |= 16384;
7669 onlySolveIp_ = value;
7670 }
7671 }
7673 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7674 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7675 public bool HasOnlySolveIp {
7676 get { return (_hasBits5 & 16384) != 0; }
7677 }
7679 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7680 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7681 public void ClearOnlySolveIp() {
7682 _hasBits5 &= ~16384;
7683 }
7684
7686 public const int MipWantedPrecisionFieldNumber = 126;
7687 private readonly static double MipWantedPrecisionDefaultValue = 1e-06D;
7688
7689 private double mipWantedPrecision_;
7709 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7710 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7711 public double MipWantedPrecision {
7712 get { if ((_hasBits2 & -2147483648) != 0) { return mipWantedPrecision_; } else { return MipWantedPrecisionDefaultValue; } }
7713 set {
7714 _hasBits2 |= -2147483648;
7715 mipWantedPrecision_ = value;
7716 }
7719 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7720 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7721 public bool HasMipWantedPrecision {
7722 get { return (_hasBits2 & -2147483648) != 0; }
7725 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7726 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7727 public void ClearMipWantedPrecision() {
7728 _hasBits2 &= ~-2147483648;
7729 }
7730
7732 public const int MipMaxActivityExponentFieldNumber = 127;
7733 private readonly static int MipMaxActivityExponentDefaultValue = 53;
7734
7735 private int mipMaxActivityExponent_;
7746 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7747 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7748 public int MipMaxActivityExponent {
7749 get { if ((_hasBits3 & 1) != 0) { return mipMaxActivityExponent_; } else { return MipMaxActivityExponentDefaultValue; } }
7750 set {
7751 _hasBits3 |= 1;
7752 mipMaxActivityExponent_ = value;
7753 }
7754 }
7756 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7757 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7758 public bool HasMipMaxActivityExponent {
7759 get { return (_hasBits3 & 1) != 0; }
7760 }
7762 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7763 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7764 public void ClearMipMaxActivityExponent() {
7765 _hasBits3 &= ~1;
7767
7769 public const int MipCheckPrecisionFieldNumber = 128;
7770 private readonly static double MipCheckPrecisionDefaultValue = 0.0001D;
7771
7772 private double mipCheckPrecision_;
7778 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7779 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7780 public double MipCheckPrecision {
7781 get { if ((_hasBits3 & 2) != 0) { return mipCheckPrecision_; } else { return MipCheckPrecisionDefaultValue; } }
7782 set {
7783 _hasBits3 |= 2;
7784 mipCheckPrecision_ = value;
7785 }
7786 }
7788 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7789 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7790 public bool HasMipCheckPrecision {
7791 get { return (_hasBits3 & 2) != 0; }
7792 }
7794 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7795 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7796 public void ClearMipCheckPrecision() {
7797 _hasBits3 &= ~2;
7798 }
7799
7801 public const int MipComputeTrueObjectiveBoundFieldNumber = 198;
7802 private readonly static bool MipComputeTrueObjectiveBoundDefaultValue = true;
7803
7804 private bool mipComputeTrueObjectiveBound_;
7812 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7813 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7814 public bool MipComputeTrueObjectiveBound {
7815 get { if ((_hasBits4 & 536870912) != 0) { return mipComputeTrueObjectiveBound_; } else { return MipComputeTrueObjectiveBoundDefaultValue; } }
7816 set {
7817 _hasBits4 |= 536870912;
7818 mipComputeTrueObjectiveBound_ = value;
7819 }
7820 }
7822 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7823 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7825 get { return (_hasBits4 & 536870912) != 0; }
7828 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7829 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7830 public void ClearMipComputeTrueObjectiveBound() {
7831 _hasBits4 &= ~536870912;
7832 }
7833
7835 public const int MipMaxValidMagnitudeFieldNumber = 199;
7836 private readonly static double MipMaxValidMagnitudeDefaultValue = 1e+20D;
7837
7838 private double mipMaxValidMagnitude_;
7846 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7847 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7848 public double MipMaxValidMagnitude {
7849 get { if ((_hasBits4 & 1073741824) != 0) { return mipMaxValidMagnitude_; } else { return MipMaxValidMagnitudeDefaultValue; } }
7850 set {
7851 _hasBits4 |= 1073741824;
7852 mipMaxValidMagnitude_ = value;
7853 }
7854 }
7856 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7857 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7858 public bool HasMipMaxValidMagnitude {
7859 get { return (_hasBits4 & 1073741824) != 0; }
7862 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7863 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7864 public void ClearMipMaxValidMagnitude() {
7865 _hasBits4 &= ~1073741824;
7866 }
7867
7870 private readonly static bool MipTreatHighMagnitudeBoundsAsInfinityDefaultValue = false;
7871
7872 private bool mipTreatHighMagnitudeBoundsAsInfinity_;
7881 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7882 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7884 get { if ((_hasBits6 & -2147483648) != 0) { return mipTreatHighMagnitudeBoundsAsInfinity_; } else { return MipTreatHighMagnitudeBoundsAsInfinityDefaultValue; } }
7885 set {
7886 _hasBits6 |= -2147483648;
7887 mipTreatHighMagnitudeBoundsAsInfinity_ = value;
7888 }
7889 }
7891 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7892 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7894 get { return (_hasBits6 & -2147483648) != 0; }
7895 }
7897 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7898 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7900 _hasBits6 &= ~-2147483648;
7901 }
7902
7904 public const int MipDropToleranceFieldNumber = 232;
7905 private readonly static double MipDropToleranceDefaultValue = 1e-16D;
7906
7907 private double mipDropTolerance_;
7912 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7913 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7914 public double MipDropTolerance {
7915 get { if ((_hasBits5 & 8388608) != 0) { return mipDropTolerance_; } else { return MipDropToleranceDefaultValue; } }
7916 set {
7917 _hasBits5 |= 8388608;
7918 mipDropTolerance_ = value;
7919 }
7920 }
7922 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7923 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7924 public bool HasMipDropTolerance {
7925 get { return (_hasBits5 & 8388608) != 0; }
7926 }
7928 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7929 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7931 _hasBits5 &= ~8388608;
7932 }
7933
7935 public const int MipPresolveLevelFieldNumber = 261;
7936 private readonly static int MipPresolveLevelDefaultValue = 2;
7937
7938 private int mipPresolveLevel_;
7945 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7946 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7947 public int MipPresolveLevel {
7948 get { if ((_hasBits6 & 16384) != 0) { return mipPresolveLevel_; } else { return MipPresolveLevelDefaultValue; } }
7949 set {
7950 _hasBits6 |= 16384;
7951 mipPresolveLevel_ = value;
7952 }
7953 }
7955 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7956 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7957 public bool HasMipPresolveLevel {
7958 get { return (_hasBits6 & 16384) != 0; }
7959 }
7961 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7962 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7963 public void ClearMipPresolveLevel() {
7964 _hasBits6 &= ~16384;
7965 }
7966
7967 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7968 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7969 public override bool Equals(object other) {
7970 return Equals(other as SatParameters);
7972
7973 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
7974 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
7975 public bool Equals(SatParameters other) {
7976 if (ReferenceEquals(other, null)) {
7977 return false;
7978 }
7979 if (ReferenceEquals(other, this)) {
7980 return true;
7981 }
7982 if (Name != other.Name) return false;
7983 if (PreferredVariableOrder != other.PreferredVariableOrder) return false;
7984 if (InitialPolarity != other.InitialPolarity) return false;
7985 if (UsePhaseSaving != other.UsePhaseSaving) return false;
7986 if (PolarityRephaseIncrement != other.PolarityRephaseIncrement) return false;
7987 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(RandomPolarityRatio, other.RandomPolarityRatio)) return false;
7988 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(RandomBranchesRatio, other.RandomBranchesRatio)) return false;
7989 if (UseErwaHeuristic != other.UseErwaHeuristic) return false;
7990 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(InitialVariablesActivity, other.InitialVariablesActivity)) return false;
7992 if (MinimizationAlgorithm != other.MinimizationAlgorithm) return false;
7995 if (ClauseCleanupPeriod != other.ClauseCleanupPeriod) return false;
7996 if (ClauseCleanupTarget != other.ClauseCleanupTarget) return false;
7997 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(ClauseCleanupRatio, other.ClauseCleanupRatio)) return false;
7998 if (ClauseCleanupProtection != other.ClauseCleanupProtection) return false;
7999 if (ClauseCleanupLbdBound != other.ClauseCleanupLbdBound) return false;
8000 if (ClauseCleanupOrdering != other.ClauseCleanupOrdering) return false;
8001 if (PbCleanupIncrement != other.PbCleanupIncrement) return false;
8002 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(PbCleanupRatio, other.PbCleanupRatio)) return false;
8003 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(VariableActivityDecay, other.VariableActivityDecay)) return false;
8004 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MaxVariableActivityValue, other.MaxVariableActivityValue)) return false;
8005 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(GlucoseMaxDecay, other.GlucoseMaxDecay)) return false;
8006 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(GlucoseDecayIncrement, other.GlucoseDecayIncrement)) return false;
8008 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(ClauseActivityDecay, other.ClauseActivityDecay)) return false;
8009 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MaxClauseActivityValue, other.MaxClauseActivityValue)) return false;
8010 if(!restartAlgorithms_.Equals(other.restartAlgorithms_)) return false;
8011 if (DefaultRestartAlgorithms != other.DefaultRestartAlgorithms) return false;
8012 if (RestartPeriod != other.RestartPeriod) return false;
8013 if (RestartRunningWindowSize != other.RestartRunningWindowSize) return false;
8014 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(RestartDlAverageRatio, other.RestartDlAverageRatio)) return false;
8015 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(RestartLbdAverageRatio, other.RestartLbdAverageRatio)) return false;
8016 if (UseBlockingRestart != other.UseBlockingRestart) return false;
8017 if (BlockingRestartWindowSize != other.BlockingRestartWindowSize) return false;
8018 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(BlockingRestartMultiplier, other.BlockingRestartMultiplier)) return false;
8020 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(StrategyChangeIncreaseRatio, other.StrategyChangeIncreaseRatio)) return false;
8021 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MaxTimeInSeconds, other.MaxTimeInSeconds)) return false;
8022 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MaxDeterministicTime, other.MaxDeterministicTime)) return false;
8023 if (MaxNumberOfConflicts != other.MaxNumberOfConflicts) return false;
8024 if (MaxMemoryInMb != other.MaxMemoryInMb) return false;
8025 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(AbsoluteGapLimit, other.AbsoluteGapLimit)) return false;
8026 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(RelativeGapLimit, other.RelativeGapLimit)) return false;
8027 if (RandomSeed != other.RandomSeed) return false;
8028 if (PermuteVariableRandomly != other.PermuteVariableRandomly) return false;
8030 if (UseAbslRandom != other.UseAbslRandom) return false;
8031 if (LogSearchProgress != other.LogSearchProgress) return false;
8032 if (LogSubsolverStatistics != other.LogSubsolverStatistics) return false;
8033 if (LogPrefix != other.LogPrefix) return false;
8034 if (LogToStdout != other.LogToStdout) return false;
8035 if (LogToResponse != other.LogToResponse) return false;
8036 if (UsePbResolution != other.UsePbResolution) return false;
8038 if (CountAssumptionLevelsInLbd != other.CountAssumptionLevelsInLbd) return false;
8039 if (PresolveBveThreshold != other.PresolveBveThreshold) return false;
8040 if (PresolveBveClauseWeight != other.PresolveBveClauseWeight) return false;
8041 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(ProbingDeterministicTimeLimit, other.ProbingDeterministicTimeLimit)) return false;
8042 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(PresolveProbingDeterministicTimeLimit, other.PresolveProbingDeterministicTimeLimit)) return false;
8043 if (PresolveBlockedClause != other.PresolveBlockedClause) return false;
8044 if (PresolveUseBva != other.PresolveUseBva) return false;
8045 if (PresolveBvaThreshold != other.PresolveBvaThreshold) return false;
8046 if (MaxPresolveIterations != other.MaxPresolveIterations) return false;
8047 if (CpModelPresolve != other.CpModelPresolve) return false;
8048 if (CpModelProbingLevel != other.CpModelProbingLevel) return false;
8049 if (CpModelUseSatPresolve != other.CpModelUseSatPresolve) return false;
8050 if (DetectTableWithCost != other.DetectTableWithCost) return false;
8051 if (TableCompressionLevel != other.TableCompressionLevel) return false;
8052 if (ExpandAlldiffConstraints != other.ExpandAlldiffConstraints) return false;
8053 if (ExpandReservoirConstraints != other.ExpandReservoirConstraints) return false;
8054 if (DisableConstraintExpansion != other.DisableConstraintExpansion) return false;
8056 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MergeNoOverlapWorkLimit, other.MergeNoOverlapWorkLimit)) return false;
8057 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MergeAtMostOneWorkLimit, other.MergeAtMostOneWorkLimit)) return false;
8058 if (PresolveSubstitutionLevel != other.PresolveSubstitutionLevel) return false;
8060 if (PresolveInclusionWorkLimit != other.PresolveInclusionWorkLimit) return false;
8061 if (IgnoreNames != other.IgnoreNames) return false;
8062 if (InferAllDiffs != other.InferAllDiffs) return false;
8063 if (FindBigLinearOverlap != other.FindBigLinearOverlap) return false;
8064 if (UseSatInprocessing != other.UseSatInprocessing) return false;
8065 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(InprocessingDtimeRatio, other.InprocessingDtimeRatio)) return false;
8066 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(InprocessingProbingDtime, other.InprocessingProbingDtime)) return false;
8067 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(InprocessingMinimizationDtime, other.InprocessingMinimizationDtime)) return false;
8068 if (NumWorkers != other.NumWorkers) return false;
8069 if (NumSearchWorkers != other.NumSearchWorkers) return false;
8070 if (MinNumLnsWorkers != other.MinNumLnsWorkers) return false;
8071 if(!subsolvers_.Equals(other.subsolvers_)) return false;
8072 if(!extraSubsolvers_.Equals(other.extraSubsolvers_)) return false;
8073 if(!ignoreSubsolvers_.Equals(other.ignoreSubsolvers_)) return false;
8074 if(!subsolverParams_.Equals(other.subsolverParams_)) return false;
8075 if (InterleaveSearch != other.InterleaveSearch) return false;
8076 if (InterleaveBatchSize != other.InterleaveBatchSize) return false;
8077 if (ShareObjectiveBounds != other.ShareObjectiveBounds) return false;
8078 if (ShareLevelZeroBounds != other.ShareLevelZeroBounds) return false;
8079 if (ShareBinaryClauses != other.ShareBinaryClauses) return false;
8082 if (DebugCrashOnBadHint != other.DebugCrashOnBadHint) return false;
8083 if (UseOptimizationHints != other.UseOptimizationHints) return false;
8084 if (CoreMinimizationLevel != other.CoreMinimizationLevel) return false;
8085 if (FindMultipleCores != other.FindMultipleCores) return false;
8086 if (CoverOptimization != other.CoverOptimization) return false;
8087 if (MaxSatAssumptionOrder != other.MaxSatAssumptionOrder) return false;
8089 if (MaxSatStratification != other.MaxSatStratification) return false;
8090 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(PropagationLoopDetectionFactor, other.PropagationLoopDetectionFactor)) return false;
8100 if (ExploitAllPrecedences != other.ExploitAllPrecedences) return false;
8107 if (SearchBranching != other.SearchBranching) return false;
8108 if (HintConflictLimit != other.HintConflictLimit) return false;
8109 if (RepairHint != other.RepairHint) return false;
8111 if (UseProbingSearch != other.UseProbingSearch) return false;
8112 if (UseExtendedProbing != other.UseExtendedProbing) return false;
8114 if (UseShavingInProbingSearch != other.UseShavingInProbingSearch) return false;
8115 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(ShavingSearchDeterministicTime, other.ShavingSearchDeterministicTime)) return false;
8116 if (UseObjectiveLbSearch != other.UseObjectiveLbSearch) return false;
8117 if (UseObjectiveShavingSearch != other.UseObjectiveShavingSearch) return false;
8119 if (OptimizeWithCore != other.OptimizeWithCore) return false;
8120 if (OptimizeWithLbTreeSearch != other.OptimizeWithLbTreeSearch) return false;
8121 if (BinarySearchNumConflicts != other.BinarySearchNumConflicts) return false;
8122 if (OptimizeWithMaxHs != other.OptimizeWithMaxHs) return false;
8123 if (UseFeasibilityJump != other.UseFeasibilityJump) return false;
8124 if (TestFeasibilityJump != other.TestFeasibilityJump) return false;
8125 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(FeasibilityJumpDecay, other.FeasibilityJumpDecay)) return false;
8128 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(FeasibilityJumpVarRandomizationProbability, other.FeasibilityJumpVarRandomizationProbability)) return false;
8129 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(FeasibilityJumpVarPerburbationRangeRatio, other.FeasibilityJumpVarPerburbationRangeRatio)) return false;
8132 if (NumViolationLs != other.NumViolationLs) return false;
8134 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(ViolationLsCompoundMoveProbability, other.ViolationLsCompoundMoveProbability)) return false;
8135 if (SharedTreeNumWorkers != other.SharedTreeNumWorkers) return false;
8136 if (UseSharedTreeSearch != other.UseSharedTreeSearch) return false;
8137 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(SharedTreeWorkerObjectiveSplitProbability, other.SharedTreeWorkerObjectiveSplitProbability)) return false;
8139 if (SharedTreeSplitStrategy != other.SharedTreeSplitStrategy) return false;
8140 if (EnumerateAllSolutions != other.EnumerateAllSolutions) return false;
8144 if (InstantiateAllVariables != other.InstantiateAllVariables) return false;
8146 if (StopAfterFirstSolution != other.StopAfterFirstSolution) return false;
8147 if (StopAfterPresolve != other.StopAfterPresolve) return false;
8148 if (StopAfterRootPropagation != other.StopAfterRootPropagation) return false;
8149 if (UseLnsOnly != other.UseLnsOnly) return false;
8150 if (SolutionPoolSize != other.SolutionPoolSize) return false;
8151 if (UseRinsLns != other.UseRinsLns) return false;
8152 if (UseFeasibilityPump != other.UseFeasibilityPump) return false;
8153 if (UseLbRelaxLns != other.UseLbRelaxLns) return false;
8154 if (FpRounding != other.FpRounding) return false;
8155 if (DiversifyLnsParams != other.DiversifyLnsParams) return false;
8156 if (RandomizeSearch != other.RandomizeSearch) return false;
8158 if (PushAllTasksTowardStart != other.PushAllTasksTowardStart) return false;
8159 if (UseOptionalVariables != other.UseOptionalVariables) return false;
8160 if (UseExactLpReason != other.UseExactLpReason) return false;
8161 if (UseCombinedNoOverlap != other.UseCombinedNoOverlap) return false;
8162 if (AtMostOneMaxExpansionSize != other.AtMostOneMaxExpansionSize) return false;
8163 if (CatchSigintSignal != other.CatchSigintSignal) return false;
8164 if (UseImpliedBounds != other.UseImpliedBounds) return false;
8165 if (PolishLpSolution != other.PolishLpSolution) return false;
8166 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LpPrimalTolerance, other.LpPrimalTolerance)) return false;
8167 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LpDualTolerance, other.LpDualTolerance)) return false;
8168 if (ConvertIntervals != other.ConvertIntervals) return false;
8169 if (SymmetryLevel != other.SymmetryLevel) return false;
8170 if (NewLinearPropagation != other.NewLinearPropagation) return false;
8171 if (LinearSplitSize != other.LinearSplitSize) return false;
8172 if (LinearizationLevel != other.LinearizationLevel) return false;
8173 if (BooleanEncodingLevel != other.BooleanEncodingLevel) return false;
8175 if (MaxNumCuts != other.MaxNumCuts) return false;
8176 if (CutLevel != other.CutLevel) return false;
8177 if (OnlyAddCutsAtLevelZero != other.OnlyAddCutsAtLevelZero) return false;
8178 if (AddObjectiveCut != other.AddObjectiveCut) return false;
8179 if (AddCgCuts != other.AddCgCuts) return false;
8180 if (AddMirCuts != other.AddMirCuts) return false;
8181 if (AddZeroHalfCuts != other.AddZeroHalfCuts) return false;
8182 if (AddCliqueCuts != other.AddCliqueCuts) return false;
8183 if (AddRltCuts != other.AddRltCuts) return false;
8184 if (MaxAllDiffCutSize != other.MaxAllDiffCutSize) return false;
8185 if (AddLinMaxCuts != other.AddLinMaxCuts) return false;
8186 if (MaxIntegerRoundingScaling != other.MaxIntegerRoundingScaling) return false;
8187 if (AddLpConstraintsLazily != other.AddLpConstraintsLazily) return false;
8188 if (RootLpIterations != other.RootLpIterations) return false;
8189 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MinOrthogonalityForLpConstraints, other.MinOrthogonalityForLpConstraints)) return false;
8190 if (MaxCutRoundsAtLevelZero != other.MaxCutRoundsAtLevelZero) return false;
8192 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(CutMaxActiveCountValue, other.CutMaxActiveCountValue)) return false;
8193 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(CutActiveCountDecay, other.CutActiveCountDecay)) return false;
8194 if (CutCleanupTarget != other.CutCleanupTarget) return false;
8195 if (NewConstraintsBatchSize != other.NewConstraintsBatchSize) return false;
8196 if (ExploitIntegerLpSolution != other.ExploitIntegerLpSolution) return false;
8197 if (ExploitAllLpSolution != other.ExploitAllLpSolution) return false;
8198 if (ExploitBestSolution != other.ExploitBestSolution) return false;
8199 if (ExploitRelaxationSolution != other.ExploitRelaxationSolution) return false;
8200 if (ExploitObjective != other.ExploitObjective) return false;
8201 if (DetectLinearizedProduct != other.DetectLinearizedProduct) return false;
8202 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MipMaxBound, other.MipMaxBound)) return false;
8203 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MipVarScaling, other.MipVarScaling)) return false;
8204 if (MipScaleLargeDomain != other.MipScaleLargeDomain) return false;
8206 if (OnlySolveIp != other.OnlySolveIp) return false;
8207 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MipWantedPrecision, other.MipWantedPrecision)) return false;
8208 if (MipMaxActivityExponent != other.MipMaxActivityExponent) return false;
8209 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MipCheckPrecision, other.MipCheckPrecision)) return false;
8211 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MipMaxValidMagnitude, other.MipMaxValidMagnitude)) return false;
8213 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MipDropTolerance, other.MipDropTolerance)) return false;
8214 if (MipPresolveLevel != other.MipPresolveLevel) return false;
8215 return Equals(_unknownFields, other._unknownFields);
8216 }
8217
8218 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
8219 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
8220 public override int GetHashCode() {
8221 int hash = 1;
8222 if (HasName) hash ^= Name.GetHashCode();
8223 if (HasPreferredVariableOrder) hash ^= PreferredVariableOrder.GetHashCode();
8224 if (HasInitialPolarity) hash ^= InitialPolarity.GetHashCode();
8225 if (HasUsePhaseSaving) hash ^= UsePhaseSaving.GetHashCode();
8226 if (HasPolarityRephaseIncrement) hash ^= PolarityRephaseIncrement.GetHashCode();
8227 if (HasRandomPolarityRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RandomPolarityRatio);
8228 if (HasRandomBranchesRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RandomBranchesRatio);
8229 if (HasUseErwaHeuristic) hash ^= UseErwaHeuristic.GetHashCode();
8230 if (HasInitialVariablesActivity) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(InitialVariablesActivity);
8232 if (HasMinimizationAlgorithm) hash ^= MinimizationAlgorithm.GetHashCode();
8235 if (HasClauseCleanupPeriod) hash ^= ClauseCleanupPeriod.GetHashCode();
8236 if (HasClauseCleanupTarget) hash ^= ClauseCleanupTarget.GetHashCode();
8237 if (HasClauseCleanupRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ClauseCleanupRatio);
8238 if (HasClauseCleanupProtection) hash ^= ClauseCleanupProtection.GetHashCode();
8239 if (HasClauseCleanupLbdBound) hash ^= ClauseCleanupLbdBound.GetHashCode();
8240 if (HasClauseCleanupOrdering) hash ^= ClauseCleanupOrdering.GetHashCode();
8241 if (HasPbCleanupIncrement) hash ^= PbCleanupIncrement.GetHashCode();
8242 if (HasPbCleanupRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PbCleanupRatio);
8243 if (HasVariableActivityDecay) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(VariableActivityDecay);
8244 if (HasMaxVariableActivityValue) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MaxVariableActivityValue);
8245 if (HasGlucoseMaxDecay) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(GlucoseMaxDecay);
8246 if (HasGlucoseDecayIncrement) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(GlucoseDecayIncrement);
8248 if (HasClauseActivityDecay) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ClauseActivityDecay);
8249 if (HasMaxClauseActivityValue) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MaxClauseActivityValue);
8250 hash ^= restartAlgorithms_.GetHashCode();
8251 if (HasDefaultRestartAlgorithms) hash ^= DefaultRestartAlgorithms.GetHashCode();
8252 if (HasRestartPeriod) hash ^= RestartPeriod.GetHashCode();
8253 if (HasRestartRunningWindowSize) hash ^= RestartRunningWindowSize.GetHashCode();
8254 if (HasRestartDlAverageRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RestartDlAverageRatio);
8255 if (HasRestartLbdAverageRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RestartLbdAverageRatio);
8256 if (HasUseBlockingRestart) hash ^= UseBlockingRestart.GetHashCode();
8258 if (HasBlockingRestartMultiplier) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(BlockingRestartMultiplier);
8260 if (HasStrategyChangeIncreaseRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(StrategyChangeIncreaseRatio);
8261 if (HasMaxTimeInSeconds) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MaxTimeInSeconds);
8262 if (HasMaxDeterministicTime) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MaxDeterministicTime);
8263 if (HasMaxNumberOfConflicts) hash ^= MaxNumberOfConflicts.GetHashCode();
8264 if (HasMaxMemoryInMb) hash ^= MaxMemoryInMb.GetHashCode();
8265 if (HasAbsoluteGapLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(AbsoluteGapLimit);
8266 if (HasRelativeGapLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RelativeGapLimit);
8267 if (HasRandomSeed) hash ^= RandomSeed.GetHashCode();
8268 if (HasPermuteVariableRandomly) hash ^= PermuteVariableRandomly.GetHashCode();
8270 if (HasUseAbslRandom) hash ^= UseAbslRandom.GetHashCode();
8271 if (HasLogSearchProgress) hash ^= LogSearchProgress.GetHashCode();
8272 if (HasLogSubsolverStatistics) hash ^= LogSubsolverStatistics.GetHashCode();
8273 if (HasLogPrefix) hash ^= LogPrefix.GetHashCode();
8274 if (HasLogToStdout) hash ^= LogToStdout.GetHashCode();
8275 if (HasLogToResponse) hash ^= LogToResponse.GetHashCode();
8276 if (HasUsePbResolution) hash ^= UsePbResolution.GetHashCode();
8279 if (HasPresolveBveThreshold) hash ^= PresolveBveThreshold.GetHashCode();
8280 if (HasPresolveBveClauseWeight) hash ^= PresolveBveClauseWeight.GetHashCode();
8281 if (HasProbingDeterministicTimeLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ProbingDeterministicTimeLimit);
8282 if (HasPresolveProbingDeterministicTimeLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PresolveProbingDeterministicTimeLimit);
8283 if (HasPresolveBlockedClause) hash ^= PresolveBlockedClause.GetHashCode();
8284 if (HasPresolveUseBva) hash ^= PresolveUseBva.GetHashCode();
8285 if (HasPresolveBvaThreshold) hash ^= PresolveBvaThreshold.GetHashCode();
8286 if (HasMaxPresolveIterations) hash ^= MaxPresolveIterations.GetHashCode();
8287 if (HasCpModelPresolve) hash ^= CpModelPresolve.GetHashCode();
8288 if (HasCpModelProbingLevel) hash ^= CpModelProbingLevel.GetHashCode();
8289 if (HasCpModelUseSatPresolve) hash ^= CpModelUseSatPresolve.GetHashCode();
8290 if (HasDetectTableWithCost) hash ^= DetectTableWithCost.GetHashCode();
8291 if (HasTableCompressionLevel) hash ^= TableCompressionLevel.GetHashCode();
8292 if (HasExpandAlldiffConstraints) hash ^= ExpandAlldiffConstraints.GetHashCode();
8296 if (HasMergeNoOverlapWorkLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MergeNoOverlapWorkLimit);
8297 if (HasMergeAtMostOneWorkLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MergeAtMostOneWorkLimit);
8301 if (HasIgnoreNames) hash ^= IgnoreNames.GetHashCode();
8302 if (HasInferAllDiffs) hash ^= InferAllDiffs.GetHashCode();
8303 if (HasFindBigLinearOverlap) hash ^= FindBigLinearOverlap.GetHashCode();
8304 if (HasUseSatInprocessing) hash ^= UseSatInprocessing.GetHashCode();
8305 if (HasInprocessingDtimeRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(InprocessingDtimeRatio);
8306 if (HasInprocessingProbingDtime) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(InprocessingProbingDtime);
8307 if (HasInprocessingMinimizationDtime) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(InprocessingMinimizationDtime);
8308 if (HasNumWorkers) hash ^= NumWorkers.GetHashCode();
8309 if (HasNumSearchWorkers) hash ^= NumSearchWorkers.GetHashCode();
8310 if (HasMinNumLnsWorkers) hash ^= MinNumLnsWorkers.GetHashCode();
8311 hash ^= subsolvers_.GetHashCode();
8312 hash ^= extraSubsolvers_.GetHashCode();
8313 hash ^= ignoreSubsolvers_.GetHashCode();
8314 hash ^= subsolverParams_.GetHashCode();
8315 if (HasInterleaveSearch) hash ^= InterleaveSearch.GetHashCode();
8316 if (HasInterleaveBatchSize) hash ^= InterleaveBatchSize.GetHashCode();
8317 if (HasShareObjectiveBounds) hash ^= ShareObjectiveBounds.GetHashCode();
8318 if (HasShareLevelZeroBounds) hash ^= ShareLevelZeroBounds.GetHashCode();
8319 if (HasShareBinaryClauses) hash ^= ShareBinaryClauses.GetHashCode();
8322 if (HasDebugCrashOnBadHint) hash ^= DebugCrashOnBadHint.GetHashCode();
8323 if (HasUseOptimizationHints) hash ^= UseOptimizationHints.GetHashCode();
8324 if (HasCoreMinimizationLevel) hash ^= CoreMinimizationLevel.GetHashCode();
8325 if (HasFindMultipleCores) hash ^= FindMultipleCores.GetHashCode();
8326 if (HasCoverOptimization) hash ^= CoverOptimization.GetHashCode();
8327 if (HasMaxSatAssumptionOrder) hash ^= MaxSatAssumptionOrder.GetHashCode();
8329 if (HasMaxSatStratification) hash ^= MaxSatStratification.GetHashCode();
8330 if (HasPropagationLoopDetectionFactor) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PropagationLoopDetectionFactor);
8340 if (HasExploitAllPrecedences) hash ^= ExploitAllPrecedences.GetHashCode();
8347 if (HasSearchBranching) hash ^= SearchBranching.GetHashCode();
8348 if (HasHintConflictLimit) hash ^= HintConflictLimit.GetHashCode();
8349 if (HasRepairHint) hash ^= RepairHint.GetHashCode();
8351 if (HasUseProbingSearch) hash ^= UseProbingSearch.GetHashCode();
8352 if (HasUseExtendedProbing) hash ^= UseExtendedProbing.GetHashCode();
8355 if (HasShavingSearchDeterministicTime) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ShavingSearchDeterministicTime);
8356 if (HasUseObjectiveLbSearch) hash ^= UseObjectiveLbSearch.GetHashCode();
8359 if (HasOptimizeWithCore) hash ^= OptimizeWithCore.GetHashCode();
8360 if (HasOptimizeWithLbTreeSearch) hash ^= OptimizeWithLbTreeSearch.GetHashCode();
8361 if (HasBinarySearchNumConflicts) hash ^= BinarySearchNumConflicts.GetHashCode();
8362 if (HasOptimizeWithMaxHs) hash ^= OptimizeWithMaxHs.GetHashCode();
8363 if (HasUseFeasibilityJump) hash ^= UseFeasibilityJump.GetHashCode();
8364 if (HasTestFeasibilityJump) hash ^= TestFeasibilityJump.GetHashCode();
8365 if (HasFeasibilityJumpDecay) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(FeasibilityJumpDecay);
8368 if (HasFeasibilityJumpVarRandomizationProbability) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(FeasibilityJumpVarRandomizationProbability);
8369 if (HasFeasibilityJumpVarPerburbationRangeRatio) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(FeasibilityJumpVarPerburbationRangeRatio);
8372 if (HasNumViolationLs) hash ^= NumViolationLs.GetHashCode();
8374 if (HasViolationLsCompoundMoveProbability) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(ViolationLsCompoundMoveProbability);
8375 if (HasSharedTreeNumWorkers) hash ^= SharedTreeNumWorkers.GetHashCode();
8376 if (HasUseSharedTreeSearch) hash ^= UseSharedTreeSearch.GetHashCode();
8377 if (HasSharedTreeWorkerObjectiveSplitProbability) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(SharedTreeWorkerObjectiveSplitProbability);
8379 if (HasSharedTreeSplitStrategy) hash ^= SharedTreeSplitStrategy.GetHashCode();
8380 if (HasEnumerateAllSolutions) hash ^= EnumerateAllSolutions.GetHashCode();
8384 if (HasInstantiateAllVariables) hash ^= InstantiateAllVariables.GetHashCode();
8386 if (HasStopAfterFirstSolution) hash ^= StopAfterFirstSolution.GetHashCode();
8387 if (HasStopAfterPresolve) hash ^= StopAfterPresolve.GetHashCode();
8388 if (HasStopAfterRootPropagation) hash ^= StopAfterRootPropagation.GetHashCode();
8389 if (HasUseLnsOnly) hash ^= UseLnsOnly.GetHashCode();
8390 if (HasSolutionPoolSize) hash ^= SolutionPoolSize.GetHashCode();
8391 if (HasUseRinsLns) hash ^= UseRinsLns.GetHashCode();
8392 if (HasUseFeasibilityPump) hash ^= UseFeasibilityPump.GetHashCode();
8393 if (HasUseLbRelaxLns) hash ^= UseLbRelaxLns.GetHashCode();
8394 if (HasFpRounding) hash ^= FpRounding.GetHashCode();
8395 if (HasDiversifyLnsParams) hash ^= DiversifyLnsParams.GetHashCode();
8396 if (HasRandomizeSearch) hash ^= RandomizeSearch.GetHashCode();
8398 if (HasPushAllTasksTowardStart) hash ^= PushAllTasksTowardStart.GetHashCode();
8399 if (HasUseOptionalVariables) hash ^= UseOptionalVariables.GetHashCode();
8400 if (HasUseExactLpReason) hash ^= UseExactLpReason.GetHashCode();
8401 if (HasUseCombinedNoOverlap) hash ^= UseCombinedNoOverlap.GetHashCode();
8403 if (HasCatchSigintSignal) hash ^= CatchSigintSignal.GetHashCode();
8404 if (HasUseImpliedBounds) hash ^= UseImpliedBounds.GetHashCode();
8405 if (HasPolishLpSolution) hash ^= PolishLpSolution.GetHashCode();
8406 if (HasLpPrimalTolerance) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(LpPrimalTolerance);
8407 if (HasLpDualTolerance) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(LpDualTolerance);
8408 if (HasConvertIntervals) hash ^= ConvertIntervals.GetHashCode();
8409 if (HasSymmetryLevel) hash ^= SymmetryLevel.GetHashCode();
8410 if (HasNewLinearPropagation) hash ^= NewLinearPropagation.GetHashCode();
8411 if (HasLinearSplitSize) hash ^= LinearSplitSize.GetHashCode();
8412 if (HasLinearizationLevel) hash ^= LinearizationLevel.GetHashCode();
8413 if (HasBooleanEncodingLevel) hash ^= BooleanEncodingLevel.GetHashCode();
8415 if (HasMaxNumCuts) hash ^= MaxNumCuts.GetHashCode();
8416 if (HasCutLevel) hash ^= CutLevel.GetHashCode();
8417 if (HasOnlyAddCutsAtLevelZero) hash ^= OnlyAddCutsAtLevelZero.GetHashCode();
8418 if (HasAddObjectiveCut) hash ^= AddObjectiveCut.GetHashCode();
8419 if (HasAddCgCuts) hash ^= AddCgCuts.GetHashCode();
8420 if (HasAddMirCuts) hash ^= AddMirCuts.GetHashCode();
8421 if (HasAddZeroHalfCuts) hash ^= AddZeroHalfCuts.GetHashCode();
8422 if (HasAddCliqueCuts) hash ^= AddCliqueCuts.GetHashCode();
8423 if (HasAddRltCuts) hash ^= AddRltCuts.GetHashCode();
8424 if (HasMaxAllDiffCutSize) hash ^= MaxAllDiffCutSize.GetHashCode();
8425 if (HasAddLinMaxCuts) hash ^= AddLinMaxCuts.GetHashCode();
8427 if (HasAddLpConstraintsLazily) hash ^= AddLpConstraintsLazily.GetHashCode();
8428 if (HasRootLpIterations) hash ^= RootLpIterations.GetHashCode();
8429 if (HasMinOrthogonalityForLpConstraints) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MinOrthogonalityForLpConstraints);
8430 if (HasMaxCutRoundsAtLevelZero) hash ^= MaxCutRoundsAtLevelZero.GetHashCode();
8432 if (HasCutMaxActiveCountValue) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(CutMaxActiveCountValue);
8433 if (HasCutActiveCountDecay) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(CutActiveCountDecay);
8434 if (HasCutCleanupTarget) hash ^= CutCleanupTarget.GetHashCode();
8435 if (HasNewConstraintsBatchSize) hash ^= NewConstraintsBatchSize.GetHashCode();
8436 if (HasExploitIntegerLpSolution) hash ^= ExploitIntegerLpSolution.GetHashCode();
8437 if (HasExploitAllLpSolution) hash ^= ExploitAllLpSolution.GetHashCode();
8438 if (HasExploitBestSolution) hash ^= ExploitBestSolution.GetHashCode();
8440 if (HasExploitObjective) hash ^= ExploitObjective.GetHashCode();
8441 if (HasDetectLinearizedProduct) hash ^= DetectLinearizedProduct.GetHashCode();
8442 if (HasMipMaxBound) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MipMaxBound);
8443 if (HasMipVarScaling) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MipVarScaling);
8444 if (HasMipScaleLargeDomain) hash ^= MipScaleLargeDomain.GetHashCode();
8446 if (HasOnlySolveIp) hash ^= OnlySolveIp.GetHashCode();
8447 if (HasMipWantedPrecision) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MipWantedPrecision);
8448 if (HasMipMaxActivityExponent) hash ^= MipMaxActivityExponent.GetHashCode();
8449 if (HasMipCheckPrecision) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MipCheckPrecision);
8451 if (HasMipMaxValidMagnitude) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MipMaxValidMagnitude);
8453 if (HasMipDropTolerance) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MipDropTolerance);
8454 if (HasMipPresolveLevel) hash ^= MipPresolveLevel.GetHashCode();
8455 if (_unknownFields != null) {
8456 hash ^= _unknownFields.GetHashCode();
8457 }
8458 return hash;
8459 }
8460
8461 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
8462 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
8463 public override string ToString() {
8464 return pb::JsonFormatter.ToDiagnosticString(this);
8465 }
8466
8467 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
8468 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
8469 public void WriteTo(pb::CodedOutputStream output) {
8470 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
8471 output.WriteRawMessage(this);
8472 #else
8474 output.WriteRawTag(8);
8475 output.WriteEnum((int) PreferredVariableOrder);
8476 }
8477 if (HasInitialPolarity) {
8478 output.WriteRawTag(16);
8479 output.WriteEnum((int) InitialPolarity);
8480 }
8482 output.WriteRawTag(32);
8483 output.WriteEnum((int) MinimizationAlgorithm);
8484 }
8486 output.WriteRawTag(88);
8487 output.WriteInt32(ClauseCleanupPeriod);
8488 }
8490 output.WriteRawTag(104);
8491 output.WriteInt32(ClauseCleanupTarget);
8492 }
8494 output.WriteRawTag(121);
8495 output.WriteDouble(VariableActivityDecay);
8496 }
8498 output.WriteRawTag(129, 1);
8499 output.WriteDouble(MaxVariableActivityValue);
8500 }
8502 output.WriteRawTag(137, 1);
8503 output.WriteDouble(ClauseActivityDecay);
8504 }
8506 output.WriteRawTag(145, 1);
8507 output.WriteDouble(MaxClauseActivityValue);
8508 }
8509 if (HasGlucoseMaxDecay) {
8510 output.WriteRawTag(177, 1);
8511 output.WriteDouble(GlucoseMaxDecay);
8512 }
8514 output.WriteRawTag(185, 1);
8515 output.WriteDouble(GlucoseDecayIncrement);
8518 output.WriteRawTag(192, 1);
8519 output.WriteInt32(GlucoseDecayIncrementPeriod);
8520 }
8521 if (HasRestartPeriod) {
8522 output.WriteRawTag(240, 1);
8523 output.WriteInt32(RestartPeriod);
8524 }
8525 if (HasRandomSeed) {
8526 output.WriteRawTag(248, 1);
8527 output.WriteInt32(RandomSeed);
8528 }
8530 output.WriteRawTag(129, 2);
8531 output.WriteDouble(RandomBranchesRatio);
8532 }
8534 output.WriteRawTag(144, 2);
8535 output.WriteEnum((int) BinaryMinimizationAlgorithm);
8536 }
8538 output.WriteRawTag(152, 2);
8539 output.WriteBool(UseOptimizationHints);
8540 }
8541 if (HasMaxTimeInSeconds) {
8542 output.WriteRawTag(161, 2);
8543 output.WriteDouble(MaxTimeInSeconds);
8544 }
8546 output.WriteRawTag(168, 2);
8547 output.WriteInt64(MaxNumberOfConflicts);
8548 }
8549 if (HasMaxMemoryInMb) {
8550 output.WriteRawTag(192, 2);
8551 output.WriteInt64(MaxMemoryInMb);
8552 }
8554 output.WriteRawTag(200, 2);
8555 output.WriteBool(LogSearchProgress);
8556 }
8557 if (HasUsePbResolution) {
8558 output.WriteRawTag(216, 2);
8559 output.WriteBool(UsePbResolution);
8560 }
8561 if (HasUsePhaseSaving) {
8562 output.WriteRawTag(224, 2);
8563 output.WriteBool(UsePhaseSaving);
8564 }
8566 output.WriteRawTag(233, 2);
8567 output.WriteDouble(RandomPolarityRatio);
8568 }
8570 output.WriteRawTag(240, 2);
8571 output.WriteInt32(PbCleanupIncrement);
8572 }
8573 if (HasPbCleanupRatio) {
8574 output.WriteRawTag(249, 2);
8575 output.WriteDouble(PbCleanupRatio);
8576 }
8578 output.WriteRawTag(128, 3);
8579 output.WriteBool(MinimizeReductionDuringPbResolution);
8580 }
8582 output.WriteRawTag(136, 3);
8583 output.WriteBool(CountAssumptionLevelsInLbd);
8584 }
8586 output.WriteRawTag(144, 3);
8587 output.WriteInt32(CoreMinimizationLevel);
8588 }
8590 output.WriteRawTag(152, 3);
8591 output.WriteEnum((int) MaxSatAssumptionOrder);
8592 }
8594 output.WriteRawTag(160, 3);
8595 output.WriteBool(MaxSatReverseAssumptionOrder);
8596 }
8598 output.WriteRawTag(168, 3);
8599 output.WriteEnum((int) MaxSatStratification);
8600 }
8602 output.WriteRawTag(176, 3);
8603 output.WriteInt32(PresolveBveThreshold);
8604 }
8606 output.WriteRawTag(184, 3);
8607 output.WriteInt32(PresolveBveClauseWeight);
8608 }
8610 output.WriteRawTag(192, 3);
8611 output.WriteBool(SubsumptionDuringConflictAnalysis);
8612 }
8614 output.WriteRawTag(201, 3);
8615 output.WriteDouble(PresolveProbingDeterministicTimeLimit);
8616 }
8618 output.WriteRawTag(208, 3);
8619 output.WriteEnum((int) ClauseCleanupProtection);
8620 }
8622 output.WriteRawTag(216, 3);
8623 output.WriteInt32(ClauseCleanupLbdBound);
8624 }
8626 output.WriteRawTag(224, 3);
8627 output.WriteEnum((int) ClauseCleanupOrdering);
8628 }
8629 restartAlgorithms_.WriteTo(output, _repeated_restartAlgorithms_codec);
8631 output.WriteRawTag(240, 3);
8632 output.WriteInt32(RestartRunningWindowSize);
8633 }
8635 output.WriteRawTag(249, 3);
8636 output.WriteDouble(RestartDlAverageRatio);
8637 }
8639 output.WriteRawTag(128, 4);
8640 output.WriteBool(UseBlockingRestart);
8641 }
8643 output.WriteRawTag(136, 4);
8644 output.WriteInt32(BlockingRestartWindowSize);
8645 }
8647 output.WriteRawTag(145, 4);
8648 output.WriteDouble(BlockingRestartMultiplier);
8649 }
8651 output.WriteRawTag(153, 4);
8652 output.WriteDouble(MaxDeterministicTime);
8653 }
8655 output.WriteRawTag(160, 4);
8656 output.WriteInt32(NumConflictsBeforeStrategyChanges);
8657 }
8659 output.WriteRawTag(169, 4);
8660 output.WriteDouble(StrategyChangeIncreaseRatio);
8661 }
8663 output.WriteRawTag(178, 4);
8664 output.WriteString(DefaultRestartAlgorithms);
8665 }
8667 output.WriteRawTag(185, 4);
8668 output.WriteDouble(RestartLbdAverageRatio);
8669 }
8670 if (HasPresolveUseBva) {
8671 output.WriteRawTag(192, 4);
8672 output.WriteBool(PresolveUseBva);
8673 }
8675 output.WriteRawTag(200, 4);
8676 output.WriteInt32(PresolveBvaThreshold);
8677 }
8679 output.WriteRawTag(208, 4);
8680 output.WriteBool(UsePrecedencesInDisjunctiveConstraint);
8681 }
8682 if (HasUseErwaHeuristic) {
8683 output.WriteRawTag(216, 4);
8684 output.WriteBool(UseErwaHeuristic);
8685 }
8687 output.WriteRawTag(225, 4);
8688 output.WriteDouble(InitialVariablesActivity);
8689 }
8691 output.WriteRawTag(232, 4);
8692 output.WriteBool(AlsoBumpVariablesInConflictReasons);
8693 }
8695 output.WriteRawTag(240, 4);
8696 output.WriteBool(UseOverloadCheckerInCumulative);
8697 }
8699 output.WriteRawTag(248, 4);
8700 output.WriteBool(UseTimetableEdgeFindingInCumulative);
8701 }
8703 output.WriteRawTag(128, 5);
8704 output.WriteBool(UseDisjunctiveConstraintInCumulative);
8705 }
8706 if (HasSearchBranching) {
8707 output.WriteRawTag(144, 5);
8708 output.WriteEnum((int) SearchBranching);
8709 }
8710 if (HasOptimizeWithCore) {
8711 output.WriteRawTag(152, 5);
8712 output.WriteBool(OptimizeWithCore);
8713 }
8715 output.WriteRawTag(160, 5);
8716 output.WriteBool(FindMultipleCores);
8717 }
8719 output.WriteRawTag(168, 5);
8720 output.WriteBool(OptimizeWithMaxHs);
8721 }
8722 if (HasCpModelPresolve) {
8723 output.WriteRawTag(176, 5);
8724 output.WriteBool(CpModelPresolve);
8725 }
8727 output.WriteRawTag(184, 5);
8728 output.WriteBool(EnumerateAllSolutions);
8729 }
8731 output.WriteRawTag(192, 5);
8732 output.WriteBool(PresolveBlockedClause);
8733 }
8735 output.WriteRawTag(200, 5);
8736 output.WriteBool(CoverOptimization);
8737 }
8739 output.WriteRawTag(208, 5);
8740 output.WriteInt32(LinearizationLevel);
8741 }
8742 if (HasMaxNumCuts) {
8743 output.WriteRawTag(216, 5);
8744 output.WriteInt32(MaxNumCuts);
8745 }
8747 output.WriteRawTag(224, 5);
8748 output.WriteBool(OnlyAddCutsAtLevelZero);
8749 }
8751 output.WriteRawTag(232, 5);
8752 output.WriteBool(CpModelUseSatPresolve);
8753 }
8755 output.WriteRawTag(240, 5);
8756 output.WriteBool(ExploitIntegerLpSolution);
8757 }
8759 output.WriteRawTag(248, 5);
8760 output.WriteBool(AutoDetectGreaterThanAtLeastOneOf);
8761 }
8763 output.WriteRawTag(144, 6);
8764 output.WriteBool(StopAfterFirstSolution);
8765 }
8767 output.WriteRawTag(152, 6);
8768 output.WriteInt32(BinarySearchNumConflicts);
8769 }
8770 if (HasNumSearchWorkers) {
8771 output.WriteRawTag(160, 6);
8772 output.WriteInt32(NumSearchWorkers);
8773 }
8774 if (HasUseLnsOnly) {
8775 output.WriteRawTag(168, 6);
8776 output.WriteBool(UseLnsOnly);
8777 }
8778 if (HasRandomizeSearch) {
8779 output.WriteRawTag(184, 6);
8780 output.WriteBool(RandomizeSearch);
8781 }
8783 output.WriteRawTag(192, 6);
8784 output.WriteInt64(SearchRandomVariablePoolSize);
8785 }
8787 output.WriteRawTag(208, 6);
8788 output.WriteBool(InstantiateAllVariables);
8789 }
8791 output.WriteRawTag(216, 6);
8792 output.WriteInt32(BooleanEncodingLevel);
8793 }
8795 output.WriteRawTag(224, 6);
8796 output.WriteBool(UseOptionalVariables);
8797 }
8798 if (HasUseExactLpReason) {
8799 output.WriteRawTag(232, 6);
8800 output.WriteBool(UseExactLpReason);
8801 }
8803 output.WriteRawTag(240, 6);
8804 output.WriteInt32(CpModelProbingLevel);
8805 }
8807 output.WriteRawTag(128, 7);
8808 output.WriteBool(AddLpConstraintsLazily);
8809 }
8811 output.WriteRawTag(136, 7);
8812 output.WriteBool(ShareObjectiveBounds);
8813 }
8815 output.WriteRawTag(144, 7);
8816 output.WriteBool(ShareLevelZeroBounds);
8817 }
8819 output.WriteRawTag(153, 7);
8820 output.WriteDouble(MinOrthogonalityForLpConstraints);
8821 }
8823 output.WriteRawTag(160, 7);
8824 output.WriteBool(ExploitAllLpSolution);
8825 }
8826 if (HasAddCgCuts) {
8827 output.WriteRawTag(168, 7);
8828 output.WriteBool(AddCgCuts);
8829 }
8831 output.WriteRawTag(184, 7);
8832 output.WriteInt32(MaxIntegerRoundingScaling);
8833 }
8834 if (HasAddMirCuts) {
8835 output.WriteRawTag(192, 7);
8836 output.WriteBool(AddMirCuts);
8837 }
8839 output.WriteRawTag(200, 7);
8840 output.WriteInt32(MaxConsecutiveInactiveCount);
8841 }
8843 output.WriteRawTag(208, 7);
8844 output.WriteInt32(NewConstraintsBatchSize);
8845 }
8847 output.WriteRawTag(216, 7);
8848 output.WriteInt64(PseudoCostReliabilityThreshold);
8849 }
8850 if (HasMipMaxBound) {
8851 output.WriteRawTag(225, 7);
8852 output.WriteDouble(MipMaxBound);
8853 }
8854 if (HasMipVarScaling) {
8855 output.WriteRawTag(233, 7);
8856 output.WriteDouble(MipVarScaling);
8857 }
8859 output.WriteRawTag(241, 7);
8860 output.WriteDouble(MipWantedPrecision);
8861 }
8863 output.WriteRawTag(248, 7);
8864 output.WriteInt32(MipMaxActivityExponent);
8865 }
8867 output.WriteRawTag(129, 8);
8868 output.WriteDouble(MipCheckPrecision);
8869 }
8870 if (HasUseRinsLns) {
8871 output.WriteRawTag(136, 8);
8872 output.WriteBool(UseRinsLns);
8873 }
8875 output.WriteRawTag(144, 8);
8876 output.WriteBool(ExploitBestSolution);
8877 }
8878 if (HasExploitObjective) {
8879 output.WriteRawTag(152, 8);
8880 output.WriteBool(ExploitObjective);
8881 }
8883 output.WriteRawTag(160, 8);
8884 output.WriteBool(FillTightenedDomainsInResponse);
8885 }
8887 output.WriteRawTag(168, 8);
8888 output.WriteBool(UseCombinedNoOverlap);
8889 }
8891 output.WriteRawTag(176, 8);
8892 output.WriteInt32(InterleaveBatchSize);
8893 }
8895 output.WriteRawTag(184, 8);
8896 output.WriteBool(CatchSigintSignal);
8897 }
8898 if (HasInterleaveSearch) {
8899 output.WriteRawTag(192, 8);
8900 output.WriteBool(InterleaveSearch);
8901 }
8903 output.WriteRawTag(200, 8);
8904 output.WriteBool(DiversifyLnsParams);
8905 }
8907 output.WriteRawTag(208, 8);
8908 output.WriteInt32(MaxPresolveIterations);
8909 }
8910 if (HasUseImpliedBounds) {
8911 output.WriteRawTag(128, 9);
8912 output.WriteBool(UseImpliedBounds);
8913 }
8915 output.WriteRawTag(137, 9);
8916 output.WriteDouble(MergeNoOverlapWorkLimit);
8917 }
8919 output.WriteRawTag(145, 9);
8920 output.WriteDouble(MergeAtMostOneWorkLimit);
8921 }
8923 output.WriteRawTag(152, 9);
8924 output.WriteInt32(PresolveSubstitutionLevel);
8925 }
8927 output.WriteRawTag(160, 9);
8928 output.WriteInt32(MaxAllDiffCutSize);
8929 }
8931 output.WriteRawTag(168, 9);
8932 output.WriteBool(StopAfterPresolve);
8933 }
8935 output.WriteRawTag(184, 9);
8936 output.WriteInt32(DebugMaxNumPresolveOperations);
8937 }
8938 if (HasAddLinMaxCuts) {
8939 output.WriteRawTag(192, 9);
8940 output.WriteBool(AddLinMaxCuts);
8941 }
8943 output.WriteRawTag(200, 9);
8944 output.WriteInt32(HintConflictLimit);
8945 }
8947 output.WriteRawTag(208, 9);
8948 output.WriteInt32(MaxCutRoundsAtLevelZero);
8949 }
8951 output.WriteRawTag(217, 9);
8952 output.WriteDouble(CutMaxActiveCountValue);
8953 }
8955 output.WriteRawTag(225, 9);
8956 output.WriteDouble(CutActiveCountDecay);
8957 }
8958 if (HasCutCleanupTarget) {
8959 output.WriteRawTag(232, 9);
8960 output.WriteInt32(CutCleanupTarget);
8961 }
8962 if (HasAbsoluteGapLimit) {
8963 output.WriteRawTag(249, 9);
8964 output.WriteDouble(AbsoluteGapLimit);
8965 }
8966 if (HasRelativeGapLimit) {
8967 output.WriteRawTag(129, 10);
8968 output.WriteDouble(RelativeGapLimit);
8969 }
8971 output.WriteRawTag(136, 10);
8972 output.WriteBool(ExploitRelaxationSolution);
8973 }
8975 output.WriteRawTag(144, 10);
8976 output.WriteBool(DebugPostsolveWithFullSolver);
8977 }
8979 output.WriteRawTag(152, 10);
8980 output.WriteBool(UseSatInprocessing);
8981 }
8983 output.WriteRawTag(160, 10);
8984 output.WriteBool(UseFeasibilityPump);
8985 }
8986 if (HasFpRounding) {
8987 output.WriteRawTag(168, 10);
8988 output.WriteEnum((int) FpRounding);
8989 }
8991 output.WriteRawTag(176, 10);
8992 output.WriteBool(MipAutomaticallyScaleVariables);
8993 }
8994 if (HasRepairHint) {
8995 output.WriteRawTag(184, 10);
8996 output.WriteBool(RepairHint);
8997 }
8999 output.WriteRawTag(192, 10);
9000 output.WriteInt32(PolarityRephaseIncrement);
9001 }
9002 if (HasAddZeroHalfCuts) {
9003 output.WriteRawTag(200, 10);
9004 output.WriteBool(AddZeroHalfCuts);
9005 }
9007 output.WriteRawTag(208, 10);
9008 output.WriteBool(ExpandAlldiffConstraints);
9009 }
9010 if (HasName) {
9011 output.WriteRawTag(218, 10);
9012 output.WriteString(Name);
9013 }
9014 if (HasAddCliqueCuts) {
9015 output.WriteRawTag(224, 10);
9016 output.WriteBool(AddCliqueCuts);
9017 }
9019 output.WriteRawTag(232, 10);
9020 output.WriteBool(KeepAllFeasibleSolutionsInPresolve);
9021 }
9023 output.WriteRawTag(240, 10);
9024 output.WriteBool(PresolveExtractIntegerEnforcement);
9025 }
9026 if (HasPolishLpSolution) {
9027 output.WriteRawTag(248, 10);
9028 output.WriteBool(PolishLpSolution);
9029 }
9030 if (HasUseProbingSearch) {
9031 output.WriteRawTag(128, 11);
9032 output.WriteBool(UseProbingSearch);
9033 }
9034 if (HasConvertIntervals) {
9035 output.WriteRawTag(136, 11);
9036 output.WriteBool(ConvertIntervals);
9037 }
9039 output.WriteRawTag(144, 11);
9040 output.WriteBool(PermuteVariableRandomly);
9041 }
9043 output.WriteRawTag(152, 11);
9044 output.WriteBool(PermutePresolveConstraintOrder);
9045 }
9046 if (HasUseAbslRandom) {
9047 output.WriteRawTag(160, 11);
9048 output.WriteBool(UseAbslRandom);
9049 }
9051 output.WriteRawTag(168, 11);
9052 output.WriteBool(DisableConstraintExpansion);
9053 }
9055 output.WriteRawTag(176, 11);
9056 output.WriteBool(ExpandReservoirConstraints);
9057 }
9058 if (HasSymmetryLevel) {
9059 output.WriteRawTag(184, 11);
9060 output.WriteInt32(SymmetryLevel);
9061 }
9062 if (HasLogPrefix) {
9063 output.WriteRawTag(202, 11);
9064 output.WriteString(LogPrefix);
9065 }
9066 if (HasLogToStdout) {
9067 output.WriteRawTag(208, 11);
9068 output.WriteBool(LogToStdout);
9069 }
9070 if (HasLogToResponse) {
9071 output.WriteRawTag(216, 11);
9072 output.WriteBool(LogToResponse);
9073 }
9075 output.WriteRawTag(224, 11);
9076 output.WriteBool(OptimizeWithLbTreeSearch);
9077 }
9079 output.WriteRawTag(232, 11);
9080 output.WriteBool(LogSubsolverStatistics);
9081 }
9083 output.WriteRawTag(241, 11);
9084 output.WriteDouble(ClauseCleanupRatio);
9085 }
9087 output.WriteRawTag(248, 11);
9089 }
9091 output.WriteRawTag(128, 12);
9092 output.WriteBool(FixVariablesToTheirHintedValue);
9093 }
9094 if (HasSolutionPoolSize) {
9095 output.WriteRawTag(136, 12);
9096 output.WriteInt32(SolutionPoolSize);
9097 }
9099 output.WriteRawTag(144, 12);
9100 output.WriteBool(FillAdditionalSolutionsInResponse);
9101 }
9103 output.WriteRawTag(152, 12);
9104 output.WriteBool(DebugCrashOnBadHint);
9105 }
9106 if (HasCutLevel) {
9107 output.WriteRawTag(160, 12);
9108 output.WriteInt32(CutLevel);
9109 }
9110 if (HasAddObjectiveCut) {
9111 output.WriteRawTag(168, 12);
9112 output.WriteBool(AddObjectiveCut);
9113 }
9115 output.WriteRawTag(176, 12);
9116 output.WriteBool(MipComputeTrueObjectiveBound);
9117 }
9119 output.WriteRawTag(185, 12);
9120 output.WriteDouble(MipMaxValidMagnitude);
9121 }
9123 output.WriteRawTag(192, 12);
9124 output.WriteBool(UseTimetablingInNoOverlap2D);
9125 }
9127 output.WriteRawTag(200, 12);
9128 output.WriteInt64(PresolveInclusionWorkLimit);
9129 }
9130 if (HasIgnoreNames) {
9131 output.WriteRawTag(208, 12);
9132 output.WriteBool(IgnoreNames);
9133 }
9135 output.WriteRawTag(216, 12);
9136 output.WriteBool(ShareBinaryClauses);
9137 }
9139 output.WriteRawTag(224, 12);
9140 output.WriteBool(UseShavingInProbingSearch);
9141 }
9143 output.WriteRawTag(233, 12);
9144 output.WriteDouble(ShavingSearchDeterministicTime);
9145 }
9146 if (HasNumWorkers) {
9147 output.WriteRawTag(240, 12);
9148 output.WriteInt32(NumWorkers);
9149 }
9150 subsolvers_.WriteTo(output, _repeated_subsolvers_codec);
9151 ignoreSubsolvers_.WriteTo(output, _repeated_ignoreSubsolvers_codec);
9152 subsolverParams_.WriteTo(output, _repeated_subsolverParams_codec);
9153 if (HasMinNumLnsWorkers) {
9154 output.WriteRawTag(152, 13);
9155 output.WriteInt32(MinNumLnsWorkers);
9156 }
9158 output.WriteRawTag(168, 13);
9159 output.WriteBool(UseEnergeticReasoningInNoOverlap2D);
9160 }
9162 output.WriteRawTag(176, 13);
9163 output.WriteBool(UseDualSchedulingHeuristics);
9164 }
9166 output.WriteRawTag(184, 13);
9167 output.WriteBool(UseHardPrecedencesInCumulative);
9168 }
9170 output.WriteRawTag(192, 13);
9171 output.WriteBool(DetectTableWithCost);
9172 }
9174 output.WriteRawTag(200, 13);
9175 output.WriteInt32(TableCompressionLevel);
9176 }
9177 extraSubsolvers_.WriteTo(output, _repeated_extraSubsolvers_codec);
9179 output.WriteRawTag(224, 13);
9180 output.WriteBool(ExploitAllPrecedences);
9181 }
9183 output.WriteRawTag(233, 13);
9184 output.WriteDouble(PropagationLoopDetectionFactor);
9185 }
9186 if (HasOnlySolveIp) {
9187 output.WriteRawTag(240, 13);
9188 output.WriteBool(OnlySolveIp);
9189 }
9191 output.WriteRawTag(248, 13);
9193 }
9195 output.WriteRawTag(128, 14);
9196 output.WriteBool(NewLinearPropagation);
9197 }
9199 output.WriteRawTag(136, 14);
9200 output.WriteBool(MipScaleLargeDomain);
9201 }
9203 output.WriteRawTag(145, 14);
9204 output.WriteDouble(ProbingDeterministicTimeLimit);
9205 }
9206 if (HasRootLpIterations) {
9207 output.WriteRawTag(152, 14);
9208 output.WriteInt32(RootLpIterations);
9209 }
9211 output.WriteRawTag(160, 14);
9212 output.WriteBool(UseObjectiveLbSearch);
9213 }
9215 output.WriteRawTag(168, 14);
9217 }
9219 output.WriteRawTag(176, 14);
9220 output.WriteBool(UseStrongPropagationInDisjunctive);
9221 }
9222 if (HasMipDropTolerance) {
9223 output.WriteRawTag(193, 14);
9224 output.WriteDouble(MipDropTolerance);
9225 }
9226 if (HasInferAllDiffs) {
9227 output.WriteRawTag(200, 14);
9228 output.WriteBool(InferAllDiffs);
9229 }
9231 output.WriteRawTag(208, 14);
9232 output.WriteBool(FindBigLinearOverlap);
9233 }
9235 output.WriteRawTag(216, 14);
9236 output.WriteInt32(SharedTreeNumWorkers);
9237 }
9239 output.WriteRawTag(224, 14);
9240 output.WriteBool(UseSharedTreeSearch);
9241 }
9243 output.WriteRawTag(233, 14);
9245 }
9247 output.WriteRawTag(240, 14);
9248 output.WriteInt32(SharedTreeMaxNodesPerWorker);
9249 }
9251 output.WriteRawTag(248, 14);
9252 output.WriteEnum((int) SharedTreeSplitStrategy);
9253 }
9255 output.WriteRawTag(128, 15);
9256 output.WriteBool(TestFeasibilityJump);
9257 }
9259 output.WriteRawTag(145, 15);
9260 output.WriteDouble(FeasibilityJumpDecay);
9261 }
9262 if (HasNumViolationLs) {
9263 output.WriteRawTag(160, 15);
9264 output.WriteInt32(NumViolationLs);
9265 }
9267 output.WriteRawTag(185, 15);
9269 }
9271 output.WriteRawTag(193, 15);
9272 output.WriteDouble(FeasibilityJumpVarPerburbationRangeRatio);
9273 }
9275 output.WriteRawTag(200, 15);
9276 output.WriteInt32(ViolationLsPerturbationPeriod);
9277 }
9279 output.WriteRawTag(208, 15);
9280 output.WriteBool(FeasibilityJumpEnableRestarts);
9281 }
9283 output.WriteRawTag(224, 15);
9284 output.WriteBool(StopAfterRootPropagation);
9285 }
9287 output.WriteRawTag(232, 15);
9288 output.WriteBool(UseObjectiveShavingSearch);
9289 }
9290 if (HasUseLbRelaxLns) {
9291 output.WriteRawTag(248, 15);
9292 output.WriteBool(UseLbRelaxLns);
9293 }
9294 if (HasLinearSplitSize) {
9295 output.WriteRawTag(128, 16);
9296 output.WriteInt32(LinearSplitSize);
9297 }
9299 output.WriteRawTag(136, 16);
9300 output.WriteInt32(FeasibilityJumpLinearizationLevel);
9301 }
9303 output.WriteRawTag(144, 16);
9304 output.WriteInt32(FeasibilityJumpRestartFactor);
9305 }
9307 output.WriteRawTag(153, 16);
9308 output.WriteDouble(ViolationLsCompoundMoveProbability);
9309 }
9311 output.WriteRawTag(160, 16);
9312 output.WriteInt32(MaxNumIntervalsForTimetableEdgeFinding);
9313 }
9314 if (HasMipPresolveLevel) {
9315 output.WriteRawTag(168, 16);
9316 output.WriteInt32(MipPresolveLevel);
9317 }
9319 output.WriteRawTag(176, 16);
9320 output.WriteBool(PushAllTasksTowardStart);
9321 }
9323 output.WriteRawTag(184, 16);
9324 output.WriteBool(UseDynamicPrecedenceInDisjunctive);
9325 }
9327 output.WriteRawTag(192, 16);
9329 }
9331 output.WriteRawTag(200, 16);
9332 output.WriteBool(UseFeasibilityJump);
9333 }
9335 output.WriteRawTag(209, 16);
9336 output.WriteDouble(LpPrimalTolerance);
9337 }
9338 if (HasLpDualTolerance) {
9339 output.WriteRawTag(217, 16);
9340 output.WriteDouble(LpDualTolerance);
9341 }
9343 output.WriteRawTag(224, 16);
9344 output.WriteBool(UseDynamicPrecedenceInCumulative);
9345 }
9347 output.WriteRawTag(232, 16);
9348 output.WriteBool(UseExtendedProbing);
9349 }
9351 output.WriteRawTag(240, 16);
9352 output.WriteInt32(AtMostOneMaxExpansionSize);
9353 }
9355 output.WriteRawTag(248, 16);
9357 }
9359 output.WriteRawTag(128, 17);
9360 output.WriteInt32(ProbingNumCombinationsLimit);
9361 }
9363 output.WriteRawTag(137, 17);
9364 output.WriteDouble(InprocessingDtimeRatio);
9365 }
9367 output.WriteRawTag(145, 17);
9368 output.WriteDouble(InprocessingProbingDtime);
9369 }
9371 output.WriteRawTag(153, 17);
9372 output.WriteDouble(InprocessingMinimizationDtime);
9373 }
9375 output.WriteRawTag(160, 17);
9376 output.WriteInt32(MaxPairsPairwiseReasoningInNoOverlap2D);
9377 }
9379 output.WriteRawTag(168, 17);
9380 output.WriteBool(DetectLinearizedProduct);
9381 }
9383 output.WriteRawTag(176, 17);
9384 output.WriteBool(MipTreatHighMagnitudeBoundsAsInfinity);
9385 }
9386 if (HasAddRltCuts) {
9387 output.WriteRawTag(184, 17);
9388 output.WriteBool(AddRltCuts);
9389 }
9390 if (_unknownFields != null) {
9391 _unknownFields.WriteTo(output);
9392 }
9393 #endif
9394 }
9395
9396 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
9397 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
9398 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
9399 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
9401 output.WriteRawTag(8);
9402 output.WriteEnum((int) PreferredVariableOrder);
9403 }
9404 if (HasInitialPolarity) {
9405 output.WriteRawTag(16);
9406 output.WriteEnum((int) InitialPolarity);
9407 }
9409 output.WriteRawTag(32);
9410 output.WriteEnum((int) MinimizationAlgorithm);
9411 }
9413 output.WriteRawTag(88);
9414 output.WriteInt32(ClauseCleanupPeriod);
9415 }
9417 output.WriteRawTag(104);
9418 output.WriteInt32(ClauseCleanupTarget);
9419 }
9421 output.WriteRawTag(121);
9422 output.WriteDouble(VariableActivityDecay);
9423 }
9425 output.WriteRawTag(129, 1);
9426 output.WriteDouble(MaxVariableActivityValue);
9427 }
9429 output.WriteRawTag(137, 1);
9430 output.WriteDouble(ClauseActivityDecay);
9431 }
9433 output.WriteRawTag(145, 1);
9434 output.WriteDouble(MaxClauseActivityValue);
9435 }
9436 if (HasGlucoseMaxDecay) {
9437 output.WriteRawTag(177, 1);
9438 output.WriteDouble(GlucoseMaxDecay);
9439 }
9441 output.WriteRawTag(185, 1);
9442 output.WriteDouble(GlucoseDecayIncrement);
9443 }
9445 output.WriteRawTag(192, 1);
9446 output.WriteInt32(GlucoseDecayIncrementPeriod);
9447 }
9448 if (HasRestartPeriod) {
9449 output.WriteRawTag(240, 1);
9450 output.WriteInt32(RestartPeriod);
9451 }
9452 if (HasRandomSeed) {
9453 output.WriteRawTag(248, 1);
9454 output.WriteInt32(RandomSeed);
9455 }
9457 output.WriteRawTag(129, 2);
9458 output.WriteDouble(RandomBranchesRatio);
9459 }
9461 output.WriteRawTag(144, 2);
9462 output.WriteEnum((int) BinaryMinimizationAlgorithm);
9463 }
9465 output.WriteRawTag(152, 2);
9466 output.WriteBool(UseOptimizationHints);
9467 }
9468 if (HasMaxTimeInSeconds) {
9469 output.WriteRawTag(161, 2);
9470 output.WriteDouble(MaxTimeInSeconds);
9471 }
9473 output.WriteRawTag(168, 2);
9474 output.WriteInt64(MaxNumberOfConflicts);
9475 }
9476 if (HasMaxMemoryInMb) {
9477 output.WriteRawTag(192, 2);
9478 output.WriteInt64(MaxMemoryInMb);
9479 }
9481 output.WriteRawTag(200, 2);
9482 output.WriteBool(LogSearchProgress);
9483 }
9484 if (HasUsePbResolution) {
9485 output.WriteRawTag(216, 2);
9486 output.WriteBool(UsePbResolution);
9487 }
9488 if (HasUsePhaseSaving) {
9489 output.WriteRawTag(224, 2);
9490 output.WriteBool(UsePhaseSaving);
9491 }
9493 output.WriteRawTag(233, 2);
9494 output.WriteDouble(RandomPolarityRatio);
9495 }
9497 output.WriteRawTag(240, 2);
9498 output.WriteInt32(PbCleanupIncrement);
9499 }
9500 if (HasPbCleanupRatio) {
9501 output.WriteRawTag(249, 2);
9502 output.WriteDouble(PbCleanupRatio);
9503 }
9505 output.WriteRawTag(128, 3);
9506 output.WriteBool(MinimizeReductionDuringPbResolution);
9507 }
9509 output.WriteRawTag(136, 3);
9510 output.WriteBool(CountAssumptionLevelsInLbd);
9511 }
9513 output.WriteRawTag(144, 3);
9514 output.WriteInt32(CoreMinimizationLevel);
9515 }
9517 output.WriteRawTag(152, 3);
9518 output.WriteEnum((int) MaxSatAssumptionOrder);
9519 }
9521 output.WriteRawTag(160, 3);
9522 output.WriteBool(MaxSatReverseAssumptionOrder);
9523 }
9525 output.WriteRawTag(168, 3);
9526 output.WriteEnum((int) MaxSatStratification);
9527 }
9529 output.WriteRawTag(176, 3);
9530 output.WriteInt32(PresolveBveThreshold);
9531 }
9533 output.WriteRawTag(184, 3);
9534 output.WriteInt32(PresolveBveClauseWeight);
9535 }
9537 output.WriteRawTag(192, 3);
9538 output.WriteBool(SubsumptionDuringConflictAnalysis);
9539 }
9541 output.WriteRawTag(201, 3);
9542 output.WriteDouble(PresolveProbingDeterministicTimeLimit);
9543 }
9545 output.WriteRawTag(208, 3);
9546 output.WriteEnum((int) ClauseCleanupProtection);
9547 }
9549 output.WriteRawTag(216, 3);
9550 output.WriteInt32(ClauseCleanupLbdBound);
9551 }
9553 output.WriteRawTag(224, 3);
9554 output.WriteEnum((int) ClauseCleanupOrdering);
9555 }
9556 restartAlgorithms_.WriteTo(ref output, _repeated_restartAlgorithms_codec);
9558 output.WriteRawTag(240, 3);
9559 output.WriteInt32(RestartRunningWindowSize);
9560 }
9562 output.WriteRawTag(249, 3);
9563 output.WriteDouble(RestartDlAverageRatio);
9564 }
9566 output.WriteRawTag(128, 4);
9567 output.WriteBool(UseBlockingRestart);
9568 }
9570 output.WriteRawTag(136, 4);
9571 output.WriteInt32(BlockingRestartWindowSize);
9572 }
9574 output.WriteRawTag(145, 4);
9575 output.WriteDouble(BlockingRestartMultiplier);
9576 }
9578 output.WriteRawTag(153, 4);
9579 output.WriteDouble(MaxDeterministicTime);
9580 }
9582 output.WriteRawTag(160, 4);
9583 output.WriteInt32(NumConflictsBeforeStrategyChanges);
9584 }
9586 output.WriteRawTag(169, 4);
9587 output.WriteDouble(StrategyChangeIncreaseRatio);
9588 }
9590 output.WriteRawTag(178, 4);
9591 output.WriteString(DefaultRestartAlgorithms);
9592 }
9594 output.WriteRawTag(185, 4);
9595 output.WriteDouble(RestartLbdAverageRatio);
9596 }
9597 if (HasPresolveUseBva) {
9598 output.WriteRawTag(192, 4);
9599 output.WriteBool(PresolveUseBva);
9600 }
9602 output.WriteRawTag(200, 4);
9603 output.WriteInt32(PresolveBvaThreshold);
9604 }
9606 output.WriteRawTag(208, 4);
9607 output.WriteBool(UsePrecedencesInDisjunctiveConstraint);
9608 }
9609 if (HasUseErwaHeuristic) {
9610 output.WriteRawTag(216, 4);
9611 output.WriteBool(UseErwaHeuristic);
9612 }
9614 output.WriteRawTag(225, 4);
9615 output.WriteDouble(InitialVariablesActivity);
9616 }
9618 output.WriteRawTag(232, 4);
9619 output.WriteBool(AlsoBumpVariablesInConflictReasons);
9620 }
9622 output.WriteRawTag(240, 4);
9623 output.WriteBool(UseOverloadCheckerInCumulative);
9624 }
9626 output.WriteRawTag(248, 4);
9627 output.WriteBool(UseTimetableEdgeFindingInCumulative);
9628 }
9630 output.WriteRawTag(128, 5);
9631 output.WriteBool(UseDisjunctiveConstraintInCumulative);
9632 }
9633 if (HasSearchBranching) {
9634 output.WriteRawTag(144, 5);
9635 output.WriteEnum((int) SearchBranching);
9636 }
9637 if (HasOptimizeWithCore) {
9638 output.WriteRawTag(152, 5);
9639 output.WriteBool(OptimizeWithCore);
9640 }
9642 output.WriteRawTag(160, 5);
9643 output.WriteBool(FindMultipleCores);
9644 }
9646 output.WriteRawTag(168, 5);
9647 output.WriteBool(OptimizeWithMaxHs);
9648 }
9649 if (HasCpModelPresolve) {
9650 output.WriteRawTag(176, 5);
9651 output.WriteBool(CpModelPresolve);
9652 }
9654 output.WriteRawTag(184, 5);
9655 output.WriteBool(EnumerateAllSolutions);
9656 }
9658 output.WriteRawTag(192, 5);
9659 output.WriteBool(PresolveBlockedClause);
9660 }
9662 output.WriteRawTag(200, 5);
9663 output.WriteBool(CoverOptimization);
9664 }
9666 output.WriteRawTag(208, 5);
9667 output.WriteInt32(LinearizationLevel);
9668 }
9669 if (HasMaxNumCuts) {
9670 output.WriteRawTag(216, 5);
9671 output.WriteInt32(MaxNumCuts);
9672 }
9674 output.WriteRawTag(224, 5);
9675 output.WriteBool(OnlyAddCutsAtLevelZero);
9676 }
9678 output.WriteRawTag(232, 5);
9679 output.WriteBool(CpModelUseSatPresolve);
9680 }
9682 output.WriteRawTag(240, 5);
9683 output.WriteBool(ExploitIntegerLpSolution);
9684 }
9686 output.WriteRawTag(248, 5);
9687 output.WriteBool(AutoDetectGreaterThanAtLeastOneOf);
9688 }
9690 output.WriteRawTag(144, 6);
9691 output.WriteBool(StopAfterFirstSolution);
9692 }
9694 output.WriteRawTag(152, 6);
9695 output.WriteInt32(BinarySearchNumConflicts);
9696 }
9697 if (HasNumSearchWorkers) {
9698 output.WriteRawTag(160, 6);
9699 output.WriteInt32(NumSearchWorkers);
9700 }
9701 if (HasUseLnsOnly) {
9702 output.WriteRawTag(168, 6);
9703 output.WriteBool(UseLnsOnly);
9704 }
9705 if (HasRandomizeSearch) {
9706 output.WriteRawTag(184, 6);
9707 output.WriteBool(RandomizeSearch);
9708 }
9710 output.WriteRawTag(192, 6);
9711 output.WriteInt64(SearchRandomVariablePoolSize);
9712 }
9714 output.WriteRawTag(208, 6);
9715 output.WriteBool(InstantiateAllVariables);
9716 }
9718 output.WriteRawTag(216, 6);
9719 output.WriteInt32(BooleanEncodingLevel);
9720 }
9722 output.WriteRawTag(224, 6);
9723 output.WriteBool(UseOptionalVariables);
9724 }
9725 if (HasUseExactLpReason) {
9726 output.WriteRawTag(232, 6);
9727 output.WriteBool(UseExactLpReason);
9728 }
9730 output.WriteRawTag(240, 6);
9731 output.WriteInt32(CpModelProbingLevel);
9732 }
9734 output.WriteRawTag(128, 7);
9735 output.WriteBool(AddLpConstraintsLazily);
9736 }
9738 output.WriteRawTag(136, 7);
9739 output.WriteBool(ShareObjectiveBounds);
9740 }
9742 output.WriteRawTag(144, 7);
9743 output.WriteBool(ShareLevelZeroBounds);
9744 }
9746 output.WriteRawTag(153, 7);
9747 output.WriteDouble(MinOrthogonalityForLpConstraints);
9748 }
9750 output.WriteRawTag(160, 7);
9751 output.WriteBool(ExploitAllLpSolution);
9752 }
9753 if (HasAddCgCuts) {
9754 output.WriteRawTag(168, 7);
9755 output.WriteBool(AddCgCuts);
9756 }
9758 output.WriteRawTag(184, 7);
9759 output.WriteInt32(MaxIntegerRoundingScaling);
9760 }
9761 if (HasAddMirCuts) {
9762 output.WriteRawTag(192, 7);
9763 output.WriteBool(AddMirCuts);
9764 }
9766 output.WriteRawTag(200, 7);
9767 output.WriteInt32(MaxConsecutiveInactiveCount);
9768 }
9770 output.WriteRawTag(208, 7);
9771 output.WriteInt32(NewConstraintsBatchSize);
9772 }
9774 output.WriteRawTag(216, 7);
9775 output.WriteInt64(PseudoCostReliabilityThreshold);
9776 }
9777 if (HasMipMaxBound) {
9778 output.WriteRawTag(225, 7);
9779 output.WriteDouble(MipMaxBound);
9780 }
9781 if (HasMipVarScaling) {
9782 output.WriteRawTag(233, 7);
9783 output.WriteDouble(MipVarScaling);
9784 }
9786 output.WriteRawTag(241, 7);
9787 output.WriteDouble(MipWantedPrecision);
9788 }
9790 output.WriteRawTag(248, 7);
9791 output.WriteInt32(MipMaxActivityExponent);
9792 }
9794 output.WriteRawTag(129, 8);
9795 output.WriteDouble(MipCheckPrecision);
9796 }
9797 if (HasUseRinsLns) {
9798 output.WriteRawTag(136, 8);
9799 output.WriteBool(UseRinsLns);
9800 }
9802 output.WriteRawTag(144, 8);
9803 output.WriteBool(ExploitBestSolution);
9804 }
9805 if (HasExploitObjective) {
9806 output.WriteRawTag(152, 8);
9807 output.WriteBool(ExploitObjective);
9808 }
9810 output.WriteRawTag(160, 8);
9811 output.WriteBool(FillTightenedDomainsInResponse);
9812 }
9814 output.WriteRawTag(168, 8);
9815 output.WriteBool(UseCombinedNoOverlap);
9816 }
9818 output.WriteRawTag(176, 8);
9819 output.WriteInt32(InterleaveBatchSize);
9820 }
9822 output.WriteRawTag(184, 8);
9823 output.WriteBool(CatchSigintSignal);
9824 }
9825 if (HasInterleaveSearch) {
9826 output.WriteRawTag(192, 8);
9827 output.WriteBool(InterleaveSearch);
9828 }
9830 output.WriteRawTag(200, 8);
9831 output.WriteBool(DiversifyLnsParams);
9832 }
9834 output.WriteRawTag(208, 8);
9835 output.WriteInt32(MaxPresolveIterations);
9836 }
9837 if (HasUseImpliedBounds) {
9838 output.WriteRawTag(128, 9);
9839 output.WriteBool(UseImpliedBounds);
9840 }
9842 output.WriteRawTag(137, 9);
9843 output.WriteDouble(MergeNoOverlapWorkLimit);
9844 }
9846 output.WriteRawTag(145, 9);
9847 output.WriteDouble(MergeAtMostOneWorkLimit);
9848 }
9850 output.WriteRawTag(152, 9);
9851 output.WriteInt32(PresolveSubstitutionLevel);
9852 }
9854 output.WriteRawTag(160, 9);
9855 output.WriteInt32(MaxAllDiffCutSize);
9856 }
9858 output.WriteRawTag(168, 9);
9859 output.WriteBool(StopAfterPresolve);
9860 }
9862 output.WriteRawTag(184, 9);
9863 output.WriteInt32(DebugMaxNumPresolveOperations);
9864 }
9865 if (HasAddLinMaxCuts) {
9866 output.WriteRawTag(192, 9);
9867 output.WriteBool(AddLinMaxCuts);
9868 }
9870 output.WriteRawTag(200, 9);
9871 output.WriteInt32(HintConflictLimit);
9872 }
9874 output.WriteRawTag(208, 9);
9875 output.WriteInt32(MaxCutRoundsAtLevelZero);
9876 }
9878 output.WriteRawTag(217, 9);
9879 output.WriteDouble(CutMaxActiveCountValue);
9880 }
9882 output.WriteRawTag(225, 9);
9883 output.WriteDouble(CutActiveCountDecay);
9884 }
9885 if (HasCutCleanupTarget) {
9886 output.WriteRawTag(232, 9);
9887 output.WriteInt32(CutCleanupTarget);
9888 }
9889 if (HasAbsoluteGapLimit) {
9890 output.WriteRawTag(249, 9);
9891 output.WriteDouble(AbsoluteGapLimit);
9892 }
9893 if (HasRelativeGapLimit) {
9894 output.WriteRawTag(129, 10);
9895 output.WriteDouble(RelativeGapLimit);
9896 }
9898 output.WriteRawTag(136, 10);
9899 output.WriteBool(ExploitRelaxationSolution);
9900 }
9902 output.WriteRawTag(144, 10);
9903 output.WriteBool(DebugPostsolveWithFullSolver);
9904 }
9906 output.WriteRawTag(152, 10);
9907 output.WriteBool(UseSatInprocessing);
9908 }
9910 output.WriteRawTag(160, 10);
9911 output.WriteBool(UseFeasibilityPump);
9912 }
9913 if (HasFpRounding) {
9914 output.WriteRawTag(168, 10);
9915 output.WriteEnum((int) FpRounding);
9916 }
9918 output.WriteRawTag(176, 10);
9919 output.WriteBool(MipAutomaticallyScaleVariables);
9920 }
9921 if (HasRepairHint) {
9922 output.WriteRawTag(184, 10);
9923 output.WriteBool(RepairHint);
9924 }
9926 output.WriteRawTag(192, 10);
9927 output.WriteInt32(PolarityRephaseIncrement);
9928 }
9929 if (HasAddZeroHalfCuts) {
9930 output.WriteRawTag(200, 10);
9931 output.WriteBool(AddZeroHalfCuts);
9932 }
9934 output.WriteRawTag(208, 10);
9935 output.WriteBool(ExpandAlldiffConstraints);
9936 }
9937 if (HasName) {
9938 output.WriteRawTag(218, 10);
9939 output.WriteString(Name);
9940 }
9941 if (HasAddCliqueCuts) {
9942 output.WriteRawTag(224, 10);
9943 output.WriteBool(AddCliqueCuts);
9944 }
9946 output.WriteRawTag(232, 10);
9947 output.WriteBool(KeepAllFeasibleSolutionsInPresolve);
9948 }
9950 output.WriteRawTag(240, 10);
9951 output.WriteBool(PresolveExtractIntegerEnforcement);
9952 }
9953 if (HasPolishLpSolution) {
9954 output.WriteRawTag(248, 10);
9955 output.WriteBool(PolishLpSolution);
9956 }
9957 if (HasUseProbingSearch) {
9958 output.WriteRawTag(128, 11);
9959 output.WriteBool(UseProbingSearch);
9960 }
9961 if (HasConvertIntervals) {
9962 output.WriteRawTag(136, 11);
9963 output.WriteBool(ConvertIntervals);
9964 }
9966 output.WriteRawTag(144, 11);
9967 output.WriteBool(PermuteVariableRandomly);
9968 }
9970 output.WriteRawTag(152, 11);
9971 output.WriteBool(PermutePresolveConstraintOrder);
9972 }
9973 if (HasUseAbslRandom) {
9974 output.WriteRawTag(160, 11);
9975 output.WriteBool(UseAbslRandom);
9976 }
9978 output.WriteRawTag(168, 11);
9979 output.WriteBool(DisableConstraintExpansion);
9980 }
9982 output.WriteRawTag(176, 11);
9983 output.WriteBool(ExpandReservoirConstraints);
9984 }
9985 if (HasSymmetryLevel) {
9986 output.WriteRawTag(184, 11);
9987 output.WriteInt32(SymmetryLevel);
9988 }
9989 if (HasLogPrefix) {
9990 output.WriteRawTag(202, 11);
9991 output.WriteString(LogPrefix);
9992 }
9993 if (HasLogToStdout) {
9994 output.WriteRawTag(208, 11);
9995 output.WriteBool(LogToStdout);
9996 }
9997 if (HasLogToResponse) {
9998 output.WriteRawTag(216, 11);
9999 output.WriteBool(LogToResponse);
10000 }
10002 output.WriteRawTag(224, 11);
10003 output.WriteBool(OptimizeWithLbTreeSearch);
10004 }
10006 output.WriteRawTag(232, 11);
10007 output.WriteBool(LogSubsolverStatistics);
10008 }
10010 output.WriteRawTag(241, 11);
10011 output.WriteDouble(ClauseCleanupRatio);
10012 }
10014 output.WriteRawTag(248, 11);
10016 }
10018 output.WriteRawTag(128, 12);
10019 output.WriteBool(FixVariablesToTheirHintedValue);
10020 }
10021 if (HasSolutionPoolSize) {
10022 output.WriteRawTag(136, 12);
10023 output.WriteInt32(SolutionPoolSize);
10024 }
10026 output.WriteRawTag(144, 12);
10027 output.WriteBool(FillAdditionalSolutionsInResponse);
10028 }
10030 output.WriteRawTag(152, 12);
10031 output.WriteBool(DebugCrashOnBadHint);
10032 }
10033 if (HasCutLevel) {
10034 output.WriteRawTag(160, 12);
10035 output.WriteInt32(CutLevel);
10036 }
10037 if (HasAddObjectiveCut) {
10038 output.WriteRawTag(168, 12);
10039 output.WriteBool(AddObjectiveCut);
10040 }
10042 output.WriteRawTag(176, 12);
10043 output.WriteBool(MipComputeTrueObjectiveBound);
10044 }
10046 output.WriteRawTag(185, 12);
10047 output.WriteDouble(MipMaxValidMagnitude);
10048 }
10050 output.WriteRawTag(192, 12);
10051 output.WriteBool(UseTimetablingInNoOverlap2D);
10052 }
10054 output.WriteRawTag(200, 12);
10055 output.WriteInt64(PresolveInclusionWorkLimit);
10056 }
10057 if (HasIgnoreNames) {
10058 output.WriteRawTag(208, 12);
10059 output.WriteBool(IgnoreNames);
10060 }
10062 output.WriteRawTag(216, 12);
10063 output.WriteBool(ShareBinaryClauses);
10064 }
10066 output.WriteRawTag(224, 12);
10067 output.WriteBool(UseShavingInProbingSearch);
10068 }
10070 output.WriteRawTag(233, 12);
10071 output.WriteDouble(ShavingSearchDeterministicTime);
10072 }
10073 if (HasNumWorkers) {
10074 output.WriteRawTag(240, 12);
10075 output.WriteInt32(NumWorkers);
10076 }
10077 subsolvers_.WriteTo(ref output, _repeated_subsolvers_codec);
10078 ignoreSubsolvers_.WriteTo(ref output, _repeated_ignoreSubsolvers_codec);
10079 subsolverParams_.WriteTo(ref output, _repeated_subsolverParams_codec);
10080 if (HasMinNumLnsWorkers) {
10081 output.WriteRawTag(152, 13);
10082 output.WriteInt32(MinNumLnsWorkers);
10083 }
10085 output.WriteRawTag(168, 13);
10086 output.WriteBool(UseEnergeticReasoningInNoOverlap2D);
10087 }
10089 output.WriteRawTag(176, 13);
10090 output.WriteBool(UseDualSchedulingHeuristics);
10091 }
10093 output.WriteRawTag(184, 13);
10094 output.WriteBool(UseHardPrecedencesInCumulative);
10095 }
10097 output.WriteRawTag(192, 13);
10098 output.WriteBool(DetectTableWithCost);
10099 }
10101 output.WriteRawTag(200, 13);
10102 output.WriteInt32(TableCompressionLevel);
10103 }
10104 extraSubsolvers_.WriteTo(ref output, _repeated_extraSubsolvers_codec);
10106 output.WriteRawTag(224, 13);
10107 output.WriteBool(ExploitAllPrecedences);
10108 }
10110 output.WriteRawTag(233, 13);
10111 output.WriteDouble(PropagationLoopDetectionFactor);
10112 }
10113 if (HasOnlySolveIp) {
10114 output.WriteRawTag(240, 13);
10115 output.WriteBool(OnlySolveIp);
10116 }
10118 output.WriteRawTag(248, 13);
10120 }
10122 output.WriteRawTag(128, 14);
10123 output.WriteBool(NewLinearPropagation);
10124 }
10126 output.WriteRawTag(136, 14);
10127 output.WriteBool(MipScaleLargeDomain);
10128 }
10130 output.WriteRawTag(145, 14);
10131 output.WriteDouble(ProbingDeterministicTimeLimit);
10132 }
10133 if (HasRootLpIterations) {
10134 output.WriteRawTag(152, 14);
10135 output.WriteInt32(RootLpIterations);
10136 }
10138 output.WriteRawTag(160, 14);
10139 output.WriteBool(UseObjectiveLbSearch);
10140 }
10142 output.WriteRawTag(168, 14);
10144 }
10146 output.WriteRawTag(176, 14);
10147 output.WriteBool(UseStrongPropagationInDisjunctive);
10148 }
10149 if (HasMipDropTolerance) {
10150 output.WriteRawTag(193, 14);
10151 output.WriteDouble(MipDropTolerance);
10152 }
10153 if (HasInferAllDiffs) {
10154 output.WriteRawTag(200, 14);
10155 output.WriteBool(InferAllDiffs);
10156 }
10158 output.WriteRawTag(208, 14);
10159 output.WriteBool(FindBigLinearOverlap);
10160 }
10162 output.WriteRawTag(216, 14);
10163 output.WriteInt32(SharedTreeNumWorkers);
10164 }
10166 output.WriteRawTag(224, 14);
10167 output.WriteBool(UseSharedTreeSearch);
10168 }
10170 output.WriteRawTag(233, 14);
10172 }
10174 output.WriteRawTag(240, 14);
10175 output.WriteInt32(SharedTreeMaxNodesPerWorker);
10176 }
10178 output.WriteRawTag(248, 14);
10179 output.WriteEnum((int) SharedTreeSplitStrategy);
10180 }
10182 output.WriteRawTag(128, 15);
10183 output.WriteBool(TestFeasibilityJump);
10184 }
10186 output.WriteRawTag(145, 15);
10187 output.WriteDouble(FeasibilityJumpDecay);
10188 }
10189 if (HasNumViolationLs) {
10190 output.WriteRawTag(160, 15);
10191 output.WriteInt32(NumViolationLs);
10192 }
10194 output.WriteRawTag(185, 15);
10196 }
10198 output.WriteRawTag(193, 15);
10199 output.WriteDouble(FeasibilityJumpVarPerburbationRangeRatio);
10200 }
10202 output.WriteRawTag(200, 15);
10203 output.WriteInt32(ViolationLsPerturbationPeriod);
10204 }
10206 output.WriteRawTag(208, 15);
10207 output.WriteBool(FeasibilityJumpEnableRestarts);
10208 }
10210 output.WriteRawTag(224, 15);
10211 output.WriteBool(StopAfterRootPropagation);
10212 }
10214 output.WriteRawTag(232, 15);
10215 output.WriteBool(UseObjectiveShavingSearch);
10216 }
10217 if (HasUseLbRelaxLns) {
10218 output.WriteRawTag(248, 15);
10219 output.WriteBool(UseLbRelaxLns);
10220 }
10221 if (HasLinearSplitSize) {
10222 output.WriteRawTag(128, 16);
10223 output.WriteInt32(LinearSplitSize);
10224 }
10226 output.WriteRawTag(136, 16);
10227 output.WriteInt32(FeasibilityJumpLinearizationLevel);
10228 }
10230 output.WriteRawTag(144, 16);
10231 output.WriteInt32(FeasibilityJumpRestartFactor);
10232 }
10234 output.WriteRawTag(153, 16);
10235 output.WriteDouble(ViolationLsCompoundMoveProbability);
10236 }
10238 output.WriteRawTag(160, 16);
10239 output.WriteInt32(MaxNumIntervalsForTimetableEdgeFinding);
10240 }
10241 if (HasMipPresolveLevel) {
10242 output.WriteRawTag(168, 16);
10243 output.WriteInt32(MipPresolveLevel);
10244 }
10246 output.WriteRawTag(176, 16);
10247 output.WriteBool(PushAllTasksTowardStart);
10248 }
10250 output.WriteRawTag(184, 16);
10251 output.WriteBool(UseDynamicPrecedenceInDisjunctive);
10252 }
10254 output.WriteRawTag(192, 16);
10256 }
10258 output.WriteRawTag(200, 16);
10259 output.WriteBool(UseFeasibilityJump);
10260 }
10262 output.WriteRawTag(209, 16);
10263 output.WriteDouble(LpPrimalTolerance);
10264 }
10265 if (HasLpDualTolerance) {
10266 output.WriteRawTag(217, 16);
10267 output.WriteDouble(LpDualTolerance);
10268 }
10270 output.WriteRawTag(224, 16);
10271 output.WriteBool(UseDynamicPrecedenceInCumulative);
10272 }
10274 output.WriteRawTag(232, 16);
10275 output.WriteBool(UseExtendedProbing);
10276 }
10278 output.WriteRawTag(240, 16);
10279 output.WriteInt32(AtMostOneMaxExpansionSize);
10280 }
10282 output.WriteRawTag(248, 16);
10284 }
10286 output.WriteRawTag(128, 17);
10287 output.WriteInt32(ProbingNumCombinationsLimit);
10288 }
10290 output.WriteRawTag(137, 17);
10291 output.WriteDouble(InprocessingDtimeRatio);
10292 }
10294 output.WriteRawTag(145, 17);
10295 output.WriteDouble(InprocessingProbingDtime);
10296 }
10298 output.WriteRawTag(153, 17);
10299 output.WriteDouble(InprocessingMinimizationDtime);
10300 }
10302 output.WriteRawTag(160, 17);
10303 output.WriteInt32(MaxPairsPairwiseReasoningInNoOverlap2D);
10304 }
10306 output.WriteRawTag(168, 17);
10307 output.WriteBool(DetectLinearizedProduct);
10308 }
10310 output.WriteRawTag(176, 17);
10311 output.WriteBool(MipTreatHighMagnitudeBoundsAsInfinity);
10312 }
10313 if (HasAddRltCuts) {
10314 output.WriteRawTag(184, 17);
10315 output.WriteBool(AddRltCuts);
10316 }
10317 if (_unknownFields != null) {
10318 _unknownFields.WriteTo(ref output);
10319 }
10320 }
10321 #endif
10322
10323 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
10324 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
10325 public int CalculateSize() {
10326 int size = 0;
10327 if (HasName) {
10328 size += 2 + pb::CodedOutputStream.ComputeStringSize(Name);
10329 }
10331 size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) PreferredVariableOrder);
10332 }
10333 if (HasInitialPolarity) {
10334 size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) InitialPolarity);
10335 }
10336 if (HasUsePhaseSaving) {
10337 size += 2 + 1;
10338 }
10340 size += 2 + pb::CodedOutputStream.ComputeInt32Size(PolarityRephaseIncrement);
10341 }
10343 size += 2 + 8;
10344 }
10346 size += 2 + 8;
10347 }
10348 if (HasUseErwaHeuristic) {
10349 size += 2 + 1;
10350 }
10352 size += 2 + 8;
10353 }
10355 size += 2 + 1;
10356 }
10358 size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) MinimizationAlgorithm);
10359 }
10361 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) BinaryMinimizationAlgorithm);
10362 }
10364 size += 2 + 1;
10365 }
10367 size += 1 + pb::CodedOutputStream.ComputeInt32Size(ClauseCleanupPeriod);
10368 }
10370 size += 1 + pb::CodedOutputStream.ComputeInt32Size(ClauseCleanupTarget);
10371 }
10373 size += 2 + 8;
10374 }
10376 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) ClauseCleanupProtection);
10377 }
10379 size += 2 + pb::CodedOutputStream.ComputeInt32Size(ClauseCleanupLbdBound);
10380 }
10382 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) ClauseCleanupOrdering);
10383 }
10385 size += 2 + pb::CodedOutputStream.ComputeInt32Size(PbCleanupIncrement);
10386 }
10387 if (HasPbCleanupRatio) {
10388 size += 2 + 8;
10389 }
10391 size += 1 + 8;
10392 }
10394 size += 2 + 8;
10395 }
10396 if (HasGlucoseMaxDecay) {
10397 size += 2 + 8;
10398 }
10400 size += 2 + 8;
10401 }
10403 size += 2 + pb::CodedOutputStream.ComputeInt32Size(GlucoseDecayIncrementPeriod);
10404 }
10406 size += 2 + 8;
10407 }
10409 size += 2 + 8;
10410 }
10411 size += restartAlgorithms_.CalculateSize(_repeated_restartAlgorithms_codec);
10413 size += 2 + pb::CodedOutputStream.ComputeStringSize(DefaultRestartAlgorithms);
10414 }
10415 if (HasRestartPeriod) {
10416 size += 2 + pb::CodedOutputStream.ComputeInt32Size(RestartPeriod);
10417 }
10419 size += 2 + pb::CodedOutputStream.ComputeInt32Size(RestartRunningWindowSize);
10420 }
10422 size += 2 + 8;
10423 }
10425 size += 2 + 8;
10426 }
10428 size += 2 + 1;
10429 }
10431 size += 2 + pb::CodedOutputStream.ComputeInt32Size(BlockingRestartWindowSize);
10432 }
10434 size += 2 + 8;
10435 }
10437 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumConflictsBeforeStrategyChanges);
10438 }
10440 size += 2 + 8;
10441 }
10442 if (HasMaxTimeInSeconds) {
10443 size += 2 + 8;
10444 }
10446 size += 2 + 8;
10447 }
10449 size += 2 + pb::CodedOutputStream.ComputeInt64Size(MaxNumberOfConflicts);
10450 }
10451 if (HasMaxMemoryInMb) {
10452 size += 2 + pb::CodedOutputStream.ComputeInt64Size(MaxMemoryInMb);
10453 }
10454 if (HasAbsoluteGapLimit) {
10455 size += 2 + 8;
10456 }
10457 if (HasRelativeGapLimit) {
10458 size += 2 + 8;
10459 }
10460 if (HasRandomSeed) {
10461 size += 2 + pb::CodedOutputStream.ComputeInt32Size(RandomSeed);
10462 }
10464 size += 2 + 1;
10465 }
10467 size += 2 + 1;
10468 }
10469 if (HasUseAbslRandom) {
10470 size += 2 + 1;
10471 }
10473 size += 2 + 1;
10474 }
10476 size += 2 + 1;
10477 }
10478 if (HasLogPrefix) {
10479 size += 2 + pb::CodedOutputStream.ComputeStringSize(LogPrefix);
10480 }
10481 if (HasLogToStdout) {
10482 size += 2 + 1;
10483 }
10484 if (HasLogToResponse) {
10485 size += 2 + 1;
10486 }
10487 if (HasUsePbResolution) {
10488 size += 2 + 1;
10489 }
10491 size += 2 + 1;
10492 }
10494 size += 2 + 1;
10495 }
10497 size += 2 + pb::CodedOutputStream.ComputeInt32Size(PresolveBveThreshold);
10498 }
10500 size += 2 + pb::CodedOutputStream.ComputeInt32Size(PresolveBveClauseWeight);
10501 }
10503 size += 2 + 8;
10504 }
10506 size += 2 + 8;
10507 }
10509 size += 2 + 1;
10510 }
10511 if (HasPresolveUseBva) {
10512 size += 2 + 1;
10513 }
10515 size += 2 + pb::CodedOutputStream.ComputeInt32Size(PresolveBvaThreshold);
10516 }
10518 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxPresolveIterations);
10519 }
10520 if (HasCpModelPresolve) {
10521 size += 2 + 1;
10522 }
10524 size += 2 + pb::CodedOutputStream.ComputeInt32Size(CpModelProbingLevel);
10525 }
10527 size += 2 + 1;
10528 }
10530 size += 2 + 1;
10531 }
10533 size += 2 + pb::CodedOutputStream.ComputeInt32Size(TableCompressionLevel);
10534 }
10536 size += 2 + 1;
10537 }
10539 size += 2 + 1;
10540 }
10542 size += 2 + 1;
10543 }
10545 size += 2 + 1;
10546 }
10548 size += 2 + 8;
10549 }
10551 size += 2 + 8;
10552 }
10554 size += 2 + pb::CodedOutputStream.ComputeInt32Size(PresolveSubstitutionLevel);
10555 }
10557 size += 2 + 1;
10558 }
10560 size += 2 + pb::CodedOutputStream.ComputeInt64Size(PresolveInclusionWorkLimit);
10561 }
10562 if (HasIgnoreNames) {
10563 size += 2 + 1;
10564 }
10565 if (HasInferAllDiffs) {
10566 size += 2 + 1;
10567 }
10569 size += 2 + 1;
10570 }
10572 size += 2 + 1;
10573 }
10575 size += 2 + 8;
10576 }
10578 size += 2 + 8;
10579 }
10581 size += 2 + 8;
10582 }
10583 if (HasNumWorkers) {
10584 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumWorkers);
10585 }
10586 if (HasNumSearchWorkers) {
10587 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumSearchWorkers);
10588 }
10589 if (HasMinNumLnsWorkers) {
10590 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MinNumLnsWorkers);
10591 }
10592 size += subsolvers_.CalculateSize(_repeated_subsolvers_codec);
10593 size += extraSubsolvers_.CalculateSize(_repeated_extraSubsolvers_codec);
10594 size += ignoreSubsolvers_.CalculateSize(_repeated_ignoreSubsolvers_codec);
10595 size += subsolverParams_.CalculateSize(_repeated_subsolverParams_codec);
10596 if (HasInterleaveSearch) {
10597 size += 2 + 1;
10598 }
10600 size += 2 + pb::CodedOutputStream.ComputeInt32Size(InterleaveBatchSize);
10601 }
10603 size += 2 + 1;
10604 }
10606 size += 2 + 1;
10607 }
10609 size += 2 + 1;
10610 }
10612 size += 2 + 1;
10613 }
10615 size += 2 + pb::CodedOutputStream.ComputeInt32Size(DebugMaxNumPresolveOperations);
10616 }
10618 size += 2 + 1;
10619 }
10621 size += 2 + 1;
10622 }
10624 size += 2 + pb::CodedOutputStream.ComputeInt32Size(CoreMinimizationLevel);
10625 }
10627 size += 2 + 1;
10628 }
10630 size += 2 + 1;
10631 }
10633 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) MaxSatAssumptionOrder);
10634 }
10636 size += 2 + 1;
10637 }
10639 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) MaxSatStratification);
10640 }
10642 size += 2 + 8;
10643 }
10645 size += 2 + 1;
10646 }
10648 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxSizeToCreatePrecedenceLiteralsInDisjunctive);
10649 }
10651 size += 2 + 1;
10652 }
10654 size += 2 + 1;
10655 }
10657 size += 2 + 1;
10658 }
10660 size += 2 + 1;
10661 }
10663 size += 2 + 1;
10664 }
10666 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxNumIntervalsForTimetableEdgeFinding);
10667 }
10669 size += 2 + 1;
10670 }
10672 size += 2 + 1;
10673 }
10675 size += 2 + 1;
10676 }
10678 size += 2 + 1;
10679 }
10681 size += 2 + 1;
10682 }
10684 size += 2 + 1;
10685 }
10687 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxPairsPairwiseReasoningInNoOverlap2D);
10688 }
10690 size += 2 + 1;
10691 }
10692 if (HasSearchBranching) {
10693 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) SearchBranching);
10694 }
10696 size += 2 + pb::CodedOutputStream.ComputeInt32Size(HintConflictLimit);
10697 }
10698 if (HasRepairHint) {
10699 size += 2 + 1;
10700 }
10702 size += 2 + 1;
10703 }
10704 if (HasUseProbingSearch) {
10705 size += 2 + 1;
10706 }
10708 size += 2 + 1;
10709 }
10711 size += 2 + pb::CodedOutputStream.ComputeInt32Size(ProbingNumCombinationsLimit);
10712 }
10714 size += 2 + 1;
10715 }
10717 size += 2 + 8;
10718 }
10720 size += 2 + 1;
10721 }
10723 size += 2 + 1;
10724 }
10726 size += 2 + pb::CodedOutputStream.ComputeInt64Size(PseudoCostReliabilityThreshold);
10727 }
10728 if (HasOptimizeWithCore) {
10729 size += 2 + 1;
10730 }
10732 size += 2 + 1;
10733 }
10735 size += 2 + pb::CodedOutputStream.ComputeInt32Size(BinarySearchNumConflicts);
10736 }
10738 size += 2 + 1;
10739 }
10741 size += 2 + 1;
10742 }
10744 size += 2 + 1;
10745 }
10747 size += 2 + 8;
10748 }
10750 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FeasibilityJumpLinearizationLevel);
10751 }
10753 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FeasibilityJumpRestartFactor);
10754 }
10756 size += 2 + 8;
10757 }
10759 size += 2 + 8;
10760 }
10762 size += 2 + 1;
10763 }
10765 size += 2 + pb::CodedOutputStream.ComputeInt32Size(FeasibilityJumpMaxExpandedConstraintSize);
10766 }
10767 if (HasNumViolationLs) {
10768 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumViolationLs);
10769 }
10771 size += 2 + pb::CodedOutputStream.ComputeInt32Size(ViolationLsPerturbationPeriod);
10772 }
10774 size += 2 + 8;
10775 }
10777 size += 2 + pb::CodedOutputStream.ComputeInt32Size(SharedTreeNumWorkers);
10778 }
10780 size += 2 + 1;
10781 }
10783 size += 2 + 8;
10784 }
10786 size += 2 + pb::CodedOutputStream.ComputeInt32Size(SharedTreeMaxNodesPerWorker);
10787 }
10789 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) SharedTreeSplitStrategy);
10790 }
10792 size += 2 + 1;
10793 }
10795 size += 2 + 1;
10796 }
10798 size += 2 + 1;
10799 }
10801 size += 2 + 1;
10802 }
10804 size += 2 + 1;
10805 }
10807 size += 2 + 1;
10808 }
10810 size += 2 + 1;
10811 }
10813 size += 2 + 1;
10814 }
10816 size += 2 + 1;
10817 }
10818 if (HasUseLnsOnly) {
10819 size += 2 + 1;
10820 }
10821 if (HasSolutionPoolSize) {
10822 size += 2 + pb::CodedOutputStream.ComputeInt32Size(SolutionPoolSize);
10823 }
10824 if (HasUseRinsLns) {
10825 size += 2 + 1;
10826 }
10828 size += 2 + 1;
10829 }
10830 if (HasUseLbRelaxLns) {
10831 size += 2 + 1;
10832 }
10833 if (HasFpRounding) {
10834 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) FpRounding);
10835 }
10837 size += 2 + 1;
10838 }
10839 if (HasRandomizeSearch) {
10840 size += 2 + 1;
10841 }
10843 size += 2 + pb::CodedOutputStream.ComputeInt64Size(SearchRandomVariablePoolSize);
10844 }
10846 size += 2 + 1;
10847 }
10849 size += 2 + 1;
10850 }
10851 if (HasUseExactLpReason) {
10852 size += 2 + 1;
10853 }
10855 size += 2 + 1;
10856 }
10858 size += 2 + pb::CodedOutputStream.ComputeInt32Size(AtMostOneMaxExpansionSize);
10859 }
10861 size += 2 + 1;
10862 }
10863 if (HasUseImpliedBounds) {
10864 size += 2 + 1;
10865 }
10866 if (HasPolishLpSolution) {
10867 size += 2 + 1;
10868 }
10870 size += 2 + 8;
10871 }
10872 if (HasLpDualTolerance) {
10873 size += 2 + 8;
10874 }
10875 if (HasConvertIntervals) {
10876 size += 2 + 1;
10877 }
10878 if (HasSymmetryLevel) {
10879 size += 2 + pb::CodedOutputStream.ComputeInt32Size(SymmetryLevel);
10880 }
10882 size += 2 + 1;
10883 }
10884 if (HasLinearSplitSize) {
10885 size += 2 + pb::CodedOutputStream.ComputeInt32Size(LinearSplitSize);
10886 }
10888 size += 2 + pb::CodedOutputStream.ComputeInt32Size(LinearizationLevel);
10889 }
10891 size += 2 + pb::CodedOutputStream.ComputeInt32Size(BooleanEncodingLevel);
10892 }
10894 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxDomainSizeWhenEncodingEqNeqConstraints);
10895 }
10896 if (HasMaxNumCuts) {
10897 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxNumCuts);
10898 }
10899 if (HasCutLevel) {
10900 size += 2 + pb::CodedOutputStream.ComputeInt32Size(CutLevel);
10901 }
10903 size += 2 + 1;
10904 }
10905 if (HasAddObjectiveCut) {
10906 size += 2 + 1;
10907 }
10908 if (HasAddCgCuts) {
10909 size += 2 + 1;
10910 }
10911 if (HasAddMirCuts) {
10912 size += 2 + 1;
10913 }
10914 if (HasAddZeroHalfCuts) {
10915 size += 2 + 1;
10916 }
10917 if (HasAddCliqueCuts) {
10918 size += 2 + 1;
10919 }
10920 if (HasAddRltCuts) {
10921 size += 2 + 1;
10922 }
10924 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxAllDiffCutSize);
10925 }
10926 if (HasAddLinMaxCuts) {
10927 size += 2 + 1;
10928 }
10930 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxIntegerRoundingScaling);
10931 }
10933 size += 2 + 1;
10934 }
10935 if (HasRootLpIterations) {
10936 size += 2 + pb::CodedOutputStream.ComputeInt32Size(RootLpIterations);
10937 }
10939 size += 2 + 8;
10940 }
10942 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxCutRoundsAtLevelZero);
10943 }
10945 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxConsecutiveInactiveCount);
10946 }
10948 size += 2 + 8;
10949 }
10951 size += 2 + 8;
10952 }
10953 if (HasCutCleanupTarget) {
10954 size += 2 + pb::CodedOutputStream.ComputeInt32Size(CutCleanupTarget);
10955 }
10957 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NewConstraintsBatchSize);
10958 }
10960 size += 2 + 1;
10961 }
10963 size += 2 + 1;
10964 }
10966 size += 2 + 1;
10967 }
10969 size += 2 + 1;
10970 }
10971 if (HasExploitObjective) {
10972 size += 2 + 1;
10973 }
10975 size += 2 + 1;
10976 }
10977 if (HasMipMaxBound) {
10978 size += 2 + 8;
10979 }
10980 if (HasMipVarScaling) {
10981 size += 2 + 8;
10982 }
10984 size += 2 + 1;
10985 }
10987 size += 2 + 1;
10988 }
10989 if (HasOnlySolveIp) {
10990 size += 2 + 1;
10991 }
10993 size += 2 + 8;
10994 }
10996 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MipMaxActivityExponent);
10997 }
10999 size += 2 + 8;
11000 }
11002 size += 2 + 1;
11003 }
11005 size += 2 + 8;
11006 }
11008 size += 2 + 1;
11009 }
11010 if (HasMipDropTolerance) {
11011 size += 2 + 8;
11012 }
11013 if (HasMipPresolveLevel) {
11014 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MipPresolveLevel);
11015 }
11016 if (_unknownFields != null) {
11017 size += _unknownFields.CalculateSize();
11018 }
11019 return size;
11020 }
11021
11022 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
11023 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
11024 public void MergeFrom(SatParameters other) {
11025 if (other == null) {
11026 return;
11027 }
11028 if (other.HasName) {
11029 Name = other.Name;
11030 }
11031 if (other.HasPreferredVariableOrder) {
11032 PreferredVariableOrder = other.PreferredVariableOrder;
11033 }
11034 if (other.HasInitialPolarity) {
11035 InitialPolarity = other.InitialPolarity;
11036 }
11037 if (other.HasUsePhaseSaving) {
11038 UsePhaseSaving = other.UsePhaseSaving;
11039 }
11040 if (other.HasPolarityRephaseIncrement) {
11041 PolarityRephaseIncrement = other.PolarityRephaseIncrement;
11042 }
11043 if (other.HasRandomPolarityRatio) {
11044 RandomPolarityRatio = other.RandomPolarityRatio;
11045 }
11046 if (other.HasRandomBranchesRatio) {
11047 RandomBranchesRatio = other.RandomBranchesRatio;
11048 }
11049 if (other.HasUseErwaHeuristic) {
11050 UseErwaHeuristic = other.UseErwaHeuristic;
11051 }
11052 if (other.HasInitialVariablesActivity) {
11053 InitialVariablesActivity = other.InitialVariablesActivity;
11054 }
11055 if (other.HasAlsoBumpVariablesInConflictReasons) {
11056 AlsoBumpVariablesInConflictReasons = other.AlsoBumpVariablesInConflictReasons;
11057 }
11058 if (other.HasMinimizationAlgorithm) {
11059 MinimizationAlgorithm = other.MinimizationAlgorithm;
11060 }
11061 if (other.HasBinaryMinimizationAlgorithm) {
11062 BinaryMinimizationAlgorithm = other.BinaryMinimizationAlgorithm;
11063 }
11064 if (other.HasSubsumptionDuringConflictAnalysis) {
11065 SubsumptionDuringConflictAnalysis = other.SubsumptionDuringConflictAnalysis;
11066 }
11067 if (other.HasClauseCleanupPeriod) {
11068 ClauseCleanupPeriod = other.ClauseCleanupPeriod;
11069 }
11070 if (other.HasClauseCleanupTarget) {
11071 ClauseCleanupTarget = other.ClauseCleanupTarget;
11072 }
11073 if (other.HasClauseCleanupRatio) {
11074 ClauseCleanupRatio = other.ClauseCleanupRatio;
11075 }
11076 if (other.HasClauseCleanupProtection) {
11077 ClauseCleanupProtection = other.ClauseCleanupProtection;
11078 }
11079 if (other.HasClauseCleanupLbdBound) {
11080 ClauseCleanupLbdBound = other.ClauseCleanupLbdBound;
11081 }
11082 if (other.HasClauseCleanupOrdering) {
11083 ClauseCleanupOrdering = other.ClauseCleanupOrdering;
11084 }
11085 if (other.HasPbCleanupIncrement) {
11086 PbCleanupIncrement = other.PbCleanupIncrement;
11087 }
11088 if (other.HasPbCleanupRatio) {
11089 PbCleanupRatio = other.PbCleanupRatio;
11090 }
11091 if (other.HasVariableActivityDecay) {
11092 VariableActivityDecay = other.VariableActivityDecay;
11093 }
11094 if (other.HasMaxVariableActivityValue) {
11095 MaxVariableActivityValue = other.MaxVariableActivityValue;
11096 }
11097 if (other.HasGlucoseMaxDecay) {
11098 GlucoseMaxDecay = other.GlucoseMaxDecay;
11099 }
11100 if (other.HasGlucoseDecayIncrement) {
11101 GlucoseDecayIncrement = other.GlucoseDecayIncrement;
11102 }
11103 if (other.HasGlucoseDecayIncrementPeriod) {
11104 GlucoseDecayIncrementPeriod = other.GlucoseDecayIncrementPeriod;
11105 }
11106 if (other.HasClauseActivityDecay) {
11107 ClauseActivityDecay = other.ClauseActivityDecay;
11108 }
11109 if (other.HasMaxClauseActivityValue) {
11110 MaxClauseActivityValue = other.MaxClauseActivityValue;
11111 }
11112 restartAlgorithms_.Add(other.restartAlgorithms_);
11113 if (other.HasDefaultRestartAlgorithms) {
11114 DefaultRestartAlgorithms = other.DefaultRestartAlgorithms;
11115 }
11116 if (other.HasRestartPeriod) {
11117 RestartPeriod = other.RestartPeriod;
11118 }
11119 if (other.HasRestartRunningWindowSize) {
11120 RestartRunningWindowSize = other.RestartRunningWindowSize;
11121 }
11122 if (other.HasRestartDlAverageRatio) {
11123 RestartDlAverageRatio = other.RestartDlAverageRatio;
11124 }
11125 if (other.HasRestartLbdAverageRatio) {
11126 RestartLbdAverageRatio = other.RestartLbdAverageRatio;
11127 }
11128 if (other.HasUseBlockingRestart) {
11129 UseBlockingRestart = other.UseBlockingRestart;
11130 }
11131 if (other.HasBlockingRestartWindowSize) {
11132 BlockingRestartWindowSize = other.BlockingRestartWindowSize;
11133 }
11134 if (other.HasBlockingRestartMultiplier) {
11135 BlockingRestartMultiplier = other.BlockingRestartMultiplier;
11136 }
11137 if (other.HasNumConflictsBeforeStrategyChanges) {
11138 NumConflictsBeforeStrategyChanges = other.NumConflictsBeforeStrategyChanges;
11139 }
11140 if (other.HasStrategyChangeIncreaseRatio) {
11141 StrategyChangeIncreaseRatio = other.StrategyChangeIncreaseRatio;
11142 }
11143 if (other.HasMaxTimeInSeconds) {
11144 MaxTimeInSeconds = other.MaxTimeInSeconds;
11145 }
11146 if (other.HasMaxDeterministicTime) {
11147 MaxDeterministicTime = other.MaxDeterministicTime;
11148 }
11149 if (other.HasMaxNumberOfConflicts) {
11150 MaxNumberOfConflicts = other.MaxNumberOfConflicts;
11151 }
11152 if (other.HasMaxMemoryInMb) {
11153 MaxMemoryInMb = other.MaxMemoryInMb;
11154 }
11155 if (other.HasAbsoluteGapLimit) {
11156 AbsoluteGapLimit = other.AbsoluteGapLimit;
11157 }
11158 if (other.HasRelativeGapLimit) {
11159 RelativeGapLimit = other.RelativeGapLimit;
11160 }
11161 if (other.HasRandomSeed) {
11162 RandomSeed = other.RandomSeed;
11163 }
11164 if (other.HasPermuteVariableRandomly) {
11165 PermuteVariableRandomly = other.PermuteVariableRandomly;
11166 }
11167 if (other.HasPermutePresolveConstraintOrder) {
11168 PermutePresolveConstraintOrder = other.PermutePresolveConstraintOrder;
11169 }
11170 if (other.HasUseAbslRandom) {
11171 UseAbslRandom = other.UseAbslRandom;
11172 }
11173 if (other.HasLogSearchProgress) {
11174 LogSearchProgress = other.LogSearchProgress;
11175 }
11176 if (other.HasLogSubsolverStatistics) {
11177 LogSubsolverStatistics = other.LogSubsolverStatistics;
11178 }
11179 if (other.HasLogPrefix) {
11180 LogPrefix = other.LogPrefix;
11181 }
11182 if (other.HasLogToStdout) {
11183 LogToStdout = other.LogToStdout;
11184 }
11185 if (other.HasLogToResponse) {
11186 LogToResponse = other.LogToResponse;
11187 }
11188 if (other.HasUsePbResolution) {
11189 UsePbResolution = other.UsePbResolution;
11190 }
11191 if (other.HasMinimizeReductionDuringPbResolution) {
11192 MinimizeReductionDuringPbResolution = other.MinimizeReductionDuringPbResolution;
11193 }
11194 if (other.HasCountAssumptionLevelsInLbd) {
11195 CountAssumptionLevelsInLbd = other.CountAssumptionLevelsInLbd;
11196 }
11197 if (other.HasPresolveBveThreshold) {
11198 PresolveBveThreshold = other.PresolveBveThreshold;
11199 }
11200 if (other.HasPresolveBveClauseWeight) {
11201 PresolveBveClauseWeight = other.PresolveBveClauseWeight;
11202 }
11203 if (other.HasProbingDeterministicTimeLimit) {
11204 ProbingDeterministicTimeLimit = other.ProbingDeterministicTimeLimit;
11205 }
11206 if (other.HasPresolveProbingDeterministicTimeLimit) {
11207 PresolveProbingDeterministicTimeLimit = other.PresolveProbingDeterministicTimeLimit;
11208 }
11209 if (other.HasPresolveBlockedClause) {
11210 PresolveBlockedClause = other.PresolveBlockedClause;
11211 }
11212 if (other.HasPresolveUseBva) {
11213 PresolveUseBva = other.PresolveUseBva;
11214 }
11215 if (other.HasPresolveBvaThreshold) {
11216 PresolveBvaThreshold = other.PresolveBvaThreshold;
11217 }
11218 if (other.HasMaxPresolveIterations) {
11219 MaxPresolveIterations = other.MaxPresolveIterations;
11220 }
11221 if (other.HasCpModelPresolve) {
11222 CpModelPresolve = other.CpModelPresolve;
11223 }
11224 if (other.HasCpModelProbingLevel) {
11225 CpModelProbingLevel = other.CpModelProbingLevel;
11226 }
11227 if (other.HasCpModelUseSatPresolve) {
11228 CpModelUseSatPresolve = other.CpModelUseSatPresolve;
11229 }
11230 if (other.HasDetectTableWithCost) {
11231 DetectTableWithCost = other.DetectTableWithCost;
11232 }
11233 if (other.HasTableCompressionLevel) {
11234 TableCompressionLevel = other.TableCompressionLevel;
11235 }
11236 if (other.HasExpandAlldiffConstraints) {
11237 ExpandAlldiffConstraints = other.ExpandAlldiffConstraints;
11238 }
11239 if (other.HasExpandReservoirConstraints) {
11240 ExpandReservoirConstraints = other.ExpandReservoirConstraints;
11241 }
11242 if (other.HasDisableConstraintExpansion) {
11243 DisableConstraintExpansion = other.DisableConstraintExpansion;
11244 }
11245 if (other.HasEncodeComplexLinearConstraintWithInteger) {
11246 EncodeComplexLinearConstraintWithInteger = other.EncodeComplexLinearConstraintWithInteger;
11247 }
11248 if (other.HasMergeNoOverlapWorkLimit) {
11249 MergeNoOverlapWorkLimit = other.MergeNoOverlapWorkLimit;
11250 }
11251 if (other.HasMergeAtMostOneWorkLimit) {
11252 MergeAtMostOneWorkLimit = other.MergeAtMostOneWorkLimit;
11253 }
11254 if (other.HasPresolveSubstitutionLevel) {
11255 PresolveSubstitutionLevel = other.PresolveSubstitutionLevel;
11256 }
11257 if (other.HasPresolveExtractIntegerEnforcement) {
11258 PresolveExtractIntegerEnforcement = other.PresolveExtractIntegerEnforcement;
11259 }
11260 if (other.HasPresolveInclusionWorkLimit) {
11261 PresolveInclusionWorkLimit = other.PresolveInclusionWorkLimit;
11262 }
11263 if (other.HasIgnoreNames) {
11264 IgnoreNames = other.IgnoreNames;
11265 }
11266 if (other.HasInferAllDiffs) {
11267 InferAllDiffs = other.InferAllDiffs;
11268 }
11269 if (other.HasFindBigLinearOverlap) {
11270 FindBigLinearOverlap = other.FindBigLinearOverlap;
11271 }
11272 if (other.HasUseSatInprocessing) {
11273 UseSatInprocessing = other.UseSatInprocessing;
11274 }
11275 if (other.HasInprocessingDtimeRatio) {
11276 InprocessingDtimeRatio = other.InprocessingDtimeRatio;
11277 }
11278 if (other.HasInprocessingProbingDtime) {
11279 InprocessingProbingDtime = other.InprocessingProbingDtime;
11280 }
11281 if (other.HasInprocessingMinimizationDtime) {
11282 InprocessingMinimizationDtime = other.InprocessingMinimizationDtime;
11283 }
11284 if (other.HasNumWorkers) {
11285 NumWorkers = other.NumWorkers;
11286 }
11287 if (other.HasNumSearchWorkers) {
11288 NumSearchWorkers = other.NumSearchWorkers;
11289 }
11290 if (other.HasMinNumLnsWorkers) {
11291 MinNumLnsWorkers = other.MinNumLnsWorkers;
11292 }
11293 subsolvers_.Add(other.subsolvers_);
11294 extraSubsolvers_.Add(other.extraSubsolvers_);
11295 ignoreSubsolvers_.Add(other.ignoreSubsolvers_);
11296 subsolverParams_.Add(other.subsolverParams_);
11297 if (other.HasInterleaveSearch) {
11298 InterleaveSearch = other.InterleaveSearch;
11299 }
11300 if (other.HasInterleaveBatchSize) {
11301 InterleaveBatchSize = other.InterleaveBatchSize;
11302 }
11303 if (other.HasShareObjectiveBounds) {
11304 ShareObjectiveBounds = other.ShareObjectiveBounds;
11305 }
11306 if (other.HasShareLevelZeroBounds) {
11307 ShareLevelZeroBounds = other.ShareLevelZeroBounds;
11308 }
11309 if (other.HasShareBinaryClauses) {
11310 ShareBinaryClauses = other.ShareBinaryClauses;
11311 }
11312 if (other.HasDebugPostsolveWithFullSolver) {
11313 DebugPostsolveWithFullSolver = other.DebugPostsolveWithFullSolver;
11314 }
11315 if (other.HasDebugMaxNumPresolveOperations) {
11316 DebugMaxNumPresolveOperations = other.DebugMaxNumPresolveOperations;
11317 }
11318 if (other.HasDebugCrashOnBadHint) {
11319 DebugCrashOnBadHint = other.DebugCrashOnBadHint;
11320 }
11321 if (other.HasUseOptimizationHints) {
11322 UseOptimizationHints = other.UseOptimizationHints;
11323 }
11324 if (other.HasCoreMinimizationLevel) {
11325 CoreMinimizationLevel = other.CoreMinimizationLevel;
11326 }
11327 if (other.HasFindMultipleCores) {
11328 FindMultipleCores = other.FindMultipleCores;
11329 }
11330 if (other.HasCoverOptimization) {
11331 CoverOptimization = other.CoverOptimization;
11332 }
11333 if (other.HasMaxSatAssumptionOrder) {
11334 MaxSatAssumptionOrder = other.MaxSatAssumptionOrder;
11335 }
11336 if (other.HasMaxSatReverseAssumptionOrder) {
11337 MaxSatReverseAssumptionOrder = other.MaxSatReverseAssumptionOrder;
11338 }
11339 if (other.HasMaxSatStratification) {
11340 MaxSatStratification = other.MaxSatStratification;
11341 }
11342 if (other.HasPropagationLoopDetectionFactor) {
11343 PropagationLoopDetectionFactor = other.PropagationLoopDetectionFactor;
11344 }
11345 if (other.HasUsePrecedencesInDisjunctiveConstraint) {
11346 UsePrecedencesInDisjunctiveConstraint = other.UsePrecedencesInDisjunctiveConstraint;
11347 }
11348 if (other.HasMaxSizeToCreatePrecedenceLiteralsInDisjunctive) {
11349 MaxSizeToCreatePrecedenceLiteralsInDisjunctive = other.MaxSizeToCreatePrecedenceLiteralsInDisjunctive;
11350 }
11351 if (other.HasUseStrongPropagationInDisjunctive) {
11352 UseStrongPropagationInDisjunctive = other.UseStrongPropagationInDisjunctive;
11353 }
11354 if (other.HasUseDynamicPrecedenceInDisjunctive) {
11355 UseDynamicPrecedenceInDisjunctive = other.UseDynamicPrecedenceInDisjunctive;
11356 }
11357 if (other.HasUseDynamicPrecedenceInCumulative) {
11358 UseDynamicPrecedenceInCumulative = other.UseDynamicPrecedenceInCumulative;
11359 }
11360 if (other.HasUseOverloadCheckerInCumulative) {
11361 UseOverloadCheckerInCumulative = other.UseOverloadCheckerInCumulative;
11362 }
11363 if (other.HasUseTimetableEdgeFindingInCumulative) {
11364 UseTimetableEdgeFindingInCumulative = other.UseTimetableEdgeFindingInCumulative;
11365 }
11366 if (other.HasMaxNumIntervalsForTimetableEdgeFinding) {
11367 MaxNumIntervalsForTimetableEdgeFinding = other.MaxNumIntervalsForTimetableEdgeFinding;
11368 }
11369 if (other.HasUseHardPrecedencesInCumulative) {
11370 UseHardPrecedencesInCumulative = other.UseHardPrecedencesInCumulative;
11371 }
11372 if (other.HasExploitAllPrecedences) {
11373 ExploitAllPrecedences = other.ExploitAllPrecedences;
11374 }
11375 if (other.HasUseDisjunctiveConstraintInCumulative) {
11376 UseDisjunctiveConstraintInCumulative = other.UseDisjunctiveConstraintInCumulative;
11377 }
11378 if (other.HasUseTimetablingInNoOverlap2D) {
11379 UseTimetablingInNoOverlap2D = other.UseTimetablingInNoOverlap2D;
11380 }
11381 if (other.HasUseEnergeticReasoningInNoOverlap2D) {
11382 UseEnergeticReasoningInNoOverlap2D = other.UseEnergeticReasoningInNoOverlap2D;
11383 }
11384 if (other.HasUseAreaEnergeticReasoningInNoOverlap2D) {
11385 UseAreaEnergeticReasoningInNoOverlap2D = other.UseAreaEnergeticReasoningInNoOverlap2D;
11386 }
11387 if (other.HasMaxPairsPairwiseReasoningInNoOverlap2D) {
11388 MaxPairsPairwiseReasoningInNoOverlap2D = other.MaxPairsPairwiseReasoningInNoOverlap2D;
11389 }
11390 if (other.HasUseDualSchedulingHeuristics) {
11391 UseDualSchedulingHeuristics = other.UseDualSchedulingHeuristics;
11392 }
11393 if (other.HasSearchBranching) {
11394 SearchBranching = other.SearchBranching;
11395 }
11396 if (other.HasHintConflictLimit) {
11397 HintConflictLimit = other.HintConflictLimit;
11398 }
11399 if (other.HasRepairHint) {
11400 RepairHint = other.RepairHint;
11401 }
11402 if (other.HasFixVariablesToTheirHintedValue) {
11403 FixVariablesToTheirHintedValue = other.FixVariablesToTheirHintedValue;
11404 }
11405 if (other.HasUseProbingSearch) {
11406 UseProbingSearch = other.UseProbingSearch;
11407 }
11408 if (other.HasUseExtendedProbing) {
11409 UseExtendedProbing = other.UseExtendedProbing;
11410 }
11411 if (other.HasProbingNumCombinationsLimit) {
11412 ProbingNumCombinationsLimit = other.ProbingNumCombinationsLimit;
11413 }
11414 if (other.HasUseShavingInProbingSearch) {
11415 UseShavingInProbingSearch = other.UseShavingInProbingSearch;
11416 }
11417 if (other.HasShavingSearchDeterministicTime) {
11418 ShavingSearchDeterministicTime = other.ShavingSearchDeterministicTime;
11419 }
11420 if (other.HasUseObjectiveLbSearch) {
11421 UseObjectiveLbSearch = other.UseObjectiveLbSearch;
11422 }
11423 if (other.HasUseObjectiveShavingSearch) {
11424 UseObjectiveShavingSearch = other.UseObjectiveShavingSearch;
11425 }
11426 if (other.HasPseudoCostReliabilityThreshold) {
11427 PseudoCostReliabilityThreshold = other.PseudoCostReliabilityThreshold;
11428 }
11429 if (other.HasOptimizeWithCore) {
11430 OptimizeWithCore = other.OptimizeWithCore;
11431 }
11432 if (other.HasOptimizeWithLbTreeSearch) {
11433 OptimizeWithLbTreeSearch = other.OptimizeWithLbTreeSearch;
11434 }
11435 if (other.HasBinarySearchNumConflicts) {
11436 BinarySearchNumConflicts = other.BinarySearchNumConflicts;
11437 }
11438 if (other.HasOptimizeWithMaxHs) {
11439 OptimizeWithMaxHs = other.OptimizeWithMaxHs;
11440 }
11441 if (other.HasUseFeasibilityJump) {
11442 UseFeasibilityJump = other.UseFeasibilityJump;
11443 }
11444 if (other.HasTestFeasibilityJump) {
11445 TestFeasibilityJump = other.TestFeasibilityJump;
11446 }
11447 if (other.HasFeasibilityJumpDecay) {
11448 FeasibilityJumpDecay = other.FeasibilityJumpDecay;
11449 }
11450 if (other.HasFeasibilityJumpLinearizationLevel) {
11451 FeasibilityJumpLinearizationLevel = other.FeasibilityJumpLinearizationLevel;
11452 }
11453 if (other.HasFeasibilityJumpRestartFactor) {
11454 FeasibilityJumpRestartFactor = other.FeasibilityJumpRestartFactor;
11455 }
11456 if (other.HasFeasibilityJumpVarRandomizationProbability) {
11457 FeasibilityJumpVarRandomizationProbability = other.FeasibilityJumpVarRandomizationProbability;
11458 }
11459 if (other.HasFeasibilityJumpVarPerburbationRangeRatio) {
11460 FeasibilityJumpVarPerburbationRangeRatio = other.FeasibilityJumpVarPerburbationRangeRatio;
11461 }
11462 if (other.HasFeasibilityJumpEnableRestarts) {
11463 FeasibilityJumpEnableRestarts = other.FeasibilityJumpEnableRestarts;
11464 }
11465 if (other.HasFeasibilityJumpMaxExpandedConstraintSize) {
11466 FeasibilityJumpMaxExpandedConstraintSize = other.FeasibilityJumpMaxExpandedConstraintSize;
11467 }
11468 if (other.HasNumViolationLs) {
11469 NumViolationLs = other.NumViolationLs;
11470 }
11471 if (other.HasViolationLsPerturbationPeriod) {
11472 ViolationLsPerturbationPeriod = other.ViolationLsPerturbationPeriod;
11473 }
11474 if (other.HasViolationLsCompoundMoveProbability) {
11475 ViolationLsCompoundMoveProbability = other.ViolationLsCompoundMoveProbability;
11476 }
11477 if (other.HasSharedTreeNumWorkers) {
11478 SharedTreeNumWorkers = other.SharedTreeNumWorkers;
11479 }
11480 if (other.HasUseSharedTreeSearch) {
11481 UseSharedTreeSearch = other.UseSharedTreeSearch;
11482 }
11483 if (other.HasSharedTreeWorkerObjectiveSplitProbability) {
11484 SharedTreeWorkerObjectiveSplitProbability = other.SharedTreeWorkerObjectiveSplitProbability;
11485 }
11486 if (other.HasSharedTreeMaxNodesPerWorker) {
11487 SharedTreeMaxNodesPerWorker = other.SharedTreeMaxNodesPerWorker;
11488 }
11489 if (other.HasSharedTreeSplitStrategy) {
11490 SharedTreeSplitStrategy = other.SharedTreeSplitStrategy;
11491 }
11492 if (other.HasEnumerateAllSolutions) {
11493 EnumerateAllSolutions = other.EnumerateAllSolutions;
11494 }
11495 if (other.HasKeepAllFeasibleSolutionsInPresolve) {
11496 KeepAllFeasibleSolutionsInPresolve = other.KeepAllFeasibleSolutionsInPresolve;
11497 }
11498 if (other.HasFillTightenedDomainsInResponse) {
11499 FillTightenedDomainsInResponse = other.FillTightenedDomainsInResponse;
11500 }
11501 if (other.HasFillAdditionalSolutionsInResponse) {
11502 FillAdditionalSolutionsInResponse = other.FillAdditionalSolutionsInResponse;
11503 }
11504 if (other.HasInstantiateAllVariables) {
11505 InstantiateAllVariables = other.InstantiateAllVariables;
11506 }
11507 if (other.HasAutoDetectGreaterThanAtLeastOneOf) {
11508 AutoDetectGreaterThanAtLeastOneOf = other.AutoDetectGreaterThanAtLeastOneOf;
11509 }
11510 if (other.HasStopAfterFirstSolution) {
11511 StopAfterFirstSolution = other.StopAfterFirstSolution;
11512 }
11513 if (other.HasStopAfterPresolve) {
11514 StopAfterPresolve = other.StopAfterPresolve;
11515 }
11516 if (other.HasStopAfterRootPropagation) {
11517 StopAfterRootPropagation = other.StopAfterRootPropagation;
11518 }
11519 if (other.HasUseLnsOnly) {
11520 UseLnsOnly = other.UseLnsOnly;
11521 }
11522 if (other.HasSolutionPoolSize) {
11523 SolutionPoolSize = other.SolutionPoolSize;
11524 }
11525 if (other.HasUseRinsLns) {
11526 UseRinsLns = other.UseRinsLns;
11527 }
11528 if (other.HasUseFeasibilityPump) {
11529 UseFeasibilityPump = other.UseFeasibilityPump;
11530 }
11531 if (other.HasUseLbRelaxLns) {
11532 UseLbRelaxLns = other.UseLbRelaxLns;
11533 }
11534 if (other.HasFpRounding) {
11535 FpRounding = other.FpRounding;
11536 }
11537 if (other.HasDiversifyLnsParams) {
11538 DiversifyLnsParams = other.DiversifyLnsParams;
11539 }
11540 if (other.HasRandomizeSearch) {
11541 RandomizeSearch = other.RandomizeSearch;
11542 }
11543 if (other.HasSearchRandomVariablePoolSize) {
11544 SearchRandomVariablePoolSize = other.SearchRandomVariablePoolSize;
11545 }
11546 if (other.HasPushAllTasksTowardStart) {
11547 PushAllTasksTowardStart = other.PushAllTasksTowardStart;
11548 }
11549 if (other.HasUseOptionalVariables) {
11550 UseOptionalVariables = other.UseOptionalVariables;
11551 }
11552 if (other.HasUseExactLpReason) {
11553 UseExactLpReason = other.UseExactLpReason;
11554 }
11555 if (other.HasUseCombinedNoOverlap) {
11556 UseCombinedNoOverlap = other.UseCombinedNoOverlap;
11557 }
11558 if (other.HasAtMostOneMaxExpansionSize) {
11559 AtMostOneMaxExpansionSize = other.AtMostOneMaxExpansionSize;
11560 }
11561 if (other.HasCatchSigintSignal) {
11562 CatchSigintSignal = other.CatchSigintSignal;
11563 }
11564 if (other.HasUseImpliedBounds) {
11565 UseImpliedBounds = other.UseImpliedBounds;
11566 }
11567 if (other.HasPolishLpSolution) {
11568 PolishLpSolution = other.PolishLpSolution;
11569 }
11570 if (other.HasLpPrimalTolerance) {
11571 LpPrimalTolerance = other.LpPrimalTolerance;
11572 }
11573 if (other.HasLpDualTolerance) {
11574 LpDualTolerance = other.LpDualTolerance;
11575 }
11576 if (other.HasConvertIntervals) {
11577 ConvertIntervals = other.ConvertIntervals;
11578 }
11579 if (other.HasSymmetryLevel) {
11580 SymmetryLevel = other.SymmetryLevel;
11581 }
11582 if (other.HasNewLinearPropagation) {
11583 NewLinearPropagation = other.NewLinearPropagation;
11584 }
11585 if (other.HasLinearSplitSize) {
11586 LinearSplitSize = other.LinearSplitSize;
11587 }
11588 if (other.HasLinearizationLevel) {
11589 LinearizationLevel = other.LinearizationLevel;
11590 }
11591 if (other.HasBooleanEncodingLevel) {
11592 BooleanEncodingLevel = other.BooleanEncodingLevel;
11593 }
11594 if (other.HasMaxDomainSizeWhenEncodingEqNeqConstraints) {
11595 MaxDomainSizeWhenEncodingEqNeqConstraints = other.MaxDomainSizeWhenEncodingEqNeqConstraints;
11596 }
11597 if (other.HasMaxNumCuts) {
11598 MaxNumCuts = other.MaxNumCuts;
11599 }
11600 if (other.HasCutLevel) {
11601 CutLevel = other.CutLevel;
11602 }
11603 if (other.HasOnlyAddCutsAtLevelZero) {
11604 OnlyAddCutsAtLevelZero = other.OnlyAddCutsAtLevelZero;
11605 }
11606 if (other.HasAddObjectiveCut) {
11607 AddObjectiveCut = other.AddObjectiveCut;
11608 }
11609 if (other.HasAddCgCuts) {
11610 AddCgCuts = other.AddCgCuts;
11611 }
11612 if (other.HasAddMirCuts) {
11613 AddMirCuts = other.AddMirCuts;
11614 }
11615 if (other.HasAddZeroHalfCuts) {
11616 AddZeroHalfCuts = other.AddZeroHalfCuts;
11617 }
11618 if (other.HasAddCliqueCuts) {
11619 AddCliqueCuts = other.AddCliqueCuts;
11620 }
11621 if (other.HasAddRltCuts) {
11622 AddRltCuts = other.AddRltCuts;
11623 }
11624 if (other.HasMaxAllDiffCutSize) {
11625 MaxAllDiffCutSize = other.MaxAllDiffCutSize;
11626 }
11627 if (other.HasAddLinMaxCuts) {
11628 AddLinMaxCuts = other.AddLinMaxCuts;
11629 }
11630 if (other.HasMaxIntegerRoundingScaling) {
11631 MaxIntegerRoundingScaling = other.MaxIntegerRoundingScaling;
11632 }
11633 if (other.HasAddLpConstraintsLazily) {
11634 AddLpConstraintsLazily = other.AddLpConstraintsLazily;
11635 }
11636 if (other.HasRootLpIterations) {
11637 RootLpIterations = other.RootLpIterations;
11638 }
11639 if (other.HasMinOrthogonalityForLpConstraints) {
11640 MinOrthogonalityForLpConstraints = other.MinOrthogonalityForLpConstraints;
11641 }
11642 if (other.HasMaxCutRoundsAtLevelZero) {
11643 MaxCutRoundsAtLevelZero = other.MaxCutRoundsAtLevelZero;
11644 }
11645 if (other.HasMaxConsecutiveInactiveCount) {
11646 MaxConsecutiveInactiveCount = other.MaxConsecutiveInactiveCount;
11647 }
11648 if (other.HasCutMaxActiveCountValue) {
11649 CutMaxActiveCountValue = other.CutMaxActiveCountValue;
11650 }
11651 if (other.HasCutActiveCountDecay) {
11652 CutActiveCountDecay = other.CutActiveCountDecay;
11653 }
11654 if (other.HasCutCleanupTarget) {
11655 CutCleanupTarget = other.CutCleanupTarget;
11656 }
11657 if (other.HasNewConstraintsBatchSize) {
11658 NewConstraintsBatchSize = other.NewConstraintsBatchSize;
11659 }
11660 if (other.HasExploitIntegerLpSolution) {
11661 ExploitIntegerLpSolution = other.ExploitIntegerLpSolution;
11662 }
11663 if (other.HasExploitAllLpSolution) {
11664 ExploitAllLpSolution = other.ExploitAllLpSolution;
11665 }
11666 if (other.HasExploitBestSolution) {
11667 ExploitBestSolution = other.ExploitBestSolution;
11668 }
11669 if (other.HasExploitRelaxationSolution) {
11670 ExploitRelaxationSolution = other.ExploitRelaxationSolution;
11671 }
11672 if (other.HasExploitObjective) {
11673 ExploitObjective = other.ExploitObjective;
11674 }
11675 if (other.HasDetectLinearizedProduct) {
11676 DetectLinearizedProduct = other.DetectLinearizedProduct;
11677 }
11678 if (other.HasMipMaxBound) {
11679 MipMaxBound = other.MipMaxBound;
11680 }
11681 if (other.HasMipVarScaling) {
11682 MipVarScaling = other.MipVarScaling;
11683 }
11684 if (other.HasMipScaleLargeDomain) {
11685 MipScaleLargeDomain = other.MipScaleLargeDomain;
11686 }
11687 if (other.HasMipAutomaticallyScaleVariables) {
11688 MipAutomaticallyScaleVariables = other.MipAutomaticallyScaleVariables;
11689 }
11690 if (other.HasOnlySolveIp) {
11691 OnlySolveIp = other.OnlySolveIp;
11692 }
11693 if (other.HasMipWantedPrecision) {
11694 MipWantedPrecision = other.MipWantedPrecision;
11695 }
11696 if (other.HasMipMaxActivityExponent) {
11697 MipMaxActivityExponent = other.MipMaxActivityExponent;
11698 }
11699 if (other.HasMipCheckPrecision) {
11700 MipCheckPrecision = other.MipCheckPrecision;
11701 }
11702 if (other.HasMipComputeTrueObjectiveBound) {
11703 MipComputeTrueObjectiveBound = other.MipComputeTrueObjectiveBound;
11704 }
11705 if (other.HasMipMaxValidMagnitude) {
11706 MipMaxValidMagnitude = other.MipMaxValidMagnitude;
11707 }
11708 if (other.HasMipTreatHighMagnitudeBoundsAsInfinity) {
11709 MipTreatHighMagnitudeBoundsAsInfinity = other.MipTreatHighMagnitudeBoundsAsInfinity;
11710 }
11711 if (other.HasMipDropTolerance) {
11712 MipDropTolerance = other.MipDropTolerance;
11713 }
11714 if (other.HasMipPresolveLevel) {
11715 MipPresolveLevel = other.MipPresolveLevel;
11716 }
11717 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
11718 }
11719
11720 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
11721 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
11722 public void MergeFrom(pb::CodedInputStream input) {
11723 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
11724 input.ReadRawMessage(this);
11725 #else
11726 uint tag;
11727 while ((tag = input.ReadTag()) != 0) {
11728 switch(tag) {
11729 default:
11730 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
11731 break;
11732 case 8: {
11733 PreferredVariableOrder = (global::Google.OrTools.Sat.SatParameters.Types.VariableOrder) input.ReadEnum();
11734 break;
11735 }
11736 case 16: {
11737 InitialPolarity = (global::Google.OrTools.Sat.SatParameters.Types.Polarity) input.ReadEnum();
11738 break;
11739 }
11740 case 32: {
11741 MinimizationAlgorithm = (global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm) input.ReadEnum();
11742 break;
11743 }
11744 case 88: {
11745 ClauseCleanupPeriod = input.ReadInt32();
11746 break;
11747 }
11748 case 104: {
11749 ClauseCleanupTarget = input.ReadInt32();
11750 break;
11751 }
11752 case 121: {
11753 VariableActivityDecay = input.ReadDouble();
11754 break;
11755 }
11756 case 129: {
11757 MaxVariableActivityValue = input.ReadDouble();
11758 break;
11759 }
11760 case 137: {
11761 ClauseActivityDecay = input.ReadDouble();
11762 break;
11763 }
11764 case 145: {
11765 MaxClauseActivityValue = input.ReadDouble();
11766 break;
11767 }
11768 case 177: {
11769 GlucoseMaxDecay = input.ReadDouble();
11770 break;
11771 }
11772 case 185: {
11773 GlucoseDecayIncrement = input.ReadDouble();
11774 break;
11775 }
11776 case 192: {
11777 GlucoseDecayIncrementPeriod = input.ReadInt32();
11778 break;
11779 }
11780 case 240: {
11781 RestartPeriod = input.ReadInt32();
11782 break;
11783 }
11784 case 248: {
11785 RandomSeed = input.ReadInt32();
11786 break;
11787 }
11788 case 257: {
11789 RandomBranchesRatio = input.ReadDouble();
11790 break;
11791 }
11792 case 272: {
11793 BinaryMinimizationAlgorithm = (global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm) input.ReadEnum();
11794 break;
11795 }
11796 case 280: {
11797 UseOptimizationHints = input.ReadBool();
11798 break;
11799 }
11800 case 289: {
11801 MaxTimeInSeconds = input.ReadDouble();
11802 break;
11803 }
11804 case 296: {
11805 MaxNumberOfConflicts = input.ReadInt64();
11806 break;
11807 }
11808 case 320: {
11809 MaxMemoryInMb = input.ReadInt64();
11810 break;
11811 }
11812 case 328: {
11813 LogSearchProgress = input.ReadBool();
11814 break;
11815 }
11816 case 344: {
11817 UsePbResolution = input.ReadBool();
11818 break;
11819 }
11820 case 352: {
11821 UsePhaseSaving = input.ReadBool();
11822 break;
11823 }
11824 case 361: {
11825 RandomPolarityRatio = input.ReadDouble();
11826 break;
11827 }
11828 case 368: {
11829 PbCleanupIncrement = input.ReadInt32();
11830 break;
11831 }
11832 case 377: {
11833 PbCleanupRatio = input.ReadDouble();
11834 break;
11835 }
11836 case 384: {
11837 MinimizeReductionDuringPbResolution = input.ReadBool();
11838 break;
11839 }
11840 case 392: {
11841 CountAssumptionLevelsInLbd = input.ReadBool();
11842 break;
11843 }
11844 case 400: {
11845 CoreMinimizationLevel = input.ReadInt32();
11846 break;
11847 }
11848 case 408: {
11849 MaxSatAssumptionOrder = (global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder) input.ReadEnum();
11850 break;
11851 }
11852 case 416: {
11853 MaxSatReverseAssumptionOrder = input.ReadBool();
11854 break;
11855 }
11856 case 424: {
11857 MaxSatStratification = (global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm) input.ReadEnum();
11858 break;
11859 }
11860 case 432: {
11861 PresolveBveThreshold = input.ReadInt32();
11862 break;
11863 }
11864 case 440: {
11865 PresolveBveClauseWeight = input.ReadInt32();
11866 break;
11867 }
11868 case 448: {
11869 SubsumptionDuringConflictAnalysis = input.ReadBool();
11870 break;
11871 }
11872 case 457: {
11873 PresolveProbingDeterministicTimeLimit = input.ReadDouble();
11874 break;
11875 }
11876 case 464: {
11877 ClauseCleanupProtection = (global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection) input.ReadEnum();
11878 break;
11879 }
11880 case 472: {
11881 ClauseCleanupLbdBound = input.ReadInt32();
11882 break;
11883 }
11884 case 480: {
11885 ClauseCleanupOrdering = (global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering) input.ReadEnum();
11886 break;
11887 }
11888 case 490:
11889 case 488: {
11890 restartAlgorithms_.AddEntriesFrom(input, _repeated_restartAlgorithms_codec);
11891 break;
11892 }
11893 case 496: {
11894 RestartRunningWindowSize = input.ReadInt32();
11895 break;
11896 }
11897 case 505: {
11898 RestartDlAverageRatio = input.ReadDouble();
11899 break;
11900 }
11901 case 512: {
11902 UseBlockingRestart = input.ReadBool();
11903 break;
11904 }
11905 case 520: {
11906 BlockingRestartWindowSize = input.ReadInt32();
11907 break;
11908 }
11909 case 529: {
11910 BlockingRestartMultiplier = input.ReadDouble();
11911 break;
11912 }
11913 case 537: {
11914 MaxDeterministicTime = input.ReadDouble();
11915 break;
11916 }
11917 case 544: {
11918 NumConflictsBeforeStrategyChanges = input.ReadInt32();
11919 break;
11920 }
11921 case 553: {
11922 StrategyChangeIncreaseRatio = input.ReadDouble();
11923 break;
11924 }
11925 case 562: {
11926 DefaultRestartAlgorithms = input.ReadString();
11927 break;
11928 }
11929 case 569: {
11930 RestartLbdAverageRatio = input.ReadDouble();
11931 break;
11932 }
11933 case 576: {
11934 PresolveUseBva = input.ReadBool();
11935 break;
11936 }
11937 case 584: {
11938 PresolveBvaThreshold = input.ReadInt32();
11939 break;
11940 }
11941 case 592: {
11942 UsePrecedencesInDisjunctiveConstraint = input.ReadBool();
11943 break;
11944 }
11945 case 600: {
11946 UseErwaHeuristic = input.ReadBool();
11947 break;
11948 }
11949 case 609: {
11950 InitialVariablesActivity = input.ReadDouble();
11951 break;
11952 }
11953 case 616: {
11954 AlsoBumpVariablesInConflictReasons = input.ReadBool();
11955 break;
11956 }
11957 case 624: {
11958 UseOverloadCheckerInCumulative = input.ReadBool();
11959 break;
11960 }
11961 case 632: {
11962 UseTimetableEdgeFindingInCumulative = input.ReadBool();
11963 break;
11964 }
11965 case 640: {
11966 UseDisjunctiveConstraintInCumulative = input.ReadBool();
11967 break;
11968 }
11969 case 656: {
11970 SearchBranching = (global::Google.OrTools.Sat.SatParameters.Types.SearchBranching) input.ReadEnum();
11971 break;
11972 }
11973 case 664: {
11974 OptimizeWithCore = input.ReadBool();
11975 break;
11976 }
11977 case 672: {
11978 FindMultipleCores = input.ReadBool();
11979 break;
11980 }
11981 case 680: {
11982 OptimizeWithMaxHs = input.ReadBool();
11983 break;
11984 }
11985 case 688: {
11986 CpModelPresolve = input.ReadBool();
11987 break;
11988 }
11989 case 696: {
11990 EnumerateAllSolutions = input.ReadBool();
11991 break;
11992 }
11993 case 704: {
11994 PresolveBlockedClause = input.ReadBool();
11995 break;
11996 }
11997 case 712: {
11998 CoverOptimization = input.ReadBool();
11999 break;
12000 }
12001 case 720: {
12002 LinearizationLevel = input.ReadInt32();
12003 break;
12004 }
12005 case 728: {
12006 MaxNumCuts = input.ReadInt32();
12007 break;
12008 }
12009 case 736: {
12010 OnlyAddCutsAtLevelZero = input.ReadBool();
12011 break;
12012 }
12013 case 744: {
12014 CpModelUseSatPresolve = input.ReadBool();
12015 break;
12016 }
12017 case 752: {
12018 ExploitIntegerLpSolution = input.ReadBool();
12019 break;
12020 }
12021 case 760: {
12022 AutoDetectGreaterThanAtLeastOneOf = input.ReadBool();
12023 break;
12024 }
12025 case 784: {
12026 StopAfterFirstSolution = input.ReadBool();
12027 break;
12028 }
12029 case 792: {
12030 BinarySearchNumConflicts = input.ReadInt32();
12031 break;
12032 }
12033 case 800: {
12034 NumSearchWorkers = input.ReadInt32();
12035 break;
12036 }
12037 case 808: {
12038 UseLnsOnly = input.ReadBool();
12039 break;
12040 }
12041 case 824: {
12042 RandomizeSearch = input.ReadBool();
12043 break;
12044 }
12045 case 832: {
12046 SearchRandomVariablePoolSize = input.ReadInt64();
12047 break;
12048 }
12049 case 848: {
12050 InstantiateAllVariables = input.ReadBool();
12051 break;
12052 }
12053 case 856: {
12054 BooleanEncodingLevel = input.ReadInt32();
12055 break;
12056 }
12057 case 864: {
12058 UseOptionalVariables = input.ReadBool();
12059 break;
12060 }
12061 case 872: {
12062 UseExactLpReason = input.ReadBool();
12063 break;
12064 }
12065 case 880: {
12066 CpModelProbingLevel = input.ReadInt32();
12067 break;
12068 }
12069 case 896: {
12070 AddLpConstraintsLazily = input.ReadBool();
12071 break;
12072 }
12073 case 904: {
12074 ShareObjectiveBounds = input.ReadBool();
12075 break;
12076 }
12077 case 912: {
12078 ShareLevelZeroBounds = input.ReadBool();
12079 break;
12080 }
12081 case 921: {
12082 MinOrthogonalityForLpConstraints = input.ReadDouble();
12083 break;
12084 }
12085 case 928: {
12086 ExploitAllLpSolution = input.ReadBool();
12087 break;
12088 }
12089 case 936: {
12090 AddCgCuts = input.ReadBool();
12091 break;
12092 }
12093 case 952: {
12094 MaxIntegerRoundingScaling = input.ReadInt32();
12095 break;
12096 }
12097 case 960: {
12098 AddMirCuts = input.ReadBool();
12099 break;
12100 }
12101 case 968: {
12102 MaxConsecutiveInactiveCount = input.ReadInt32();
12103 break;
12104 }
12105 case 976: {
12106 NewConstraintsBatchSize = input.ReadInt32();
12107 break;
12108 }
12109 case 984: {
12110 PseudoCostReliabilityThreshold = input.ReadInt64();
12111 break;
12112 }
12113 case 993: {
12114 MipMaxBound = input.ReadDouble();
12115 break;
12116 }
12117 case 1001: {
12118 MipVarScaling = input.ReadDouble();
12119 break;
12120 }
12121 case 1009: {
12122 MipWantedPrecision = input.ReadDouble();
12123 break;
12124 }
12125 case 1016: {
12126 MipMaxActivityExponent = input.ReadInt32();
12127 break;
12128 }
12129 case 1025: {
12130 MipCheckPrecision = input.ReadDouble();
12131 break;
12132 }
12133 case 1032: {
12134 UseRinsLns = input.ReadBool();
12135 break;
12136 }
12137 case 1040: {
12138 ExploitBestSolution = input.ReadBool();
12139 break;
12140 }
12141 case 1048: {
12142 ExploitObjective = input.ReadBool();
12143 break;
12144 }
12145 case 1056: {
12146 FillTightenedDomainsInResponse = input.ReadBool();
12147 break;
12148 }
12149 case 1064: {
12150 UseCombinedNoOverlap = input.ReadBool();
12151 break;
12152 }
12153 case 1072: {
12154 InterleaveBatchSize = input.ReadInt32();
12155 break;
12156 }
12157 case 1080: {
12158 CatchSigintSignal = input.ReadBool();
12159 break;
12160 }
12161 case 1088: {
12162 InterleaveSearch = input.ReadBool();
12163 break;
12164 }
12165 case 1096: {
12166 DiversifyLnsParams = input.ReadBool();
12167 break;
12168 }
12169 case 1104: {
12170 MaxPresolveIterations = input.ReadInt32();
12171 break;
12172 }
12173 case 1152: {
12174 UseImpliedBounds = input.ReadBool();
12175 break;
12176 }
12177 case 1161: {
12178 MergeNoOverlapWorkLimit = input.ReadDouble();
12179 break;
12180 }
12181 case 1169: {
12182 MergeAtMostOneWorkLimit = input.ReadDouble();
12183 break;
12184 }
12185 case 1176: {
12186 PresolveSubstitutionLevel = input.ReadInt32();
12187 break;
12188 }
12189 case 1184: {
12190 MaxAllDiffCutSize = input.ReadInt32();
12191 break;
12192 }
12193 case 1192: {
12194 StopAfterPresolve = input.ReadBool();
12195 break;
12196 }
12197 case 1208: {
12198 DebugMaxNumPresolveOperations = input.ReadInt32();
12199 break;
12200 }
12201 case 1216: {
12202 AddLinMaxCuts = input.ReadBool();
12203 break;
12204 }
12205 case 1224: {
12206 HintConflictLimit = input.ReadInt32();
12207 break;
12208 }
12209 case 1232: {
12210 MaxCutRoundsAtLevelZero = input.ReadInt32();
12211 break;
12212 }
12213 case 1241: {
12214 CutMaxActiveCountValue = input.ReadDouble();
12215 break;
12216 }
12217 case 1249: {
12218 CutActiveCountDecay = input.ReadDouble();
12219 break;
12220 }
12221 case 1256: {
12222 CutCleanupTarget = input.ReadInt32();
12223 break;
12224 }
12225 case 1273: {
12226 AbsoluteGapLimit = input.ReadDouble();
12227 break;
12228 }
12229 case 1281: {
12230 RelativeGapLimit = input.ReadDouble();
12231 break;
12232 }
12233 case 1288: {
12234 ExploitRelaxationSolution = input.ReadBool();
12235 break;
12236 }
12237 case 1296: {
12238 DebugPostsolveWithFullSolver = input.ReadBool();
12239 break;
12240 }
12241 case 1304: {
12242 UseSatInprocessing = input.ReadBool();
12243 break;
12244 }
12245 case 1312: {
12246 UseFeasibilityPump = input.ReadBool();
12247 break;
12248 }
12249 case 1320: {
12250 FpRounding = (global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod) input.ReadEnum();
12251 break;
12252 }
12253 case 1328: {
12254 MipAutomaticallyScaleVariables = input.ReadBool();
12255 break;
12256 }
12257 case 1336: {
12258 RepairHint = input.ReadBool();
12259 break;
12260 }
12261 case 1344: {
12262 PolarityRephaseIncrement = input.ReadInt32();
12263 break;
12264 }
12265 case 1352: {
12266 AddZeroHalfCuts = input.ReadBool();
12267 break;
12268 }
12269 case 1360: {
12270 ExpandAlldiffConstraints = input.ReadBool();
12271 break;
12272 }
12273 case 1370: {
12274 Name = input.ReadString();
12275 break;
12276 }
12277 case 1376: {
12278 AddCliqueCuts = input.ReadBool();
12279 break;
12280 }
12281 case 1384: {
12282 KeepAllFeasibleSolutionsInPresolve = input.ReadBool();
12283 break;
12284 }
12285 case 1392: {
12286 PresolveExtractIntegerEnforcement = input.ReadBool();
12287 break;
12288 }
12289 case 1400: {
12290 PolishLpSolution = input.ReadBool();
12291 break;
12292 }
12293 case 1408: {
12294 UseProbingSearch = input.ReadBool();
12295 break;
12296 }
12297 case 1416: {
12298 ConvertIntervals = input.ReadBool();
12299 break;
12300 }
12301 case 1424: {
12302 PermuteVariableRandomly = input.ReadBool();
12303 break;
12304 }
12305 case 1432: {
12306 PermutePresolveConstraintOrder = input.ReadBool();
12307 break;
12308 }
12309 case 1440: {
12310 UseAbslRandom = input.ReadBool();
12311 break;
12312 }
12313 case 1448: {
12314 DisableConstraintExpansion = input.ReadBool();
12315 break;
12316 }
12317 case 1456: {
12318 ExpandReservoirConstraints = input.ReadBool();
12319 break;
12320 }
12321 case 1464: {
12322 SymmetryLevel = input.ReadInt32();
12323 break;
12324 }
12325 case 1482: {
12326 LogPrefix = input.ReadString();
12327 break;
12328 }
12329 case 1488: {
12330 LogToStdout = input.ReadBool();
12331 break;
12332 }
12333 case 1496: {
12334 LogToResponse = input.ReadBool();
12335 break;
12336 }
12337 case 1504: {
12338 OptimizeWithLbTreeSearch = input.ReadBool();
12339 break;
12340 }
12341 case 1512: {
12342 LogSubsolverStatistics = input.ReadBool();
12343 break;
12344 }
12345 case 1521: {
12346 ClauseCleanupRatio = input.ReadDouble();
12347 break;
12348 }
12349 case 1528: {
12351 break;
12352 }
12353 case 1536: {
12354 FixVariablesToTheirHintedValue = input.ReadBool();
12355 break;
12356 }
12357 case 1544: {
12358 SolutionPoolSize = input.ReadInt32();
12359 break;
12360 }
12361 case 1552: {
12362 FillAdditionalSolutionsInResponse = input.ReadBool();
12363 break;
12364 }
12365 case 1560: {
12366 DebugCrashOnBadHint = input.ReadBool();
12367 break;
12368 }
12369 case 1568: {
12370 CutLevel = input.ReadInt32();
12371 break;
12372 }
12373 case 1576: {
12374 AddObjectiveCut = input.ReadBool();
12375 break;
12376 }
12377 case 1584: {
12378 MipComputeTrueObjectiveBound = input.ReadBool();
12379 break;
12380 }
12381 case 1593: {
12382 MipMaxValidMagnitude = input.ReadDouble();
12383 break;
12384 }
12385 case 1600: {
12386 UseTimetablingInNoOverlap2D = input.ReadBool();
12387 break;
12388 }
12389 case 1608: {
12390 PresolveInclusionWorkLimit = input.ReadInt64();
12391 break;
12392 }
12393 case 1616: {
12394 IgnoreNames = input.ReadBool();
12395 break;
12396 }
12397 case 1624: {
12398 ShareBinaryClauses = input.ReadBool();
12399 break;
12400 }
12401 case 1632: {
12402 UseShavingInProbingSearch = input.ReadBool();
12403 break;
12404 }
12405 case 1641: {
12406 ShavingSearchDeterministicTime = input.ReadDouble();
12407 break;
12408 }
12409 case 1648: {
12410 NumWorkers = input.ReadInt32();
12411 break;
12412 }
12413 case 1658: {
12414 subsolvers_.AddEntriesFrom(input, _repeated_subsolvers_codec);
12415 break;
12416 }
12417 case 1674: {
12418 ignoreSubsolvers_.AddEntriesFrom(input, _repeated_ignoreSubsolvers_codec);
12419 break;
12420 }
12421 case 1682: {
12422 subsolverParams_.AddEntriesFrom(input, _repeated_subsolverParams_codec);
12423 break;
12424 }
12425 case 1688: {
12426 MinNumLnsWorkers = input.ReadInt32();
12427 break;
12428 }
12429 case 1704: {
12430 UseEnergeticReasoningInNoOverlap2D = input.ReadBool();
12431 break;
12432 }
12433 case 1712: {
12434 UseDualSchedulingHeuristics = input.ReadBool();
12435 break;
12436 }
12437 case 1720: {
12438 UseHardPrecedencesInCumulative = input.ReadBool();
12439 break;
12440 }
12441 case 1728: {
12442 DetectTableWithCost = input.ReadBool();
12443 break;
12444 }
12445 case 1736: {
12446 TableCompressionLevel = input.ReadInt32();
12447 break;
12448 }
12449 case 1754: {
12450 extraSubsolvers_.AddEntriesFrom(input, _repeated_extraSubsolvers_codec);
12451 break;
12452 }
12453 case 1760: {
12454 ExploitAllPrecedences = input.ReadBool();
12455 break;
12456 }
12457 case 1769: {
12458 PropagationLoopDetectionFactor = input.ReadDouble();
12459 break;
12460 }
12461 case 1776: {
12462 OnlySolveIp = input.ReadBool();
12463 break;
12464 }
12465 case 1784: {
12467 break;
12468 }
12469 case 1792: {
12470 NewLinearPropagation = input.ReadBool();
12471 break;
12472 }
12473 case 1800: {
12474 MipScaleLargeDomain = input.ReadBool();
12475 break;
12476 }
12477 case 1809: {
12478 ProbingDeterministicTimeLimit = input.ReadDouble();
12479 break;
12480 }
12481 case 1816: {
12482 RootLpIterations = input.ReadInt32();
12483 break;
12484 }
12485 case 1824: {
12486 UseObjectiveLbSearch = input.ReadBool();
12487 break;
12488 }
12489 case 1832: {
12491 break;
12492 }
12493 case 1840: {
12494 UseStrongPropagationInDisjunctive = input.ReadBool();
12495 break;
12496 }
12497 case 1857: {
12498 MipDropTolerance = input.ReadDouble();
12499 break;
12500 }
12501 case 1864: {
12502 InferAllDiffs = input.ReadBool();
12503 break;
12504 }
12505 case 1872: {
12506 FindBigLinearOverlap = input.ReadBool();
12507 break;
12508 }
12509 case 1880: {
12510 SharedTreeNumWorkers = input.ReadInt32();
12511 break;
12512 }
12513 case 1888: {
12514 UseSharedTreeSearch = input.ReadBool();
12515 break;
12516 }
12517 case 1897: {
12518 SharedTreeWorkerObjectiveSplitProbability = input.ReadDouble();
12519 break;
12520 }
12521 case 1904: {
12522 SharedTreeMaxNodesPerWorker = input.ReadInt32();
12523 break;
12524 }
12525 case 1912: {
12526 SharedTreeSplitStrategy = (global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy) input.ReadEnum();
12527 break;
12528 }
12529 case 1920: {
12530 TestFeasibilityJump = input.ReadBool();
12531 break;
12532 }
12533 case 1937: {
12534 FeasibilityJumpDecay = input.ReadDouble();
12535 break;
12536 }
12537 case 1952: {
12538 NumViolationLs = input.ReadInt32();
12539 break;
12540 }
12541 case 1977: {
12542 FeasibilityJumpVarRandomizationProbability = input.ReadDouble();
12543 break;
12544 }
12545 case 1985: {
12546 FeasibilityJumpVarPerburbationRangeRatio = input.ReadDouble();
12547 break;
12548 }
12549 case 1992: {
12550 ViolationLsPerturbationPeriod = input.ReadInt32();
12551 break;
12552 }
12553 case 2000: {
12554 FeasibilityJumpEnableRestarts = input.ReadBool();
12555 break;
12556 }
12557 case 2016: {
12558 StopAfterRootPropagation = input.ReadBool();
12559 break;
12560 }
12561 case 2024: {
12562 UseObjectiveShavingSearch = input.ReadBool();
12563 break;
12564 }
12565 case 2040: {
12566 UseLbRelaxLns = input.ReadBool();
12567 break;
12568 }
12569 case 2048: {
12570 LinearSplitSize = input.ReadInt32();
12571 break;
12572 }
12573 case 2056: {
12574 FeasibilityJumpLinearizationLevel = input.ReadInt32();
12575 break;
12576 }
12577 case 2064: {
12578 FeasibilityJumpRestartFactor = input.ReadInt32();
12579 break;
12580 }
12581 case 2073: {
12582 ViolationLsCompoundMoveProbability = input.ReadDouble();
12583 break;
12584 }
12585 case 2080: {
12586 MaxNumIntervalsForTimetableEdgeFinding = input.ReadInt32();
12587 break;
12588 }
12589 case 2088: {
12590 MipPresolveLevel = input.ReadInt32();
12591 break;
12592 }
12593 case 2096: {
12594 PushAllTasksTowardStart = input.ReadBool();
12595 break;
12596 }
12597 case 2104: {
12598 UseDynamicPrecedenceInDisjunctive = input.ReadBool();
12599 break;
12600 }
12601 case 2112: {
12602 FeasibilityJumpMaxExpandedConstraintSize = input.ReadInt32();
12603 break;
12604 }
12605 case 2120: {
12606 UseFeasibilityJump = input.ReadBool();
12607 break;
12608 }
12609 case 2129: {
12610 LpPrimalTolerance = input.ReadDouble();
12611 break;
12612 }
12613 case 2137: {
12614 LpDualTolerance = input.ReadDouble();
12615 break;
12616 }
12617 case 2144: {
12618 UseDynamicPrecedenceInCumulative = input.ReadBool();
12619 break;
12620 }
12621 case 2152: {
12622 UseExtendedProbing = input.ReadBool();
12623 break;
12624 }
12625 case 2160: {
12626 AtMostOneMaxExpansionSize = input.ReadInt32();
12627 break;
12628 }
12629 case 2168: {
12630 UseAreaEnergeticReasoningInNoOverlap2D = input.ReadBool();
12631 break;
12632 }
12633 case 2176: {
12634 ProbingNumCombinationsLimit = input.ReadInt32();
12635 break;
12636 }
12637 case 2185: {
12638 InprocessingDtimeRatio = input.ReadDouble();
12639 break;
12640 }
12641 case 2193: {
12642 InprocessingProbingDtime = input.ReadDouble();
12643 break;
12644 }
12645 case 2201: {
12646 InprocessingMinimizationDtime = input.ReadDouble();
12647 break;
12648 }
12649 case 2208: {
12650 MaxPairsPairwiseReasoningInNoOverlap2D = input.ReadInt32();
12651 break;
12652 }
12653 case 2216: {
12654 DetectLinearizedProduct = input.ReadBool();
12655 break;
12656 }
12657 case 2224: {
12658 MipTreatHighMagnitudeBoundsAsInfinity = input.ReadBool();
12659 break;
12660 }
12661 case 2232: {
12662 AddRltCuts = input.ReadBool();
12663 break;
12664 }
12665 }
12666 }
12667 #endif
12668 }
12669
12670 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
12671 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
12672 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
12673 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
12674 uint tag;
12675 while ((tag = input.ReadTag()) != 0) {
12676 switch(tag) {
12677 default:
12678 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
12679 break;
12680 case 8: {
12681 PreferredVariableOrder = (global::Google.OrTools.Sat.SatParameters.Types.VariableOrder) input.ReadEnum();
12682 break;
12683 }
12684 case 16: {
12685 InitialPolarity = (global::Google.OrTools.Sat.SatParameters.Types.Polarity) input.ReadEnum();
12686 break;
12687 }
12688 case 32: {
12689 MinimizationAlgorithm = (global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm) input.ReadEnum();
12690 break;
12691 }
12692 case 88: {
12693 ClauseCleanupPeriod = input.ReadInt32();
12694 break;
12695 }
12696 case 104: {
12697 ClauseCleanupTarget = input.ReadInt32();
12698 break;
12699 }
12700 case 121: {
12701 VariableActivityDecay = input.ReadDouble();
12702 break;
12703 }
12704 case 129: {
12705 MaxVariableActivityValue = input.ReadDouble();
12706 break;
12707 }
12708 case 137: {
12709 ClauseActivityDecay = input.ReadDouble();
12710 break;
12711 }
12712 case 145: {
12713 MaxClauseActivityValue = input.ReadDouble();
12714 break;
12715 }
12716 case 177: {
12717 GlucoseMaxDecay = input.ReadDouble();
12718 break;
12719 }
12720 case 185: {
12721 GlucoseDecayIncrement = input.ReadDouble();
12722 break;
12723 }
12724 case 192: {
12725 GlucoseDecayIncrementPeriod = input.ReadInt32();
12726 break;
12727 }
12728 case 240: {
12729 RestartPeriod = input.ReadInt32();
12730 break;
12731 }
12732 case 248: {
12733 RandomSeed = input.ReadInt32();
12734 break;
12735 }
12736 case 257: {
12737 RandomBranchesRatio = input.ReadDouble();
12738 break;
12739 }
12740 case 272: {
12741 BinaryMinimizationAlgorithm = (global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm) input.ReadEnum();
12742 break;
12743 }
12744 case 280: {
12745 UseOptimizationHints = input.ReadBool();
12746 break;
12747 }
12748 case 289: {
12749 MaxTimeInSeconds = input.ReadDouble();
12750 break;
12751 }
12752 case 296: {
12753 MaxNumberOfConflicts = input.ReadInt64();
12754 break;
12755 }
12756 case 320: {
12757 MaxMemoryInMb = input.ReadInt64();
12758 break;
12759 }
12760 case 328: {
12761 LogSearchProgress = input.ReadBool();
12762 break;
12763 }
12764 case 344: {
12765 UsePbResolution = input.ReadBool();
12766 break;
12767 }
12768 case 352: {
12769 UsePhaseSaving = input.ReadBool();
12770 break;
12771 }
12772 case 361: {
12773 RandomPolarityRatio = input.ReadDouble();
12774 break;
12775 }
12776 case 368: {
12777 PbCleanupIncrement = input.ReadInt32();
12778 break;
12779 }
12780 case 377: {
12781 PbCleanupRatio = input.ReadDouble();
12782 break;
12783 }
12784 case 384: {
12785 MinimizeReductionDuringPbResolution = input.ReadBool();
12786 break;
12787 }
12788 case 392: {
12789 CountAssumptionLevelsInLbd = input.ReadBool();
12790 break;
12791 }
12792 case 400: {
12793 CoreMinimizationLevel = input.ReadInt32();
12794 break;
12795 }
12796 case 408: {
12797 MaxSatAssumptionOrder = (global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder) input.ReadEnum();
12798 break;
12799 }
12800 case 416: {
12801 MaxSatReverseAssumptionOrder = input.ReadBool();
12802 break;
12803 }
12804 case 424: {
12805 MaxSatStratification = (global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm) input.ReadEnum();
12806 break;
12807 }
12808 case 432: {
12809 PresolveBveThreshold = input.ReadInt32();
12810 break;
12811 }
12812 case 440: {
12813 PresolveBveClauseWeight = input.ReadInt32();
12814 break;
12815 }
12816 case 448: {
12817 SubsumptionDuringConflictAnalysis = input.ReadBool();
12818 break;
12819 }
12820 case 457: {
12821 PresolveProbingDeterministicTimeLimit = input.ReadDouble();
12822 break;
12823 }
12824 case 464: {
12825 ClauseCleanupProtection = (global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection) input.ReadEnum();
12826 break;
12827 }
12828 case 472: {
12829 ClauseCleanupLbdBound = input.ReadInt32();
12830 break;
12831 }
12832 case 480: {
12833 ClauseCleanupOrdering = (global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering) input.ReadEnum();
12834 break;
12835 }
12836 case 490:
12837 case 488: {
12838 restartAlgorithms_.AddEntriesFrom(ref input, _repeated_restartAlgorithms_codec);
12839 break;
12840 }
12841 case 496: {
12842 RestartRunningWindowSize = input.ReadInt32();
12843 break;
12844 }
12845 case 505: {
12846 RestartDlAverageRatio = input.ReadDouble();
12847 break;
12848 }
12849 case 512: {
12850 UseBlockingRestart = input.ReadBool();
12851 break;
12852 }
12853 case 520: {
12854 BlockingRestartWindowSize = input.ReadInt32();
12855 break;
12856 }
12857 case 529: {
12858 BlockingRestartMultiplier = input.ReadDouble();
12859 break;
12860 }
12861 case 537: {
12862 MaxDeterministicTime = input.ReadDouble();
12863 break;
12864 }
12865 case 544: {
12866 NumConflictsBeforeStrategyChanges = input.ReadInt32();
12867 break;
12868 }
12869 case 553: {
12870 StrategyChangeIncreaseRatio = input.ReadDouble();
12871 break;
12872 }
12873 case 562: {
12874 DefaultRestartAlgorithms = input.ReadString();
12875 break;
12876 }
12877 case 569: {
12878 RestartLbdAverageRatio = input.ReadDouble();
12879 break;
12880 }
12881 case 576: {
12882 PresolveUseBva = input.ReadBool();
12883 break;
12884 }
12885 case 584: {
12886 PresolveBvaThreshold = input.ReadInt32();
12887 break;
12888 }
12889 case 592: {
12890 UsePrecedencesInDisjunctiveConstraint = input.ReadBool();
12891 break;
12892 }
12893 case 600: {
12894 UseErwaHeuristic = input.ReadBool();
12895 break;
12896 }
12897 case 609: {
12898 InitialVariablesActivity = input.ReadDouble();
12899 break;
12900 }
12901 case 616: {
12902 AlsoBumpVariablesInConflictReasons = input.ReadBool();
12903 break;
12904 }
12905 case 624: {
12906 UseOverloadCheckerInCumulative = input.ReadBool();
12907 break;
12908 }
12909 case 632: {
12910 UseTimetableEdgeFindingInCumulative = input.ReadBool();
12911 break;
12912 }
12913 case 640: {
12914 UseDisjunctiveConstraintInCumulative = input.ReadBool();
12915 break;
12916 }
12917 case 656: {
12918 SearchBranching = (global::Google.OrTools.Sat.SatParameters.Types.SearchBranching) input.ReadEnum();
12919 break;
12920 }
12921 case 664: {
12922 OptimizeWithCore = input.ReadBool();
12923 break;
12924 }
12925 case 672: {
12926 FindMultipleCores = input.ReadBool();
12927 break;
12928 }
12929 case 680: {
12930 OptimizeWithMaxHs = input.ReadBool();
12931 break;
12932 }
12933 case 688: {
12934 CpModelPresolve = input.ReadBool();
12935 break;
12936 }
12937 case 696: {
12938 EnumerateAllSolutions = input.ReadBool();
12939 break;
12940 }
12941 case 704: {
12942 PresolveBlockedClause = input.ReadBool();
12943 break;
12944 }
12945 case 712: {
12946 CoverOptimization = input.ReadBool();
12947 break;
12948 }
12949 case 720: {
12950 LinearizationLevel = input.ReadInt32();
12951 break;
12952 }
12953 case 728: {
12954 MaxNumCuts = input.ReadInt32();
12955 break;
12956 }
12957 case 736: {
12958 OnlyAddCutsAtLevelZero = input.ReadBool();
12959 break;
12960 }
12961 case 744: {
12962 CpModelUseSatPresolve = input.ReadBool();
12963 break;
12964 }
12965 case 752: {
12966 ExploitIntegerLpSolution = input.ReadBool();
12967 break;
12968 }
12969 case 760: {
12970 AutoDetectGreaterThanAtLeastOneOf = input.ReadBool();
12971 break;
12972 }
12973 case 784: {
12974 StopAfterFirstSolution = input.ReadBool();
12975 break;
12976 }
12977 case 792: {
12978 BinarySearchNumConflicts = input.ReadInt32();
12979 break;
12980 }
12981 case 800: {
12982 NumSearchWorkers = input.ReadInt32();
12983 break;
12984 }
12985 case 808: {
12986 UseLnsOnly = input.ReadBool();
12987 break;
12988 }
12989 case 824: {
12990 RandomizeSearch = input.ReadBool();
12991 break;
12992 }
12993 case 832: {
12994 SearchRandomVariablePoolSize = input.ReadInt64();
12995 break;
12996 }
12997 case 848: {
12998 InstantiateAllVariables = input.ReadBool();
12999 break;
13000 }
13001 case 856: {
13002 BooleanEncodingLevel = input.ReadInt32();
13003 break;
13004 }
13005 case 864: {
13006 UseOptionalVariables = input.ReadBool();
13007 break;
13008 }
13009 case 872: {
13010 UseExactLpReason = input.ReadBool();
13011 break;
13012 }
13013 case 880: {
13014 CpModelProbingLevel = input.ReadInt32();
13015 break;
13016 }
13017 case 896: {
13018 AddLpConstraintsLazily = input.ReadBool();
13019 break;
13020 }
13021 case 904: {
13022 ShareObjectiveBounds = input.ReadBool();
13023 break;
13024 }
13025 case 912: {
13026 ShareLevelZeroBounds = input.ReadBool();
13027 break;
13028 }
13029 case 921: {
13030 MinOrthogonalityForLpConstraints = input.ReadDouble();
13031 break;
13032 }
13033 case 928: {
13034 ExploitAllLpSolution = input.ReadBool();
13035 break;
13036 }
13037 case 936: {
13038 AddCgCuts = input.ReadBool();
13039 break;
13040 }
13041 case 952: {
13042 MaxIntegerRoundingScaling = input.ReadInt32();
13043 break;
13044 }
13045 case 960: {
13046 AddMirCuts = input.ReadBool();
13047 break;
13048 }
13049 case 968: {
13050 MaxConsecutiveInactiveCount = input.ReadInt32();
13051 break;
13052 }
13053 case 976: {
13054 NewConstraintsBatchSize = input.ReadInt32();
13055 break;
13056 }
13057 case 984: {
13058 PseudoCostReliabilityThreshold = input.ReadInt64();
13059 break;
13060 }
13061 case 993: {
13062 MipMaxBound = input.ReadDouble();
13063 break;
13064 }
13065 case 1001: {
13066 MipVarScaling = input.ReadDouble();
13067 break;
13068 }
13069 case 1009: {
13070 MipWantedPrecision = input.ReadDouble();
13071 break;
13072 }
13073 case 1016: {
13074 MipMaxActivityExponent = input.ReadInt32();
13075 break;
13076 }
13077 case 1025: {
13078 MipCheckPrecision = input.ReadDouble();
13079 break;
13080 }
13081 case 1032: {
13082 UseRinsLns = input.ReadBool();
13083 break;
13084 }
13085 case 1040: {
13086 ExploitBestSolution = input.ReadBool();
13087 break;
13088 }
13089 case 1048: {
13090 ExploitObjective = input.ReadBool();
13091 break;
13092 }
13093 case 1056: {
13094 FillTightenedDomainsInResponse = input.ReadBool();
13095 break;
13096 }
13097 case 1064: {
13098 UseCombinedNoOverlap = input.ReadBool();
13099 break;
13100 }
13101 case 1072: {
13102 InterleaveBatchSize = input.ReadInt32();
13103 break;
13104 }
13105 case 1080: {
13106 CatchSigintSignal = input.ReadBool();
13107 break;
13108 }
13109 case 1088: {
13110 InterleaveSearch = input.ReadBool();
13111 break;
13112 }
13113 case 1096: {
13114 DiversifyLnsParams = input.ReadBool();
13115 break;
13116 }
13117 case 1104: {
13118 MaxPresolveIterations = input.ReadInt32();
13119 break;
13120 }
13121 case 1152: {
13122 UseImpliedBounds = input.ReadBool();
13123 break;
13124 }
13125 case 1161: {
13126 MergeNoOverlapWorkLimit = input.ReadDouble();
13127 break;
13128 }
13129 case 1169: {
13130 MergeAtMostOneWorkLimit = input.ReadDouble();
13131 break;
13132 }
13133 case 1176: {
13134 PresolveSubstitutionLevel = input.ReadInt32();
13135 break;
13136 }
13137 case 1184: {
13138 MaxAllDiffCutSize = input.ReadInt32();
13139 break;
13140 }
13141 case 1192: {
13142 StopAfterPresolve = input.ReadBool();
13143 break;
13144 }
13145 case 1208: {
13146 DebugMaxNumPresolveOperations = input.ReadInt32();
13147 break;
13148 }
13149 case 1216: {
13150 AddLinMaxCuts = input.ReadBool();
13151 break;
13152 }
13153 case 1224: {
13154 HintConflictLimit = input.ReadInt32();
13155 break;
13156 }
13157 case 1232: {
13158 MaxCutRoundsAtLevelZero = input.ReadInt32();
13159 break;
13160 }
13161 case 1241: {
13162 CutMaxActiveCountValue = input.ReadDouble();
13163 break;
13164 }
13165 case 1249: {
13166 CutActiveCountDecay = input.ReadDouble();
13167 break;
13168 }
13169 case 1256: {
13170 CutCleanupTarget = input.ReadInt32();
13171 break;
13172 }
13173 case 1273: {
13174 AbsoluteGapLimit = input.ReadDouble();
13175 break;
13176 }
13177 case 1281: {
13178 RelativeGapLimit = input.ReadDouble();
13179 break;
13180 }
13181 case 1288: {
13182 ExploitRelaxationSolution = input.ReadBool();
13183 break;
13184 }
13185 case 1296: {
13186 DebugPostsolveWithFullSolver = input.ReadBool();
13187 break;
13188 }
13189 case 1304: {
13190 UseSatInprocessing = input.ReadBool();
13191 break;
13192 }
13193 case 1312: {
13194 UseFeasibilityPump = input.ReadBool();
13195 break;
13196 }
13197 case 1320: {
13198 FpRounding = (global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod) input.ReadEnum();
13199 break;
13200 }
13201 case 1328: {
13202 MipAutomaticallyScaleVariables = input.ReadBool();
13203 break;
13204 }
13205 case 1336: {
13206 RepairHint = input.ReadBool();
13207 break;
13208 }
13209 case 1344: {
13210 PolarityRephaseIncrement = input.ReadInt32();
13211 break;
13212 }
13213 case 1352: {
13214 AddZeroHalfCuts = input.ReadBool();
13215 break;
13216 }
13217 case 1360: {
13218 ExpandAlldiffConstraints = input.ReadBool();
13219 break;
13220 }
13221 case 1370: {
13222 Name = input.ReadString();
13223 break;
13224 }
13225 case 1376: {
13226 AddCliqueCuts = input.ReadBool();
13227 break;
13228 }
13229 case 1384: {
13230 KeepAllFeasibleSolutionsInPresolve = input.ReadBool();
13231 break;
13232 }
13233 case 1392: {
13234 PresolveExtractIntegerEnforcement = input.ReadBool();
13235 break;
13236 }
13237 case 1400: {
13238 PolishLpSolution = input.ReadBool();
13239 break;
13240 }
13241 case 1408: {
13242 UseProbingSearch = input.ReadBool();
13243 break;
13244 }
13245 case 1416: {
13246 ConvertIntervals = input.ReadBool();
13247 break;
13248 }
13249 case 1424: {
13250 PermuteVariableRandomly = input.ReadBool();
13251 break;
13252 }
13253 case 1432: {
13254 PermutePresolveConstraintOrder = input.ReadBool();
13255 break;
13256 }
13257 case 1440: {
13258 UseAbslRandom = input.ReadBool();
13259 break;
13260 }
13261 case 1448: {
13262 DisableConstraintExpansion = input.ReadBool();
13263 break;
13264 }
13265 case 1456: {
13266 ExpandReservoirConstraints = input.ReadBool();
13267 break;
13268 }
13269 case 1464: {
13270 SymmetryLevel = input.ReadInt32();
13271 break;
13272 }
13273 case 1482: {
13274 LogPrefix = input.ReadString();
13275 break;
13276 }
13277 case 1488: {
13278 LogToStdout = input.ReadBool();
13279 break;
13280 }
13281 case 1496: {
13282 LogToResponse = input.ReadBool();
13283 break;
13284 }
13285 case 1504: {
13286 OptimizeWithLbTreeSearch = input.ReadBool();
13287 break;
13288 }
13289 case 1512: {
13290 LogSubsolverStatistics = input.ReadBool();
13291 break;
13292 }
13293 case 1521: {
13294 ClauseCleanupRatio = input.ReadDouble();
13295 break;
13296 }
13297 case 1528: {
13299 break;
13300 }
13301 case 1536: {
13302 FixVariablesToTheirHintedValue = input.ReadBool();
13303 break;
13304 }
13305 case 1544: {
13306 SolutionPoolSize = input.ReadInt32();
13307 break;
13308 }
13309 case 1552: {
13310 FillAdditionalSolutionsInResponse = input.ReadBool();
13311 break;
13312 }
13313 case 1560: {
13314 DebugCrashOnBadHint = input.ReadBool();
13315 break;
13316 }
13317 case 1568: {
13318 CutLevel = input.ReadInt32();
13319 break;
13320 }
13321 case 1576: {
13322 AddObjectiveCut = input.ReadBool();
13323 break;
13324 }
13325 case 1584: {
13326 MipComputeTrueObjectiveBound = input.ReadBool();
13327 break;
13328 }
13329 case 1593: {
13330 MipMaxValidMagnitude = input.ReadDouble();
13331 break;
13332 }
13333 case 1600: {
13334 UseTimetablingInNoOverlap2D = input.ReadBool();
13335 break;
13336 }
13337 case 1608: {
13338 PresolveInclusionWorkLimit = input.ReadInt64();
13339 break;
13340 }
13341 case 1616: {
13342 IgnoreNames = input.ReadBool();
13343 break;
13344 }
13345 case 1624: {
13346 ShareBinaryClauses = input.ReadBool();
13347 break;
13348 }
13349 case 1632: {
13350 UseShavingInProbingSearch = input.ReadBool();
13351 break;
13352 }
13353 case 1641: {
13354 ShavingSearchDeterministicTime = input.ReadDouble();
13355 break;
13356 }
13357 case 1648: {
13358 NumWorkers = input.ReadInt32();
13359 break;
13360 }
13361 case 1658: {
13362 subsolvers_.AddEntriesFrom(ref input, _repeated_subsolvers_codec);
13363 break;
13364 }
13365 case 1674: {
13366 ignoreSubsolvers_.AddEntriesFrom(ref input, _repeated_ignoreSubsolvers_codec);
13367 break;
13368 }
13369 case 1682: {
13370 subsolverParams_.AddEntriesFrom(ref input, _repeated_subsolverParams_codec);
13371 break;
13372 }
13373 case 1688: {
13374 MinNumLnsWorkers = input.ReadInt32();
13375 break;
13376 }
13377 case 1704: {
13378 UseEnergeticReasoningInNoOverlap2D = input.ReadBool();
13379 break;
13380 }
13381 case 1712: {
13382 UseDualSchedulingHeuristics = input.ReadBool();
13383 break;
13384 }
13385 case 1720: {
13386 UseHardPrecedencesInCumulative = input.ReadBool();
13387 break;
13388 }
13389 case 1728: {
13390 DetectTableWithCost = input.ReadBool();
13391 break;
13392 }
13393 case 1736: {
13394 TableCompressionLevel = input.ReadInt32();
13395 break;
13396 }
13397 case 1754: {
13398 extraSubsolvers_.AddEntriesFrom(ref input, _repeated_extraSubsolvers_codec);
13399 break;
13400 }
13401 case 1760: {
13402 ExploitAllPrecedences = input.ReadBool();
13403 break;
13404 }
13405 case 1769: {
13406 PropagationLoopDetectionFactor = input.ReadDouble();
13407 break;
13408 }
13409 case 1776: {
13410 OnlySolveIp = input.ReadBool();
13411 break;
13412 }
13413 case 1784: {
13415 break;
13416 }
13417 case 1792: {
13418 NewLinearPropagation = input.ReadBool();
13419 break;
13420 }
13421 case 1800: {
13422 MipScaleLargeDomain = input.ReadBool();
13423 break;
13424 }
13425 case 1809: {
13426 ProbingDeterministicTimeLimit = input.ReadDouble();
13427 break;
13428 }
13429 case 1816: {
13430 RootLpIterations = input.ReadInt32();
13431 break;
13432 }
13433 case 1824: {
13434 UseObjectiveLbSearch = input.ReadBool();
13435 break;
13436 }
13437 case 1832: {
13439 break;
13440 }
13441 case 1840: {
13442 UseStrongPropagationInDisjunctive = input.ReadBool();
13443 break;
13444 }
13445 case 1857: {
13446 MipDropTolerance = input.ReadDouble();
13447 break;
13448 }
13449 case 1864: {
13450 InferAllDiffs = input.ReadBool();
13451 break;
13452 }
13453 case 1872: {
13454 FindBigLinearOverlap = input.ReadBool();
13455 break;
13456 }
13457 case 1880: {
13458 SharedTreeNumWorkers = input.ReadInt32();
13459 break;
13460 }
13461 case 1888: {
13462 UseSharedTreeSearch = input.ReadBool();
13463 break;
13464 }
13465 case 1897: {
13466 SharedTreeWorkerObjectiveSplitProbability = input.ReadDouble();
13467 break;
13468 }
13469 case 1904: {
13470 SharedTreeMaxNodesPerWorker = input.ReadInt32();
13471 break;
13472 }
13473 case 1912: {
13474 SharedTreeSplitStrategy = (global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy) input.ReadEnum();
13475 break;
13476 }
13477 case 1920: {
13478 TestFeasibilityJump = input.ReadBool();
13479 break;
13480 }
13481 case 1937: {
13482 FeasibilityJumpDecay = input.ReadDouble();
13483 break;
13484 }
13485 case 1952: {
13486 NumViolationLs = input.ReadInt32();
13487 break;
13488 }
13489 case 1977: {
13490 FeasibilityJumpVarRandomizationProbability = input.ReadDouble();
13491 break;
13492 }
13493 case 1985: {
13494 FeasibilityJumpVarPerburbationRangeRatio = input.ReadDouble();
13495 break;
13496 }
13497 case 1992: {
13498 ViolationLsPerturbationPeriod = input.ReadInt32();
13499 break;
13500 }
13501 case 2000: {
13502 FeasibilityJumpEnableRestarts = input.ReadBool();
13503 break;
13504 }
13505 case 2016: {
13506 StopAfterRootPropagation = input.ReadBool();
13507 break;
13508 }
13509 case 2024: {
13510 UseObjectiveShavingSearch = input.ReadBool();
13511 break;
13512 }
13513 case 2040: {
13514 UseLbRelaxLns = input.ReadBool();
13515 break;
13516 }
13517 case 2048: {
13518 LinearSplitSize = input.ReadInt32();
13519 break;
13520 }
13521 case 2056: {
13522 FeasibilityJumpLinearizationLevel = input.ReadInt32();
13523 break;
13524 }
13525 case 2064: {
13526 FeasibilityJumpRestartFactor = input.ReadInt32();
13527 break;
13528 }
13529 case 2073: {
13530 ViolationLsCompoundMoveProbability = input.ReadDouble();
13531 break;
13532 }
13533 case 2080: {
13534 MaxNumIntervalsForTimetableEdgeFinding = input.ReadInt32();
13535 break;
13536 }
13537 case 2088: {
13538 MipPresolveLevel = input.ReadInt32();
13539 break;
13540 }
13541 case 2096: {
13542 PushAllTasksTowardStart = input.ReadBool();
13543 break;
13544 }
13545 case 2104: {
13546 UseDynamicPrecedenceInDisjunctive = input.ReadBool();
13547 break;
13548 }
13549 case 2112: {
13550 FeasibilityJumpMaxExpandedConstraintSize = input.ReadInt32();
13551 break;
13552 }
13553 case 2120: {
13554 UseFeasibilityJump = input.ReadBool();
13555 break;
13556 }
13557 case 2129: {
13558 LpPrimalTolerance = input.ReadDouble();
13559 break;
13560 }
13561 case 2137: {
13562 LpDualTolerance = input.ReadDouble();
13563 break;
13564 }
13565 case 2144: {
13566 UseDynamicPrecedenceInCumulative = input.ReadBool();
13567 break;
13568 }
13569 case 2152: {
13570 UseExtendedProbing = input.ReadBool();
13571 break;
13572 }
13573 case 2160: {
13574 AtMostOneMaxExpansionSize = input.ReadInt32();
13575 break;
13576 }
13577 case 2168: {
13578 UseAreaEnergeticReasoningInNoOverlap2D = input.ReadBool();
13579 break;
13580 }
13581 case 2176: {
13582 ProbingNumCombinationsLimit = input.ReadInt32();
13583 break;
13584 }
13585 case 2185: {
13586 InprocessingDtimeRatio = input.ReadDouble();
13587 break;
13588 }
13589 case 2193: {
13590 InprocessingProbingDtime = input.ReadDouble();
13591 break;
13592 }
13593 case 2201: {
13594 InprocessingMinimizationDtime = input.ReadDouble();
13595 break;
13596 }
13597 case 2208: {
13598 MaxPairsPairwiseReasoningInNoOverlap2D = input.ReadInt32();
13599 break;
13600 }
13601 case 2216: {
13602 DetectLinearizedProduct = input.ReadBool();
13603 break;
13604 }
13605 case 2224: {
13606 MipTreatHighMagnitudeBoundsAsInfinity = input.ReadBool();
13607 break;
13608 }
13609 case 2232: {
13610 AddRltCuts = input.ReadBool();
13611 break;
13612 }
13613 }
13614 }
13615 }
13616 #endif
13617
13618 #region Nested types
13620 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
13621 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
13622 public static partial class Types {
13627 public enum VariableOrder {
13631 [pbr::OriginalName("IN_ORDER")] InOrder = 0,
13632 [pbr::OriginalName("IN_REVERSE_ORDER")] InReverseOrder = 1,
13633 [pbr::OriginalName("IN_RANDOM_ORDER")] InRandomOrder = 2,
13634 }
13635
13644 public enum Polarity {
13645 [pbr::OriginalName("POLARITY_TRUE")] True = 0,
13646 [pbr::OriginalName("POLARITY_FALSE")] False = 1,
13647 [pbr::OriginalName("POLARITY_RANDOM")] Random = 2,
13648 }
13649
13653 public enum ConflictMinimizationAlgorithm {
13654 [pbr::OriginalName("NONE")] None = 0,
13655 [pbr::OriginalName("SIMPLE")] Simple = 1,
13656 [pbr::OriginalName("RECURSIVE")] Recursive = 2,
13657 [pbr::OriginalName("EXPERIMENTAL")] Experimental = 3,
13658 }
13659
13663 public enum BinaryMinizationAlgorithm {
13664 [pbr::OriginalName("NO_BINARY_MINIMIZATION")] NoBinaryMinimization = 0,
13665 [pbr::OriginalName("BINARY_MINIMIZATION_FIRST")] BinaryMinimizationFirst = 1,
13666 [pbr::OriginalName("BINARY_MINIMIZATION_FIRST_WITH_TRANSITIVE_REDUCTION")] BinaryMinimizationFirstWithTransitiveReduction = 4,
13667 [pbr::OriginalName("BINARY_MINIMIZATION_WITH_REACHABILITY")] BinaryMinimizationWithReachability = 2,
13668 [pbr::OriginalName("EXPERIMENTAL_BINARY_MINIMIZATION")] ExperimentalBinaryMinimization = 3,
13670
13676 public enum ClauseProtection {
13680 [pbr::OriginalName("PROTECTION_NONE")] ProtectionNone = 0,
13684 [pbr::OriginalName("PROTECTION_ALWAYS")] ProtectionAlways = 1,
13688 [pbr::OriginalName("PROTECTION_LBD")] ProtectionLbd = 2,
13689 }
13690
13695 public enum ClauseOrdering {
13699 [pbr::OriginalName("CLAUSE_ACTIVITY")] ClauseActivity = 0,
13703 [pbr::OriginalName("CLAUSE_LBD")] ClauseLbd = 1,
13704 }
13705
13714 public enum RestartAlgorithm {
13715 [pbr::OriginalName("NO_RESTART")] NoRestart = 0,
13719 [pbr::OriginalName("LUBY_RESTART")] LubyRestart = 1,
13723 [pbr::OriginalName("DL_MOVING_AVERAGE_RESTART")] DlMovingAverageRestart = 2,
13727 [pbr::OriginalName("LBD_MOVING_AVERAGE_RESTART")] LbdMovingAverageRestart = 3,
13731 [pbr::OriginalName("FIXED_RESTART")] FixedRestart = 4,
13732 }
13733
13737 public enum MaxSatAssumptionOrder {
13738 [pbr::OriginalName("DEFAULT_ASSUMPTION_ORDER")] DefaultAssumptionOrder = 0,
13739 [pbr::OriginalName("ORDER_ASSUMPTION_BY_DEPTH")] OrderAssumptionByDepth = 1,
13740 [pbr::OriginalName("ORDER_ASSUMPTION_BY_WEIGHT")] OrderAssumptionByWeight = 2,
13741 }
13742
13746 public enum MaxSatStratificationAlgorithm {
13750 [pbr::OriginalName("STRATIFICATION_NONE")] StratificationNone = 0,
13755 [pbr::OriginalName("STRATIFICATION_DESCENT")] StratificationDescent = 1,
13762 [pbr::OriginalName("STRATIFICATION_ASCENT")] StratificationAscent = 2,
13764
13768 public enum SearchBranching {
13775 [pbr::OriginalName("AUTOMATIC_SEARCH")] AutomaticSearch = 0,
13781 [pbr::OriginalName("FIXED_SEARCH")] FixedSearch = 1,
13785 [pbr::OriginalName("PORTFOLIO_SEARCH")] PortfolioSearch = 2,
13790 [pbr::OriginalName("LP_SEARCH")] LpSearch = 3,
13796 [pbr::OriginalName("PSEUDO_COST_SEARCH")] PseudoCostSearch = 4,
13802 [pbr::OriginalName("PORTFOLIO_WITH_QUICK_RESTART_SEARCH")] PortfolioWithQuickRestartSearch = 5,
13808 [pbr::OriginalName("HINT_SEARCH")] HintSearch = 6,
13815 [pbr::OriginalName("PARTIAL_FIXED_SEARCH")] PartialFixedSearch = 7,
13819 [pbr::OriginalName("RANDOMIZED_SEARCH")] RandomizedSearch = 8,
13820 }
13821
13822 public enum SharedTreeSplitStrategy {
13827 [pbr::OriginalName("SPLIT_STRATEGY_AUTO")] SplitStrategyAuto = 0,
13836 [pbr::OriginalName("SPLIT_STRATEGY_DISCREPANCY")] SplitStrategyDiscrepancy = 1,
13840 [pbr::OriginalName("SPLIT_STRATEGY_OBJECTIVE_LB")] SplitStrategyObjectiveLb = 2,
13844 [pbr::OriginalName("SPLIT_STRATEGY_BALANCED_TREE")] SplitStrategyBalancedTree = 3,
13848 [pbr::OriginalName("SPLIT_STRATEGY_FIRST_PROPOSAL")] SplitStrategyFirstProposal = 4,
13849 }
13850
13854 public enum FPRoundingMethod {
13858 [pbr::OriginalName("NEAREST_INTEGER")] NearestInteger = 0,
13864 [pbr::OriginalName("LOCK_BASED")] LockBased = 1,
13869 [pbr::OriginalName("ACTIVE_LOCK_BASED")] ActiveLockBased = 3,
13878 [pbr::OriginalName("PROPAGATION_ASSISTED")] PropagationAssisted = 2,
13879 }
13880
13881 }
13882 #endregion
13883
13884 }
13885
13886 #endregion
13887
13888}
13889
13890#endregion Designer generated code
global::Google.Protobuf pb
Definition SetCover.pb.cs:8
global::Google.Protobuf.Reflection pbr
global::System.Collections.Generic scg
global::Google.Protobuf.Collections pbc
Definition SetCover.pb.cs:9
Holder for reflection information generated from ortools/sat/sat_parameters.proto.
static pbr::FileDescriptor Descriptor
File descriptor for ortools/sat/sat_parameters.proto.
BinaryMinizationAlgorithm
Whether to expoit the binary clause to minimize learned clauses further.
Polarity
Specifies the initial polarity (true/false) when the solver branches on a variable....
SearchBranching
The search branching will be used to decide how to branch on unfixed nodes.
@ PortfolioSearch
Simple portfolio search used by LNS workers.
@ LpSearch
If used, the solver will use heuristics from the LP relaxation. This exploit the reduced costs of the...
@ PseudoCostSearch
If used, the solver uses the pseudo costs for branching. Pseudo costs are computed using the historic...
@ FixedSearch
If used then all decisions taken by the solver are made using a fixed order as specified in the API o...
@ PortfolioWithQuickRestartSearch
Mainly exposed here for testing. This quickly tries a lot of randomized heuristics with a low conflic...
@ PartialFixedSearch
Similar to FIXED_SEARCH, but differ in how the variable not listed into the fixed search heuristics a...
@ RandomizedSearch
Randomized search. Used to increase entropy in the search.
@ AutomaticSearch
Try to fix all literals using the underlying SAT solver's heuristics, then generate and fix literals ...
@ HintSearch
Mainly used internally. This is like FIXED_SEARCH, except we follow the solution_hint field of the Cp...
@ LubyRestart
Just follow a Luby sequence times restart_period.
@ FixedRestart
Fixed period restart every restart period.
@ LbdMovingAverageRestart
Moving average restart based on the LBD of conflicts.
@ DlMovingAverageRestart
Moving average restart based on the decision level of conflicts.
VariableOrder
Variables without activity (i.e. at the beginning of the search) will be tried in this preferred orde...
MaxSatStratificationAlgorithm
What stratification algorithm we use in the presence of weight.
@ StratificationAscent
Start with all literals. Each time a core is found with a given minimum weight, do not consider liter...
@ StratificationDescent
Start with literals with the highest weight, and when SAT, add the literals with the next highest wei...
FPRoundingMethod
Rounding method to use for feasibility pump.
@ ActiveLockBased
Similar to lock based rounding except this only considers locks of active constraints from the last l...
@ LockBased
Counts the number of linear constraints restricting the variable in the increasing values (up locks) ...
@ NearestInteger
Rounds to the nearest integer value.
@ PropagationAssisted
This is expensive rounding algorithm. We round variables one by one and propagate the bounds in betwe...
ConflictMinimizationAlgorithm
Do we try to minimize conflicts (greedily) when creating them.
@ SplitStrategyDiscrepancy
Only accept splits if the node to be split's depth+discrepancy is minimal for the desired number of l...
@ SplitStrategyBalancedTree
Attempt to keep the shared tree balanced.
@ SplitStrategyAuto
Uses the default strategy, currently equivalent to SPLIT_STRATEGY_DISCREPANCY.
@ SplitStrategyFirstProposal
Workers race to split their subtree, the winner's proposal is accepted.
@ SplitStrategyObjectiveLb
Only split nodes with an objective lb equal to the global lb.
ClauseOrdering
The clauses that will be kept during a cleanup are the ones that come first under this order....
@ ClauseLbd
Order clause by increasing LBD, then by decreasing activity.
@ ClauseActivity
Order clause by decreasing activity, then by increasing LBD.
MaxSatAssumptionOrder
In what order do we add the assumptions in a core-based max-sat algorithm.
ClauseProtection
Each time a clause activity is bumped, the clause has a chance to be protected during the next cleanu...
@ ProtectionLbd
Only protect clause with a better LBD.
@ ProtectionAlways
Protect all clauses whose activity is bumped.
Contains the definitions for all the sat algorithm parameters and their default values.
bool HasClauseCleanupOrdering
Gets whether the "clause_cleanup_ordering" field is set.
const int DebugCrashOnBadHintFieldNumber
Field number for the "debug_crash_on_bad_hint" field.
void ClearSolutionPoolSize()
Clears the value of the "solution_pool_size" field.
bool HasExploitRelaxationSolution
Gets whether the "exploit_relaxation_solution" field is set.
bool HasAddRltCuts
Gets whether the "add_rlt_cuts" field is set.
bool HasFindBigLinearOverlap
Gets whether the "find_big_linear_overlap" field is set.
bool HasName
Gets whether the "name" field is set.
void ClearMaxNumberOfConflicts()
Clears the value of the "max_number_of_conflicts" field.
void ClearFixVariablesToTheirHintedValue()
Clears the value of the "fix_variables_to_their_hinted_value" field.
bool HasNewLinearPropagation
Gets whether the "new_linear_propagation" field is set.
bool HasCountAssumptionLevelsInLbd
Gets whether the "count_assumption_levels_in_lbd" field is set.
const int AddRltCutsFieldNumber
Field number for the "add_rlt_cuts" field.
const int UseOverloadCheckerInCumulativeFieldNumber
Field number for the "use_overload_checker_in_cumulative" field.
void ClearUsePbResolution()
Clears the value of the "use_pb_resolution" field.
bool HasDefaultRestartAlgorithms
Gets whether the "default_restart_algorithms" field is set.
const int ShareObjectiveBoundsFieldNumber
Field number for the "share_objective_bounds" field.
void ClearUseOptimizationHints()
Clears the value of the "use_optimization_hints" field.
const int SharedTreeNumWorkersFieldNumber
Field number for the "shared_tree_num_workers" field.
const int PresolveProbingDeterministicTimeLimitFieldNumber
Field number for the "presolve_probing_deterministic_time_limit" field.
void ClearMipMaxActivityExponent()
Clears the value of the "mip_max_activity_exponent" field.
bool DisableConstraintExpansion
If true, it disable all constraint expansion. This should only be used to test the presolve of expand...
const int LogToResponseFieldNumber
Field number for the "log_to_response" field.
const int MinOrthogonalityForLpConstraintsFieldNumber
Field number for the "min_orthogonality_for_lp_constraints" field.
const int ClauseCleanupPeriodFieldNumber
Field number for the "clause_cleanup_period" field.
bool HasNumViolationLs
Gets whether the "num_violation_ls" field is set.
const int AddLpConstraintsLazilyFieldNumber
Field number for the "add_lp_constraints_lazily" field.
bool HasMaxSatReverseAssumptionOrder
Gets whether the "max_sat_reverse_assumption_order" field is set.
const int FillAdditionalSolutionsInResponseFieldNumber
Field number for the "fill_additional_solutions_in_response" field.
void ClearMaxDomainSizeWhenEncodingEqNeqConstraints()
Clears the value of the "max_domain_size_when_encoding_eq_neq_constraints" field.
bool HasAddZeroHalfCuts
Gets whether the "add_zero_half_cuts" field is set.
void ClearMipMaxBound()
Clears the value of the "mip_max_bound" field.
const int SharedTreeSplitStrategyFieldNumber
Field number for the "shared_tree_split_strategy" field.
int TableCompressionLevel
How much we try to "compress" a table constraint. Compressing more leads to less Booleans and faster ...
bool TestFeasibilityJump
Disable every other type of subsolver, setting this turns CP-SAT into a pure local-search solver.
const int UseAreaEnergeticReasoningInNoOverlap2DFieldNumber
Field number for the "use_area_energetic_reasoning_in_no_overlap_2d" field.
bool FindBigLinearOverlap
Try to find large "rectangle" in the linear constraint matrix with identical lines....
void WriteTo(pb::CodedOutputStream output)
bool HasUseObjectiveLbSearch
Gets whether the "use_objective_lb_search" field is set.
void ClearUseImpliedBounds()
Clears the value of the "use_implied_bounds" field.
void ClearUseObjectiveShavingSearch()
Clears the value of the "use_objective_shaving_search" field.
bool HasUseLbRelaxLns
Gets whether the "use_lb_relax_lns" field is set.
const int MaxSatReverseAssumptionOrderFieldNumber
Field number for the "max_sat_reverse_assumption_order" field.
bool HasUseOptionalVariables
Gets whether the "use_optional_variables" field is set.
bool HasMaxPairsPairwiseReasoningInNoOverlap2D
Gets whether the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field is set.
const int GlucoseDecayIncrementFieldNumber
Field number for the "glucose_decay_increment" field.
bool MaxSatReverseAssumptionOrder
If true, adds the assumption in the reverse order of the one defined by max_sat_assumption_order.
bool UseFeasibilityPump
Adds a feasibility pump subsolver along with lns subsolvers.
void ClearPermuteVariableRandomly()
Clears the value of the "permute_variable_randomly" field.
bool HasUseOptimizationHints
Gets whether the "use_optimization_hints" field is set.
void ClearClauseActivityDecay()
Clears the value of the "clause_activity_decay" field.
int BooleanEncodingLevel
A non-negative level indicating how much we should try to fully encode Integer variables as Boolean.
const int AlsoBumpVariablesInConflictReasonsFieldNumber
Field number for the "also_bump_variables_in_conflict_reasons" field.
bool HasNumWorkers
Gets whether the "num_workers" field is set.
bool CountAssumptionLevelsInLbd
Whether or not the assumption levels are taken into account during the LBD computation....
void ClearDiversifyLnsParams()
Clears the value of the "diversify_lns_params" field.
void ClearNumSearchWorkers()
Clears the value of the "num_search_workers" field.
int ClauseCleanupTarget
During a cleanup, we will always keep that number of "deletable" clauses.
void ClearMinOrthogonalityForLpConstraints()
Clears the value of the "min_orthogonality_for_lp_constraints" field.
bool PolishLpSolution
Whether we try to do a few degenerate iteration at the end of an LP solve to minimize the fractionali...
bool HasUsePbResolution
Gets whether the "use_pb_resolution" field is set.
long SearchRandomVariablePoolSize
Search randomization will collect the top 'search_random_variable_pool_size' valued variables,...
void ClearFindMultipleCores()
Clears the value of the "find_multiple_cores" field.
void ClearOptimizeWithLbTreeSearch()
Clears the value of the "optimize_with_lb_tree_search" field.
void ClearAddLpConstraintsLazily()
Clears the value of the "add_lp_constraints_lazily" field.
bool MipTreatHighMagnitudeBoundsAsInfinity
By default, any variable/constraint bound with a finite value and a magnitude greater than the mip_ma...
bool HasUseObjectiveShavingSearch
Gets whether the "use_objective_shaving_search" field is set.
int ViolationLsPerturbationPeriod
How long violation_ls should wait before perturbating a solution.
bool FillTightenedDomainsInResponse
If true, add information about the derived variable domains to the CpSolverResponse....
bool HasLpDualTolerance
Gets whether the "lp_dual_tolerance" field is set.
bool UseStrongPropagationInDisjunctive
Enable stronger and more expensive propagation on no_overlap constraint.
void ClearPresolveSubstitutionLevel()
Clears the value of the "presolve_substitution_level" field.
int MipPresolveLevel
When solving a MIP, we do some basic floating point presolving before scaling the problem to integer ...
double RandomPolarityRatio
The proportion of polarity chosen at random. Note that this take precedence over the phase saving heu...
int RandomSeed
At the beginning of each solve, the random number generator used in some part of the solver is reinit...
double MipMaxBound
We need to bound the maximum magnitude of the variables for CP-SAT, and that is the bound we use....
void ClearMaxNumCuts()
Clears the value of the "max_num_cuts" field.
const int MinNumLnsWorkersFieldNumber
Field number for the "min_num_lns_workers" field.
bool HasNewConstraintsBatchSize
Gets whether the "new_constraints_batch_size" field is set.
void ClearMaxAllDiffCutSize()
Clears the value of the "max_all_diff_cut_size" field.
bool HasRandomPolarityRatio
Gets whether the "random_polarity_ratio" field is set.
bool HasUseExtendedProbing
Gets whether the "use_extended_probing" field is set.
void ClearPresolveInclusionWorkLimit()
Clears the value of the "presolve_inclusion_work_limit" field.
bool AddRltCuts
Whether we generate RLT cuts. This is still experimental but can help on binary problem with a lot of...
const int UseDynamicPrecedenceInCumulativeFieldNumber
Field number for the "use_dynamic_precedence_in_cumulative" field.
global::Google.OrTools.Sat.SatParameters.Types.VariableOrder PreferredVariableOrder
const int PresolveBveClauseWeightFieldNumber
Field number for the "presolve_bve_clause_weight" field.
void ClearFeasibilityJumpVarPerburbationRangeRatio()
Clears the value of the "feasibility_jump_var_perburbation_range_ratio" field.
void ClearOnlySolveIp()
Clears the value of the "only_solve_ip" field.
global::Google.OrTools.Sat.SatParameters.Types.ClauseProtection ClauseCleanupProtection
void ClearClauseCleanupLbdBound()
Clears the value of the "clause_cleanup_lbd_bound" field.
const int MaxSatAssumptionOrderFieldNumber
Field number for the "max_sat_assumption_order" field.
const int MaxPresolveIterationsFieldNumber
Field number for the "max_presolve_iterations" field.
bool HasEnumerateAllSolutions
Gets whether the "enumerate_all_solutions" field is set.
const int FeasibilityJumpLinearizationLevelFieldNumber
Field number for the "feasibility_jump_linearization_level" field.
bool CpModelUseSatPresolve
Whether we also use the sat presolve when cp_model_presolve is true.
const int BinarySearchNumConflictsFieldNumber
Field number for the "binary_search_num_conflicts" field.
const int ExploitObjectiveFieldNumber
Field number for the "exploit_objective" field.
bool AutoDetectGreaterThanAtLeastOneOf
If true, then the precedences propagator try to detect for each variable if it has a set of "optional...
const int AddMirCutsFieldNumber
Field number for the "add_mir_cuts" field.
bool LogSearchProgress
Whether the solver should log the search progress. This is the maing logging parameter and if this is...
void ClearFeasibilityJumpRestartFactor()
Clears the value of the "feasibility_jump_restart_factor" field.
bool HasUseExactLpReason
Gets whether the "use_exact_lp_reason" field is set.
bool HasIgnoreNames
Gets whether the "ignore_names" field is set.
bool HasMipWantedPrecision
Gets whether the "mip_wanted_precision" field is set.
bool HasInitialVariablesActivity
Gets whether the "initial_variables_activity" field is set.
const int UseErwaHeuristicFieldNumber
Field number for the "use_erwa_heuristic" field.
const int UseRinsLnsFieldNumber
Field number for the "use_rins_lns" field.
void ClearCutLevel()
Clears the value of the "cut_level" field.
const int UseHardPrecedencesInCumulativeFieldNumber
Field number for the "use_hard_precedences_in_cumulative" field.
bool HasMipComputeTrueObjectiveBound
Gets whether the "mip_compute_true_objective_bound" field is set.
bool UseEnergeticReasoningInNoOverlap2D
When this is true, the no_overlap_2d constraint is reinforced with energetic reasoning....
bool HasDebugCrashOnBadHint
Gets whether the "debug_crash_on_bad_hint" field is set.
void ClearBinarySearchNumConflicts()
Clears the value of the "binary_search_num_conflicts" field.
bool PresolveExtractIntegerEnforcement
If true, we will extract from linear constraints, enforcement literals of the form "integer variable ...
global::Google.OrTools.Sat.SatParameters.Types.MaxSatStratificationAlgorithm MaxSatStratification
bool HasDebugMaxNumPresolveOperations
Gets whether the "debug_max_num_presolve_operations" field is set.
void ClearUseFeasibilityPump()
Clears the value of the "use_feasibility_pump" field.
const int NumConflictsBeforeStrategyChangesFieldNumber
Field number for the "num_conflicts_before_strategy_changes" field.
void ClearLinearSplitSize()
Clears the value of the "linear_split_size" field.
const int InitialVariablesActivityFieldNumber
Field number for the "initial_variables_activity" field.
void ClearNumConflictsBeforeStrategyChanges()
Clears the value of the "num_conflicts_before_strategy_changes" field.
void ClearPbCleanupRatio()
Clears the value of the "pb_cleanup_ratio" field.
const int UsePhaseSavingFieldNumber
Field number for the "use_phase_saving" field.
void ClearMaxVariableActivityValue()
Clears the value of the "max_variable_activity_value" field.
bool HasFindMultipleCores
Gets whether the "find_multiple_cores" field is set.
void ClearMipCheckPrecision()
Clears the value of the "mip_check_precision" field.
bool DetectTableWithCost
If true, we detect variable that are unique to a table constraint and only there to encode a cost on ...
bool PresolveUseBva
Whether or not we use Bounded Variable Addition (BVA) in the presolve.
bool HasMipVarScaling
Gets whether the "mip_var_scaling" field is set.
int CutCleanupTarget
Target number of constraints to remove during cleanup.
const int StopAfterFirstSolutionFieldNumber
Field number for the "stop_after_first_solution" field.
void ClearMergeNoOverlapWorkLimit()
Clears the value of the "merge_no_overlap_work_limit" field.
const int FindMultipleCoresFieldNumber
Field number for the "find_multiple_cores" field.
const int CutMaxActiveCountValueFieldNumber
Field number for the "cut_max_active_count_value" field.
bool HasDebugPostsolveWithFullSolver
Gets whether the "debug_postsolve_with_full_solver" field is set.
void ClearLogPrefix()
Clears the value of the "log_prefix" field.
void ClearGlucoseDecayIncrementPeriod()
Clears the value of the "glucose_decay_increment_period" field.
const int FillTightenedDomainsInResponseFieldNumber
Field number for the "fill_tightened_domains_in_response" field.
const int MaxSatStratificationFieldNumber
Field number for the "max_sat_stratification" field.
bool HasPermutePresolveConstraintOrder
Gets whether the "permute_presolve_constraint_order" field is set.
bool HasGlucoseDecayIncrement
Gets whether the "glucose_decay_increment" field is set.
const int UseAbslRandomFieldNumber
Field number for the "use_absl_random" field.
bool HasPreferredVariableOrder
Gets whether the "preferred_variable_order" field is set.
const int InferAllDiffsFieldNumber
Field number for the "infer_all_diffs" field.
void ClearName()
Clears the value of the "name" field.
bool CoverOptimization
If true, when the max-sat algo find a core, we compute the minimal number of literals in the core tha...
bool UsePbResolution
Whether to use pseudo-Boolean resolution to analyze a conflict. Note that this option only make sense...
const int LinearizationLevelFieldNumber
Field number for the "linearization_level" field.
const int BlockingRestartMultiplierFieldNumber
Field number for the "blocking_restart_multiplier" field.
void ClearMipMaxValidMagnitude()
Clears the value of the "mip_max_valid_magnitude" field.
void ClearMaxSizeToCreatePrecedenceLiteralsInDisjunctive()
Clears the value of the "max_size_to_create_precedence_literals_in_disjunctive" field.
const int FeasibilityJumpEnableRestartsFieldNumber
Field number for the "feasibility_jump_enable_restarts" field.
void ClearBlockingRestartWindowSize()
Clears the value of the "blocking_restart_window_size" field.
bool HasCutMaxActiveCountValue
Gets whether the "cut_max_active_count_value" field is set.
void ClearMaxPairsPairwiseReasoningInNoOverlap2D()
Clears the value of the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field.
const int PropagationLoopDetectionFactorFieldNumber
Field number for the "propagation_loop_detection_factor" field.
bool HasCutCleanupTarget
Gets whether the "cut_cleanup_target" field is set.
const int CutLevelFieldNumber
Field number for the "cut_level" field.
bool HasStopAfterPresolve
Gets whether the "stop_after_presolve" field is set.
void ClearDetectTableWithCost()
Clears the value of the "detect_table_with_cost" field.
bool UseFeasibilityJump
Parameters for an heuristic similar to the one described in the paper: "Feasibility Jump: an LP-free ...
double ShavingSearchDeterministicTime
Specifies the amount of deterministic time spent of each try at shaving a bound in the shaving search...
const int MaxDomainSizeWhenEncodingEqNeqConstraintsFieldNumber
Field number for the "max_domain_size_when_encoding_eq_neq_constraints" field.
void ClearMaxIntegerRoundingScaling()
Clears the value of the "max_integer_rounding_scaling" field.
void ClearUseRinsLns()
Clears the value of the "use_rins_lns" field.
void ClearInprocessingProbingDtime()
Clears the value of the "inprocessing_probing_dtime" field.
void ClearFeasibilityJumpEnableRestarts()
Clears the value of the "feasibility_jump_enable_restarts" field.
bool HasLogPrefix
Gets whether the "log_prefix" field is set.
void ClearUseDynamicPrecedenceInCumulative()
Clears the value of the "use_dynamic_precedence_in_cumulative" field.
void ClearTableCompressionLevel()
Clears the value of the "table_compression_level" field.
const int MipMaxValidMagnitudeFieldNumber
Field number for the "mip_max_valid_magnitude" field.
const int MinimizeReductionDuringPbResolutionFieldNumber
Field number for the "minimize_reduction_during_pb_resolution" field.
int AtMostOneMaxExpansionSize
All at_most_one constraints with a size <= param will be replaced by a quadratic number of binary imp...
int MaxIntegerRoundingScaling
In the integer rounding procedure used for MIR and Gomory cut, the maximum "scaling" we use (must be ...
const int UseLnsOnlyFieldNumber
Field number for the "use_lns_only" field.
void ClearFillAdditionalSolutionsInResponse()
Clears the value of the "fill_additional_solutions_in_response" field.
bool HasPresolveBveThreshold
Gets whether the "presolve_bve_threshold" field is set.
bool UsePhaseSaving
If this is true, then the polarity of a variable will be the last value it was assigned to,...
void ClearMaxCutRoundsAtLevelZero()
Clears the value of the "max_cut_rounds_at_level_zero" field.
bool HasAddCliqueCuts
Gets whether the "add_clique_cuts" field is set.
const int PolarityRephaseIncrementFieldNumber
Field number for the "polarity_rephase_increment" field.
void ClearUseHardPrecedencesInCumulative()
Clears the value of the "use_hard_precedences_in_cumulative" field.
void ClearPbCleanupIncrement()
Clears the value of the "pb_cleanup_increment" field.
const int CatchSigintSignalFieldNumber
Field number for the "catch_sigint_signal" field.
bool HasMinimizeReductionDuringPbResolution
Gets whether the "minimize_reduction_during_pb_resolution" field is set.
const int FindBigLinearOverlapFieldNumber
Field number for the "find_big_linear_overlap" field.
void ClearMipScaleLargeDomain()
Clears the value of the "mip_scale_large_domain" field.
bool HasPropagationLoopDetectionFactor
Gets whether the "propagation_loop_detection_factor" field is set.
bool PushAllTasksTowardStart
Experimental code: specify if the objective pushes all tasks toward the start of the schedule.
const int SearchRandomVariablePoolSizeFieldNumber
Field number for the "search_random_variable_pool_size" field.
bool HasViolationLsCompoundMoveProbability
Gets whether the "violation_ls_compound_move_probability" field is set.
double InprocessingDtimeRatio
Proportion of deterministic time we should spend on inprocessing. At each "restart",...
const int ClauseCleanupOrderingFieldNumber
Field number for the "clause_cleanup_ordering" field.
void ClearLogSubsolverStatistics()
Clears the value of the "log_subsolver_statistics" field.
pbc::RepeatedField< string > IgnoreSubsolvers
Rather than fully specifying subsolvers, it is often convenient to just remove the ones that are not ...
bool HasLogToResponse
Gets whether the "log_to_response" field is set.
const int CoreMinimizationLevelFieldNumber
Field number for the "core_minimization_level" field.
void ClearMaxMemoryInMb()
Clears the value of the "max_memory_in_mb" field.
const int NameFieldNumber
Field number for the "name" field.
void ClearPolishLpSolution()
Clears the value of the "polish_lp_solution" field.
const int ClauseCleanupLbdBoundFieldNumber
Field number for the "clause_cleanup_lbd_bound" field.
void ClearUseDisjunctiveConstraintInCumulative()
Clears the value of the "use_disjunctive_constraint_in_cumulative" field.
bool HasPresolveBvaThreshold
Gets whether the "presolve_bva_threshold" field is set.
bool OnlySolveIp
If one try to solve a MIP model with CP-SAT, because we assume all variable to be integer after scali...
const int UseOptimizationHintsFieldNumber
Field number for the "use_optimization_hints" field.
void ClearSharedTreeNumWorkers()
Clears the value of the "shared_tree_num_workers" field.
void ClearUseOverloadCheckerInCumulative()
Clears the value of the "use_overload_checker_in_cumulative" field.
pbc::RepeatedField< string > Subsolvers
In multi-thread, the solver can be mainly seen as a portfolio of solvers with different parameters....
const int PresolveInclusionWorkLimitFieldNumber
Field number for the "presolve_inclusion_work_limit" field.
void ClearClauseCleanupPeriod()
Clears the value of the "clause_cleanup_period" field.
const int MipCheckPrecisionFieldNumber
Field number for the "mip_check_precision" field.
int MaxDomainSizeWhenEncodingEqNeqConstraints
When loading a*x + b*y ==/!= c when x and y are both fully encoded. The solver may decide to replace ...
bool HasMaxSatStratification
Gets whether the "max_sat_stratification" field is set.
void ClearRestartDlAverageRatio()
Clears the value of the "restart_dl_average_ratio" field.
const int MaxNumberOfConflictsFieldNumber
Field number for the "max_number_of_conflicts" field.
void ClearUseEnergeticReasoningInNoOverlap2D()
Clears the value of the "use_energetic_reasoning_in_no_overlap_2d" field.
const int ClauseActivityDecayFieldNumber
Field number for the "clause_activity_decay" field.
const int SolutionPoolSizeFieldNumber
Field number for the "solution_pool_size" field.
void ClearPushAllTasksTowardStart()
Clears the value of the "push_all_tasks_toward_start" field.
int BinarySearchNumConflicts
If non-negative, perform a binary search on the objective variable in order to find an [min,...
const int UseDynamicPrecedenceInDisjunctiveFieldNumber
Field number for the "use_dynamic_precedence_in_disjunctive" field.
bool HasAddCgCuts
Gets whether the "add_cg_cuts" field is set.
bool HasClauseCleanupPeriod
Gets whether the "clause_cleanup_period" field is set.
bool ExpandReservoirConstraints
If true, expand the reservoir constraints by creating booleans for all possible precedences between e...
bool SubsumptionDuringConflictAnalysis
At a really low cost, during the 1-UIP conflict computation, it is easy to detect if some of the invo...
const int NewLinearPropagationFieldNumber
Field number for the "new_linear_propagation" field.
int PresolveBveThreshold
During presolve, only try to perform the bounded variable elimination (BVE) of a variable x if the nu...
const int SubsolverParamsFieldNumber
Field number for the "subsolver_params" field.
double VariableActivityDecay
Each time a conflict is found, the activities of some variables are increased by one....
void ClearCoverOptimization()
Clears the value of the "cover_optimization" field.
bool HasUseTimetablingInNoOverlap2D
Gets whether the "use_timetabling_in_no_overlap_2d" field is set.
void ClearAbsoluteGapLimit()
Clears the value of the "absolute_gap_limit" field.
int HintConflictLimit
Conflict limit used in the phase that exploit the solution hint.
void ClearUseLnsOnly()
Clears the value of the "use_lns_only" field.
bool HasMipPresolveLevel
Gets whether the "mip_presolve_level" field is set.
void ClearUseAbslRandom()
Clears the value of the "use_absl_random" field.
void ClearUseTimetablingInNoOverlap2D()
Clears the value of the "use_timetabling_in_no_overlap_2d" field.
bool HasMaxDeterministicTime
Gets whether the "max_deterministic_time" field is set.
bool HasBinaryMinimizationAlgorithm
Gets whether the "binary_minimization_algorithm" field is set.
bool HasSearchBranching
Gets whether the "search_branching" field is set.
void ClearPermutePresolveConstraintOrder()
Clears the value of the "permute_presolve_constraint_order" field.
const int PresolveExtractIntegerEnforcementFieldNumber
Field number for the "presolve_extract_integer_enforcement" field.
int MaxCutRoundsAtLevelZero
Max number of time we perform cut generation and resolve the LP at level 0.
bool AddCliqueCuts
Whether we generate clique cuts from the binary implication graph. Note that as the search goes on,...
void ClearSearchRandomVariablePoolSize()
Clears the value of the "search_random_variable_pool_size" field.
const int AtMostOneMaxExpansionSizeFieldNumber
Field number for the "at_most_one_max_expansion_size" field.
const int MipVarScalingFieldNumber
Field number for the "mip_var_scaling" field.
void ClearFeasibilityJumpVarRandomizationProbability()
Clears the value of the "feasibility_jump_var_randomization_probability" field.
const int ShavingSearchDeterministicTimeFieldNumber
Field number for the "shaving_search_deterministic_time" field.
void ClearPreferredVariableOrder()
Clears the value of the "preferred_variable_order" field.
const int UseTimetablingInNoOverlap2DFieldNumber
Field number for the "use_timetabling_in_no_overlap_2d" field.
const int UseExtendedProbingFieldNumber
Field number for the "use_extended_probing" field.
bool MipAutomaticallyScaleVariables
If true, some continuous variable might be automatically scaled. For now, this is only the case where...
bool StopAfterFirstSolution
For an optimization problem, stop the solver as soon as we have a solution.
int MipMaxActivityExponent
To avoid integer overflow, we always force the maximum possible constraint activity (and objective va...
const int RestartPeriodFieldNumber
Field number for the "restart_period" field.
bool HasExploitIntegerLpSolution
Gets whether the "exploit_integer_lp_solution" field is set.
void ClearMinimizeReductionDuringPbResolution()
Clears the value of the "minimize_reduction_during_pb_resolution" field.
const int MipAutomaticallyScaleVariablesFieldNumber
Field number for the "mip_automatically_scale_variables" field.
const int ExtraSubsolversFieldNumber
Field number for the "extra_subsolvers" field.
const int InstantiateAllVariablesFieldNumber
Field number for the "instantiate_all_variables" field.
bool HasGlucoseDecayIncrementPeriod
Gets whether the "glucose_decay_increment_period" field is set.
bool HasPresolveUseBva
Gets whether the "presolve_use_bva" field is set.
bool UseImpliedBounds
Stores and exploits "implied-bounds" in the solver. That is, relations of the form literal => (var >=...
bool HasRestartDlAverageRatio
Gets whether the "restart_dl_average_ratio" field is set.
const int RestartAlgorithmsFieldNumber
Field number for the "restart_algorithms" field.
double InprocessingProbingDtime
The amount of dtime we should spend on probing for each inprocessing round.
const int IgnoreSubsolversFieldNumber
Field number for the "ignore_subsolvers" field.
void ClearMipTreatHighMagnitudeBoundsAsInfinity()
Clears the value of the "mip_treat_high_magnitude_bounds_as_infinity" field.
bool HasCoreMinimizationLevel
Gets whether the "core_minimization_level" field is set.
int RootLpIterations
Even at the root node, we do not want to spend too much time on the LP if it is "difficult"....
bool HasShavingSearchDeterministicTime
Gets whether the "shaving_search_deterministic_time" field is set.
const int MaxIntegerRoundingScalingFieldNumber
Field number for the "max_integer_rounding_scaling" field.
bool HasMipScaleLargeDomain
Gets whether the "mip_scale_large_domain" field is set.
bool HasUseCombinedNoOverlap
Gets whether the "use_combined_no_overlap" field is set.
const int RandomPolarityRatioFieldNumber
Field number for the "random_polarity_ratio" field.
void ClearRestartLbdAverageRatio()
Clears the value of the "restart_lbd_average_ratio" field.
bool HasMergeNoOverlapWorkLimit
Gets whether the "merge_no_overlap_work_limit" field is set.
bool HasAbsoluteGapLimit
Gets whether the "absolute_gap_limit" field is set.
bool ConvertIntervals
Temporary flag util the feature is more mature. This convert intervals to the newer proto format that...
bool HasMaxNumIntervalsForTimetableEdgeFinding
Gets whether the "max_num_intervals_for_timetable_edge_finding" field is set.
const int SubsolversFieldNumber
Field number for the "subsolvers" field.
const int MaxSizeToCreatePrecedenceLiteralsInDisjunctiveFieldNumber
Field number for the "max_size_to_create_precedence_literals_in_disjunctive" field.
bool HasShareObjectiveBounds
Gets whether the "share_objective_bounds" field is set.
void ClearViolationLsCompoundMoveProbability()
Clears the value of the "violation_ls_compound_move_probability" field.
const int ClauseCleanupRatioFieldNumber
Field number for the "clause_cleanup_ratio" field.
void ClearDebugCrashOnBadHint()
Clears the value of the "debug_crash_on_bad_hint" field.
bool HasExploitAllPrecedences
Gets whether the "exploit_all_precedences" field is set.
void ClearUseBlockingRestart()
Clears the value of the "use_blocking_restart" field.
void ClearExpandReservoirConstraints()
Clears the value of the "expand_reservoir_constraints" field.
bool HasFeasibilityJumpMaxExpandedConstraintSize
Gets whether the "feasibility_jump_max_expanded_constraint_size" field is set.
global::Google.OrTools.Sat.SatParameters.Types.MaxSatAssumptionOrder MaxSatAssumptionOrder
bool HasUseFeasibilityPump
Gets whether the "use_feasibility_pump" field is set.
void ClearShavingSearchDeterministicTime()
Clears the value of the "shaving_search_deterministic_time" field.
bool HasPermuteVariableRandomly
Gets whether the "permute_variable_randomly" field is set.
const int VariableActivityDecayFieldNumber
Field number for the "variable_activity_decay" field.
double MipWantedPrecision
When scaling constraint with double coefficients to integer coefficients, we will multiply by a power...
bool CpModelPresolve
Whether we presolve the cp_model before solving it.
bool HasSharedTreeMaxNodesPerWorker
Gets whether the "shared_tree_max_nodes_per_worker" field is set.
int MaxPresolveIterations
In case of large reduction in a presolve iteration, we perform multiple presolve iterations....
int SolutionPoolSize
Size of the top-n different solutions kept by the solver. This parameter must be > 0....
void ClearLpPrimalTolerance()
Clears the value of the "lp_primal_tolerance" field.
void ClearRootLpIterations()
Clears the value of the "root_lp_iterations" field.
const int StopAfterRootPropagationFieldNumber
Field number for the "stop_after_root_propagation" field.
int NumConflictsBeforeStrategyChanges
After each restart, if the number of conflict since the last strategy change is greater that this,...
bool HasInferAllDiffs
Gets whether the "infer_all_diffs" field is set.
bool EncodeComplexLinearConstraintWithInteger
Linear constraint with a complex right hand side (more than a single interval) need to be expanded,...
void ClearProbingNumCombinationsLimit()
Clears the value of the "probing_num_combinations_limit" field.
void ClearAddCgCuts()
Clears the value of the "add_cg_cuts" field.
void ClearNewLinearPropagation()
Clears the value of the "new_linear_propagation" field.
const int RandomBranchesRatioFieldNumber
Field number for the "random_branches_ratio" field.
const int MinimizationAlgorithmFieldNumber
Field number for the "minimization_algorithm" field.
void ClearNewConstraintsBatchSize()
Clears the value of the "new_constraints_batch_size" field.
bool HasMipAutomaticallyScaleVariables
Gets whether the "mip_automatically_scale_variables" field is set.
const int RelativeGapLimitFieldNumber
Field number for the "relative_gap_limit" field.
bool HasMaxPresolveIterations
Gets whether the "max_presolve_iterations" field is set.
void ClearLogToResponse()
Clears the value of the "log_to_response" field.
const int PresolveSubstitutionLevelFieldNumber
Field number for the "presolve_substitution_level" field.
void ClearPresolveExtractIntegerEnforcement()
Clears the value of the "presolve_extract_integer_enforcement" field.
pbc::RepeatedField< global::Google.OrTools.Sat.SatParameters.Types.RestartAlgorithm > RestartAlgorithms
The restart strategies will change each time the strategy_counter is increased. The current strategy ...
const int MaxDeterministicTimeFieldNumber
Field number for the "max_deterministic_time" field.
bool HasClauseCleanupProtection
Gets whether the "clause_cleanup_protection" field is set.
bool FindMultipleCores
Whether we try to find more independent cores for a given set of assumptions in the core based max-SA...
void ClearShareLevelZeroBounds()
Clears the value of the "share_level_zero_bounds" field.
bool HasStopAfterFirstSolution
Gets whether the "stop_after_first_solution" field is set.
bool HasMaxNumberOfConflicts
Gets whether the "max_number_of_conflicts" field is set.
const int UseStrongPropagationInDisjunctiveFieldNumber
Field number for the "use_strong_propagation_in_disjunctive" field.
bool MipScaleLargeDomain
If this is false, then mip_var_scaling is only applied to variables with "small" domain....
void ClearInitialPolarity()
Clears the value of the "initial_polarity" field.
bool HasRepairHint
Gets whether the "repair_hint" field is set.
const int MipMaxActivityExponentFieldNumber
Field number for the "mip_max_activity_exponent" field.
bool OnlyAddCutsAtLevelZero
For the cut that can be generated at any level, this control if we only try to generate them at the r...
const int FeasibilityJumpDecayFieldNumber
Field number for the "feasibility_jump_decay" field.
bool HasMaxSatAssumptionOrder
Gets whether the "max_sat_assumption_order" field is set.
bool OptimizeWithCore
The default optimization method is a simple "linear scan", each time trying to find a better solution...
void ClearUseSatInprocessing()
Clears the value of the "use_sat_inprocessing" field.
bool HasAddMirCuts
Gets whether the "add_mir_cuts" field is set.
const int FpRoundingFieldNumber
Field number for the "fp_rounding" field.
const int UseProbingSearchFieldNumber
Field number for the "use_probing_search" field.
int SharedTreeNumWorkers
Enables experimental workstealing-like shared tree search. If non-zero, start this many complete work...
bool HasMaxCutRoundsAtLevelZero
Gets whether the "max_cut_rounds_at_level_zero" field is set.
void ClearUseObjectiveLbSearch()
Clears the value of the "use_objective_lb_search" field.
void ClearDefaultRestartAlgorithms()
Clears the value of the "default_restart_algorithms" field.
const int MaxMemoryInMbFieldNumber
Field number for the "max_memory_in_mb" field.
void ClearAddMirCuts()
Clears the value of the "add_mir_cuts" field.
bool HasMaxTimeInSeconds
Gets whether the "max_time_in_seconds" field is set.
void ClearClauseCleanupOrdering()
Clears the value of the "clause_cleanup_ordering" field.
bool HasMaxNumCuts
Gets whether the "max_num_cuts" field is set.
double MergeNoOverlapWorkLimit
During presolve, we use a maximum clique heuristic to merge together no-overlap constraints or at mos...
bool HasMinOrthogonalityForLpConstraints
Gets whether the "min_orthogonality_for_lp_constraints" field is set.
void ClearSharedTreeSplitStrategy()
Clears the value of the "shared_tree_split_strategy" field.
void ClearMaxClauseActivityValue()
Clears the value of the "max_clause_activity_value" field.
const int PseudoCostReliabilityThresholdFieldNumber
Field number for the "pseudo_cost_reliability_threshold" field.
bool HasViolationLsPerturbationPeriod
Gets whether the "violation_ls_perturbation_period" field is set.
const int LogPrefixFieldNumber
Field number for the "log_prefix" field.
const int OptimizeWithLbTreeSearchFieldNumber
Field number for the "optimize_with_lb_tree_search" field.
static pbr::MessageDescriptor Descriptor
bool HasOptimizeWithMaxHs
Gets whether the "optimize_with_max_hs" field is set.
void ClearCpModelPresolve()
Clears the value of the "cp_model_presolve" field.
bool HasInprocessingProbingDtime
Gets whether the "inprocessing_probing_dtime" field is set.
bool HasUseEnergeticReasoningInNoOverlap2D
Gets whether the "use_energetic_reasoning_in_no_overlap_2d" field is set.
bool EnumerateAllSolutions
Whether we enumerate all solutions of a problem without objective. Note that setting this to true aut...
void ClearAddZeroHalfCuts()
Clears the value of the "add_zero_half_cuts" field.
const int DiversifyLnsParamsFieldNumber
Field number for the "diversify_lns_params" field.
bool LogToResponse
Log to response proto.
double MinOrthogonalityForLpConstraints
While adding constraints, skip the constraints which have orthogonality less than 'min_orthogonality_...
bool OptimizeWithLbTreeSearch
Do a more conventional tree search (by opposition to SAT based one) where we keep all the explored no...
void ClearCoreMinimizationLevel()
Clears the value of the "core_minimization_level" field.
bool HasUseAreaEnergeticReasoningInNoOverlap2D
Gets whether the "use_area_energetic_reasoning_in_no_overlap_2d" field is set.
bool HasSubsumptionDuringConflictAnalysis
Gets whether the "subsumption_during_conflict_analysis" field is set.
void ClearInterleaveBatchSize()
Clears the value of the "interleave_batch_size" field.
long MaxNumberOfConflicts
Maximum number of conflicts allowed to solve a problem.
int ProbingNumCombinationsLimit
How many combinations of pairs or triplets of variables we want to scan.
void ClearUseExtendedProbing()
Clears the value of the "use_extended_probing" field.
const int MaxNumCutsFieldNumber
Field number for the "max_num_cuts" field.
const int RootLpIterationsFieldNumber
Field number for the "root_lp_iterations" field.
bool AlsoBumpVariablesInConflictReasons
When this is true, then the variables that appear in any of the reason of the variables in a conflict...
void ClearPresolveBveClauseWeight()
Clears the value of the "presolve_bve_clause_weight" field.
bool HasUseOverloadCheckerInCumulative
Gets whether the "use_overload_checker_in_cumulative" field is set.
bool HasEncodeComplexLinearConstraintWithInteger
Gets whether the "encode_complex_linear_constraint_with_integer" field is set.
bool HasClauseActivityDecay
Gets whether the "clause_activity_decay" field is set.
bool HasInitialPolarity
Gets whether the "initial_polarity" field is set.
const int UseObjectiveLbSearchFieldNumber
Field number for the "use_objective_lb_search" field.
bool AddCgCuts
Whether we generate and add Chvatal-Gomory cuts to the LP at root node.
int FeasibilityJumpLinearizationLevel
How much do we linearize the problem in the local search code.
void ClearStopAfterFirstSolution()
Clears the value of the "stop_after_first_solution" field.
const int LogSearchProgressFieldNumber
Field number for the "log_search_progress" field.
const int PermuteVariableRandomlyFieldNumber
Field number for the "permute_variable_randomly" field.
int RestartPeriod
Restart period for the FIXED_RESTART strategy. This is also the multiplier used by the LUBY_RESTART s...
int MaxNumIntervalsForTimetableEdgeFinding
Max number of intervals for the timetable_edge_finding algorithm to propagate. A value of 0 disables ...
void ClearNumViolationLs()
Clears the value of the "num_violation_ls" field.
bool DebugCrashOnBadHint
Crash if we do not manage to complete the hint into a full solution.
bool RandomizeSearch
Randomize fixed search.
long MaxMemoryInMb
Maximum memory allowed for the whole thread containing the solver. The solver will abort as soon as i...
const int TestFeasibilityJumpFieldNumber
Field number for the "test_feasibility_jump" field.
void ClearAutoDetectGreaterThanAtLeastOneOf()
Clears the value of the "auto_detect_greater_than_at_least_one_of" field.
const int BinaryMinimizationAlgorithmFieldNumber
Field number for the "binary_minimization_algorithm" field.
bool IgnoreNames
If true, we don't keep names in our internal copy of the user given model.
bool HasUseFeasibilityJump
Gets whether the "use_feasibility_jump" field is set.
const int OnlySolveIpFieldNumber
Field number for the "only_solve_ip" field.
double FeasibilityJumpVarPerburbationRangeRatio
Max distance between the default value and the pertubated value relative to the range of the domain o...
void ClearMipVarScaling()
Clears the value of the "mip_var_scaling" field.
bool HasExpandAlldiffConstraints
Gets whether the "expand_alldiff_constraints" field is set.
bool HasFeasibilityJumpVarRandomizationProbability
Gets whether the "feasibility_jump_var_randomization_probability" field is set.
int FeasibilityJumpMaxExpandedConstraintSize
Maximum size of no_overlap or no_overlap_2d constraint for a quadratic expansion.
bool HasMipMaxValidMagnitude
Gets whether the "mip_max_valid_magnitude" field is set.
void ClearRandomBranchesRatio()
Clears the value of the "random_branches_ratio" field.
bool UseErwaHeuristic
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as described in "Learning Ra...
void ClearFeasibilityJumpDecay()
Clears the value of the "feasibility_jump_decay" field.
bool HasBlockingRestartWindowSize
Gets whether the "blocking_restart_window_size" field is set.
bool HasLogToStdout
Gets whether the "log_to_stdout" field is set.
int RestartRunningWindowSize
Size of the window for the moving average restarts.
const int UseSatInprocessingFieldNumber
Field number for the "use_sat_inprocessing" field.
int PbCleanupIncrement
Same as for the clauses, but for the learned pseudo-Boolean constraints.
bool HasSearchRandomVariablePoolSize
Gets whether the "search_random_variable_pool_size" field is set.
int NumViolationLs
This will create incomplete subsolvers (that are not LNS subsolvers) that use the feasibility jump co...
double MaxTimeInSeconds
Maximum time allowed in seconds to solve a problem. The counter will starts at the beginning of the S...
bool UseTimetablingInNoOverlap2D
When this is true, the no_overlap_2d constraint is reinforced with propagators from the cumulative co...
bool HasNumSearchWorkers
Gets whether the "num_search_workers" field is set.
void ClearViolationLsPerturbationPeriod()
Clears the value of the "violation_ls_perturbation_period" field.
bool HasFeasibilityJumpRestartFactor
Gets whether the "feasibility_jump_restart_factor" field is set.
const int MipTreatHighMagnitudeBoundsAsInfinityFieldNumber
Field number for the "mip_treat_high_magnitude_bounds_as_infinity" field.
bool NewLinearPropagation
Experimental. Use new code to propagate linear constraint.
double SharedTreeWorkerObjectiveSplitProbability
After their assigned prefix, shared tree workers will branch on the objective with this probability....
const int HintConflictLimitFieldNumber
Field number for the "hint_conflict_limit" field.
void ClearMergeAtMostOneWorkLimit()
Clears the value of the "merge_at_most_one_work_limit" field.
bool HasUseDisjunctiveConstraintInCumulative
Gets whether the "use_disjunctive_constraint_in_cumulative" field is set.
bool HasBinarySearchNumConflicts
Gets whether the "binary_search_num_conflicts" field is set.
void ClearUseDualSchedulingHeuristics()
Clears the value of the "use_dual_scheduling_heuristics" field.
void ClearUseLbRelaxLns()
Clears the value of the "use_lb_relax_lns" field.
bool HasAtMostOneMaxExpansionSize
Gets whether the "at_most_one_max_expansion_size" field is set.
bool HasAddObjectiveCut
Gets whether the "add_objective_cut" field is set.
const int RestartLbdAverageRatioFieldNumber
Field number for the "restart_lbd_average_ratio" field.
void MergeFrom(SatParameters other)
const int StrategyChangeIncreaseRatioFieldNumber
Field number for the "strategy_change_increase_ratio" field.
bool HasPolarityRephaseIncrement
Gets whether the "polarity_rephase_increment" field is set.
void ClearCatchSigintSignal()
Clears the value of the "catch_sigint_signal" field.
bool UseRinsLns
Turns on relaxation induced neighborhood generator.
bool HasBlockingRestartMultiplier
Gets whether the "blocking_restart_multiplier" field is set.
bool HasDetectLinearizedProduct
Gets whether the "detect_linearized_product" field is set.
const int LinearSplitSizeFieldNumber
Field number for the "linear_split_size" field.
void ClearExploitAllPrecedences()
Clears the value of the "exploit_all_precedences" field.
void ClearRandomPolarityRatio()
Clears the value of the "random_polarity_ratio" field.
override bool Equals(object other)
const int UsePbResolutionFieldNumber
Field number for the "use_pb_resolution" field.
void ClearBlockingRestartMultiplier()
Clears the value of the "blocking_restart_multiplier" field.
double ProbingDeterministicTimeLimit
The maximum "deterministic" time limit to spend in probing. A value of zero will disable the probing.
bool HasMipTreatHighMagnitudeBoundsAsInfinity
Gets whether the "mip_treat_high_magnitude_bounds_as_infinity" field is set.
const int CountAssumptionLevelsInLbdFieldNumber
Field number for the "count_assumption_levels_in_lbd" field.
bool UseDisjunctiveConstraintInCumulative
When this is true, the cumulative constraint is reinforced with propagators from the disjunctive cons...
bool HasMipMaxBound
Gets whether the "mip_max_bound" field is set.
void ClearUseSharedTreeSearch()
Clears the value of the "use_shared_tree_search" field.
void ClearCutCleanupTarget()
Clears the value of the "cut_cleanup_target" field.
bool HasUseSatInprocessing
Gets whether the "use_sat_inprocessing" field is set.
global::Google.OrTools.Sat.SatParameters.Types.Polarity InitialPolarity
const int MaxVariableActivityValueFieldNumber
Field number for the "max_variable_activity_value" field.
bool HasMinimizationAlgorithm
Gets whether the "minimization_algorithm" field is set.
bool HasTableCompressionLevel
Gets whether the "table_compression_level" field is set.
const int MipMaxBoundFieldNumber
Field number for the "mip_max_bound" field.
bool HasExploitAllLpSolution
Gets whether the "exploit_all_lp_solution" field is set.
void ClearCountAssumptionLevelsInLbd()
Clears the value of the "count_assumption_levels_in_lbd" field.
void ClearInitialVariablesActivity()
Clears the value of the "initial_variables_activity" field.
bool OptimizeWithMaxHs
This has no effect if optimize_with_core is false. If true, use a different core-based algorithm simi...
bool HasPresolveInclusionWorkLimit
Gets whether the "presolve_inclusion_work_limit" field is set.
void ClearGlucoseMaxDecay()
Clears the value of the "glucose_max_decay" field.
const int UseOptionalVariablesFieldNumber
Field number for the "use_optional_variables" field.
const int PresolveBveThresholdFieldNumber
Field number for the "presolve_bve_threshold" field.
void ClearMaxDeterministicTime()
Clears the value of the "max_deterministic_time" field.
void ClearInterleaveSearch()
Clears the value of the "interleave_search" field.
void ClearOnlyAddCutsAtLevelZero()
Clears the value of the "only_add_cuts_at_level_zero" field.
void ClearPresolveUseBva()
Clears the value of the "presolve_use_bva" field.
void ClearMaxConsecutiveInactiveCount()
Clears the value of the "max_consecutive_inactive_count" field.
bool HasPresolveSubstitutionLevel
Gets whether the "presolve_substitution_level" field is set.
double StrategyChangeIncreaseRatio
The parameter num_conflicts_before_strategy_changes is increased by that much after each strategy cha...
pbc::RepeatedField< global::Google.OrTools.Sat.SatParameters > SubsolverParams
It is possible to specify additional subsolver configuration. These can be referred by their params....
const int ExploitBestSolutionFieldNumber
Field number for the "exploit_best_solution" field.
void ClearFpRounding()
Clears the value of the "fp_rounding" field.
static pb::MessageParser< SatParameters > Parser
bool HasMaxClauseActivityValue
Gets whether the "max_clause_activity_value" field is set.
const int LogSubsolverStatisticsFieldNumber
Field number for the "log_subsolver_statistics" field.
double MipCheckPrecision
As explained in mip_precision and mip_max_activity_exponent, we cannot always reach the wanted precis...
bool HasSymmetryLevel
Gets whether the "symmetry_level" field is set.
bool HasAlsoBumpVariablesInConflictReasons
Gets whether the "also_bump_variables_in_conflict_reasons" field is set.
bool HasRestartLbdAverageRatio
Gets whether the "restart_lbd_average_ratio" field is set.
bool HasInprocessingMinimizationDtime
Gets whether the "inprocessing_minimization_dtime" field is set.
bool UseTimetableEdgeFindingInCumulative
When this is true, the cumulative constraint is reinforced with timetable edge finding,...
bool HasOptimizeWithCore
Gets whether the "optimize_with_core" field is set.
void ClearPseudoCostReliabilityThreshold()
Clears the value of the "pseudo_cost_reliability_threshold" field.
bool HasPresolveProbingDeterministicTimeLimit
Gets whether the "presolve_probing_deterministic_time_limit" field is set.
bool HasClauseCleanupLbdBound
Gets whether the "clause_cleanup_lbd_bound" field is set.
bool HasHintConflictLimit
Gets whether the "hint_conflict_limit" field is set.
bool HasInterleaveBatchSize
Gets whether the "interleave_batch_size" field is set.
const int FixVariablesToTheirHintedValueFieldNumber
Field number for the "fix_variables_to_their_hinted_value" field.
void ClearUseProbingSearch()
Clears the value of the "use_probing_search" field.
bool HasUseLnsOnly
Gets whether the "use_lns_only" field is set.
const int SharedTreeWorkerObjectiveSplitProbabilityFieldNumber
Field number for the "shared_tree_worker_objective_split_probability" field.
const int MipDropToleranceFieldNumber
Field number for the "mip_drop_tolerance" field.
bool HasFillTightenedDomainsInResponse
Gets whether the "fill_tightened_domains_in_response" field is set.
void ClearSearchBranching()
Clears the value of the "search_branching" field.
const int InprocessingProbingDtimeFieldNumber
Field number for the "inprocessing_probing_dtime" field.
bool HasMaxSizeToCreatePrecedenceLiteralsInDisjunctive
Gets whether the "max_size_to_create_precedence_literals_in_disjunctive" field is set.
void ClearRepairHint()
Clears the value of the "repair_hint" field.
void ClearStopAfterRootPropagation()
Clears the value of the "stop_after_root_propagation" field.
int MaxSizeToCreatePrecedenceLiteralsInDisjunctive
Create one literal for each disjunction of two pairs of tasks. This slows down the solve time,...
void ClearUseExactLpReason()
Clears the value of the "use_exact_lp_reason" field.
void ClearShareBinaryClauses()
Clears the value of the "share_binary_clauses" field.
bool HasUseSharedTreeSearch
Gets whether the "use_shared_tree_search" field is set.
const int UseEnergeticReasoningInNoOverlap2DFieldNumber
Field number for the "use_energetic_reasoning_in_no_overlap_2d" field.
const int AddZeroHalfCutsFieldNumber
Field number for the "add_zero_half_cuts" field.
int PresolveBveClauseWeight
During presolve, we apply BVE only if this weight times the number of clauses plus the number of clau...
double MipDropTolerance
Any value in the input mip with a magnitude lower than this will be set to zero. This is to avoid som...
const int ShareBinaryClausesFieldNumber
Field number for the "share_binary_clauses" field.
bool InstantiateAllVariables
If true, the solver will add a default integer branching strategy to the already defined search strat...
const int PreferredVariableOrderFieldNumber
Field number for the "preferred_variable_order" field.
global::Google.OrTools.Sat.SatParameters.Types.BinaryMinizationAlgorithm BinaryMinimizationAlgorithm
bool ExploitAllLpSolution
If true and the Lp relaxation of the problem has a solution, try to exploit it. This is same as above...
const int ProbingDeterministicTimeLimitFieldNumber
Field number for the "probing_deterministic_time_limit" field.
void ClearDisableConstraintExpansion()
Clears the value of the "disable_constraint_expansion" field.
void ClearUseFeasibilityJump()
Clears the value of the "use_feasibility_jump" field.
void ClearCutActiveCountDecay()
Clears the value of the "cut_active_count_decay" field.
const int EncodeComplexLinearConstraintWithIntegerFieldNumber
Field number for the "encode_complex_linear_constraint_with_integer" field.
void ClearPresolveBvaThreshold()
Clears the value of the "presolve_bva_threshold" field.
bool HasRandomBranchesRatio
Gets whether the "random_branches_ratio" field is set.
string Name
In some context, like in a portfolio of search, it makes sense to name a given parameters set for log...
bool ShareObjectiveBounds
Allows objective sharing between workers.
bool HasAutoDetectGreaterThanAtLeastOneOf
Gets whether the "auto_detect_greater_than_at_least_one_of" field is set.
const int TableCompressionLevelFieldNumber
Field number for the "table_compression_level" field.
const int ExploitAllPrecedencesFieldNumber
Field number for the "exploit_all_precedences" field.
bool HasMipDropTolerance
Gets whether the "mip_drop_tolerance" field is set.
int MaxAllDiffCutSize
Cut generator for all diffs can add too many cuts for large all_diff constraints. This parameter rest...
bool InferAllDiffs
Run a max-clique code amongst all the x != y we can find and try to infer set of variables that are a...
bool HasPolishLpSolution
Gets whether the "polish_lp_solution" field is set.
void ClearUseDynamicPrecedenceInDisjunctive()
Clears the value of the "use_dynamic_precedence_in_disjunctive" field.
bool KeepAllFeasibleSolutionsInPresolve
If true, we disable the presolve reductions that remove feasible solutions from the search space....
const int FeasibilityJumpRestartFactorFieldNumber
Field number for the "feasibility_jump_restart_factor" field.
long PresolveInclusionWorkLimit
A few presolve operations involve detecting constraints included in other constraint....
void ClearClauseCleanupProtection()
Clears the value of the "clause_cleanup_protection" field.
void ClearClauseCleanupRatio()
Clears the value of the "clause_cleanup_ratio" field.
bool HasGlucoseMaxDecay
Gets whether the "glucose_max_decay" field is set.
int NewConstraintsBatchSize
Add that many lazy constraints (or cuts) at once in the LP. Note that at the beginning of the solve,...
void ClearAddCliqueCuts()
Clears the value of the "add_clique_cuts" field.
bool AddLinMaxCuts
For the lin max constraints, generates the cuts described in "Strong mixed-integer programming formul...
void ClearDebugMaxNumPresolveOperations()
Clears the value of the "debug_max_num_presolve_operations" field.
void ClearFeasibilityJumpMaxExpandedConstraintSize()
Clears the value of the "feasibility_jump_max_expanded_constraint_size" field.
bool HasCutLevel
Gets whether the "cut_level" field is set.
const int ExploitIntegerLpSolutionFieldNumber
Field number for the "exploit_integer_lp_solution" field.
const int MaxAllDiffCutSizeFieldNumber
Field number for the "max_all_diff_cut_size" field.
bool ExploitBestSolution
When branching on a variable, follow the last best solution value.
bool HasInstantiateAllVariables
Gets whether the "instantiate_all_variables" field is set.
double CutMaxActiveCountValue
These parameters are similar to sat clause management activity parameters. They are effective only if...
void ClearUseOptionalVariables()
Clears the value of the "use_optional_variables" field.
void ClearExploitRelaxationSolution()
Clears the value of the "exploit_relaxation_solution" field.
void ClearLinearizationLevel()
Clears the value of the "linearization_level" field.
const int UseFeasibilityJumpFieldNumber
Field number for the "use_feasibility_jump" field.
void ClearMipComputeTrueObjectiveBound()
Clears the value of the "mip_compute_true_objective_bound" field.
const int MipComputeTrueObjectiveBoundFieldNumber
Field number for the "mip_compute_true_objective_bound" field.
bool HasMaxIntegerRoundingScaling
Gets whether the "max_integer_rounding_scaling" field is set.
void ClearMaxSatAssumptionOrder()
Clears the value of the "max_sat_assumption_order" field.
void ClearFeasibilityJumpLinearizationLevel()
Clears the value of the "feasibility_jump_linearization_level" field.
int CutLevel
Control the global cut effort. Zero will turn off all cut. For now we just have one level....
const int MergeNoOverlapWorkLimitFieldNumber
Field number for the "merge_no_overlap_work_limit" field.
bool UseExactLpReason
The solver usually exploit the LP relaxation of a model. If this option is true, then whatever is inf...
bool PresolveBlockedClause
Whether we use an heuristic to detect some basic case of blocked clause in the SAT presolve.
bool HasLogSubsolverStatistics
Gets whether the "log_subsolver_statistics" field is set.
bool HasDetectTableWithCost
Gets whether the "detect_table_with_cost" field is set.
void ClearPropagationLoopDetectionFactor()
Clears the value of the "propagation_loop_detection_factor" field.
const int LogToStdoutFieldNumber
Field number for the "log_to_stdout" field.
bool HasUseShavingInProbingSearch
Gets whether the "use_shaving_in_probing_search" field is set.
bool HasUsePhaseSaving
Gets whether the "use_phase_saving" field is set.
bool HasRootLpIterations
Gets whether the "root_lp_iterations" field is set.
const int UseObjectiveShavingSearchFieldNumber
Field number for the "use_objective_shaving_search" field.
bool HasSharedTreeSplitStrategy
Gets whether the "shared_tree_split_strategy" field is set.
bool HasFeasibilityJumpEnableRestarts
Gets whether the "feasibility_jump_enable_restarts" field is set.
void ClearPresolveBveThreshold()
Clears the value of the "presolve_bve_threshold" field.
void ClearMipAutomaticallyScaleVariables()
Clears the value of the "mip_automatically_scale_variables" field.
int CoreMinimizationLevel
If positive, we spend some effort on each core:
bool HasConvertIntervals
Gets whether the "convert_intervals" field is set.
int DebugMaxNumPresolveOperations
If positive, try to stop just after that many presolve rules have been applied. This is mainly useful...
void ClearRelativeGapLimit()
Clears the value of the "relative_gap_limit" field.
void ClearUseTimetableEdgeFindingInCumulative()
Clears the value of the "use_timetable_edge_finding_in_cumulative" field.
void ClearMipPresolveLevel()
Clears the value of the "mip_presolve_level" field.
const int NumSearchWorkersFieldNumber
Field number for the "num_search_workers" field.
const int MaxTimeInSecondsFieldNumber
Field number for the "max_time_in_seconds" field.
bool HasFeasibilityJumpLinearizationLevel
Gets whether the "feasibility_jump_linearization_level" field is set.
bool FixVariablesToTheirHintedValue
If true, variables appearing in the solution hints will be fixed to their hinted value.
const int SearchBranchingFieldNumber
Field number for the "search_branching" field.
global::Google.OrTools.Sat.SatParameters.Types.ClauseOrdering ClauseCleanupOrdering
const int NumWorkersFieldNumber
Field number for the "num_workers" field.
bool HasRestartRunningWindowSize
Gets whether the "restart_running_window_size" field is set.
bool HasAddLpConstraintsLazily
Gets whether the "add_lp_constraints_lazily" field is set.
void ClearMaxSatStratification()
Clears the value of the "max_sat_stratification" field.
void ClearRandomizeSearch()
Clears the value of the "randomize_search" field.
const int FeasibilityJumpVarPerburbationRangeRatioFieldNumber
Field number for the "feasibility_jump_var_perburbation_range_ratio" field.
bool HasSharedTreeNumWorkers
Gets whether the "shared_tree_num_workers" field is set.
void ClearCpModelProbingLevel()
Clears the value of the "cp_model_probing_level" field.
bool HasFeasibilityJumpDecay
Gets whether the "feasibility_jump_decay" field is set.
const int GlucoseDecayIncrementPeriodFieldNumber
Field number for the "glucose_decay_increment_period" field.
const int ExpandAlldiffConstraintsFieldNumber
Field number for the "expand_alldiff_constraints" field.
bool HasMinNumLnsWorkers
Gets whether the "min_num_lns_workers" field is set.
int ClauseCleanupLbdBound
All the clauses with a LBD (literal blocks distance) lower or equal to this parameters will always be...
void ClearExpandAlldiffConstraints()
Clears the value of the "expand_alldiff_constraints" field.
bool HasRestartPeriod
Gets whether the "restart_period" field is set.
void ClearKeepAllFeasibleSolutionsInPresolve()
Clears the value of the "keep_all_feasible_solutions_in_presolve" field.
const int UseCombinedNoOverlapFieldNumber
Field number for the "use_combined_no_overlap" field.
int ClauseCleanupPeriod
Trigger a cleanup when this number of "deletable" clauses is learned.
bool HasUseTimetableEdgeFindingInCumulative
Gets whether the "use_timetable_edge_finding_in_cumulative" field is set.
bool UseObjectiveLbSearch
If true, search will search in ascending max objective value (when minimizing) starting from the lowe...
bool HasProbingDeterministicTimeLimit
Gets whether the "probing_deterministic_time_limit" field is set.
bool ExploitIntegerLpSolution
If true and the Lp relaxation of the problem has an integer optimal solution, try to exploit it....
bool HasMipCheckPrecision
Gets whether the "mip_check_precision" field is set.
void ClearUsePhaseSaving()
Clears the value of the "use_phase_saving" field.
bool HasInterleaveSearch
Gets whether the "interleave_search" field is set.
void ClearPolarityRephaseIncrement()
Clears the value of the "polarity_rephase_increment" field.
bool HasFillAdditionalSolutionsInResponse
Gets whether the "fill_additional_solutions_in_response" field is set.
const int AddLinMaxCutsFieldNumber
Field number for the "add_lin_max_cuts" field.
void ClearAddRltCuts()
Clears the value of the "add_rlt_cuts" field.
bool MinimizeReductionDuringPbResolution
A different algorithm during PB resolution. It minimizes the number of calls to ReduceCoefficients() ...
const int UseFeasibilityPumpFieldNumber
Field number for the "use_feasibility_pump" field.
bool HasExpandReservoirConstraints
Gets whether the "expand_reservoir_constraints" field is set.
bool HasUseImpliedBounds
Gets whether the "use_implied_bounds" field is set.
void ClearInferAllDiffs()
Clears the value of the "infer_all_diffs" field.
bool HasCutActiveCountDecay
Gets whether the "cut_active_count_decay" field is set.
const int MipWantedPrecisionFieldNumber
Field number for the "mip_wanted_precision" field.
bool ShareBinaryClauses
Allows sharing of new learned binary clause between workers.
void ClearEncodeComplexLinearConstraintWithInteger()
Clears the value of the "encode_complex_linear_constraint_with_integer" field.
void ClearStopAfterPresolve()
Clears the value of the "stop_after_presolve" field.
const int InprocessingDtimeRatioFieldNumber
Field number for the "inprocessing_dtime_ratio" field.
const int ExpandReservoirConstraintsFieldNumber
Field number for the "expand_reservoir_constraints" field.
void ClearVariableActivityDecay()
Clears the value of the "variable_activity_decay" field.
bool HasFpRounding
Gets whether the "fp_rounding" field is set.
const int RandomSeedFieldNumber
Field number for the "random_seed" field.
void ClearStrategyChangeIncreaseRatio()
Clears the value of the "strategy_change_increase_ratio" field.
void ClearMaxSatReverseAssumptionOrder()
Clears the value of the "max_sat_reverse_assumption_order" field.
bool RepairHint
If true, the solver tries to repair the solution given in the hint. This search terminates after the ...
bool HasTestFeasibilityJump
Gets whether the "test_feasibility_jump" field is set.
const int SubsumptionDuringConflictAnalysisFieldNumber
Field number for the "subsumption_during_conflict_analysis" field.
double FeasibilityJumpDecay
On each restart, we randomly choose if we use decay (with this parameter) or no decay.
bool UseObjectiveShavingSearch
This search differs from the previous search as it will not use assumptions to bound the objective,...
const int UseSharedTreeSearchFieldNumber
Field number for the "use_shared_tree_search" field.
const int AbsoluteGapLimitFieldNumber
Field number for the "absolute_gap_limit" field.
bool UseSharedTreeSearch
Set on shared subtree workers. Users should not set this directly.
void ClearExploitBestSolution()
Clears the value of the "exploit_best_solution" field.
bool HasPbCleanupIncrement
Gets whether the "pb_cleanup_increment" field is set.
const int FeasibilityJumpVarRandomizationProbabilityFieldNumber
Field number for the "feasibility_jump_var_randomization_probability" field.
bool UseOptimizationHints
For an optimization problem, whether we follow some hints in order to find a better first solution....
int LinearizationLevel
A non-negative level indicating the type of constraints we consider in the LP relaxation....
const int PresolveBlockedClauseFieldNumber
Field number for the "presolve_blocked_clause" field.
double MipVarScaling
All continuous variable of the problem will be multiplied by this factor. By default,...
bool HasCpModelProbingLevel
Gets whether the "cp_model_probing_level" field is set.
const int AddCliqueCutsFieldNumber
Field number for the "add_clique_cuts" field.
double GlucoseMaxDecay
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until 0.95. This "hack" seems t...
const int PermutePresolveConstraintOrderFieldNumber
Field number for the "permute_presolve_constraint_order" field.
bool UseDualSchedulingHeuristics
When set, it activates a few scheduling parameters to improve the lower bound of scheduling problems....
bool HasDisableConstraintExpansion
Gets whether the "disable_constraint_expansion" field is set.
const int MaxClauseActivityValueFieldNumber
Field number for the "max_clause_activity_value" field.
const int UsePrecedencesInDisjunctiveConstraintFieldNumber
Field number for the "use_precedences_in_disjunctive_constraint" field.
bool HasUseDynamicPrecedenceInCumulative
Gets whether the "use_dynamic_precedence_in_cumulative" field is set.
bool HasPushAllTasksTowardStart
Gets whether the "push_all_tasks_toward_start" field is set.
void ClearExploitObjective()
Clears the value of the "exploit_objective" field.
const int InprocessingMinimizationDtimeFieldNumber
Field number for the "inprocessing_minimization_dtime" field.
void ClearSharedTreeMaxNodesPerWorker()
Clears the value of the "shared_tree_max_nodes_per_worker" field.
const int ExploitAllLpSolutionFieldNumber
Field number for the "exploit_all_lp_solution" field.
bool HasUseStrongPropagationInDisjunctive
Gets whether the "use_strong_propagation_in_disjunctive" field is set.
const int CoverOptimizationFieldNumber
Field number for the "cover_optimization" field.
void ClearMaxTimeInSeconds()
Clears the value of the "max_time_in_seconds" field.
const int KeepAllFeasibleSolutionsInPresolveFieldNumber
Field number for the "keep_all_feasible_solutions_in_presolve" field.
bool HasStopAfterRootPropagation
Gets whether the "stop_after_root_propagation" field is set.
void ClearUseStrongPropagationInDisjunctive()
Clears the value of the "use_strong_propagation_in_disjunctive" field.
int PresolveSubstitutionLevel
How much substitution (also called free variable aggregation in MIP litterature) should we perform at...
void ClearMaxPresolveIterations()
Clears the value of the "max_presolve_iterations" field.
void ClearBinaryMinimizationAlgorithm()
Clears the value of the "binary_minimization_algorithm" field.
void ClearIgnoreNames()
Clears the value of the "ignore_names" field.
const int DetectLinearizedProductFieldNumber
Field number for the "detect_linearized_product" field.
double ViolationLsCompoundMoveProbability
Probability of using compound move search each restart.
void ClearAddObjectiveCut()
Clears the value of the "add_objective_cut" field.
bool UseProbingSearch
If true, search will continuously probe Boolean variables, and integer variable bounds....
bool HasExploitObjective
Gets whether the "exploit_objective" field is set.
void ClearProbingDeterministicTimeLimit()
Clears the value of the "probing_deterministic_time_limit" field.
void ClearEnumerateAllSolutions()
Clears the value of the "enumerate_all_solutions" field.
double RestartDlAverageRatio
In the moving average restart algorithms, a restart is triggered if the window average times this rat...
const int InterleaveBatchSizeFieldNumber
Field number for the "interleave_batch_size" field.
bool HasLinearSplitSize
Gets whether the "linear_split_size" field is set.
const int ClauseCleanupProtectionFieldNumber
Field number for the "clause_cleanup_protection" field.
void ClearRestartRunningWindowSize()
Clears the value of the "restart_running_window_size" field.
bool HasMergeAtMostOneWorkLimit
Gets whether the "merge_at_most_one_work_limit" field is set.
double LpPrimalTolerance
The internal LP tolerances used by CP-SAT. These applies to the internal and scaled problem....
bool ShareLevelZeroBounds
Allows sharing of the bounds of modified variables at level 0.
void ClearRestartPeriod()
Clears the value of the "restart_period" field.
int MaxPairsPairwiseReasoningInNoOverlap2D
If the number of pairs to look is below this threshold, do an extra step of propagation in the no_ove...
bool UseShavingInProbingSearch
Add a shaving phase (where the solver tries to prove that the lower or upper bound of a variable are ...
const int RestartRunningWindowSizeFieldNumber
Field number for the "restart_running_window_size" field.
bool HasUseDynamicPrecedenceInDisjunctive
Gets whether the "use_dynamic_precedence_in_disjunctive" field is set.
bool HasOptimizeWithLbTreeSearch
Gets whether the "optimize_with_lb_tree_search" field is set.
bool InterleaveSearch
Experimental. If this is true, then we interleave all our major search strategy and distribute the wo...
const int ProbingNumCombinationsLimitFieldNumber
Field number for the "probing_num_combinations_limit" field.
bool HasRelativeGapLimit
Gets whether the "relative_gap_limit" field is set.
void ClearLogToStdout()
Clears the value of the "log_to_stdout" field.
void ClearConvertIntervals()
Clears the value of the "convert_intervals" field.
void ClearDetectLinearizedProduct()
Clears the value of the "detect_linearized_product" field.
void ClearHintConflictLimit()
Clears the value of the "hint_conflict_limit" field.
const int RestartDlAverageRatioFieldNumber
Field number for the "restart_dl_average_ratio" field.
void ClearSymmetryLevel()
Clears the value of the "symmetry_level" field.
const int EnumerateAllSolutionsFieldNumber
Field number for the "enumerate_all_solutions" field.
bool HasUseHardPrecedencesInCumulative
Gets whether the "use_hard_precedences_in_cumulative" field is set.
void ClearUsePrecedencesInDisjunctiveConstraint()
Clears the value of the "use_precedences_in_disjunctive_constraint" field.
bool UseHardPrecedencesInCumulative
If true, detect and create constraint for integer variable that are "after" a set of intervals in the...
bool AddLpConstraintsLazily
If true, we start by an empty LP, and only add constraints not satisfied by the current LP solution b...
bool HasKeepAllFeasibleSolutionsInPresolve
Gets whether the "keep_all_feasible_solutions_in_presolve" field is set.
void ClearNumWorkers()
Clears the value of the "num_workers" field.
bool HasOnlySolveIp
Gets whether the "only_solve_ip" field is set.
const int CutActiveCountDecayFieldNumber
Field number for the "cut_active_count_decay" field.
const int InitialPolarityFieldNumber
Field number for the "initial_polarity" field.
const int GlucoseMaxDecayFieldNumber
Field number for the "glucose_max_decay" field.
bool HasUseRinsLns
Gets whether the "use_rins_lns" field is set.
bool UseAreaEnergeticReasoningInNoOverlap2D
When this is true, the no_overlap_2d constraint is reinforced with an energetic reasoning that uses a...
const int UseDisjunctiveConstraintInCumulativeFieldNumber
Field number for the "use_disjunctive_constraint_in_cumulative" field.
bool ExpandAlldiffConstraints
If true, expand all_different constraints that are not permutations. Permutations (#Variables = #Valu...
bool HasPresolveBlockedClause
Gets whether the "presolve_blocked_clause" field is set.
bool MipComputeTrueObjectiveBound
Even if we make big error when scaling the objective, we can always derive a correct lower bound on t...
const int DisableConstraintExpansionFieldNumber
Field number for the "disable_constraint_expansion" field.
long PseudoCostReliabilityThreshold
The solver ignores the pseudo costs of variables with number of recordings less than this threshold.
bool HasMaxDomainSizeWhenEncodingEqNeqConstraints
Gets whether the "max_domain_size_when_encoding_eq_neq_constraints" field is set.
const int MaxPairsPairwiseReasoningInNoOverlap2DFieldNumber
Field number for the "max_pairs_pairwise_reasoning_in_no_overlap_2d" field.
bool UseDynamicPrecedenceInDisjunctive
Whether we try to branch on decision "interval A before interval B" rather than on intervals bounds....
void ClearTestFeasibilityJump()
Clears the value of the "test_feasibility_jump" field.
void ClearAddLinMaxCuts()
Clears the value of the "add_lin_max_cuts" field.
int LinearSplitSize
Linear constraints that are not pseudo-Boolean and that are longer than this size will be split into ...
bool HasOnlyAddCutsAtLevelZero
Gets whether the "only_add_cuts_at_level_zero" field is set.
global::Google.OrTools.Sat.SatParameters.Types.SearchBranching SearchBranching
bool HasProbingNumCombinationsLimit
Gets whether the "probing_num_combinations_limit" field is set.
bool HasCpModelUseSatPresolve
Gets whether the "cp_model_use_sat_presolve" field is set.
void ClearLpDualTolerance()
Clears the value of the "lp_dual_tolerance" field.
bool FeasibilityJumpEnableRestarts
When stagnating, feasibility jump will either restart from a default solution (with some possible ran...
bool HasUseAbslRandom
Gets whether the "use_absl_random" field is set.
bool HasMaxMemoryInMb
Gets whether the "max_memory_in_mb" field is set.
const int ViolationLsPerturbationPeriodFieldNumber
Field number for the "violation_ls_perturbation_period" field.
void ClearDebugPostsolveWithFullSolver()
Clears the value of the "debug_postsolve_with_full_solver" field.
bool HasUseDualSchedulingHeuristics
Gets whether the "use_dual_scheduling_heuristics" field is set.
bool HasShareBinaryClauses
Gets whether the "share_binary_clauses" field is set.
bool HasLinearizationLevel
Gets whether the "linearization_level" field is set.
const int CpModelProbingLevelFieldNumber
Field number for the "cp_model_probing_level" field.
void ClearSharedTreeWorkerObjectiveSplitProbability()
Clears the value of the "shared_tree_worker_objective_split_probability" field.
bool UseLbRelaxLns
Turns on neighborhood generator based on local branching LP. Based on Huang et al....
int MaxNumCuts
The limit on the number of cuts in our cut pool. When this is reached we do not generate cuts anymore...
global::Google.OrTools.Sat.SatParameters.Types.SharedTreeSplitStrategy SharedTreeSplitStrategy
int MinNumLnsWorkers
Obsolete parameter. No-op.
const int SharedTreeMaxNodesPerWorkerFieldNumber
Field number for the "shared_tree_max_nodes_per_worker" field.
double AbsoluteGapLimit
Stop the search when the gap between the best feasible objective (O) and our best objective bound (B)...
const int IgnoreNamesFieldNumber
Field number for the "ignore_names" field.
int PresolveBvaThreshold
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced by stricly more than this t...
bool UsePrecedencesInDisjunctiveConstraint
When this is true, then a disjunctive constraint will try to use the precedence relations between tim...
bool HasAddLinMaxCuts
Gets whether the "add_lin_max_cuts" field is set.
const int ClauseCleanupTargetFieldNumber
Field number for the "clause_cleanup_target" field.
const int CpModelUseSatPresolveFieldNumber
Field number for the "cp_model_use_sat_presolve" field.
bool HasClauseCleanupRatio
Gets whether the "clause_cleanup_ratio" field is set.
bool HasRandomSeed
Gets whether the "random_seed" field is set.
bool HasClauseCleanupTarget
Gets whether the "clause_cleanup_target" field is set.
int SharedTreeMaxNodesPerWorker
In order to limit total shared memory and communication overhead, limit the total number of nodes tha...
const int MipScaleLargeDomainFieldNumber
Field number for the "mip_scale_large_domain" field.
bool HasMipMaxActivityExponent
Gets whether the "mip_max_activity_exponent" field is set.
const int NewConstraintsBatchSizeFieldNumber
Field number for the "new_constraints_batch_size" field.
double MaxDeterministicTime
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be corre...
int SymmetryLevel
Whether we try to automatically detect the symmetries in a model and exploit them....
void ClearInstantiateAllVariables()
Clears the value of the "instantiate_all_variables" field.
bool HasExploitBestSolution
Gets whether the "exploit_best_solution" field is set.
bool HasInprocessingDtimeRatio
Gets whether the "inprocessing_dtime_ratio" field is set.
void ClearSubsumptionDuringConflictAnalysis()
Clears the value of the "subsumption_during_conflict_analysis" field.
void ClearAlsoBumpVariablesInConflictReasons()
Clears the value of the "also_bump_variables_in_conflict_reasons" field.
const int AutoDetectGreaterThanAtLeastOneOfFieldNumber
Field number for the "auto_detect_greater_than_at_least_one_of" field.
void ClearInprocessingMinimizationDtime()
Clears the value of the "inprocessing_minimization_dtime" field.
void ClearShareObjectiveBounds()
Clears the value of the "share_objective_bounds" field.
const int RandomizeSearchFieldNumber
Field number for the "randomize_search" field.
void ClearUseAreaEnergeticReasoningInNoOverlap2D()
Clears the value of the "use_area_energetic_reasoning_in_no_overlap_2d" field.
bool HasNumConflictsBeforeStrategyChanges
Gets whether the "num_conflicts_before_strategy_changes" field is set.
const int BooleanEncodingLevelFieldNumber
Field number for the "boolean_encoding_level" field.
bool AddObjectiveCut
When the LP objective is fractional, do we add the cut that forces the linear objective expression to...
void ClearPresolveProbingDeterministicTimeLimit()
Clears the value of the "presolve_probing_deterministic_time_limit" field.
int NumWorkers
Specify the number of parallel workers (i.e. threads) to use during search. This should usually be lo...
bool UseOverloadCheckerInCumulative
When this is true, the cumulative constraint is reinforced with overload checking,...
void ClearClauseCleanupTarget()
Clears the value of the "clause_cleanup_target" field.
void ClearGlucoseDecayIncrement()
Clears the value of the "glucose_decay_increment" field.
const int ShareLevelZeroBoundsFieldNumber
Field number for the "share_level_zero_bounds" field.
void ClearBooleanEncodingLevel()
Clears the value of the "boolean_encoding_level" field.
double InprocessingMinimizationDtime
Parameters for an heuristic similar to the one described in "An effective learnt clause minimization ...
bool HasPresolveExtractIntegerEnforcement
Gets whether the "presolve_extract_integer_enforcement" field is set.
void ClearInprocessingDtimeRatio()
Clears the value of the "inprocessing_dtime_ratio" field.
void ClearRandomSeed()
Clears the value of the "random_seed" field.
const int CpModelPresolveFieldNumber
Field number for the "cp_model_presolve" field.
const int InterleaveSearchFieldNumber
Field number for the "interleave_search" field.
pbc::RepeatedField< string > ExtraSubsolvers
A convenient way to add more workers types. These will be added at the beginning of the list.
const int OptimizeWithMaxHsFieldNumber
Field number for the "optimize_with_max_hs" field.
bool HasSharedTreeWorkerObjectiveSplitProbability
Gets whether the "shared_tree_worker_objective_split_probability" field is set.
const int RepairHintFieldNumber
Field number for the "repair_hint" field.
bool HasFeasibilityJumpVarPerburbationRangeRatio
Gets whether the "feasibility_jump_var_perburbation_range_ratio" field is set.
bool HasLogSearchProgress
Gets whether the "log_search_progress" field is set.
string LogPrefix
Add a prefix to all logs.
bool HasMaxAllDiffCutSize
Gets whether the "max_all_diff_cut_size" field is set.
void ClearUseShavingInProbingSearch()
Clears the value of the "use_shaving_in_probing_search" field.
const int UseLbRelaxLnsFieldNumber
Field number for the "use_lb_relax_lns" field.
const int NumViolationLsFieldNumber
Field number for the "num_violation_ls" field.
void ClearLogSearchProgress()
Clears the value of the "log_search_progress" field.
int FeasibilityJumpRestartFactor
This is a factor that directly influence the work before each restart. Setting this to zero disable r...
const int OnlyAddCutsAtLevelZeroFieldNumber
Field number for the "only_add_cuts_at_level_zero" field.
bool HasRandomizeSearch
Gets whether the "randomize_search" field is set.
const int LpPrimalToleranceFieldNumber
Field number for the "lp_primal_tolerance" field.
bool UseCombinedNoOverlap
This can be beneficial if there is a lot of no-overlap constraints but a relatively low number of dif...
bool HasStrategyChangeIncreaseRatio
Gets whether the "strategy_change_increase_ratio" field is set.
const int MaxNumIntervalsForTimetableEdgeFindingFieldNumber
Field number for the "max_num_intervals_for_timetable_edge_finding" field.
bool StopAfterPresolve
Mainly used when improving the presolver. When true, stops the solver after the presolve is complete ...
double ClauseCleanupRatio
During a cleanup, if clause_cleanup_target is 0, we will delete the clause_cleanup_ratio of "deletabl...
const int SymmetryLevelFieldNumber
Field number for the "symmetry_level" field.
void ClearUseCombinedNoOverlap()
Clears the value of the "use_combined_no_overlap" field.
bool UseBlockingRestart
Block a moving restart algorithm if the trail size of the current conflict is greater than the multip...
const int PushAllTasksTowardStartFieldNumber
Field number for the "push_all_tasks_toward_start" field.
bool FillAdditionalSolutionsInResponse
If true, the final response addition_solutions field will be filled with all solutions from our solut...
bool HasUseProbingSearch
Gets whether the "use_probing_search" field is set.
const int MaxConsecutiveInactiveCountFieldNumber
Field number for the "max_consecutive_inactive_count" field.
global::Google.OrTools.Sat.SatParameters.Types.FPRoundingMethod FpRounding
const int PbCleanupRatioFieldNumber
Field number for the "pb_cleanup_ratio" field.
bool HasMaxConsecutiveInactiveCount
Gets whether the "max_consecutive_inactive_count" field is set.
bool AddMirCuts
Whether we generate MIR cuts at root node.
bool UseExtendedProbing
Use extended probing (probe bool_or, at_most_one, exactly_one).
bool HasCatchSigintSignal
Gets whether the "catch_sigint_signal" field is set.
bool DiversifyLnsParams
If true, registers more lns subsolvers with different parameters.
bool HasDiversifyLnsParams
Gets whether the "diversify_lns_params" field is set.
bool DebugPostsolveWithFullSolver
We have two different postsolve code. The default one should be better and it allows for a more power...
const int PolishLpSolutionFieldNumber
Field number for the "polish_lp_solution" field.
double PropagationLoopDetectionFactor
Some search decisions might cause a really large number of propagations to happen when integer variab...
const int OptimizeWithCoreFieldNumber
Field number for the "optimize_with_core" field.
const int StopAfterPresolveFieldNumber
Field number for the "stop_after_presolve" field.
const int ExploitRelaxationSolutionFieldNumber
Field number for the "exploit_relaxation_solution" field.
void ClearMaxNumIntervalsForTimetableEdgeFinding()
Clears the value of the "max_num_intervals_for_timetable_edge_finding" field.
const int UseBlockingRestartFieldNumber
Field number for the "use_blocking_restart" field.
bool CatchSigintSignal
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals when calling solve....
const int PresolveUseBvaFieldNumber
Field number for the "presolve_use_bva" field.
double FeasibilityJumpVarRandomizationProbability
Probability for a variable to have a non default value upon restarts or perturbations.
const int UseDualSchedulingHeuristicsFieldNumber
Field number for the "use_dual_scheduling_heuristics" field.
int MaxConsecutiveInactiveCount
If a constraint/cut in LP is not active for that many consecutive OPTIMAL solves, remove it from the ...
const int MipPresolveLevelFieldNumber
Field number for the "mip_presolve_level" field.
const int PresolveBvaThresholdFieldNumber
Field number for the "presolve_bva_threshold" field.
double ClauseActivityDecay
Clause activity parameters (same effect as the one on the variables).
bool AddZeroHalfCuts
Whether we generate Zero-Half cuts at root node.
bool ExploitRelaxationSolution
When branching on a variable, follow the last best relaxation solution value. We use the relaxation w...
const int UseShavingInProbingSearchFieldNumber
Field number for the "use_shaving_in_probing_search" field.
bool HasPbCleanupRatio
Gets whether the "pb_cleanup_ratio" field is set.
void ClearExploitIntegerLpSolution()
Clears the value of the "exploit_integer_lp_solution" field.
const int LpDualToleranceFieldNumber
Field number for the "lp_dual_tolerance" field.
const int DefaultRestartAlgorithmsFieldNumber
Field number for the "default_restart_algorithms" field.
const int PbCleanupIncrementFieldNumber
Field number for the "pb_cleanup_increment" field.
bool HasLpPrimalTolerance
Gets whether the "lp_primal_tolerance" field is set.
const int FeasibilityJumpMaxExpandedConstraintSizeFieldNumber
Field number for the "feasibility_jump_max_expanded_constraint_size" field.
const int MaxCutRoundsAtLevelZeroFieldNumber
Field number for the "max_cut_rounds_at_level_zero" field.
const int ViolationLsCompoundMoveProbabilityFieldNumber
Field number for the "violation_ls_compound_move_probability" field.
void ClearMinNumLnsWorkers()
Clears the value of the "min_num_lns_workers" field.
const int MergeAtMostOneWorkLimitFieldNumber
Field number for the "merge_at_most_one_work_limit" field.
void ClearMinimizationAlgorithm()
Clears the value of the "minimization_algorithm" field.
bool UseOptionalVariables
If true, we automatically detect variables whose constraint are always enforced by the same literal a...
void ClearFindBigLinearOverlap()
Clears the value of the "find_big_linear_overlap" field.
const int DebugMaxNumPresolveOperationsFieldNumber
Field number for the "debug_max_num_presolve_operations" field.
bool HasUseBlockingRestart
Gets whether the "use_blocking_restart" field is set.
bool HasCoverOptimization
Gets whether the "cover_optimization" field is set.
const int UseExactLpReasonFieldNumber
Field number for the "use_exact_lp_reason" field.
bool HasVariableActivityDecay
Gets whether the "variable_activity_decay" field is set.
bool HasCpModelPresolve
Gets whether the "cp_model_presolve" field is set.
bool LogSubsolverStatistics
Whether the solver should display per sub-solver search statistics. This is only useful is log_search...
bool HasSolutionPoolSize
Gets whether the "solution_pool_size" field is set.
bool DetectLinearizedProduct
Infer products of Boolean or of Boolean time IntegerVariable from the linear constrainst in the probl...
bool HasPresolveBveClauseWeight
Gets whether the "presolve_bve_clause_weight" field is set.
const int UseImpliedBoundsFieldNumber
Field number for the "use_implied_bounds" field.
void ClearMipWantedPrecision()
Clears the value of the "mip_wanted_precision" field.
double InitialVariablesActivity
The initial value of the variables activity. A non-zero value only make sense when use_erwa_heuristic...
bool PermuteVariableRandomly
This is mainly here to test the solver variability. Note that in tests, if not explicitly set to fals...
bool UseSatInprocessing
Enable or disable "inprocessing" which is some SAT presolving done at each restart to the root level.
void ClearOptimizeWithCore()
Clears the value of the "optimize_with_core" field.
void ClearUseErwaHeuristic()
Clears the value of the "use_erwa_heuristic" field.
const int CutCleanupTargetFieldNumber
Field number for the "cut_cleanup_target" field.
void ClearExploitAllLpSolution()
Clears the value of the "exploit_all_lp_solution" field.
int PolarityRephaseIncrement
If non-zero, then we change the polarity heuristic after that many number of conflicts in an arithmet...
bool HasUsePrecedencesInDisjunctiveConstraint
Gets whether the "use_precedences_in_disjunctive_constraint" field is set.
void ClearCpModelUseSatPresolve()
Clears the value of the "cp_model_use_sat_presolve" field.
int CpModelProbingLevel
How much effort do we spend on probing. 0 disables it completely.
const int DebugPostsolveWithFullSolverFieldNumber
Field number for the "debug_postsolve_with_full_solver" field.
bool HasUseErwaHeuristic
Gets whether the "use_erwa_heuristic" field is set.
bool HasShareLevelZeroBounds
Gets whether the "share_level_zero_bounds" field is set.
const int UseTimetableEdgeFindingInCumulativeFieldNumber
Field number for the "use_timetable_edge_finding_in_cumulative" field.
bool HasFixVariablesToTheirHintedValue
Gets whether the "fix_variables_to_their_hinted_value" field is set.
void ClearAtMostOneMaxExpansionSize()
Clears the value of the "at_most_one_max_expansion_size" field.
const int ConvertIntervalsFieldNumber
Field number for the "convert_intervals" field.
bool HasPseudoCostReliabilityThreshold
Gets whether the "pseudo_cost_reliability_threshold" field is set.
void ClearPresolveBlockedClause()
Clears the value of the "presolve_blocked_clause" field.
global::Google.OrTools.Sat.SatParameters.Types.ConflictMinimizationAlgorithm MinimizationAlgorithm
const int BlockingRestartWindowSizeFieldNumber
Field number for the "blocking_restart_window_size" field.
double RandomBranchesRatio
A number between 0 and 1 that indicates the proportion of branching variables that are selected rando...
void ClearMipDropTolerance()
Clears the value of the "mip_drop_tolerance" field.
double MipMaxValidMagnitude
Any finite values in the input MIP must be below this threshold, otherwise the model will be reported...
bool ExploitObjective
When branching an a variable that directly affect the objective, branch on the value that lead to the...
void ClearOptimizeWithMaxHs()
Clears the value of the "optimize_with_max_hs" field.
bool HasBooleanEncodingLevel
Gets whether the "boolean_encoding_level" field is set.
bool HasMaxVariableActivityValue
Gets whether the "max_variable_activity_value" field is set.
void ClearFillTightenedDomainsInResponse()
Clears the value of the "fill_tightened_domains_in_response" field.
const int AddCgCutsFieldNumber
Field number for the "add_cg_cuts" field.
void ClearCutMaxActiveCountValue()
Clears the value of the "cut_max_active_count_value" field.
const int AddObjectiveCutFieldNumber
Field number for the "add_objective_cut" field.
const int DetectTableWithCostFieldNumber
Field number for the "detect_table_with_cost" field.