small improvements and new problems
This commit is contained in:
465
examples/flatzinc/euler_39.fzn
Normal file
465
examples/flatzinc/euler_39.fzn
Normal file
@@ -0,0 +1,465 @@
|
||||
var bool: BOOL____00001 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00003 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00005 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00007 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00009 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00011 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00013 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00015 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00017 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00019 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00022 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00023 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00024 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00025 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00026 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00030 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00031 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00032 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00033 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00034 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00035 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00036 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00037 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00038 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00039 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00040 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00041 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00042 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00046 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00047 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00048 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00049 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00050 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00051 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00052 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00053 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00054 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00055 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00056 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00057 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00058 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00062 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00063 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00064 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00065 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00066 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00067 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00068 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00069 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00070 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00071 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00072 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00073 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00074 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00078 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00079 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00080 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00081 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00082 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00083 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00084 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00085 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00086 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00087 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00088 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00089 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00090 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00094 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00095 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00096 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00097 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00098 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00099 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00100 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00101 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00102 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00103 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00104 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00105 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00106 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00110 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00111 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00112 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00113 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00114 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00115 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00116 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00117 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00118 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00119 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00120 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00121 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00122 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00126 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00127 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00128 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00129 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00130 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00131 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00132 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00133 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00134 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00135 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00136 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00137 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00138 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00142 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00143 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00144 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00145 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00146 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00147 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00148 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00149 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00150 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00151 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00152 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00153 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00154 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00158 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00159 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00160 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00161 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00162 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00163 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00164 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00165 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00166 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00167 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00168 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00169 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00170 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00174 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00175 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00176 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00177 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00178 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00179 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00180 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00181 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00192 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00193 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00196 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00197 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00200 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00201 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00204 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00205 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00208 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00209 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00212 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00213 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00216 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00217 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00220 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00221 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00224 :: is_defined_var :: var_is_introduced;
|
||||
var bool: BOOL____00225 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00002 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00004 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00006 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00008 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00010 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00012 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00014 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00016 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00018 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1: INT____00020 :: is_defined_var :: var_is_introduced;
|
||||
var 1..10: INT____00021 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00027 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00028 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00029 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00043 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00044 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00045 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00059 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00060 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00061 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00075 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00076 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00077 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00091 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00092 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00093 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00107 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00108 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00109 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00123 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00124 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00125 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00139 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00140 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00141 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00155 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00156 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00157 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00171 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00172 :: is_defined_var :: var_is_introduced;
|
||||
var 0..1000000: INT____00173 :: is_defined_var :: var_is_introduced;
|
||||
var 1..10: num_solutions :: output_var = INT____00021;
|
||||
array [1..40] of var 0..1000: s :: output_array([1..10, 1..4]);
|
||||
constraint array_bool_and([BOOL____00035, BOOL____00034, BOOL____00032, BOOL____00033], BOOL____00037) :: defines_var(BOOL____00037);
|
||||
constraint array_bool_and([BOOL____00051, BOOL____00050, BOOL____00048, BOOL____00049], BOOL____00053) :: defines_var(BOOL____00053);
|
||||
constraint array_bool_and([BOOL____00067, BOOL____00066, BOOL____00064, BOOL____00065], BOOL____00069) :: defines_var(BOOL____00069);
|
||||
constraint array_bool_and([BOOL____00083, BOOL____00082, BOOL____00080, BOOL____00081], BOOL____00085) :: defines_var(BOOL____00085);
|
||||
constraint array_bool_and([BOOL____00099, BOOL____00098, BOOL____00096, BOOL____00097], BOOL____00101) :: defines_var(BOOL____00101);
|
||||
constraint array_bool_and([BOOL____00115, BOOL____00114, BOOL____00112, BOOL____00113], BOOL____00117) :: defines_var(BOOL____00117);
|
||||
constraint array_bool_and([BOOL____00131, BOOL____00130, BOOL____00128, BOOL____00129], BOOL____00133) :: defines_var(BOOL____00133);
|
||||
constraint array_bool_and([BOOL____00147, BOOL____00146, BOOL____00144, BOOL____00145], BOOL____00149) :: defines_var(BOOL____00149);
|
||||
constraint array_bool_and([BOOL____00163, BOOL____00162, BOOL____00160, BOOL____00161], BOOL____00165) :: defines_var(BOOL____00165);
|
||||
constraint array_bool_and([BOOL____00179, BOOL____00178, BOOL____00176, BOOL____00177], BOOL____00181) :: defines_var(BOOL____00181);
|
||||
constraint array_bool_and([BOOL____00031, BOOL____00030, BOOL____00026, BOOL____00025, BOOL____00024, BOOL____00024, BOOL____00024, BOOL____00023, BOOL____00001, BOOL____00022], BOOL____00036) :: defines_var(BOOL____00036);
|
||||
constraint array_bool_and([BOOL____00047, BOOL____00046, BOOL____00042, BOOL____00041, BOOL____00040, BOOL____00040, BOOL____00040, BOOL____00039, BOOL____00003, BOOL____00038], BOOL____00052) :: defines_var(BOOL____00052);
|
||||
constraint array_bool_and([BOOL____00063, BOOL____00062, BOOL____00058, BOOL____00057, BOOL____00056, BOOL____00056, BOOL____00056, BOOL____00055, BOOL____00005, BOOL____00054], BOOL____00068) :: defines_var(BOOL____00068);
|
||||
constraint array_bool_and([BOOL____00079, BOOL____00078, BOOL____00074, BOOL____00073, BOOL____00072, BOOL____00072, BOOL____00072, BOOL____00071, BOOL____00007, BOOL____00070], BOOL____00084) :: defines_var(BOOL____00084);
|
||||
constraint array_bool_and([BOOL____00095, BOOL____00094, BOOL____00090, BOOL____00089, BOOL____00088, BOOL____00088, BOOL____00088, BOOL____00087, BOOL____00009, BOOL____00086], BOOL____00100) :: defines_var(BOOL____00100);
|
||||
constraint array_bool_and([BOOL____00111, BOOL____00110, BOOL____00106, BOOL____00105, BOOL____00104, BOOL____00104, BOOL____00104, BOOL____00103, BOOL____00011, BOOL____00102], BOOL____00116) :: defines_var(BOOL____00116);
|
||||
constraint array_bool_and([BOOL____00127, BOOL____00126, BOOL____00122, BOOL____00121, BOOL____00120, BOOL____00120, BOOL____00120, BOOL____00119, BOOL____00013, BOOL____00118], BOOL____00132) :: defines_var(BOOL____00132);
|
||||
constraint array_bool_and([BOOL____00143, BOOL____00142, BOOL____00138, BOOL____00137, BOOL____00136, BOOL____00136, BOOL____00136, BOOL____00135, BOOL____00015, BOOL____00134], BOOL____00148) :: defines_var(BOOL____00148);
|
||||
constraint array_bool_and([BOOL____00159, BOOL____00158, BOOL____00154, BOOL____00153, BOOL____00152, BOOL____00152, BOOL____00152, BOOL____00151, BOOL____00017, BOOL____00150], BOOL____00164) :: defines_var(BOOL____00164);
|
||||
constraint array_bool_and([BOOL____00175, BOOL____00174, BOOL____00170, BOOL____00169, BOOL____00168, BOOL____00168, BOOL____00168, BOOL____00167, BOOL____00019, BOOL____00166], BOOL____00180) :: defines_var(BOOL____00180);
|
||||
constraint array_bool_or([BOOL____00036, BOOL____00037], true);
|
||||
constraint array_bool_or([BOOL____00052, BOOL____00053], true);
|
||||
constraint array_bool_or([BOOL____00068, BOOL____00069], true);
|
||||
constraint array_bool_or([BOOL____00084, BOOL____00085], true);
|
||||
constraint array_bool_or([BOOL____00100, BOOL____00101], true);
|
||||
constraint array_bool_or([BOOL____00116, BOOL____00117], true);
|
||||
constraint array_bool_or([BOOL____00132, BOOL____00133], true);
|
||||
constraint array_bool_or([BOOL____00148, BOOL____00149], true);
|
||||
constraint array_bool_or([BOOL____00164, BOOL____00165], true);
|
||||
constraint array_bool_or([BOOL____00180, BOOL____00181], true);
|
||||
constraint array_bool_or([BOOL____00192, BOOL____00048], true);
|
||||
constraint array_bool_or([BOOL____00193, BOOL____00051], true);
|
||||
constraint array_bool_or([BOOL____00196, BOOL____00064], true);
|
||||
constraint array_bool_or([BOOL____00197, BOOL____00067], true);
|
||||
constraint array_bool_or([BOOL____00200, BOOL____00080], true);
|
||||
constraint array_bool_or([BOOL____00201, BOOL____00083], true);
|
||||
constraint array_bool_or([BOOL____00204, BOOL____00096], true);
|
||||
constraint array_bool_or([BOOL____00205, BOOL____00099], true);
|
||||
constraint array_bool_or([BOOL____00208, BOOL____00112], true);
|
||||
constraint array_bool_or([BOOL____00209, BOOL____00115], true);
|
||||
constraint array_bool_or([BOOL____00212, BOOL____00128], true);
|
||||
constraint array_bool_or([BOOL____00213, BOOL____00131], true);
|
||||
constraint array_bool_or([BOOL____00216, BOOL____00144], true);
|
||||
constraint array_bool_or([BOOL____00217, BOOL____00147], true);
|
||||
constraint array_bool_or([BOOL____00220, BOOL____00160], true);
|
||||
constraint array_bool_or([BOOL____00221, BOOL____00163], true);
|
||||
constraint array_bool_or([BOOL____00224, BOOL____00176], true);
|
||||
constraint array_bool_or([BOOL____00225, BOOL____00179], true);
|
||||
constraint bool2int(BOOL____00001, INT____00002) :: defines_var(INT____00002);
|
||||
constraint bool2int(BOOL____00003, INT____00004) :: defines_var(INT____00004);
|
||||
constraint bool2int(BOOL____00005, INT____00006) :: defines_var(INT____00006);
|
||||
constraint bool2int(BOOL____00007, INT____00008) :: defines_var(INT____00008);
|
||||
constraint bool2int(BOOL____00009, INT____00010) :: defines_var(INT____00010);
|
||||
constraint bool2int(BOOL____00011, INT____00012) :: defines_var(INT____00012);
|
||||
constraint bool2int(BOOL____00013, INT____00014) :: defines_var(INT____00014);
|
||||
constraint bool2int(BOOL____00015, INT____00016) :: defines_var(INT____00016);
|
||||
constraint bool2int(BOOL____00017, INT____00018) :: defines_var(INT____00018);
|
||||
constraint bool2int(BOOL____00019, INT____00020) :: defines_var(INT____00020);
|
||||
constraint bool_le(BOOL____00032, BOOL____00048);
|
||||
constraint bool_le(BOOL____00033, BOOL____00049);
|
||||
constraint bool_le(BOOL____00034, BOOL____00050);
|
||||
constraint bool_le(BOOL____00035, BOOL____00051);
|
||||
constraint bool_le(BOOL____00048, BOOL____00064);
|
||||
constraint bool_le(BOOL____00049, BOOL____00065);
|
||||
constraint bool_le(BOOL____00050, BOOL____00066);
|
||||
constraint bool_le(BOOL____00051, BOOL____00067);
|
||||
constraint bool_le(BOOL____00064, BOOL____00080);
|
||||
constraint bool_le(BOOL____00065, BOOL____00081);
|
||||
constraint bool_le(BOOL____00066, BOOL____00082);
|
||||
constraint bool_le(BOOL____00067, BOOL____00083);
|
||||
constraint bool_le(BOOL____00080, BOOL____00096);
|
||||
constraint bool_le(BOOL____00081, BOOL____00097);
|
||||
constraint bool_le(BOOL____00082, BOOL____00098);
|
||||
constraint bool_le(BOOL____00083, BOOL____00099);
|
||||
constraint bool_le(BOOL____00096, BOOL____00112);
|
||||
constraint bool_le(BOOL____00097, BOOL____00113);
|
||||
constraint bool_le(BOOL____00098, BOOL____00114);
|
||||
constraint bool_le(BOOL____00099, BOOL____00115);
|
||||
constraint bool_le(BOOL____00112, BOOL____00128);
|
||||
constraint bool_le(BOOL____00113, BOOL____00129);
|
||||
constraint bool_le(BOOL____00114, BOOL____00130);
|
||||
constraint bool_le(BOOL____00115, BOOL____00131);
|
||||
constraint bool_le(BOOL____00128, BOOL____00144);
|
||||
constraint bool_le(BOOL____00129, BOOL____00145);
|
||||
constraint bool_le(BOOL____00130, BOOL____00146);
|
||||
constraint bool_le(BOOL____00131, BOOL____00147);
|
||||
constraint bool_le(BOOL____00144, BOOL____00160);
|
||||
constraint bool_le(BOOL____00145, BOOL____00161);
|
||||
constraint bool_le(BOOL____00146, BOOL____00162);
|
||||
constraint bool_le(BOOL____00147, BOOL____00163);
|
||||
constraint bool_le(BOOL____00160, BOOL____00176);
|
||||
constraint bool_le(BOOL____00161, BOOL____00177);
|
||||
constraint bool_le(BOOL____00162, BOOL____00178);
|
||||
constraint bool_le(BOOL____00163, BOOL____00179);
|
||||
constraint int_eq_reif(s[1], 0, BOOL____00032) :: defines_var(BOOL____00032);
|
||||
constraint int_eq_reif(s[2], 0, BOOL____00033) :: defines_var(BOOL____00033);
|
||||
constraint int_eq_reif(s[3], 0, BOOL____00034) :: defines_var(BOOL____00034);
|
||||
constraint int_eq_reif(s[4], 0, BOOL____00035) :: defines_var(BOOL____00035);
|
||||
constraint int_eq_reif(s[5], 0, BOOL____00048) :: defines_var(BOOL____00048);
|
||||
constraint int_eq_reif(s[6], 0, BOOL____00049) :: defines_var(BOOL____00049);
|
||||
constraint int_eq_reif(s[7], 0, BOOL____00050) :: defines_var(BOOL____00050);
|
||||
constraint int_eq_reif(s[8], 0, BOOL____00051) :: defines_var(BOOL____00051);
|
||||
constraint int_eq_reif(s[8], s[4], BOOL____00193) :: defines_var(BOOL____00193);
|
||||
constraint int_eq_reif(s[9], 0, BOOL____00064) :: defines_var(BOOL____00064);
|
||||
constraint int_eq_reif(s[10], 0, BOOL____00065) :: defines_var(BOOL____00065);
|
||||
constraint int_eq_reif(s[11], 0, BOOL____00066) :: defines_var(BOOL____00066);
|
||||
constraint int_eq_reif(s[12], 0, BOOL____00067) :: defines_var(BOOL____00067);
|
||||
constraint int_eq_reif(s[12], s[8], BOOL____00197) :: defines_var(BOOL____00197);
|
||||
constraint int_eq_reif(s[13], 0, BOOL____00080) :: defines_var(BOOL____00080);
|
||||
constraint int_eq_reif(s[14], 0, BOOL____00081) :: defines_var(BOOL____00081);
|
||||
constraint int_eq_reif(s[15], 0, BOOL____00082) :: defines_var(BOOL____00082);
|
||||
constraint int_eq_reif(s[16], 0, BOOL____00083) :: defines_var(BOOL____00083);
|
||||
constraint int_eq_reif(s[16], s[12], BOOL____00201) :: defines_var(BOOL____00201);
|
||||
constraint int_eq_reif(s[17], 0, BOOL____00096) :: defines_var(BOOL____00096);
|
||||
constraint int_eq_reif(s[18], 0, BOOL____00097) :: defines_var(BOOL____00097);
|
||||
constraint int_eq_reif(s[19], 0, BOOL____00098) :: defines_var(BOOL____00098);
|
||||
constraint int_eq_reif(s[20], 0, BOOL____00099) :: defines_var(BOOL____00099);
|
||||
constraint int_eq_reif(s[20], s[16], BOOL____00205) :: defines_var(BOOL____00205);
|
||||
constraint int_eq_reif(s[21], 0, BOOL____00112) :: defines_var(BOOL____00112);
|
||||
constraint int_eq_reif(s[22], 0, BOOL____00113) :: defines_var(BOOL____00113);
|
||||
constraint int_eq_reif(s[23], 0, BOOL____00114) :: defines_var(BOOL____00114);
|
||||
constraint int_eq_reif(s[24], 0, BOOL____00115) :: defines_var(BOOL____00115);
|
||||
constraint int_eq_reif(s[24], s[20], BOOL____00209) :: defines_var(BOOL____00209);
|
||||
constraint int_eq_reif(s[25], 0, BOOL____00128) :: defines_var(BOOL____00128);
|
||||
constraint int_eq_reif(s[26], 0, BOOL____00129) :: defines_var(BOOL____00129);
|
||||
constraint int_eq_reif(s[27], 0, BOOL____00130) :: defines_var(BOOL____00130);
|
||||
constraint int_eq_reif(s[28], 0, BOOL____00131) :: defines_var(BOOL____00131);
|
||||
constraint int_eq_reif(s[28], s[24], BOOL____00213) :: defines_var(BOOL____00213);
|
||||
constraint int_eq_reif(s[29], 0, BOOL____00144) :: defines_var(BOOL____00144);
|
||||
constraint int_eq_reif(s[30], 0, BOOL____00145) :: defines_var(BOOL____00145);
|
||||
constraint int_eq_reif(s[31], 0, BOOL____00146) :: defines_var(BOOL____00146);
|
||||
constraint int_eq_reif(s[32], 0, BOOL____00147) :: defines_var(BOOL____00147);
|
||||
constraint int_eq_reif(s[32], s[28], BOOL____00217) :: defines_var(BOOL____00217);
|
||||
constraint int_eq_reif(s[33], 0, BOOL____00160) :: defines_var(BOOL____00160);
|
||||
constraint int_eq_reif(s[34], 0, BOOL____00161) :: defines_var(BOOL____00161);
|
||||
constraint int_eq_reif(s[35], 0, BOOL____00162) :: defines_var(BOOL____00162);
|
||||
constraint int_eq_reif(s[36], 0, BOOL____00163) :: defines_var(BOOL____00163);
|
||||
constraint int_eq_reif(s[36], s[32], BOOL____00221) :: defines_var(BOOL____00221);
|
||||
constraint int_eq_reif(s[37], 0, BOOL____00176) :: defines_var(BOOL____00176);
|
||||
constraint int_eq_reif(s[38], 0, BOOL____00177) :: defines_var(BOOL____00177);
|
||||
constraint int_eq_reif(s[39], 0, BOOL____00178) :: defines_var(BOOL____00178);
|
||||
constraint int_eq_reif(s[40], 0, BOOL____00179) :: defines_var(BOOL____00179);
|
||||
constraint int_eq_reif(s[40], s[36], BOOL____00225) :: defines_var(BOOL____00225);
|
||||
constraint int_le_reif(s[1], s[2], BOOL____00025) :: defines_var(BOOL____00025);
|
||||
constraint int_le_reif(s[2], s[3], BOOL____00026) :: defines_var(BOOL____00026);
|
||||
constraint int_le_reif(s[5], s[6], BOOL____00041) :: defines_var(BOOL____00041);
|
||||
constraint int_le_reif(s[6], s[7], BOOL____00042) :: defines_var(BOOL____00042);
|
||||
constraint int_le_reif(s[9], s[10], BOOL____00057) :: defines_var(BOOL____00057);
|
||||
constraint int_le_reif(s[10], s[11], BOOL____00058) :: defines_var(BOOL____00058);
|
||||
constraint int_le_reif(s[13], s[14], BOOL____00073) :: defines_var(BOOL____00073);
|
||||
constraint int_le_reif(s[14], s[15], BOOL____00074) :: defines_var(BOOL____00074);
|
||||
constraint int_le_reif(s[17], s[18], BOOL____00089) :: defines_var(BOOL____00089);
|
||||
constraint int_le_reif(s[18], s[19], BOOL____00090) :: defines_var(BOOL____00090);
|
||||
constraint int_le_reif(s[21], s[22], BOOL____00105) :: defines_var(BOOL____00105);
|
||||
constraint int_le_reif(s[22], s[23], BOOL____00106) :: defines_var(BOOL____00106);
|
||||
constraint int_le_reif(s[25], s[26], BOOL____00121) :: defines_var(BOOL____00121);
|
||||
constraint int_le_reif(s[26], s[27], BOOL____00122) :: defines_var(BOOL____00122);
|
||||
constraint int_le_reif(s[29], s[30], BOOL____00137) :: defines_var(BOOL____00137);
|
||||
constraint int_le_reif(s[30], s[31], BOOL____00138) :: defines_var(BOOL____00138);
|
||||
constraint int_le_reif(s[33], s[34], BOOL____00153) :: defines_var(BOOL____00153);
|
||||
constraint int_le_reif(s[34], s[35], BOOL____00154) :: defines_var(BOOL____00154);
|
||||
constraint int_le_reif(s[37], s[38], BOOL____00169) :: defines_var(BOOL____00169);
|
||||
constraint int_le_reif(s[38], s[39], BOOL____00170) :: defines_var(BOOL____00170);
|
||||
constraint int_lin_eq([-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [INT____00021, INT____00002, INT____00004, INT____00006, INT____00008, INT____00010, INT____00012, INT____00014, INT____00016, INT____00018, INT____00020], 0) :: defines_var(INT____00021);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00027, INT____00028, INT____00029], 0, BOOL____00030) :: defines_var(BOOL____00030);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00043, INT____00044, INT____00045], 0, BOOL____00046) :: defines_var(BOOL____00046);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00059, INT____00060, INT____00061], 0, BOOL____00062) :: defines_var(BOOL____00062);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00075, INT____00076, INT____00077], 0, BOOL____00078) :: defines_var(BOOL____00078);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00091, INT____00092, INT____00093], 0, BOOL____00094) :: defines_var(BOOL____00094);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00107, INT____00108, INT____00109], 0, BOOL____00110) :: defines_var(BOOL____00110);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00123, INT____00124, INT____00125], 0, BOOL____00126) :: defines_var(BOOL____00126);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00139, INT____00140, INT____00141], 0, BOOL____00142) :: defines_var(BOOL____00142);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00155, INT____00156, INT____00157], 0, BOOL____00158) :: defines_var(BOOL____00158);
|
||||
constraint int_lin_eq_reif([1, -1, -1], [INT____00171, INT____00172, INT____00173], 0, BOOL____00174) :: defines_var(BOOL____00174);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[1], s[2], s[3], s[4]], 0, BOOL____00031) :: defines_var(BOOL____00031);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[5], s[6], s[7], s[8]], 0, BOOL____00047) :: defines_var(BOOL____00047);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[9], s[10], s[11], s[12]], 0, BOOL____00063) :: defines_var(BOOL____00063);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[13], s[14], s[15], s[16]], 0, BOOL____00079) :: defines_var(BOOL____00079);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[17], s[18], s[19], s[20]], 0, BOOL____00095) :: defines_var(BOOL____00095);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[21], s[22], s[23], s[24]], 0, BOOL____00111) :: defines_var(BOOL____00111);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[25], s[26], s[27], s[28]], 0, BOOL____00127) :: defines_var(BOOL____00127);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[29], s[30], s[31], s[32]], 0, BOOL____00143) :: defines_var(BOOL____00143);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[33], s[34], s[35], s[36]], 0, BOOL____00159) :: defines_var(BOOL____00159);
|
||||
constraint int_lin_eq_reif([1, 1, 1, -1], [s[37], s[38], s[39], s[40]], 0, BOOL____00175) :: defines_var(BOOL____00175);
|
||||
constraint int_lt_reif(0, s[1], BOOL____00001) :: defines_var(BOOL____00001);
|
||||
constraint int_lt_reif(0, s[2], BOOL____00022) :: defines_var(BOOL____00022);
|
||||
constraint int_lt_reif(0, s[3], BOOL____00023) :: defines_var(BOOL____00023);
|
||||
constraint int_lt_reif(0, s[5], BOOL____00003) :: defines_var(BOOL____00003);
|
||||
constraint int_lt_reif(0, s[6], BOOL____00038) :: defines_var(BOOL____00038);
|
||||
constraint int_lt_reif(0, s[7], BOOL____00039) :: defines_var(BOOL____00039);
|
||||
constraint int_lt_reif(0, s[9], BOOL____00005) :: defines_var(BOOL____00005);
|
||||
constraint int_lt_reif(0, s[10], BOOL____00054) :: defines_var(BOOL____00054);
|
||||
constraint int_lt_reif(0, s[11], BOOL____00055) :: defines_var(BOOL____00055);
|
||||
constraint int_lt_reif(0, s[13], BOOL____00007) :: defines_var(BOOL____00007);
|
||||
constraint int_lt_reif(0, s[14], BOOL____00070) :: defines_var(BOOL____00070);
|
||||
constraint int_lt_reif(0, s[15], BOOL____00071) :: defines_var(BOOL____00071);
|
||||
constraint int_lt_reif(0, s[17], BOOL____00009) :: defines_var(BOOL____00009);
|
||||
constraint int_lt_reif(0, s[18], BOOL____00086) :: defines_var(BOOL____00086);
|
||||
constraint int_lt_reif(0, s[19], BOOL____00087) :: defines_var(BOOL____00087);
|
||||
constraint int_lt_reif(0, s[21], BOOL____00011) :: defines_var(BOOL____00011);
|
||||
constraint int_lt_reif(0, s[22], BOOL____00102) :: defines_var(BOOL____00102);
|
||||
constraint int_lt_reif(0, s[23], BOOL____00103) :: defines_var(BOOL____00103);
|
||||
constraint int_lt_reif(0, s[25], BOOL____00013) :: defines_var(BOOL____00013);
|
||||
constraint int_lt_reif(0, s[26], BOOL____00118) :: defines_var(BOOL____00118);
|
||||
constraint int_lt_reif(0, s[27], BOOL____00119) :: defines_var(BOOL____00119);
|
||||
constraint int_lt_reif(0, s[29], BOOL____00015) :: defines_var(BOOL____00015);
|
||||
constraint int_lt_reif(0, s[30], BOOL____00134) :: defines_var(BOOL____00134);
|
||||
constraint int_lt_reif(0, s[31], BOOL____00135) :: defines_var(BOOL____00135);
|
||||
constraint int_lt_reif(0, s[33], BOOL____00017) :: defines_var(BOOL____00017);
|
||||
constraint int_lt_reif(0, s[34], BOOL____00150) :: defines_var(BOOL____00150);
|
||||
constraint int_lt_reif(0, s[35], BOOL____00151) :: defines_var(BOOL____00151);
|
||||
constraint int_lt_reif(0, s[37], BOOL____00019) :: defines_var(BOOL____00019);
|
||||
constraint int_lt_reif(0, s[38], BOOL____00166) :: defines_var(BOOL____00166);
|
||||
constraint int_lt_reif(0, s[39], BOOL____00167) :: defines_var(BOOL____00167);
|
||||
constraint int_lt_reif(s[1], s[4], BOOL____00024) :: defines_var(BOOL____00024);
|
||||
constraint int_lt_reif(s[5], s[1], BOOL____00192) :: defines_var(BOOL____00192);
|
||||
constraint int_lt_reif(s[5], s[8], BOOL____00040) :: defines_var(BOOL____00040);
|
||||
constraint int_lt_reif(s[9], s[5], BOOL____00196) :: defines_var(BOOL____00196);
|
||||
constraint int_lt_reif(s[9], s[12], BOOL____00056) :: defines_var(BOOL____00056);
|
||||
constraint int_lt_reif(s[13], s[9], BOOL____00200) :: defines_var(BOOL____00200);
|
||||
constraint int_lt_reif(s[13], s[16], BOOL____00072) :: defines_var(BOOL____00072);
|
||||
constraint int_lt_reif(s[17], s[13], BOOL____00204) :: defines_var(BOOL____00204);
|
||||
constraint int_lt_reif(s[17], s[20], BOOL____00088) :: defines_var(BOOL____00088);
|
||||
constraint int_lt_reif(s[21], s[17], BOOL____00208) :: defines_var(BOOL____00208);
|
||||
constraint int_lt_reif(s[21], s[24], BOOL____00104) :: defines_var(BOOL____00104);
|
||||
constraint int_lt_reif(s[25], s[21], BOOL____00212) :: defines_var(BOOL____00212);
|
||||
constraint int_lt_reif(s[25], s[28], BOOL____00120) :: defines_var(BOOL____00120);
|
||||
constraint int_lt_reif(s[29], s[25], BOOL____00216) :: defines_var(BOOL____00216);
|
||||
constraint int_lt_reif(s[29], s[32], BOOL____00136) :: defines_var(BOOL____00136);
|
||||
constraint int_lt_reif(s[33], s[29], BOOL____00220) :: defines_var(BOOL____00220);
|
||||
constraint int_lt_reif(s[33], s[36], BOOL____00152) :: defines_var(BOOL____00152);
|
||||
constraint int_lt_reif(s[37], s[33], BOOL____00224) :: defines_var(BOOL____00224);
|
||||
constraint int_lt_reif(s[37], s[40], BOOL____00168) :: defines_var(BOOL____00168);
|
||||
constraint int_times(s[1], s[1], INT____00028) :: defines_var(INT____00028);
|
||||
constraint int_times(s[2], s[2], INT____00029) :: defines_var(INT____00029);
|
||||
constraint int_times(s[3], s[3], INT____00027) :: defines_var(INT____00027);
|
||||
constraint int_times(s[5], s[5], INT____00044) :: defines_var(INT____00044);
|
||||
constraint int_times(s[6], s[6], INT____00045) :: defines_var(INT____00045);
|
||||
constraint int_times(s[7], s[7], INT____00043) :: defines_var(INT____00043);
|
||||
constraint int_times(s[9], s[9], INT____00060) :: defines_var(INT____00060);
|
||||
constraint int_times(s[10], s[10], INT____00061) :: defines_var(INT____00061);
|
||||
constraint int_times(s[11], s[11], INT____00059) :: defines_var(INT____00059);
|
||||
constraint int_times(s[13], s[13], INT____00076) :: defines_var(INT____00076);
|
||||
constraint int_times(s[14], s[14], INT____00077) :: defines_var(INT____00077);
|
||||
constraint int_times(s[15], s[15], INT____00075) :: defines_var(INT____00075);
|
||||
constraint int_times(s[17], s[17], INT____00092) :: defines_var(INT____00092);
|
||||
constraint int_times(s[18], s[18], INT____00093) :: defines_var(INT____00093);
|
||||
constraint int_times(s[19], s[19], INT____00091) :: defines_var(INT____00091);
|
||||
constraint int_times(s[21], s[21], INT____00108) :: defines_var(INT____00108);
|
||||
constraint int_times(s[22], s[22], INT____00109) :: defines_var(INT____00109);
|
||||
constraint int_times(s[23], s[23], INT____00107) :: defines_var(INT____00107);
|
||||
constraint int_times(s[25], s[25], INT____00124) :: defines_var(INT____00124);
|
||||
constraint int_times(s[26], s[26], INT____00125) :: defines_var(INT____00125);
|
||||
constraint int_times(s[27], s[27], INT____00123) :: defines_var(INT____00123);
|
||||
constraint int_times(s[29], s[29], INT____00140) :: defines_var(INT____00140);
|
||||
constraint int_times(s[30], s[30], INT____00141) :: defines_var(INT____00141);
|
||||
constraint int_times(s[31], s[31], INT____00139) :: defines_var(INT____00139);
|
||||
constraint int_times(s[33], s[33], INT____00156) :: defines_var(INT____00156);
|
||||
constraint int_times(s[34], s[34], INT____00157) :: defines_var(INT____00157);
|
||||
constraint int_times(s[35], s[35], INT____00155) :: defines_var(INT____00155);
|
||||
constraint int_times(s[37], s[37], INT____00172) :: defines_var(INT____00172);
|
||||
constraint int_times(s[38], s[38], INT____00173) :: defines_var(INT____00173);
|
||||
constraint int_times(s[39], s[39], INT____00171) :: defines_var(INT____00171);
|
||||
solve :: int_search([s[1], s[2], s[3], s[4], s[5], s[6], s[7], s[8], s[9], s[10], s[11], s[12], s[13], s[14], s[15], s[16], s[17], s[18], s[19], s[20], s[21], s[22], s[23], s[24], s[25], s[26], s[27], s[28], s[29], s[30], s[31], s[32], s[33], s[34], s[35], s[36], s[37], s[38], s[39], s[40]], first_fail, indomain_split, complete) maximize INT____00021;
|
||||
134
examples/flatzinc/kqueens.fzn
Normal file
134
examples/flatzinc/kqueens.fzn
Normal file
@@ -0,0 +1,134 @@
|
||||
var 0..64: INT____00001 :: is_defined_var :: var_is_introduced;
|
||||
array [1..64] of var 0..1: a;
|
||||
var 0..64: numq :: output_var = INT____00001;
|
||||
array [1..64] of var 0..1: x :: output_array([1..8, 1..8]);
|
||||
constraint int_lin_eq([1, 1], [a[1], x[1]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[2], x[2]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[3], x[3]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[4], x[4]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[5], x[5]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[6], x[6]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[7], x[7]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[8], x[8]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[9], x[9]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[10], x[10]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[11], x[11]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[12], x[12]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[13], x[13]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[14], x[14]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[15], x[15]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[16], x[16]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[17], x[17]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[18], x[18]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[19], x[19]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[20], x[20]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[21], x[21]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[22], x[22]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[23], x[23]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[24], x[24]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[25], x[25]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[26], x[26]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[27], x[27]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[28], x[28]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[29], x[29]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[30], x[30]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[31], x[31]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[32], x[32]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[33], x[33]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[34], x[34]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[35], x[35]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[36], x[36]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[37], x[37]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[38], x[38]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[39], x[39]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[40], x[40]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[41], x[41]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[42], x[42]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[43], x[43]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[44], x[44]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[45], x[45]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[46], x[46]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[47], x[47]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[48], x[48]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[49], x[49]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[50], x[50]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[51], x[51]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[52], x[52]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[53], x[53]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[54], x[54]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[55], x[55]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[56], x[56]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[57], x[57]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[58], x[58]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[59], x[59]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[60], x[60]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[61], x[61]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[62], x[62]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[63], x[63]], 1);
|
||||
constraint int_lin_eq([1, 1], [a[64], x[64]], 1);
|
||||
constraint int_lin_eq([-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [INT____00001, x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0) :: defines_var(INT____00001);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[1], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[17], x[19], x[25], x[28], x[33], x[37], x[41], x[46], x[49], x[55], x[57], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[2], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[18], x[20], x[26], x[29], x[34], x[38], x[42], x[47], x[50], x[56], x[58]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[3], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[10], x[11], x[12], x[17], x[19], x[21], x[27], x[30], x[35], x[39], x[43], x[48], x[51], x[59]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[4], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[11], x[12], x[13], x[18], x[20], x[22], x[25], x[28], x[31], x[36], x[40], x[44], x[52], x[60]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[5], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[12], x[13], x[14], x[19], x[21], x[23], x[26], x[29], x[32], x[33], x[37], x[45], x[53], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[6], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[13], x[14], x[15], x[20], x[22], x[24], x[27], x[30], x[34], x[38], x[41], x[46], x[54], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[7], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[14], x[15], x[16], x[21], x[23], x[28], x[31], x[35], x[39], x[42], x[47], x[49], x[55], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[8], x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[15], x[16], x[22], x[24], x[29], x[32], x[36], x[40], x[43], x[48], x[50], x[56], x[57], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[9], x[1], x[2], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[25], x[27], x[33], x[36], x[41], x[45], x[49], x[54], x[57], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[16], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[23], x[24], x[30], x[32], x[37], x[40], x[44], x[48], x[51], x[56], x[58], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[17], x[1], x[3], x[9], x[10], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[33], x[35], x[41], x[44], x[49], x[53], x[57], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[24], x[6], x[8], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[31], x[32], x[38], x[40], x[45], x[48], x[52], x[56], x[59], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[25], x[1], x[4], x[9], x[11], x[17], x[18], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[41], x[43], x[49], x[52], x[57], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[32], x[5], x[8], x[14], x[16], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[39], x[40], x[46], x[48], x[53], x[56], x[60], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[33], x[1], x[5], x[9], x[12], x[17], x[19], x[25], x[26], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[49], x[51], x[57], x[60]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[40], x[4], x[8], x[13], x[16], x[22], x[24], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[47], x[48], x[54], x[56], x[61], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[41], x[1], x[6], x[9], x[13], x[17], x[20], x[25], x[27], x[33], x[34], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[57], x[59]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[48], x[3], x[8], x[12], x[16], x[21], x[24], x[30], x[32], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[55], x[56], x[62], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[49], x[1], x[7], x[9], x[14], x[17], x[21], x[25], x[28], x[33], x[35], x[41], x[42], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[56], x[2], x[8], x[11], x[16], x[20], x[24], x[29], x[32], x[38], x[40], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[57], x[1], x[8], x[9], x[15], x[17], x[22], x[25], x[29], x[33], x[36], x[41], x[43], x[49], x[50], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[58], x[2], x[10], x[16], x[18], x[23], x[26], x[30], x[34], x[37], x[42], x[44], x[49], x[50], x[51], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[59], x[3], x[11], x[19], x[24], x[27], x[31], x[35], x[38], x[41], x[43], x[45], x[50], x[51], x[52], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[60], x[4], x[12], x[20], x[28], x[32], x[33], x[36], x[39], x[42], x[44], x[46], x[51], x[52], x[53], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[61], x[5], x[13], x[21], x[25], x[29], x[34], x[37], x[40], x[43], x[45], x[47], x[52], x[53], x[54], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[62], x[6], x[14], x[17], x[22], x[26], x[30], x[35], x[38], x[44], x[46], x[48], x[53], x[54], x[55], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[63], x[7], x[9], x[15], x[18], x[23], x[27], x[31], x[36], x[39], x[45], x[47], x[54], x[55], x[56], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[64], x[1], x[8], x[10], x[16], x[19], x[24], x[28], x[32], x[37], x[40], x[46], x[48], x[55], x[56], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[10], x[1], x[2], x[3], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[26], x[28], x[34], x[37], x[42], x[46], x[50], x[55], x[58], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[11], x[2], x[3], x[4], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[18], x[19], x[20], x[25], x[27], x[29], x[35], x[38], x[43], x[47], x[51], x[56], x[59]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[12], x[3], x[4], x[5], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[19], x[20], x[21], x[26], x[28], x[30], x[33], x[36], x[39], x[44], x[48], x[52], x[60]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[13], x[4], x[5], x[6], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[20], x[21], x[22], x[27], x[29], x[31], x[34], x[37], x[40], x[41], x[45], x[53], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[14], x[5], x[6], x[7], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[21], x[22], x[23], x[28], x[30], x[32], x[35], x[38], x[42], x[46], x[49], x[54], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[15], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[22], x[23], x[24], x[29], x[31], x[36], x[39], x[43], x[47], x[50], x[55], x[57], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[18], x[2], x[4], x[9], x[10], x[11], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[34], x[36], x[42], x[45], x[50], x[54], x[58], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[23], x[5], x[7], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[30], x[31], x[32], x[37], x[39], x[44], x[47], x[51], x[55], x[58], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[26], x[2], x[5], x[10], x[12], x[17], x[18], x[19], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[42], x[44], x[50], x[53], x[58], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[31], x[4], x[7], x[13], x[15], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[38], x[39], x[40], x[45], x[47], x[52], x[55], x[59], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[34], x[2], x[6], x[10], x[13], x[18], x[20], x[25], x[26], x[27], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[50], x[52], x[58], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[39], x[3], x[7], x[12], x[15], x[21], x[23], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[46], x[47], x[48], x[53], x[55], x[60], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[42], x[2], x[7], x[10], x[14], x[18], x[21], x[26], x[28], x[33], x[34], x[35], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[58], x[60]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[47], x[2], x[7], x[11], x[15], x[20], x[23], x[29], x[31], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[54], x[55], x[56], x[61], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[50], x[2], x[8], x[10], x[15], x[18], x[22], x[26], x[29], x[34], x[36], x[41], x[42], x[43], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[51], x[3], x[11], x[16], x[19], x[23], x[27], x[30], x[33], x[35], x[37], x[42], x[43], x[44], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[58], x[59], x[60]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[52], x[4], x[12], x[20], x[24], x[25], x[28], x[31], x[34], x[36], x[38], x[43], x[44], x[45], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[59], x[60], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[53], x[5], x[13], x[17], x[21], x[26], x[29], x[32], x[35], x[37], x[39], x[44], x[45], x[46], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[60], x[61], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[54], x[6], x[9], x[14], x[18], x[22], x[27], x[30], x[36], x[38], x[40], x[45], x[46], x[47], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[61], x[62], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[55], x[1], x[7], x[10], x[15], x[19], x[23], x[28], x[31], x[37], x[39], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[62], x[63], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[19], x[1], x[3], x[5], x[10], x[11], x[12], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[26], x[27], x[28], x[33], x[35], x[37], x[43], x[46], x[51], x[55], x[59], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[20], x[2], x[4], x[6], x[11], x[12], x[13], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[27], x[28], x[29], x[34], x[36], x[38], x[41], x[44], x[47], x[52], x[56], x[60]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[21], x[3], x[5], x[7], x[12], x[13], x[14], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[28], x[29], x[30], x[35], x[37], x[39], x[42], x[45], x[48], x[49], x[53], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[22], x[4], x[6], x[8], x[13], x[14], x[15], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[29], x[30], x[31], x[36], x[38], x[40], x[43], x[46], x[50], x[54], x[57], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[27], x[3], x[6], x[9], x[11], x[13], x[18], x[19], x[20], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[34], x[35], x[36], x[41], x[43], x[45], x[51], x[54], x[59], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[30], x[3], x[6], x[12], x[14], x[16], x[21], x[22], x[23], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[37], x[38], x[39], x[44], x[46], x[48], x[51], x[54], x[58], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[35], x[3], x[7], x[11], x[14], x[17], x[19], x[21], x[26], x[27], x[28], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[42], x[43], x[44], x[49], x[51], x[53], x[59], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[38], x[2], x[6], x[11], x[14], x[20], x[22], x[24], x[29], x[30], x[31], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[45], x[46], x[47], x[52], x[54], x[56], x[59], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[43], x[3], x[8], x[11], x[15], x[19], x[22], x[25], x[27], x[29], x[34], x[35], x[36], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[50], x[51], x[52], x[57], x[59], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[44], x[4], x[12], x[16], x[17], x[20], x[23], x[26], x[28], x[30], x[35], x[36], x[37], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[51], x[52], x[53], x[58], x[60], x[62]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[45], x[5], x[9], x[13], x[18], x[21], x[24], x[27], x[29], x[31], x[36], x[37], x[38], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[52], x[53], x[54], x[59], x[61], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[46], x[1], x[6], x[10], x[14], x[19], x[22], x[28], x[30], x[32], x[37], x[38], x[39], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[53], x[54], x[55], x[60], x[62], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[28], x[1], x[4], x[7], x[10], x[12], x[14], x[19], x[20], x[21], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[35], x[36], x[37], x[42], x[44], x[46], x[49], x[52], x[55], x[60], x[64]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[29], x[2], x[5], x[8], x[11], x[13], x[15], x[20], x[21], x[22], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[36], x[37], x[38], x[43], x[45], x[47], x[50], x[53], x[56], x[57], x[61]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[36], x[4], x[8], x[9], x[12], x[15], x[18], x[20], x[22], x[27], x[28], x[29], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[43], x[44], x[45], x[50], x[52], x[54], x[57], x[60], x[63]], 0);
|
||||
constraint int_lin_le([1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [a[37], x[1], x[5], x[10], x[13], x[16], x[19], x[21], x[23], x[28], x[29], x[30], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[44], x[45], x[46], x[51], x[53], x[55], x[58], x[61], x[64]], 0);
|
||||
solve :: int_search([x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10], x[11], x[12], x[13], x[14], x[15], x[16], x[17], x[18], x[19], x[20], x[21], x[22], x[23], x[24], x[25], x[26], x[27], x[28], x[29], x[30], x[31], x[32], x[33], x[34], x[35], x[36], x[37], x[38], x[39], x[40], x[41], x[42], x[43], x[44], x[45], x[46], x[47], x[48], x[49], x[50], x[51], x[52], x[53], x[54], x[55], x[56], x[57], x[58], x[59], x[60], x[61], x[62], x[63], x[64]], first_fail, indomain, complete) minimize INT____00001;
|
||||
@@ -2199,7 +2199,9 @@ template<class T> Constraint* MakeScalProdEqualityFct(Solver* const solver,
|
||||
return cst == 0 ? solver->MakeTrueConstraint()
|
||||
: solver->MakeFalseConstraint();
|
||||
}
|
||||
if (AreAllBooleans(vars, size) && AreAllPositive<T>(coefficients, size)) {
|
||||
if (AreAllBooleans(vars, size) &&
|
||||
AreAllPositive<T>(coefficients, size) &&
|
||||
size > 2) {
|
||||
// TODO(user) : bench BooleanScalProdEqVar with IntConst.
|
||||
return solver->RevAlloc(new PositiveBooleanScalProdEqCst(solver,
|
||||
vars,
|
||||
@@ -2593,7 +2595,7 @@ template<class T> IntExpr* MakeScalProdFct(Solver* solver,
|
||||
if (size == 1) {
|
||||
return solver->MakeProd(vars[0], coefs[0]);
|
||||
}
|
||||
if (AreAllBooleans(vars.data(), size)) {
|
||||
if (AreAllBooleans(vars.data(), size) && size > 2) {
|
||||
if (AreAllPositive<T>(coefs.data(), size)) {
|
||||
return solver->RegisterIntExpr(solver->RevAlloc(
|
||||
new PositiveBooleanScalProd(
|
||||
|
||||
Reference in New Issue
Block a user