00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #include "test/flatzinc.hh"
00035
00036 namespace Test { namespace FlatZinc {
00037
00038 namespace {
00040 class Create {
00041 public:
00042
00044 Create(void) {
00045 (void) new FlatZincTest("factory_planning",
00046 std::string("predicate bool_lin_ge(array [int] of int: a, array [int] of var bool: x, var int: c);\n\
00047 predicate bool_lin_gt(array [int] of int: a, array [int] of var bool: x, var int: c);\n\
00048 predicate bool_lin_lt(array [int] of int: a, array [int] of var bool: x, var int: c);\n\
00049 predicate bool_lin_ne(array [int] of int: a, array [int] of var bool: x, var int: c);\n\
00050 array [1..15] of int: can_add_attr = [0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0];\n\
00051 array [1..25] of int: connected = [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1];\n\
00052 array [1..6] of int: prod_attr_goal = [1, 1, 0, 1, 0, 1];\n\
00053 array [1..2] of int: prod_start_mach = [1, 1];\n\
00054 var bool: BOOL____00065 :: is_defined_var :: var_is_introduced;\n\
00055 var bool: BOOL____00066 :: is_defined_var :: var_is_introduced;\n\
00056 var bool: BOOL____00067 :: is_defined_var :: var_is_introduced;\n\
00057 var bool: BOOL____00068 :: is_defined_var :: var_is_introduced;\n\
00058 var bool: BOOL____00069 :: is_defined_var :: var_is_introduced;\n\
00059 var bool: BOOL____00070 :: is_defined_var :: var_is_introduced;\n\
00060 var bool: BOOL____00071 :: is_defined_var :: var_is_introduced;\n\
00061 var bool: BOOL____00072 :: is_defined_var :: var_is_introduced;\n\
00062 var bool: BOOL____00073 :: is_defined_var :: var_is_introduced;\n\
00063 var bool: BOOL____00074 :: is_defined_var :: var_is_introduced;\n\
00064 var bool: BOOL____00075 :: is_defined_var :: var_is_introduced;\n\
00065 var bool: BOOL____00076 :: is_defined_var :: var_is_introduced;\n\
00066 var bool: BOOL____00077 :: is_defined_var :: var_is_introduced;\n\
00067 var bool: BOOL____00078 :: is_defined_var :: var_is_introduced;\n\
00068 var bool: BOOL____00079 :: is_defined_var :: var_is_introduced;\n\
00069 var bool: BOOL____00080 :: is_defined_var :: var_is_introduced;\n\
00070 var bool: BOOL____00081 :: is_defined_var :: var_is_introduced;\n\
00071 var bool: BOOL____00082 :: is_defined_var :: var_is_introduced;\n\
00072 var bool: BOOL____00083 :: is_defined_var :: var_is_introduced;\n\
00073 var bool: BOOL____00084 :: is_defined_var :: var_is_introduced;\n\
00074 var bool: BOOL____00085 :: is_defined_var :: var_is_introduced;\n\
00075 var bool: BOOL____00086 :: is_defined_var :: var_is_introduced;\n\
00076 var bool: BOOL____00087 :: is_defined_var :: var_is_introduced;\n\
00077 var bool: BOOL____00088 :: is_defined_var :: var_is_introduced;\n\
00078 var bool: BOOL____00089 :: is_defined_var :: var_is_introduced;\n\
00079 var bool: BOOL____00090 :: is_defined_var :: var_is_introduced;\n\
00080 var bool: BOOL____00091 :: is_defined_var :: var_is_introduced;\n\
00081 var bool: BOOL____00092 :: is_defined_var :: var_is_introduced;\n\
00082 var bool: BOOL____00093 :: is_defined_var :: var_is_introduced;\n\
00083 var bool: BOOL____00094 :: is_defined_var :: var_is_introduced;\n\
00084 var 1..13: INT____00001 :: is_defined_var :: var_is_introduced;\n\
00085 var 0..1: INT____00002 :: is_defined_var :: var_is_introduced;\n\
00086 var 2..14: INT____00003 :: is_defined_var :: var_is_introduced;\n\
00087 var 0..1: INT____00004 :: is_defined_var :: var_is_introduced;\n\
00088 var 3..15: INT____00005 :: is_defined_var :: var_is_introduced;\n\
00089 var 0..1: INT____00006 :: is_defined_var :: var_is_introduced;\n\
00090 var 1..13: INT____00007 :: is_defined_var :: var_is_introduced;\n\
00091 var 0..1: INT____00008 :: is_defined_var :: var_is_introduced;\n\
00092 var 2..14: INT____00009 :: is_defined_var :: var_is_introduced;\n\
00093 var 0..1: INT____00010 :: is_defined_var :: var_is_introduced;\n\
00094 var 3..15: INT____00011 :: is_defined_var :: var_is_introduced;\n\
00095 var 0..1: INT____00012 :: is_defined_var :: var_is_introduced;\n\
00096 var 1..13: INT____00013 :: is_defined_var :: var_is_introduced;\n\
00097 var 0..1: INT____00014 :: is_defined_var :: var_is_introduced;\n\
00098 var 2..14: INT____00015 :: is_defined_var :: var_is_introduced;\n\
00099 var 0..1: INT____00016 :: is_defined_var :: var_is_introduced;\n\
00100 var 3..15: INT____00017 :: is_defined_var :: var_is_introduced;\n\
00101 var 0..1: INT____00018 :: is_defined_var :: var_is_introduced;\n\
00102 var 1..13: INT____00019 :: is_defined_var :: var_is_introduced;\n\
00103 var 0..1: INT____00020 :: is_defined_var :: var_is_introduced;\n\
00104 var 2..14: INT____00021 :: is_defined_var :: var_is_introduced;\n\
00105 var 0..1: INT____00022 :: is_defined_var :: var_is_introduced;\n\
00106 var 3..15: INT____00023 :: is_defined_var :: var_is_introduced;\n\
00107 var 0..1: INT____00024 :: is_defined_var :: var_is_introduced;\n\
00108 var 1..13: INT____00025 :: is_defined_var :: var_is_introduced;\n\
00109 var 0..1: INT____00026 :: is_defined_var :: var_is_introduced;\n\
00110 var 2..14: INT____00027 :: is_defined_var :: var_is_introduced;\n\
00111 var 0..1: INT____00028 :: is_defined_var :: var_is_introduced;\n\
00112 var 3..15: INT____00029 :: is_defined_var :: var_is_introduced;\n\
00113 var 0..1: INT____00030 :: is_defined_var :: var_is_introduced;\n\
00114 var 1..13: INT____00031 :: is_defined_var :: var_is_introduced;\n\
00115 var 0..1: INT____00032 :: is_defined_var :: var_is_introduced;\n\
00116 var 2..14: INT____00033 :: is_defined_var :: var_is_introduced;\n\
00117 var 0..1: INT____00034 :: is_defined_var :: var_is_introduced;\n\
00118 var 3..15: INT____00035 :: is_defined_var :: var_is_introduced;\n\
00119 var 0..1: INT____00036 :: is_defined_var :: var_is_introduced;\n\
00120 var 1..13: INT____00037 :: is_defined_var :: var_is_introduced;\n\
00121 var 0..1: INT____00038 :: is_defined_var :: var_is_introduced;\n\
00122 var 2..14: INT____00039 :: is_defined_var :: var_is_introduced;\n\
00123 var 0..1: INT____00040 :: is_defined_var :: var_is_introduced;\n\
00124 var 3..15: INT____00041 :: is_defined_var :: var_is_introduced;\n\
00125 var 0..1: INT____00042 :: is_defined_var :: var_is_introduced;\n\
00126 var 1..13: INT____00043 :: is_defined_var :: var_is_introduced;\n\
00127 var 0..1: INT____00044 :: is_defined_var :: var_is_introduced;\n\
00128 var 2..14: INT____00045 :: is_defined_var :: var_is_introduced;\n\
00129 var 0..1: INT____00046 :: is_defined_var :: var_is_introduced;\n\
00130 var 3..15: INT____00047 :: is_defined_var :: var_is_introduced;\n\
00131 var 0..1: INT____00048 :: is_defined_var :: var_is_introduced;\n\
00132 var 1..25: INT____00049 :: is_defined_var :: var_is_introduced;\n\
00133 var 1..25: INT____00051 :: is_defined_var :: var_is_introduced;\n\
00134 var 1..25: INT____00053 :: is_defined_var :: var_is_introduced;\n\
00135 var 1..25: INT____00055 :: is_defined_var :: var_is_introduced;\n\
00136 var 1..25: INT____00057 :: is_defined_var :: var_is_introduced;\n\
00137 var 1..25: INT____00059 :: is_defined_var :: var_is_introduced;\n\
00138 var 1..25: INT____00061 :: is_defined_var :: var_is_introduced;\n\
00139 var 1..25: INT____00063 :: is_defined_var :: var_is_introduced;\n\
00140 var 5..5: last_step = 5;\n\
00141 array [1..30] of var 0..1: step_prod_attr :: output_array([1..5, 1..2, 1..3]);\n\
00142 array [1..10] of var 1..5: step_prod_mach :: output_array([1..5, 1..2]);\n\
00143 constraint array_int_element(INT____00001, can_add_attr, INT____00002) :: defines_var(INT____00002);\n\
00144 constraint array_int_element(INT____00003, can_add_attr, INT____00004) :: defines_var(INT____00004);\n\
00145 constraint array_int_element(INT____00005, can_add_attr, INT____00006) :: defines_var(INT____00006);\n\
00146 constraint array_int_element(INT____00007, can_add_attr, INT____00008) :: defines_var(INT____00008);\n\
00147 constraint array_int_element(INT____00009, can_add_attr, INT____00010) :: defines_var(INT____00010);\n\
00148 constraint array_int_element(INT____00011, can_add_attr, INT____00012) :: defines_var(INT____00012);\n\
00149 constraint array_int_element(INT____00013, can_add_attr, INT____00014) :: defines_var(INT____00014);\n\
00150 constraint array_int_element(INT____00015, can_add_attr, INT____00016) :: defines_var(INT____00016);\n\
00151 constraint array_int_element(INT____00017, can_add_attr, INT____00018) :: defines_var(INT____00018);\n\
00152 constraint array_int_element(INT____00019, can_add_attr, INT____00020) :: defines_var(INT____00020);\n\
00153 constraint array_int_element(INT____00021, can_add_attr, INT____00022) :: defines_var(INT____00022);\n\
00154 constraint array_int_element(INT____00023, can_add_attr, INT____00024) :: defines_var(INT____00024);\n\
00155 constraint array_int_element(INT____00025, can_add_attr, INT____00026) :: defines_var(INT____00026);\n\
00156 constraint array_int_element(INT____00027, can_add_attr, INT____00028) :: defines_var(INT____00028);\n\
00157 constraint array_int_element(INT____00029, can_add_attr, INT____00030) :: defines_var(INT____00030);\n\
00158 constraint array_int_element(INT____00031, can_add_attr, INT____00032) :: defines_var(INT____00032);\n\
00159 constraint array_int_element(INT____00033, can_add_attr, INT____00034) :: defines_var(INT____00034);\n\
00160 constraint array_int_element(INT____00035, can_add_attr, INT____00036) :: defines_var(INT____00036);\n\
00161 constraint array_int_element(INT____00037, can_add_attr, INT____00038) :: defines_var(INT____00038);\n\
00162 constraint array_int_element(INT____00039, can_add_attr, INT____00040) :: defines_var(INT____00040);\n\
00163 constraint array_int_element(INT____00041, can_add_attr, INT____00042) :: defines_var(INT____00042);\n\
00164 constraint array_int_element(INT____00043, can_add_attr, INT____00044) :: defines_var(INT____00044);\n\
00165 constraint array_int_element(INT____00045, can_add_attr, INT____00046) :: defines_var(INT____00046);\n\
00166 constraint array_int_element(INT____00047, can_add_attr, INT____00048) :: defines_var(INT____00048);\n\
00167 constraint array_int_element(INT____00049, connected, 1);\n\
00168 constraint array_int_element(INT____00051, connected, 1);\n\
00169 constraint array_int_element(INT____00053, connected, 1);\n\
00170 constraint array_int_element(INT____00055, connected, 1);\n\
00171 constraint array_int_element(INT____00057, connected, 1);\n\
00172 constraint array_int_element(INT____00059, connected, 1);\n\
00173 constraint array_int_element(INT____00061, connected, 1);\n\
00174 constraint array_int_element(INT____00063, connected, 1);\n\
00175 constraint bool_le(BOOL____00065, BOOL____00066);\n\
00176 constraint bool_le(BOOL____00067, BOOL____00068);\n\
00177 constraint bool_le(BOOL____00069, BOOL____00070);\n\
00178 constraint bool_le(BOOL____00071, BOOL____00072);\n\
00179 constraint bool_le(BOOL____00073, BOOL____00074);\n\
00180 constraint bool_le(BOOL____00075, BOOL____00076);\n\
00181 constraint bool_le(BOOL____00077, BOOL____00078);\n\
00182 constraint bool_le(BOOL____00079, BOOL____00080);\n\
00183 constraint bool_le(BOOL____00081, BOOL____00082);\n\
00184 constraint bool_le(BOOL____00083, BOOL____00084);\n\
00185 constraint bool_le(BOOL____00085, BOOL____00086);\n\
00186 constraint bool_le(BOOL____00087, BOOL____00088);\n\
00187 constraint bool_le(BOOL____00089, BOOL____00090);\n\
00188 constraint bool_le(BOOL____00091, BOOL____00092);\n\
00189 constraint bool_le(BOOL____00093, BOOL____00094);\n\
00190 constraint int_eq(step_prod_attr[1], 0);\n\
00191 constraint int_eq(step_prod_attr[2], 0);\n\
00192 constraint int_eq(step_prod_attr[3], 0);\n\
00193 constraint int_eq(step_prod_attr[4], 0);\n\
00194 constraint int_eq(step_prod_attr[5], 0);\n\
00195 constraint int_eq(step_prod_attr[6], 0);\n\
00196 constraint int_eq(step_prod_attr[25], 1);\n\
00197 constraint int_eq(step_prod_attr[26], 1);\n\
00198 constraint int_eq(step_prod_attr[27], 0);\n\
00199 constraint int_eq(step_prod_attr[28], 1);\n\
00200 constraint int_eq(step_prod_attr[29], 0);\n\
00201 constraint int_eq(step_prod_attr[30], 1);\n\
00202 constraint int_eq(step_prod_mach[1], 1);\n\
00203 constraint int_eq(step_prod_mach[2], 1);\n\
00204 constraint int_eq(step_prod_mach[9], 5);\n\
00205 constraint int_eq(step_prod_mach[10], 5);\n\
00206 constraint int_eq_reif(step_prod_mach[1], 2, BOOL____00065) :: defines_var(BOOL____00065);\n\
00207 constraint int_eq_reif(step_prod_mach[1], 3, BOOL____00067) :: defines_var(BOOL____00067);\n\
00208 constraint int_eq_reif(step_prod_mach[1], 4, BOOL____00069) :: defines_var(BOOL____00069);\n\
00209 constraint int_eq_reif(step_prod_mach[3], 2, BOOL____00071) :: defines_var(BOOL____00071);\n\
00210 constraint int_eq_reif(step_prod_mach[3], 3, BOOL____00073) :: defines_var(BOOL____00073);\n\
00211 constraint int_eq_reif(step_prod_mach[3], 4, BOOL____00075) :: defines_var(BOOL____00075);\n\
00212 constraint int_eq_reif(step_prod_mach[5], 2, BOOL____00077) :: defines_var(BOOL____00077);\n\
00213 constraint int_eq_reif(step_prod_mach[5], 3, BOOL____00079) :: defines_var(BOOL____00079);\n\
00214 constraint int_eq_reif(step_prod_mach[5], 4, BOOL____00081) :: defines_var(BOOL____00081);\n\
00215 constraint int_eq_reif(step_prod_mach[7], 2, BOOL____00083) :: defines_var(BOOL____00083);\n\
00216 constraint int_eq_reif(step_prod_mach[7], 3, BOOL____00085) :: defines_var(BOOL____00085);\n\
00217 constraint int_eq_reif(step_prod_mach[7], 4, BOOL____00087) :: defines_var(BOOL____00087);\n\
00218 constraint int_eq_reif(step_prod_mach[9], 2, BOOL____00089) :: defines_var(BOOL____00089);\n\
00219 constraint int_eq_reif(step_prod_mach[9], 3, BOOL____00091) :: defines_var(BOOL____00091);\n\
00220 constraint int_eq_reif(step_prod_mach[9], 4, BOOL____00093) :: defines_var(BOOL____00093);\n\
00221 constraint int_le(step_prod_attr[1], step_prod_attr[7]);\n\
00222 constraint int_le(step_prod_attr[2], step_prod_attr[8]);\n\
00223 constraint int_le(step_prod_attr[3], step_prod_attr[9]);\n\
00224 constraint int_le(step_prod_attr[4], step_prod_attr[10]);\n\
00225 constraint int_le(step_prod_attr[5], step_prod_attr[11]);\n\
00226 constraint int_le(step_prod_attr[6], step_prod_attr[12]);\n\
00227 constraint int_le(step_prod_attr[7], step_prod_attr[13]);\n\
00228 constraint int_le(step_prod_attr[8], step_prod_attr[14]);\n\
00229 constraint int_le(step_prod_attr[9], step_prod_attr[15]);\n\
00230 constraint int_le(step_prod_attr[10], step_prod_attr[16]);\n\
00231 constraint int_le(step_prod_attr[11], step_prod_attr[17]);\n\
00232 constraint int_le(step_prod_attr[12], step_prod_attr[18]);\n\
00233 constraint int_le(step_prod_attr[13], step_prod_attr[19]);\n\
00234 constraint int_le(step_prod_attr[14], step_prod_attr[20]);\n\
00235 constraint int_le(step_prod_attr[15], step_prod_attr[21]);\n\
00236 constraint int_le(step_prod_attr[16], step_prod_attr[22]);\n\
00237 constraint int_le(step_prod_attr[17], step_prod_attr[23]);\n\
00238 constraint int_le(step_prod_attr[18], step_prod_attr[24]);\n\
00239 constraint int_le(step_prod_attr[19], step_prod_attr[25]);\n\
00240 constraint int_le(step_prod_attr[20], step_prod_attr[26]);\n\
00241 constraint int_le(step_prod_attr[21], step_prod_attr[27]);\n\
00242 constraint int_le(step_prod_attr[22], step_prod_attr[28]);\n\
00243 constraint int_le(step_prod_attr[23], step_prod_attr[29]);\n\
00244 constraint int_le(step_prod_attr[24], step_prod_attr[30]);\n\
00245 constraint int_lin_eq([-1, 3], [INT____00001, step_prod_mach[1]], 2) :: defines_var(INT____00001) :: domain;\n\
00246 constraint int_lin_eq([-1, 3], [INT____00003, step_prod_mach[1]], 1) :: defines_var(INT____00003) :: domain;\n\
00247 constraint int_lin_eq([-1, 3], [INT____00005, step_prod_mach[1]], 0) :: defines_var(INT____00005) :: domain;\n\
00248 constraint int_lin_eq([-1, 3], [INT____00007, step_prod_mach[2]], 2) :: defines_var(INT____00007) :: domain;\n\
00249 constraint int_lin_eq([-1, 3], [INT____00009, step_prod_mach[2]], 1) :: defines_var(INT____00009) :: domain;\n\
00250 constraint int_lin_eq([-1, 3], [INT____00011, step_prod_mach[2]], 0) :: defines_var(INT____00011) :: domain;\n\
00251 constraint int_lin_eq([-1, 3], [INT____00013, step_prod_mach[3]], 2) :: defines_var(INT____00013) :: domain;\n\
00252 constraint int_lin_eq([-1, 3], [INT____00015, step_prod_mach[3]], 1) :: defines_var(INT____00015) :: domain;\n\
00253 constraint int_lin_eq([-1, 3], [INT____00017, step_prod_mach[3]], 0) :: defines_var(INT____00017) :: domain;\n\
00254 constraint int_lin_eq([-1, 3], [INT____00019, step_prod_mach[4]], 2) :: defines_var(INT____00019) :: domain;\n\
00255 constraint int_lin_eq([-1, 3], [INT____00021, step_prod_mach[4]], 1) :: defines_var(INT____00021) :: domain;\n\
00256 constraint int_lin_eq([-1, 3], [INT____00023, step_prod_mach[4]], 0) :: defines_var(INT____00023) :: domain;\n\
00257 constraint int_lin_eq([-1, 3], [INT____00025, step_prod_mach[5]], 2) :: defines_var(INT____00025) :: domain;\n\
00258 constraint int_lin_eq([-1, 3], [INT____00027, step_prod_mach[5]], 1) :: defines_var(INT____00027) :: domain;\n\
00259 constraint int_lin_eq([-1, 3], [INT____00029, step_prod_mach[5]], 0) :: defines_var(INT____00029) :: domain;\n\
00260 constraint int_lin_eq([-1, 3], [INT____00031, step_prod_mach[6]], 2) :: defines_var(INT____00031) :: domain;\n\
00261 constraint int_lin_eq([-1, 3], [INT____00033, step_prod_mach[6]], 1) :: defines_var(INT____00033) :: domain;\n\
00262 constraint int_lin_eq([-1, 3], [INT____00035, step_prod_mach[6]], 0) :: defines_var(INT____00035) :: domain;\n\
00263 constraint int_lin_eq([-1, 3], [INT____00037, step_prod_mach[7]], 2) :: defines_var(INT____00037) :: domain;\n\
00264 constraint int_lin_eq([-1, 3], [INT____00039, step_prod_mach[7]], 1) :: defines_var(INT____00039) :: domain;\n\
00265 constraint int_lin_eq([-1, 3], [INT____00041, step_prod_mach[7]], 0) :: defines_var(INT____00041) :: domain;\n\
00266 constraint int_lin_eq([-1, 3], [INT____00043, step_prod_mach[8]], 2) :: defines_var(INT____00043) :: domain;\n")+
00267 "constraint int_lin_eq([-1, 3], [INT____00045, step_prod_mach[8]], 1) :: defines_var(INT____00045) :: domain;\n\
00268 constraint int_lin_eq([-1, 3], [INT____00047, step_prod_mach[8]], 0) :: defines_var(INT____00047) :: domain;\n\
00269 constraint int_lin_eq([-1, 5, 1], [INT____00049, step_prod_mach[1], step_prod_mach[3]], 5) :: defines_var(INT____00049) :: domain;\n\
00270 constraint int_lin_eq([-1, 5, 1], [INT____00051, step_prod_mach[2], step_prod_mach[4]], 5) :: defines_var(INT____00051) :: domain;\n\
00271 constraint int_lin_eq([-1, 5, 1], [INT____00053, step_prod_mach[3], step_prod_mach[5]], 5) :: defines_var(INT____00053) :: domain;\n\
00272 constraint int_lin_eq([-1, 5, 1], [INT____00055, step_prod_mach[4], step_prod_mach[6]], 5) :: defines_var(INT____00055) :: domain;\n\
00273 constraint int_lin_eq([-1, 5, 1], [INT____00057, step_prod_mach[5], step_prod_mach[7]], 5) :: defines_var(INT____00057) :: domain;\n\
00274 constraint int_lin_eq([-1, 5, 1], [INT____00059, step_prod_mach[6], step_prod_mach[8]], 5) :: defines_var(INT____00059) :: domain;\n\
00275 constraint int_lin_eq([-1, 5, 1], [INT____00061, step_prod_mach[7], step_prod_mach[9]], 5) :: defines_var(INT____00061) :: domain;\n\
00276 constraint int_lin_eq([-1, 5, 1], [INT____00063, step_prod_mach[8], step_prod_mach[10]], 5) :: defines_var(INT____00063) :: domain;\n\
00277 constraint int_lin_le([-1, -1, 1], [INT____00002, step_prod_attr[1], step_prod_attr[7]], 0);\n\
00278 constraint int_lin_le([-1, -1, 1], [INT____00004, step_prod_attr[2], step_prod_attr[8]], 0);\n\
00279 constraint int_lin_le([-1, -1, 1], [INT____00006, step_prod_attr[3], step_prod_attr[9]], 0);\n\
00280 constraint int_lin_le([-1, -1, 1], [INT____00008, step_prod_attr[4], step_prod_attr[10]], 0);\n\
00281 constraint int_lin_le([-1, -1, 1], [INT____00010, step_prod_attr[5], step_prod_attr[11]], 0);\n\
00282 constraint int_lin_le([-1, -1, 1], [INT____00012, step_prod_attr[6], step_prod_attr[12]], 0);\n\
00283 constraint int_lin_le([-1, -1, 1], [INT____00014, step_prod_attr[7], step_prod_attr[13]], 0);\n\
00284 constraint int_lin_le([-1, -1, 1], [INT____00016, step_prod_attr[8], step_prod_attr[14]], 0);\n\
00285 constraint int_lin_le([-1, -1, 1], [INT____00018, step_prod_attr[9], step_prod_attr[15]], 0);\n\
00286 constraint int_lin_le([-1, -1, 1], [INT____00020, step_prod_attr[10], step_prod_attr[16]], 0);\n\
00287 constraint int_lin_le([-1, -1, 1], [INT____00022, step_prod_attr[11], step_prod_attr[17]], 0);\n\
00288 constraint int_lin_le([-1, -1, 1], [INT____00024, step_prod_attr[12], step_prod_attr[18]], 0);\n\
00289 constraint int_lin_le([-1, -1, 1], [INT____00026, step_prod_attr[13], step_prod_attr[19]], 0);\n\
00290 constraint int_lin_le([-1, -1, 1], [INT____00028, step_prod_attr[14], step_prod_attr[20]], 0);\n\
00291 constraint int_lin_le([-1, -1, 1], [INT____00030, step_prod_attr[15], step_prod_attr[21]], 0);\n\
00292 constraint int_lin_le([-1, -1, 1], [INT____00032, step_prod_attr[16], step_prod_attr[22]], 0);\n\
00293 constraint int_lin_le([-1, -1, 1], [INT____00034, step_prod_attr[17], step_prod_attr[23]], 0);\n\
00294 constraint int_lin_le([-1, -1, 1], [INT____00036, step_prod_attr[18], step_prod_attr[24]], 0);\n\
00295 constraint int_lin_le([-1, -1, 1], [INT____00038, step_prod_attr[19], step_prod_attr[25]], 0);\n\
00296 constraint int_lin_le([-1, -1, 1], [INT____00040, step_prod_attr[20], step_prod_attr[26]], 0);\n\
00297 constraint int_lin_le([-1, -1, 1], [INT____00042, step_prod_attr[21], step_prod_attr[27]], 0);\n\
00298 constraint int_lin_le([-1, -1, 1], [INT____00044, step_prod_attr[22], step_prod_attr[28]], 0);\n\
00299 constraint int_lin_le([-1, -1, 1], [INT____00046, step_prod_attr[23], step_prod_attr[29]], 0);\n\
00300 constraint int_lin_le([-1, -1, 1], [INT____00048, step_prod_attr[24], step_prod_attr[30]], 0);\n\
00301 constraint int_ne_reif(step_prod_mach[2], 2, BOOL____00066) :: defines_var(BOOL____00066);\n\
00302 constraint int_ne_reif(step_prod_mach[2], 3, BOOL____00068) :: defines_var(BOOL____00068);\n\
00303 constraint int_ne_reif(step_prod_mach[2], 4, BOOL____00070) :: defines_var(BOOL____00070);\n\
00304 constraint int_ne_reif(step_prod_mach[4], 2, BOOL____00072) :: defines_var(BOOL____00072);\n\
00305 constraint int_ne_reif(step_prod_mach[4], 3, BOOL____00074) :: defines_var(BOOL____00074);\n\
00306 constraint int_ne_reif(step_prod_mach[4], 4, BOOL____00076) :: defines_var(BOOL____00076);\n\
00307 constraint int_ne_reif(step_prod_mach[6], 2, BOOL____00078) :: defines_var(BOOL____00078);\n\
00308 constraint int_ne_reif(step_prod_mach[6], 3, BOOL____00080) :: defines_var(BOOL____00080);\n\
00309 constraint int_ne_reif(step_prod_mach[6], 4, BOOL____00082) :: defines_var(BOOL____00082);\n\
00310 constraint int_ne_reif(step_prod_mach[8], 2, BOOL____00084) :: defines_var(BOOL____00084);\n\
00311 constraint int_ne_reif(step_prod_mach[8], 3, BOOL____00086) :: defines_var(BOOL____00086);\n\
00312 constraint int_ne_reif(step_prod_mach[8], 4, BOOL____00088) :: defines_var(BOOL____00088);\n\
00313 constraint int_ne_reif(step_prod_mach[10], 2, BOOL____00090) :: defines_var(BOOL____00090);\n\
00314 constraint int_ne_reif(step_prod_mach[10], 3, BOOL____00092) :: defines_var(BOOL____00092);\n\
00315 constraint int_ne_reif(step_prod_mach[10], 4, BOOL____00094) :: defines_var(BOOL____00094);\n\
00316 solve satisfy;\n\
00317 ", "step_prod_attr = array3d(1..5, 1..2, 1..3, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1]);\n\
00318 step_prod_mach = array2d(1..5, 1..2, [1, 1, 1, 4, 2, 1, 3, 2, 5, 5]);\n\
00319 ----------\n\
00320 ");
00321 }
00322 };
00323
00324 Create c;
00325 }
00326
00327 }}
00328
00329