Solving non-convex problems
AnsweredHi,
I just saw your webinar about the Gurobi update and how it can solve non-convex functions.
I am not sure if I understood it correctly but does Gurobi only make use of partial B&B or does it also apply then McCormicks envelope?
And if it do apply the envelopes:
I have implemented a non convex problem and then also the mccormick relaxation of this problem. Should I expect the same solution then?
-
Hi Sophia,
I am not sure if I understood it correctly but does Gurobi only make use of partial B&B or does it also apply then McCormicks envelope?
I am not sure what a partial B&B is. Gurobi uses the so-called spatial B&B algorithm where it branches on continuous variables and computes a valid relaxation of the model at each node of the B&B tree very similar to the classical discrete B&B algorithm. In order to construct the relaxation, Gurobi applies the McCormick envelope to every bilinear product or uses tangents/secants for quadratic terms.
I have implemented a non convex problem and then also the mccormick relaxation of this problem. Should I expect the same solution then?
Gurobi applies the McCormick envelopes at every node of the B&B tree. From what you are saying it looks like you applied the McCormick envelopes to your original model, i.e., before branching on any variable. This should be equivalent to the relaxation of the root node constructed by Gurobi if one would exclude Presolve.
Best regards,
Jaromił1 -
Hello Jaromił Najman,
I found that the root relaxation excluding Presolve is apparently not the same as the relaxation that is obtained by just adding the McCormick envelopes.
I assume that Gurobi applies some domain reduction techniques (althoug Presolve=0) before adding the McCormick envelopes (and maybe more?) in order to construct the root relaxation.
In case I am right, is there a way to disable all of these domain reduction / constraint propagation techniques such that the gurobi root relaxation (without cuts and without presolve) is exactly the same as the relaxation obtained only by the McCormick envelopes?
Best regards,
Jan
0 -
Hi Jan,
Setting Presolve=0 should do it. There might be some trivial bound reductions that would still be applied, like variable fixing for example.
Best regards,
Jaromił0 -
Hi Jaromil,
thanks for your quick response.
It would be interesting for me which of these trivial bound reductions are applied in my specific case.
In my instance, I have 15 x-variables, 15 y-variables and product variables z_ij = x_i * y_j, all are bounded by 0 and 1.
Besides the equations for the product variables there are the following constraints:
R0: 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] = 1
R1: x[1] + x[2] + x[3] >= 0.09
R2: x[4] + x[5] + x[6] >= 0.12
R3: x[7] + x[8] + x[9] >= 0.14
R4: x[10] + x[11] + x[12] >= 0.18
R5: x[13] + x[14] + x[15] >= 0.12
R6: x[1] + x[2] + x[3] <= 0.48
R7: x[4] + x[5] + x[6] <= 0.21
R8: x[7] + x[8] + x[9] <= 0.34
R9: x[10] + x[11] + x[12] <= 0.48
R10: x[13] + x[14] + x[15] <= 0.39Can you tell me what the trivial bound reductions are in this case?
Best,
Jan
0 -
Yes. When I solve with Presolve=0 and NodeLimit=0, such that the optimization terminates with the root relaxation without cuts (is that right?), then I get an objective value 4.381421504525e+01, the McCormick relaxation yields 47.18940000000003
Best, Jan
0 -
You should look at the root node relaxation value which is printed directly before the B&B algorithm output. Could you please post the log output you get?
0 -
0
-
Interesting, could you try removing everything except variable bounds and the bilinear terms?
0 -
In this case the values are the same.Jaromił Najman
I have tested the same problem (with all constraints) in SCIP. There I explicitly disabled propagation and then the values are the same. It would be interesting whether there is an analogous possibility for gurobi.
0 -
In this case the values are the same.Jaromił Najman
So there has to be a linear constraint which is somehow exploited before constructing the McCormick envelope. Could you try to find out which one it is and post a minimal model where you see a difference in lower bound with Presolve=0. It is possible that some reduction is not properly turned off when Presolve=0 and it would be good to find out.
0 -
It turned out, that even only
R0: x[1] + x[2] + x[3] <= 0.48
yields a difference in the values.
0 -
Could you please construct a minimal model for which you can observe the difference and share it here. I would like to investigate it then.
0 -
Here is the .lp file
\ LP format - for model browsing. Use MPS format to capture full model detail.
Maximize
1.29 x[1] + 3.91 x[2] - 1.24 x[3] - 0.68 x[4] - 2.74 x[5] - 2.09 x[6]
+ 4.72 x[7] - 1.2 x[8] + 4.61 x[9] + 4.14 x[10] + 0.96 x[11] - 2.4 x[12]
+ 4.81 x[13] - 0.04 x[14] - 0.85 x[15] + 1.29 y[1] + 3.91 y[2]
- 1.24 y[3] - 0.68 y[4] - 2.74 y[5] - 2.09 y[6] + 4.72 y[7] - 1.2 y[8]
+ 4.61 y[9] + 4.14 y[10] + 0.96 y[11] - 2.4 y[12] + 4.81 y[13]
- 0.04 y[14] - 0.85 y[15] + 4.01 z[1,1] - 3.87 z[1,2] - 0.31 z[1,3]
- 2.53 z[1,4] + 0.44 z[1,5] + 0.74 z[1,6] - 4.87 z[1,7] - 2.83 z[1,8]
- 2.21 z[1,9] + 4.16 z[1,10] + 2.66 z[1,11] - 3.4 z[1,12] + 2.97 z[1,13]
- 3.61 z[1,14] + 1.17 z[1,15] - 3.73 z[2,1] - 4.98 z[2,2] + 3.71 z[2,3]
- 2.91 z[2,4] - 2.85 z[2,5] + 4.82 z[2,6] + 3.72 z[2,7] - 2.11 z[2,8]
+ 4.61 z[2,9] + 0.39 z[2,10] + 1.78 z[2,11] - 2.95 z[2,12]
+ 4.41 z[2,13] + 1.91 z[2,14] + 4.67 z[2,15] + 3.94 z[3,1] - 2.01 z[3,2]
- 1.39 z[3,3] - 3.34 z[3,4] - 3.54 z[3,5] - 4.35 z[3,6] - 1.99 z[3,7]
+ 1.03 z[3,8] - 4.97 z[3,9] + 1.78 z[3,10] - 1.62 z[3,11] - 1.9 z[3,12]
+ 3.19 z[3,13] - 0.19 z[3,14] - 1.84 z[3,15] - 0.19 z[4,1] + 2.05 z[4,2]
- 4.43 z[4,3] + 4.75 z[4,4] - 4.77 z[4,5] + 2.5 z[4,6] + 3.45 z[4,7]
- 4.82 z[4,8] + 2.88 z[4,9] - 1.34 z[4,10] + 0.79 z[4,11] - 4.91 z[4,12]
- 4.53 z[4,13] - 3.19 z[4,14] + 4.55 z[4,15] - 3.03 z[5,1] + 2.56 z[5,2]
+ 4.3 z[5,3] + 4.42 z[5,4] - 1.56 z[5,5] - 1.45 z[5,6] + 0.25 z[5,7]
+ 2.76 z[5,8] - 3.92 z[5,9] + 2.48 z[5,10] + 2.97 z[5,11] + 3.6 z[5,12]
- 4.63 z[5,13] + 4.46 z[5,14] - 4.09 z[5,15] - 1.59 z[6,1] + 1.11 z[6,2]
+ 4.18 z[6,3] - 1.6 z[6,4] + 4.24 z[6,5] + 0.45 z[6,6] - 1.88 z[6,7]
- 1.83 z[6,8] - 3.23 z[6,9] - 4.22 z[6,10] - 3.51 z[6,11] + 1.89 z[6,12]
+ 4.97 z[6,13] - 3.38 z[6,14] - 4.51 z[6,15] + 4.87 z[7,1] + 0.34 z[7,2]
- 0.94 z[7,3] - 2.63 z[7,4] + 0.94 z[7,5] + 3.26 z[7,6] - 0.44 z[7,7]
- 0.78 z[7,8] - 4.44 z[7,9] + 4.16 z[7,10] - 4.67 z[7,11] - 0.06 z[7,12]
+ 3.38 z[7,13] - 3.69 z[7,14] + 2.32 z[7,15] + 4.5 z[8,1] + 1.3 z[8,2]
+ 2.88 z[8,3] - 3.93 z[8,4] - 0.65 z[8,5] - 3.51 z[8,6] + 3.45 z[8,7]
- 2.05 z[8,8] - 0.47 z[8,9] + 4.99 z[8,10] + 3.52 z[8,11] + 4.76 z[8,12]
- 0.46 z[8,13] - 0.12 z[8,14] + 2.3 z[8,15] - 0.21 z[9,1] - 2.09 z[9,2]
- 0.96 z[9,3] - 3.53 z[9,4] - 1.23 z[9,5] + 4.88 z[9,6] + 4.6 z[9,7]
+ 1.27 z[9,8] - 0.01 z[9,9] - 1.62 z[9,10] - 4.11 z[9,11] - 2.28 z[9,12]
+ 2.82 z[9,13] + 3.67 z[9,14] - 1.39 z[9,15] + 2.86 z[10,1]
+ 2.75 z[10,2] + 1.95 z[10,3] + 1.64 z[10,4] + 2.6 z[10,5]
- 1.37 z[10,6] + 2.04 z[10,7] - 2.19 z[10,8] - 0.14 z[10,9]
+ 2.7 z[10,10] + 1.91 z[10,11] - 2.06 z[10,12] + 4.46 z[10,13]
+ 1.5 z[10,14] + 0.81 z[10,15] - 4.88 z[11,1] + 0.47 z[11,2]
- 2.49 z[11,3] + 1.72 z[11,4] - 0.37 z[11,5] + 3.17 z[11,6]
+ 1.47 z[11,7] + 2.98 z[11,8] - 1.52 z[11,9] + 1.44 z[11,10]
+ 2.38 z[11,11] + 3.28 z[11,12] - 1.5 z[11,13] + 3.43 z[11,14]
+ 3.7 z[11,15] + 1.88 z[12,1] + 4.76 z[12,2] + 4.57 z[12,3]
+ 0.18 z[12,4] + 0.29 z[12,5] - 3.34 z[12,6] + 3.37 z[12,7]
+ 4.37 z[12,8] - 0.23 z[12,9] + 1.91 z[12,10] + 2.2 z[12,11]
+ 2.3 z[12,12] - 3.28 z[12,13] + 2.8 z[12,14] + 0.81 z[12,15]
+ 1.66 z[13,1] - 0.79 z[13,2] + 1.24 z[13,3] + 2.75 z[13,4]
+ 1.37 z[13,5] + 2.2 z[13,6] - 4.72 z[13,7] - 3.4 z[13,8] - 0.59 z[13,9]
+ 1.5 z[13,10] - 2.81 z[13,11] + 1.86 z[13,12] + 1.31 z[13,13]
- 4.58 z[13,14] - 0.28 z[13,15] - 2.74 z[14,1] - 4.46 z[14,2]
- 3.66 z[14,3] - 1.83 z[14,4] - 3.18 z[14,5] - 3.07 z[14,6]
- 4.64 z[14,7] - 0.35 z[14,8] - 1.2 z[14,9] + 1.12 z[14,10]
+ 0.9 z[14,11] - 2.62 z[14,12] + 4.03 z[14,13] - 4.99 z[14,14]
- 0.95 z[14,15] - 2.21 z[15,1] - 0.9 z[15,2] - 3.85 z[15,3]
+ 3.31 z[15,4] - 1.26 z[15,5] - 4.64 z[15,6] + 1.14 z[15,7]
- 4.05 z[15,8] + 0.45 z[15,9] - 1.61 z[15,10] + 0.81 z[15,11]
+ 4.58 z[15,12] + 3.19 z[15,13] - 0.81 z[15,14] + 3.13 z[15,15]
Subject To
R0: x[1] + x[2] + x[3] <= 0.48
qc0: - z[1,1] + [ x[1] * y[1] ] = 0
qc1: - z[1,2] + [ x[1] * y[2] ] = 0
qc2: - z[1,3] + [ x[1] * y[3] ] = 0
qc3: - z[1,4] + [ x[1] * y[4] ] = 0
qc4: - z[1,5] + [ x[1] * y[5] ] = 0
qc5: - z[1,6] + [ x[1] * y[6] ] = 0
qc6: - z[1,7] + [ x[1] * y[7] ] = 0
qc7: - z[1,8] + [ x[1] * y[8] ] = 0
qc8: - z[1,9] + [ x[1] * y[9] ] = 0
qc9: - z[1,10] + [ x[1] * y[10] ] = 0
qc10: - z[1,11] + [ x[1] * y[11] ] = 0
qc11: - z[1,12] + [ x[1] * y[12] ] = 0
qc12: - z[1,13] + [ x[1] * y[13] ] = 0
qc13: - z[1,14] + [ x[1] * y[14] ] = 0
qc14: - z[1,15] + [ x[1] * y[15] ] = 0
qc15: - z[2,1] + [ x[2] * y[1] ] = 0
qc16: - z[2,2] + [ x[2] * y[2] ] = 0
qc17: - z[2,3] + [ x[2] * y[3] ] = 0
qc18: - z[2,4] + [ x[2] * y[4] ] = 0
qc19: - z[2,5] + [ x[2] * y[5] ] = 0
qc20: - z[2,6] + [ x[2] * y[6] ] = 0
qc21: - z[2,7] + [ x[2] * y[7] ] = 0
qc22: - z[2,8] + [ x[2] * y[8] ] = 0
qc23: - z[2,9] + [ x[2] * y[9] ] = 0
qc24: - z[2,10] + [ x[2] * y[10] ] = 0
qc25: - z[2,11] + [ x[2] * y[11] ] = 0
qc26: - z[2,12] + [ x[2] * y[12] ] = 0
qc27: - z[2,13] + [ x[2] * y[13] ] = 0
qc28: - z[2,14] + [ x[2] * y[14] ] = 0
qc29: - z[2,15] + [ x[2] * y[15] ] = 0
qc30: - z[3,1] + [ x[3] * y[1] ] = 0
qc31: - z[3,2] + [ x[3] * y[2] ] = 0
qc32: - z[3,3] + [ x[3] * y[3] ] = 0
qc33: - z[3,4] + [ x[3] * y[4] ] = 0
qc34: - z[3,5] + [ x[3] * y[5] ] = 0
qc35: - z[3,6] + [ x[3] * y[6] ] = 0
qc36: - z[3,7] + [ x[3] * y[7] ] = 0
qc37: - z[3,8] + [ x[3] * y[8] ] = 0
qc38: - z[3,9] + [ x[3] * y[9] ] = 0
qc39: - z[3,10] + [ x[3] * y[10] ] = 0
qc40: - z[3,11] + [ x[3] * y[11] ] = 0
qc41: - z[3,12] + [ x[3] * y[12] ] = 0
qc42: - z[3,13] + [ x[3] * y[13] ] = 0
qc43: - z[3,14] + [ x[3] * y[14] ] = 0
qc44: - z[3,15] + [ x[3] * y[15] ] = 0
qc45: - z[4,1] + [ x[4] * y[1] ] = 0
qc46: - z[4,2] + [ x[4] * y[2] ] = 0
qc47: - z[4,3] + [ x[4] * y[3] ] = 0
qc48: - z[4,4] + [ x[4] * y[4] ] = 0
qc49: - z[4,5] + [ x[4] * y[5] ] = 0
qc50: - z[4,6] + [ x[4] * y[6] ] = 0
qc51: - z[4,7] + [ x[4] * y[7] ] = 0
qc52: - z[4,8] + [ x[4] * y[8] ] = 0
qc53: - z[4,9] + [ x[4] * y[9] ] = 0
qc54: - z[4,10] + [ x[4] * y[10] ] = 0
qc55: - z[4,11] + [ x[4] * y[11] ] = 0
qc56: - z[4,12] + [ x[4] * y[12] ] = 0
qc57: - z[4,13] + [ x[4] * y[13] ] = 0
qc58: - z[4,14] + [ x[4] * y[14] ] = 0
qc59: - z[4,15] + [ x[4] * y[15] ] = 0
qc60: - z[5,1] + [ x[5] * y[1] ] = 0
qc61: - z[5,2] + [ x[5] * y[2] ] = 0
qc62: - z[5,3] + [ x[5] * y[3] ] = 0
qc63: - z[5,4] + [ x[5] * y[4] ] = 0
qc64: - z[5,5] + [ x[5] * y[5] ] = 0
qc65: - z[5,6] + [ x[5] * y[6] ] = 0
qc66: - z[5,7] + [ x[5] * y[7] ] = 0
qc67: - z[5,8] + [ x[5] * y[8] ] = 0
qc68: - z[5,9] + [ x[5] * y[9] ] = 0
qc69: - z[5,10] + [ x[5] * y[10] ] = 0
qc70: - z[5,11] + [ x[5] * y[11] ] = 0
qc71: - z[5,12] + [ x[5] * y[12] ] = 0
qc72: - z[5,13] + [ x[5] * y[13] ] = 0
qc73: - z[5,14] + [ x[5] * y[14] ] = 0
qc74: - z[5,15] + [ x[5] * y[15] ] = 0
qc75: - z[6,1] + [ x[6] * y[1] ] = 0
qc76: - z[6,2] + [ x[6] * y[2] ] = 0
qc77: - z[6,3] + [ x[6] * y[3] ] = 0
qc78: - z[6,4] + [ x[6] * y[4] ] = 0
qc79: - z[6,5] + [ x[6] * y[5] ] = 0
qc80: - z[6,6] + [ x[6] * y[6] ] = 0
qc81: - z[6,7] + [ x[6] * y[7] ] = 0
qc82: - z[6,8] + [ x[6] * y[8] ] = 0
qc83: - z[6,9] + [ x[6] * y[9] ] = 0
qc84: - z[6,10] + [ x[6] * y[10] ] = 0
qc85: - z[6,11] + [ x[6] * y[11] ] = 0
qc86: - z[6,12] + [ x[6] * y[12] ] = 0
qc87: - z[6,13] + [ x[6] * y[13] ] = 0
qc88: - z[6,14] + [ x[6] * y[14] ] = 0
qc89: - z[6,15] + [ x[6] * y[15] ] = 0
qc90: - z[7,1] + [ x[7] * y[1] ] = 0
qc91: - z[7,2] + [ x[7] * y[2] ] = 0
qc92: - z[7,3] + [ x[7] * y[3] ] = 0
qc93: - z[7,4] + [ x[7] * y[4] ] = 0
qc94: - z[7,5] + [ x[7] * y[5] ] = 0
qc95: - z[7,6] + [ x[7] * y[6] ] = 0
qc96: - z[7,7] + [ x[7] * y[7] ] = 0
qc97: - z[7,8] + [ x[7] * y[8] ] = 0
qc98: - z[7,9] + [ x[7] * y[9] ] = 0
qc99: - z[7,10] + [ x[7] * y[10] ] = 0
qc100: - z[7,11] + [ x[7] * y[11] ] = 0
qc101: - z[7,12] + [ x[7] * y[12] ] = 0
qc102: - z[7,13] + [ x[7] * y[13] ] = 0
qc103: - z[7,14] + [ x[7] * y[14] ] = 0
qc104: - z[7,15] + [ x[7] * y[15] ] = 0
qc105: - z[8,1] + [ x[8] * y[1] ] = 0
qc106: - z[8,2] + [ x[8] * y[2] ] = 0
qc107: - z[8,3] + [ x[8] * y[3] ] = 0
qc108: - z[8,4] + [ x[8] * y[4] ] = 0
qc109: - z[8,5] + [ x[8] * y[5] ] = 0
qc110: - z[8,6] + [ x[8] * y[6] ] = 0
qc111: - z[8,7] + [ x[8] * y[7] ] = 0
qc112: - z[8,8] + [ x[8] * y[8] ] = 0
qc113: - z[8,9] + [ x[8] * y[9] ] = 0
qc114: - z[8,10] + [ x[8] * y[10] ] = 0
qc115: - z[8,11] + [ x[8] * y[11] ] = 0
qc116: - z[8,12] + [ x[8] * y[12] ] = 0
qc117: - z[8,13] + [ x[8] * y[13] ] = 0
qc118: - z[8,14] + [ x[8] * y[14] ] = 0
qc119: - z[8,15] + [ x[8] * y[15] ] = 0
qc120: - z[9,1] + [ x[9] * y[1] ] = 0
qc121: - z[9,2] + [ x[9] * y[2] ] = 0
qc122: - z[9,3] + [ x[9] * y[3] ] = 0
qc123: - z[9,4] + [ x[9] * y[4] ] = 0
qc124: - z[9,5] + [ x[9] * y[5] ] = 0
qc125: - z[9,6] + [ x[9] * y[6] ] = 0
qc126: - z[9,7] + [ x[9] * y[7] ] = 0
qc127: - z[9,8] + [ x[9] * y[8] ] = 0
qc128: - z[9,9] + [ x[9] * y[9] ] = 0
qc129: - z[9,10] + [ x[9] * y[10] ] = 0
qc130: - z[9,11] + [ x[9] * y[11] ] = 0
qc131: - z[9,12] + [ x[9] * y[12] ] = 0
qc132: - z[9,13] + [ x[9] * y[13] ] = 0
qc133: - z[9,14] + [ x[9] * y[14] ] = 0
qc134: - z[9,15] + [ x[9] * y[15] ] = 0
qc135: - z[10,1] + [ x[10] * y[1] ] = 0
qc136: - z[10,2] + [ x[10] * y[2] ] = 0
qc137: - z[10,3] + [ x[10] * y[3] ] = 0
qc138: - z[10,4] + [ x[10] * y[4] ] = 0
qc139: - z[10,5] + [ x[10] * y[5] ] = 0
qc140: - z[10,6] + [ x[10] * y[6] ] = 0
qc141: - z[10,7] + [ x[10] * y[7] ] = 0
qc142: - z[10,8] + [ x[10] * y[8] ] = 0
qc143: - z[10,9] + [ x[10] * y[9] ] = 0
qc144: - z[10,10] + [ x[10] * y[10] ] = 0
qc145: - z[10,11] + [ x[10] * y[11] ] = 0
qc146: - z[10,12] + [ x[10] * y[12] ] = 0
qc147: - z[10,13] + [ x[10] * y[13] ] = 0
qc148: - z[10,14] + [ x[10] * y[14] ] = 0
qc149: - z[10,15] + [ x[10] * y[15] ] = 0
qc150: - z[11,1] + [ x[11] * y[1] ] = 0
qc151: - z[11,2] + [ x[11] * y[2] ] = 0
qc152: - z[11,3] + [ x[11] * y[3] ] = 0
qc153: - z[11,4] + [ x[11] * y[4] ] = 0
qc154: - z[11,5] + [ x[11] * y[5] ] = 0
qc155: - z[11,6] + [ x[11] * y[6] ] = 0
qc156: - z[11,7] + [ x[11] * y[7] ] = 0
qc157: - z[11,8] + [ x[11] * y[8] ] = 0
qc158: - z[11,9] + [ x[11] * y[9] ] = 0
qc159: - z[11,10] + [ x[11] * y[10] ] = 0
qc160: - z[11,11] + [ x[11] * y[11] ] = 0
qc161: - z[11,12] + [ x[11] * y[12] ] = 0
qc162: - z[11,13] + [ x[11] * y[13] ] = 0
qc163: - z[11,14] + [ x[11] * y[14] ] = 0
qc164: - z[11,15] + [ x[11] * y[15] ] = 0
qc165: - z[12,1] + [ x[12] * y[1] ] = 0
qc166: - z[12,2] + [ x[12] * y[2] ] = 0
qc167: - z[12,3] + [ x[12] * y[3] ] = 0
qc168: - z[12,4] + [ x[12] * y[4] ] = 0
qc169: - z[12,5] + [ x[12] * y[5] ] = 0
qc170: - z[12,6] + [ x[12] * y[6] ] = 0
qc171: - z[12,7] + [ x[12] * y[7] ] = 0
qc172: - z[12,8] + [ x[12] * y[8] ] = 0
qc173: - z[12,9] + [ x[12] * y[9] ] = 0
qc174: - z[12,10] + [ x[12] * y[10] ] = 0
qc175: - z[12,11] + [ x[12] * y[11] ] = 0
qc176: - z[12,12] + [ x[12] * y[12] ] = 0
qc177: - z[12,13] + [ x[12] * y[13] ] = 0
qc178: - z[12,14] + [ x[12] * y[14] ] = 0
qc179: - z[12,15] + [ x[12] * y[15] ] = 0
qc180: - z[13,1] + [ x[13] * y[1] ] = 0
qc181: - z[13,2] + [ x[13] * y[2] ] = 0
qc182: - z[13,3] + [ x[13] * y[3] ] = 0
qc183: - z[13,4] + [ x[13] * y[4] ] = 0
qc184: - z[13,5] + [ x[13] * y[5] ] = 0
qc185: - z[13,6] + [ x[13] * y[6] ] = 0
qc186: - z[13,7] + [ x[13] * y[7] ] = 0
qc187: - z[13,8] + [ x[13] * y[8] ] = 0
qc188: - z[13,9] + [ x[13] * y[9] ] = 0
qc189: - z[13,10] + [ x[13] * y[10] ] = 0
qc190: - z[13,11] + [ x[13] * y[11] ] = 0
qc191: - z[13,12] + [ x[13] * y[12] ] = 0
qc192: - z[13,13] + [ x[13] * y[13] ] = 0
qc193: - z[13,14] + [ x[13] * y[14] ] = 0
qc194: - z[13,15] + [ x[13] * y[15] ] = 0
qc195: - z[14,1] + [ x[14] * y[1] ] = 0
qc196: - z[14,2] + [ x[14] * y[2] ] = 0
qc197: - z[14,3] + [ x[14] * y[3] ] = 0
qc198: - z[14,4] + [ x[14] * y[4] ] = 0
qc199: - z[14,5] + [ x[14] * y[5] ] = 0
qc200: - z[14,6] + [ x[14] * y[6] ] = 0
qc201: - z[14,7] + [ x[14] * y[7] ] = 0
qc202: - z[14,8] + [ x[14] * y[8] ] = 0
qc203: - z[14,9] + [ x[14] * y[9] ] = 0
qc204: - z[14,10] + [ x[14] * y[10] ] = 0
qc205: - z[14,11] + [ x[14] * y[11] ] = 0
qc206: - z[14,12] + [ x[14] * y[12] ] = 0
qc207: - z[14,13] + [ x[14] * y[13] ] = 0
qc208: - z[14,14] + [ x[14] * y[14] ] = 0
qc209: - z[14,15] + [ x[14] * y[15] ] = 0
qc210: - z[15,1] + [ x[15] * y[1] ] = 0
qc211: - z[15,2] + [ x[15] * y[2] ] = 0
qc212: - z[15,3] + [ x[15] * y[3] ] = 0
qc213: - z[15,4] + [ x[15] * y[4] ] = 0
qc214: - z[15,5] + [ x[15] * y[5] ] = 0
qc215: - z[15,6] + [ x[15] * y[6] ] = 0
qc216: - z[15,7] + [ x[15] * y[7] ] = 0
qc217: - z[15,8] + [ x[15] * y[8] ] = 0
qc218: - z[15,9] + [ x[15] * y[9] ] = 0
qc219: - z[15,10] + [ x[15] * y[10] ] = 0
qc220: - z[15,11] + [ x[15] * y[11] ] = 0
qc221: - z[15,12] + [ x[15] * y[12] ] = 0
qc222: - z[15,13] + [ x[15] * y[13] ] = 0
qc223: - z[15,14] + [ x[15] * y[14] ] = 0
qc224: - z[15,15] + [ x[15] * y[15] ] = 0
Bounds
x[1] <= 1
x[2] <= 1
x[3] <= 1
x[4] <= 1
x[5] <= 1
x[6] <= 1
x[7] <= 1
x[8] <= 1
x[9] <= 1
x[10] <= 1
x[11] <= 1
x[12] <= 1
x[13] <= 1
x[14] <= 1
x[15] <= 1
y[1] <= 1
y[2] <= 1
y[3] <= 1
y[4] <= 1
y[5] <= 1
y[6] <= 1
y[7] <= 1
y[8] <= 1
y[9] <= 1
y[10] <= 1
y[11] <= 1
y[12] <= 1
y[13] <= 1
y[14] <= 1
y[15] <= 1
z[1,1] <= 1
z[1,2] <= 1
z[1,3] <= 1
z[1,4] <= 1
z[1,5] <= 1
z[1,6] <= 1
z[1,7] <= 1
z[1,8] <= 1
z[1,9] <= 1
z[1,10] <= 1
z[1,11] <= 1
z[1,12] <= 1
z[1,13] <= 1
z[1,14] <= 1
z[1,15] <= 1
z[2,1] <= 1
z[2,2] <= 1
z[2,3] <= 1
z[2,4] <= 1
z[2,5] <= 1
z[2,6] <= 1
z[2,7] <= 1
z[2,8] <= 1
z[2,9] <= 1
z[2,10] <= 1
z[2,11] <= 1
z[2,12] <= 1
z[2,13] <= 1
z[2,14] <= 1
z[2,15] <= 1
z[3,1] <= 1
z[3,2] <= 1
z[3,3] <= 1
z[3,4] <= 1
z[3,5] <= 1
z[3,6] <= 1
z[3,7] <= 1
z[3,8] <= 1
z[3,9] <= 1
z[3,10] <= 1
z[3,11] <= 1
z[3,12] <= 1
z[3,13] <= 1
z[3,14] <= 1
z[3,15] <= 1
z[4,1] <= 1
z[4,2] <= 1
z[4,3] <= 1
z[4,4] <= 1
z[4,5] <= 1
z[4,6] <= 1
z[4,7] <= 1
z[4,8] <= 1
z[4,9] <= 1
z[4,10] <= 1
z[4,11] <= 1
z[4,12] <= 1
z[4,13] <= 1
z[4,14] <= 1
z[4,15] <= 1
z[5,1] <= 1
z[5,2] <= 1
z[5,3] <= 1
z[5,4] <= 1
z[5,5] <= 1
z[5,6] <= 1
z[5,7] <= 1
z[5,8] <= 1
z[5,9] <= 1
z[5,10] <= 1
z[5,11] <= 1
z[5,12] <= 1
z[5,13] <= 1
z[5,14] <= 1
z[5,15] <= 1
z[6,1] <= 1
z[6,2] <= 1
z[6,3] <= 1
z[6,4] <= 1
z[6,5] <= 1
z[6,6] <= 1
z[6,7] <= 1
z[6,8] <= 1
z[6,9] <= 1
z[6,10] <= 1
z[6,11] <= 1
z[6,12] <= 1
z[6,13] <= 1
z[6,14] <= 1
z[6,15] <= 1
z[7,1] <= 1
z[7,2] <= 1
z[7,3] <= 1
z[7,4] <= 1
z[7,5] <= 1
z[7,6] <= 1
z[7,7] <= 1
z[7,8] <= 1
z[7,9] <= 1
z[7,10] <= 1
z[7,11] <= 1
z[7,12] <= 1
z[7,13] <= 1
z[7,14] <= 1
z[7,15] <= 1
z[8,1] <= 1
z[8,2] <= 1
z[8,3] <= 1
z[8,4] <= 1
z[8,5] <= 1
z[8,6] <= 1
z[8,7] <= 1
z[8,8] <= 1
z[8,9] <= 1
z[8,10] <= 1
z[8,11] <= 1
z[8,12] <= 1
z[8,13] <= 1
z[8,14] <= 1
z[8,15] <= 1
z[9,1] <= 1
z[9,2] <= 1
z[9,3] <= 1
z[9,4] <= 1
z[9,5] <= 1
z[9,6] <= 1
z[9,7] <= 1
z[9,8] <= 1
z[9,9] <= 1
z[9,10] <= 1
z[9,11] <= 1
z[9,12] <= 1
z[9,13] <= 1
z[9,14] <= 1
z[9,15] <= 1
z[10,1] <= 1
z[10,2] <= 1
z[10,3] <= 1
z[10,4] <= 1
z[10,5] <= 1
z[10,6] <= 1
z[10,7] <= 1
z[10,8] <= 1
z[10,9] <= 1
z[10,10] <= 1
z[10,11] <= 1
z[10,12] <= 1
z[10,13] <= 1
z[10,14] <= 1
z[10,15] <= 1
z[11,1] <= 1
z[11,2] <= 1
z[11,3] <= 1
z[11,4] <= 1
z[11,5] <= 1
z[11,6] <= 1
z[11,7] <= 1
z[11,8] <= 1
z[11,9] <= 1
z[11,10] <= 1
z[11,11] <= 1
z[11,12] <= 1
z[11,13] <= 1
z[11,14] <= 1
z[11,15] <= 1
z[12,1] <= 1
z[12,2] <= 1
z[12,3] <= 1
z[12,4] <= 1
z[12,5] <= 1
z[12,6] <= 1
z[12,7] <= 1
z[12,8] <= 1
z[12,9] <= 1
z[12,10] <= 1
z[12,11] <= 1
z[12,12] <= 1
z[12,13] <= 1
z[12,14] <= 1
z[12,15] <= 1
z[13,1] <= 1
z[13,2] <= 1
z[13,3] <= 1
z[13,4] <= 1
z[13,5] <= 1
z[13,6] <= 1
z[13,7] <= 1
z[13,8] <= 1
z[13,9] <= 1
z[13,10] <= 1
z[13,11] <= 1
z[13,12] <= 1
z[13,13] <= 1
z[13,14] <= 1
z[13,15] <= 1
z[14,1] <= 1
z[14,2] <= 1
z[14,3] <= 1
z[14,4] <= 1
z[14,5] <= 1
z[14,6] <= 1
z[14,7] <= 1
z[14,8] <= 1
z[14,9] <= 1
z[14,10] <= 1
z[14,11] <= 1
z[14,12] <= 1
z[14,13] <= 1
z[14,14] <= 1
z[14,15] <= 1
z[15,1] <= 1
z[15,2] <= 1
z[15,3] <= 1
z[15,4] <= 1
z[15,5] <= 1
z[15,6] <= 1
z[15,7] <= 1
z[15,8] <= 1
z[15,9] <= 1
z[15,10] <= 1
z[15,11] <= 1
z[15,12] <= 1
z[15,13] <= 1
z[15,14] <= 1
z[15,15] <= 1
End0 -
Thank you, I'll try to find out something. Just to be sure, in your manual McCormick relaxation, you also added the constraint
R0: x[1] + x[2] + x[3] <= 0.48
correct?
0 -
Yes, that is correct.
Thanks for your help!
0 -
Looking at the presolved model, which you can get via the presolve() method, I don't see any bound tightenings on any variable. I can also see all McCormick envelope constraints in the presolved model. Maybe you could check the presolved model against your manual construction? You can write the presolved model to a human readable file via
import gurobipy as gp
m = gp.read("myLP.lp")
m.setParam("NonConvex",2)
m.setParam("Presolve",0)
p = m.presolve()
p.write("presolve.lp")You can open the file \(\texttt{presolve.lp}\) in any standard text editor.
If you leave Presolve turned on, i.e., you remove the line
m.setParam("Presolve",0)
you will see in the presolved model that Gurobi improved some bounds using the R0 inequality.
0 -
It seems that
- the presolved model (having Presolve=0) has R0+all Mccormick envelopes (explicitly) + all product variable equations + trivial bounds 0 and 1
- my manual McCormick relaxation has R0 + all Mccormick envelopes but z_i,j >= 0 (it is implicitly given with the bounds) + trivial bounds 0 and 1
So when one deletes the bilinear equations in the presolved model (with presolve=0) one exactly arrives at the manual McCormick relaxation. But this would mean, that Gurobi makes some different changes, that are independent of presolve, in order to compute the root relaxation, right?Here is the .lp file for the presolved model with presolve=0:
Maximize
1.29 x[1] + 3.91 x[2] - 1.24 x[3] - 0.68 x[4] - 2.74 x[5] - 2.09 x[6]
+ 4.72 x[7] - 1.2 x[8] + 4.61 x[9] + 4.14 x[10] + 0.96 x[11] - 2.4 x[12]
+ 4.81 x[13] - 0.04 x[14] - 0.85 x[15] + 1.29 y[1] + 3.91 y[2]
- 1.24 y[3] - 0.68 y[4] - 2.74 y[5] - 2.09 y[6] + 4.72 y[7] - 1.2 y[8]
+ 4.61 y[9] + 4.14 y[10] + 0.96 y[11] - 2.4 y[12] + 4.81 y[13]
- 0.04 y[14] - 0.85 y[15] + 4.01 z[1,1] - 3.87 z[1,2] - 0.31 z[1,3]
- 2.53 z[1,4] + 0.44 z[1,5] + 0.74 z[1,6] - 4.87 z[1,7] - 2.83 z[1,8]
- 2.21 z[1,9] + 4.16 z[1,10] + 2.66 z[1,11] - 3.4 z[1,12] + 2.97 z[1,13]
- 3.61 z[1,14] + 1.17 z[1,15] - 3.73 z[2,1] - 4.98 z[2,2] + 3.71 z[2,3]
- 2.91 z[2,4] - 2.85 z[2,5] + 4.82 z[2,6] + 3.72 z[2,7] - 2.11 z[2,8]
+ 4.61 z[2,9] + 0.39 z[2,10] + 1.78 z[2,11] - 2.95 z[2,12]
+ 4.41 z[2,13] + 1.91 z[2,14] + 4.67 z[2,15] + 3.94 z[3,1] - 2.01 z[3,2]
- 1.39 z[3,3] - 3.34 z[3,4] - 3.54 z[3,5] - 4.35 z[3,6] - 1.99 z[3,7]
+ 1.03 z[3,8] - 4.97 z[3,9] + 1.78 z[3,10] - 1.62 z[3,11] - 1.9 z[3,12]
+ 3.19 z[3,13] - 0.19 z[3,14] - 1.84 z[3,15] - 0.19 z[4,1] + 2.05 z[4,2]
- 4.43 z[4,3] + 4.75 z[4,4] - 4.77 z[4,5] + 2.5 z[4,6] + 3.45 z[4,7]
- 4.82 z[4,8] + 2.88 z[4,9] - 1.34 z[4,10] + 0.79 z[4,11] - 4.91 z[4,12]
- 4.53 z[4,13] - 3.19 z[4,14] + 4.55 z[4,15] - 3.03 z[5,1] + 2.56 z[5,2]
+ 4.3 z[5,3] + 4.42 z[5,4] - 1.56 z[5,5] - 1.45 z[5,6] + 0.25 z[5,7]
+ 2.76 z[5,8] - 3.92 z[5,9] + 2.48 z[5,10] + 2.97 z[5,11] + 3.6 z[5,12]
- 4.63 z[5,13] + 4.46 z[5,14] - 4.09 z[5,15] - 1.59 z[6,1] + 1.11 z[6,2]
+ 4.18 z[6,3] - 1.6 z[6,4] + 4.24 z[6,5] + 0.45 z[6,6] - 1.88 z[6,7]
- 1.83 z[6,8] - 3.23 z[6,9] - 4.22 z[6,10] - 3.51 z[6,11] + 1.89 z[6,12]
+ 4.97 z[6,13] - 3.38 z[6,14] - 4.51 z[6,15] + 4.87 z[7,1] + 0.34 z[7,2]
- 0.94 z[7,3] - 2.63 z[7,4] + 0.94 z[7,5] + 3.26 z[7,6] - 0.44 z[7,7]
- 0.78 z[7,8] - 4.44 z[7,9] + 4.16 z[7,10] - 4.67 z[7,11] - 0.06 z[7,12]
+ 3.38 z[7,13] - 3.69 z[7,14] + 2.32 z[7,15] + 4.5 z[8,1] + 1.3 z[8,2]
+ 2.88 z[8,3] - 3.93 z[8,4] - 0.65 z[8,5] - 3.51 z[8,6] + 3.45 z[8,7]
- 2.05 z[8,8] - 0.47 z[8,9] + 4.99 z[8,10] + 3.52 z[8,11] + 4.76 z[8,12]
- 0.46 z[8,13] - 0.12 z[8,14] + 2.3 z[8,15] - 0.21 z[9,1] - 2.09 z[9,2]
- 0.96 z[9,3] - 3.53 z[9,4] - 1.23 z[9,5] + 4.88 z[9,6] + 4.6 z[9,7]
+ 1.27 z[9,8] - 0.01 z[9,9] - 1.62 z[9,10] - 4.11 z[9,11] - 2.28 z[9,12]
+ 2.82 z[9,13] + 3.67 z[9,14] - 1.39 z[9,15] + 2.86 z[10,1]
+ 2.75 z[10,2] + 1.95 z[10,3] + 1.64 z[10,4] + 2.6 z[10,5]
- 1.37 z[10,6] + 2.04 z[10,7] - 2.19 z[10,8] - 0.14 z[10,9]
+ 2.7 z[10,10] + 1.91 z[10,11] - 2.06 z[10,12] + 4.46 z[10,13]
+ 1.5 z[10,14] + 0.81 z[10,15] - 4.88 z[11,1] + 0.47 z[11,2]
- 2.49 z[11,3] + 1.72 z[11,4] - 0.37 z[11,5] + 3.17 z[11,6]
+ 1.47 z[11,7] + 2.98 z[11,8] - 1.52 z[11,9] + 1.44 z[11,10]
+ 2.38 z[11,11] + 3.28 z[11,12] - 1.5 z[11,13] + 3.43 z[11,14]
+ 3.7 z[11,15] + 1.88 z[12,1] + 4.76 z[12,2] + 4.57 z[12,3]
+ 0.18 z[12,4] + 0.29 z[12,5] - 3.34 z[12,6] + 3.37 z[12,7]
+ 4.37 z[12,8] - 0.23 z[12,9] + 1.91 z[12,10] + 2.2 z[12,11]
+ 2.3 z[12,12] - 3.28 z[12,13] + 2.8 z[12,14] + 0.81 z[12,15]
+ 1.66 z[13,1] - 0.79 z[13,2] + 1.24 z[13,3] + 2.75 z[13,4]
+ 1.37 z[13,5] + 2.2 z[13,6] - 4.72 z[13,7] - 3.4 z[13,8] - 0.59 z[13,9]
+ 1.5 z[13,10] - 2.81 z[13,11] + 1.86 z[13,12] + 1.31 z[13,13]
- 4.58 z[13,14] - 0.28 z[13,15] - 2.74 z[14,1] - 4.46 z[14,2]
- 3.66 z[14,3] - 1.83 z[14,4] - 3.18 z[14,5] - 3.07 z[14,6]
- 4.64 z[14,7] - 0.35 z[14,8] - 1.2 z[14,9] + 1.12 z[14,10]
+ 0.9 z[14,11] - 2.62 z[14,12] + 4.03 z[14,13] - 4.99 z[14,14]
- 0.95 z[14,15] - 2.21 z[15,1] - 0.9 z[15,2] - 3.85 z[15,3]
+ 3.31 z[15,4] - 1.26 z[15,5] - 4.64 z[15,6] + 1.14 z[15,7]
- 4.05 z[15,8] + 0.45 z[15,9] - 1.61 z[15,10] + 0.81 z[15,11]
+ 4.58 z[15,12] + 3.19 z[15,13] - 0.81 z[15,14] + 3.13 z[15,15]
Subject To
R0: x[1] + x[2] + x[3] <= 0.48
R1: - y[1] + z[1,1] <= 0
R2: - x[1] + z[1,1] <= 0
R3: - z[1,1] <= 0
R4: x[1] + y[1] - z[1,1] <= 1
R5: - y[2] + z[1,2] <= 0
R6: - x[1] + z[1,2] <= 0
R7: - z[1,2] <= 0
R8: x[1] + y[2] - z[1,2] <= 1
R9: - y[3] + z[1,3] <= 0
R10: - x[1] + z[1,3] <= 0
R11: - z[1,3] <= 0
R12: x[1] + y[3] - z[1,3] <= 1
R13: - y[4] + z[1,4] <= 0
R14: - x[1] + z[1,4] <= 0
R15: - z[1,4] <= 0
R16: x[1] + y[4] - z[1,4] <= 1
R17: - y[5] + z[1,5] <= 0
R18: - x[1] + z[1,5] <= 0
R19: - z[1,5] <= 0
R20: x[1] + y[5] - z[1,5] <= 1
R21: - y[6] + z[1,6] <= 0
R22: - x[1] + z[1,6] <= 0
R23: - z[1,6] <= 0
R24: x[1] + y[6] - z[1,6] <= 1
R25: - y[7] + z[1,7] <= 0
R26: - x[1] + z[1,7] <= 0
R27: - z[1,7] <= 0
R28: x[1] + y[7] - z[1,7] <= 1
R29: - y[8] + z[1,8] <= 0
R30: - x[1] + z[1,8] <= 0
R31: - z[1,8] <= 0
R32: x[1] + y[8] - z[1,8] <= 1
R33: - y[9] + z[1,9] <= 0
R34: - x[1] + z[1,9] <= 0
R35: - z[1,9] <= 0
R36: x[1] + y[9] - z[1,9] <= 1
R37: - y[10] + z[1,10] <= 0
R38: - x[1] + z[1,10] <= 0
R39: - z[1,10] <= 0
R40: x[1] + y[10] - z[1,10] <= 1
R41: - y[11] + z[1,11] <= 0
R42: - x[1] + z[1,11] <= 0
R43: - z[1,11] <= 0
R44: x[1] + y[11] - z[1,11] <= 1
R45: - y[12] + z[1,12] <= 0
R46: - x[1] + z[1,12] <= 0
R47: - z[1,12] <= 0
R48: x[1] + y[12] - z[1,12] <= 1
R49: - y[13] + z[1,13] <= 0
R50: - x[1] + z[1,13] <= 0
R51: - z[1,13] <= 0
R52: x[1] + y[13] - z[1,13] <= 1
R53: - y[14] + z[1,14] <= 0
R54: - x[1] + z[1,14] <= 0
R55: - z[1,14] <= 0
R56: x[1] + y[14] - z[1,14] <= 1
R57: - y[15] + z[1,15] <= 0
R58: - x[1] + z[1,15] <= 0
R59: - z[1,15] <= 0
R60: x[1] + y[15] - z[1,15] <= 1
R61: - y[1] + z[2,1] <= 0
R62: - x[2] + z[2,1] <= 0
R63: - z[2,1] <= 0
R64: x[2] + y[1] - z[2,1] <= 1
R65: - y[2] + z[2,2] <= 0
R66: - x[2] + z[2,2] <= 0
R67: - z[2,2] <= 0
R68: x[2] + y[2] - z[2,2] <= 1
R69: - y[3] + z[2,3] <= 0
R70: - x[2] + z[2,3] <= 0
R71: - z[2,3] <= 0
R72: x[2] + y[3] - z[2,3] <= 1
R73: - y[4] + z[2,4] <= 0
R74: - x[2] + z[2,4] <= 0
R75: - z[2,4] <= 0
R76: x[2] + y[4] - z[2,4] <= 1
R77: - y[5] + z[2,5] <= 0
R78: - x[2] + z[2,5] <= 0
R79: - z[2,5] <= 0
R80: x[2] + y[5] - z[2,5] <= 1
R81: - y[6] + z[2,6] <= 0
R82: - x[2] + z[2,6] <= 0
R83: - z[2,6] <= 0
R84: x[2] + y[6] - z[2,6] <= 1
R85: - y[7] + z[2,7] <= 0
R86: - x[2] + z[2,7] <= 0
R87: - z[2,7] <= 0
R88: x[2] + y[7] - z[2,7] <= 1
R89: - y[8] + z[2,8] <= 0
R90: - x[2] + z[2,8] <= 0
R91: - z[2,8] <= 0
R92: x[2] + y[8] - z[2,8] <= 1
R93: - y[9] + z[2,9] <= 0
R94: - x[2] + z[2,9] <= 0
R95: - z[2,9] <= 0
R96: x[2] + y[9] - z[2,9] <= 1
R97: - y[10] + z[2,10] <= 0
R98: - x[2] + z[2,10] <= 0
R99: - z[2,10] <= 0
R100: x[2] + y[10] - z[2,10] <= 1
R101: - y[11] + z[2,11] <= 0
R102: - x[2] + z[2,11] <= 0
R103: - z[2,11] <= 0
R104: x[2] + y[11] - z[2,11] <= 1
R105: - y[12] + z[2,12] <= 0
R106: - x[2] + z[2,12] <= 0
R107: - z[2,12] <= 0
R108: x[2] + y[12] - z[2,12] <= 1
R109: - y[13] + z[2,13] <= 0
R110: - x[2] + z[2,13] <= 0
R111: - z[2,13] <= 0
R112: x[2] + y[13] - z[2,13] <= 1
R113: - y[14] + z[2,14] <= 0
R114: - x[2] + z[2,14] <= 0
R115: - z[2,14] <= 0
R116: x[2] + y[14] - z[2,14] <= 1
R117: - y[15] + z[2,15] <= 0
R118: - x[2] + z[2,15] <= 0
R119: - z[2,15] <= 0
R120: x[2] + y[15] - z[2,15] <= 1
R121: - y[1] + z[3,1] <= 0
R122: - x[3] + z[3,1] <= 0
R123: - z[3,1] <= 0
R124: x[3] + y[1] - z[3,1] <= 1
R125: - y[2] + z[3,2] <= 0
R126: - x[3] + z[3,2] <= 0
R127: - z[3,2] <= 0
R128: x[3] + y[2] - z[3,2] <= 1
R129: - y[3] + z[3,3] <= 0
R130: - x[3] + z[3,3] <= 0
R131: - z[3,3] <= 0
R132: x[3] + y[3] - z[3,3] <= 1
R133: - y[4] + z[3,4] <= 0
R134: - x[3] + z[3,4] <= 0
R135: - z[3,4] <= 0
R136: x[3] + y[4] - z[3,4] <= 1
R137: - y[5] + z[3,5] <= 0
R138: - x[3] + z[3,5] <= 0
R139: - z[3,5] <= 0
R140: x[3] + y[5] - z[3,5] <= 1
R141: - y[6] + z[3,6] <= 0
R142: - x[3] + z[3,6] <= 0
R143: - z[3,6] <= 0
R144: x[3] + y[6] - z[3,6] <= 1
R145: - y[7] + z[3,7] <= 0
R146: - x[3] + z[3,7] <= 0
R147: - z[3,7] <= 0
R148: x[3] + y[7] - z[3,7] <= 1
R149: - y[8] + z[3,8] <= 0
R150: - x[3] + z[3,8] <= 0
R151: - z[3,8] <= 0
R152: x[3] + y[8] - z[3,8] <= 1
R153: - y[9] + z[3,9] <= 0
R154: - x[3] + z[3,9] <= 0
R155: - z[3,9] <= 0
R156: x[3] + y[9] - z[3,9] <= 1
R157: - y[10] + z[3,10] <= 0
R158: - x[3] + z[3,10] <= 0
R159: - z[3,10] <= 0
R160: x[3] + y[10] - z[3,10] <= 1
R161: - y[11] + z[3,11] <= 0
R162: - x[3] + z[3,11] <= 0
R163: - z[3,11] <= 0
R164: x[3] + y[11] - z[3,11] <= 1
R165: - y[12] + z[3,12] <= 0
R166: - x[3] + z[3,12] <= 0
R167: - z[3,12] <= 0
R168: x[3] + y[12] - z[3,12] <= 1
R169: - y[13] + z[3,13] <= 0
R170: - x[3] + z[3,13] <= 0
R171: - z[3,13] <= 0
R172: x[3] + y[13] - z[3,13] <= 1
R173: - y[14] + z[3,14] <= 0
R174: - x[3] + z[3,14] <= 0
R175: - z[3,14] <= 0
R176: x[3] + y[14] - z[3,14] <= 1
R177: - y[15] + z[3,15] <= 0
R178: - x[3] + z[3,15] <= 0
R179: - z[3,15] <= 0
R180: x[3] + y[15] - z[3,15] <= 1
R181: - y[1] + z[4,1] <= 0
R182: - x[4] + z[4,1] <= 0
R183: - z[4,1] <= 0
R184: x[4] + y[1] - z[4,1] <= 1
R185: - y[2] + z[4,2] <= 0
R186: - x[4] + z[4,2] <= 0
R187: - z[4,2] <= 0
R188: x[4] + y[2] - z[4,2] <= 1
R189: - y[3] + z[4,3] <= 0
R190: - x[4] + z[4,3] <= 0
R191: - z[4,3] <= 0
R192: x[4] + y[3] - z[4,3] <= 1
R193: - y[4] + z[4,4] <= 0
R194: - x[4] + z[4,4] <= 0
R195: - z[4,4] <= 0
R196: x[4] + y[4] - z[4,4] <= 1
R197: - y[5] + z[4,5] <= 0
R198: - x[4] + z[4,5] <= 0
R199: - z[4,5] <= 0
R200: x[4] + y[5] - z[4,5] <= 1
R201: - y[6] + z[4,6] <= 0
R202: - x[4] + z[4,6] <= 0
R203: - z[4,6] <= 0
R204: x[4] + y[6] - z[4,6] <= 1
R205: - y[7] + z[4,7] <= 0
R206: - x[4] + z[4,7] <= 0
R207: - z[4,7] <= 0
R208: x[4] + y[7] - z[4,7] <= 1
R209: - y[8] + z[4,8] <= 0
R210: - x[4] + z[4,8] <= 0
R211: - z[4,8] <= 0
R212: x[4] + y[8] - z[4,8] <= 1
R213: - y[9] + z[4,9] <= 0
R214: - x[4] + z[4,9] <= 0
R215: - z[4,9] <= 0
R216: x[4] + y[9] - z[4,9] <= 1
R217: - y[10] + z[4,10] <= 0
R218: - x[4] + z[4,10] <= 0
R219: - z[4,10] <= 0
R220: x[4] + y[10] - z[4,10] <= 1
R221: - y[11] + z[4,11] <= 0
R222: - x[4] + z[4,11] <= 0
R223: - z[4,11] <= 0
R224: x[4] + y[11] - z[4,11] <= 1
R225: - y[12] + z[4,12] <= 0
R226: - x[4] + z[4,12] <= 0
R227: - z[4,12] <= 0
R228: x[4] + y[12] - z[4,12] <= 1
R229: - y[13] + z[4,13] <= 0
R230: - x[4] + z[4,13] <= 0
R231: - z[4,13] <= 0
R232: x[4] + y[13] - z[4,13] <= 1
R233: - y[14] + z[4,14] <= 0
R234: - x[4] + z[4,14] <= 0
R235: - z[4,14] <= 0
R236: x[4] + y[14] - z[4,14] <= 1
R237: - y[15] + z[4,15] <= 0
R238: - x[4] + z[4,15] <= 0
R239: - z[4,15] <= 0
R240: x[4] + y[15] - z[4,15] <= 1
R241: - y[1] + z[5,1] <= 0
R242: - x[5] + z[5,1] <= 0
R243: - z[5,1] <= 0
R244: x[5] + y[1] - z[5,1] <= 1
R245: - y[2] + z[5,2] <= 0
R246: - x[5] + z[5,2] <= 0
R247: - z[5,2] <= 0
R248: x[5] + y[2] - z[5,2] <= 1
R249: - y[3] + z[5,3] <= 0
R250: - x[5] + z[5,3] <= 0
R251: - z[5,3] <= 0
R252: x[5] + y[3] - z[5,3] <= 1
R253: - y[4] + z[5,4] <= 0
R254: - x[5] + z[5,4] <= 0
R255: - z[5,4] <= 0
R256: x[5] + y[4] - z[5,4] <= 1
R257: - y[5] + z[5,5] <= 0
R258: - x[5] + z[5,5] <= 0
R259: - z[5,5] <= 0
R260: x[5] + y[5] - z[5,5] <= 1
R261: - y[6] + z[5,6] <= 0
R262: - x[5] + z[5,6] <= 0
R263: - z[5,6] <= 0
R264: x[5] + y[6] - z[5,6] <= 1
R265: - y[7] + z[5,7] <= 0
R266: - x[5] + z[5,7] <= 0
R267: - z[5,7] <= 0
R268: x[5] + y[7] - z[5,7] <= 1
R269: - y[8] + z[5,8] <= 0
R270: - x[5] + z[5,8] <= 0
R271: - z[5,8] <= 0
R272: x[5] + y[8] - z[5,8] <= 1
R273: - y[9] + z[5,9] <= 0
R274: - x[5] + z[5,9] <= 0
R275: - z[5,9] <= 0
R276: x[5] + y[9] - z[5,9] <= 1
R277: - y[10] + z[5,10] <= 0
R278: - x[5] + z[5,10] <= 0
R279: - z[5,10] <= 0
R280: x[5] + y[10] - z[5,10] <= 1
R281: - y[11] + z[5,11] <= 0
R282: - x[5] + z[5,11] <= 0
R283: - z[5,11] <= 0
R284: x[5] + y[11] - z[5,11] <= 1
R285: - y[12] + z[5,12] <= 0
R286: - x[5] + z[5,12] <= 0
R287: - z[5,12] <= 0
R288: x[5] + y[12] - z[5,12] <= 1
R289: - y[13] + z[5,13] <= 0
R290: - x[5] + z[5,13] <= 0
R291: - z[5,13] <= 0
R292: x[5] + y[13] - z[5,13] <= 1
R293: - y[14] + z[5,14] <= 0
R294: - x[5] + z[5,14] <= 0
R295: - z[5,14] <= 0
R296: x[5] + y[14] - z[5,14] <= 1
R297: - y[15] + z[5,15] <= 0
R298: - x[5] + z[5,15] <= 0
R299: - z[5,15] <= 0
R300: x[5] + y[15] - z[5,15] <= 1
R301: - y[1] + z[6,1] <= 0
R302: - x[6] + z[6,1] <= 0
R303: - z[6,1] <= 0
R304: x[6] + y[1] - z[6,1] <= 1
R305: - y[2] + z[6,2] <= 0
R306: - x[6] + z[6,2] <= 0
R307: - z[6,2] <= 0
R308: x[6] + y[2] - z[6,2] <= 1
R309: - y[3] + z[6,3] <= 0
R310: - x[6] + z[6,3] <= 0
R311: - z[6,3] <= 0
R312: x[6] + y[3] - z[6,3] <= 1
R313: - y[4] + z[6,4] <= 0
R314: - x[6] + z[6,4] <= 0
R315: - z[6,4] <= 0
R316: x[6] + y[4] - z[6,4] <= 1
R317: - y[5] + z[6,5] <= 0
R318: - x[6] + z[6,5] <= 0
R319: - z[6,5] <= 0
R320: x[6] + y[5] - z[6,5] <= 1
R321: - y[6] + z[6,6] <= 0
R322: - x[6] + z[6,6] <= 0
R323: - z[6,6] <= 0
R324: x[6] + y[6] - z[6,6] <= 1
R325: - y[7] + z[6,7] <= 0
R326: - x[6] + z[6,7] <= 0
R327: - z[6,7] <= 0
R328: x[6] + y[7] - z[6,7] <= 1
R329: - y[8] + z[6,8] <= 0
R330: - x[6] + z[6,8] <= 0
R331: - z[6,8] <= 0
R332: x[6] + y[8] - z[6,8] <= 1
R333: - y[9] + z[6,9] <= 0
R334: - x[6] + z[6,9] <= 0
R335: - z[6,9] <= 0
R336: x[6] + y[9] - z[6,9] <= 1
R337: - y[10] + z[6,10] <= 0
R338: - x[6] + z[6,10] <= 0
R339: - z[6,10] <= 0
R340: x[6] + y[10] - z[6,10] <= 1
R341: - y[11] + z[6,11] <= 0
R342: - x[6] + z[6,11] <= 0
R343: - z[6,11] <= 0
R344: x[6] + y[11] - z[6,11] <= 1
R345: - y[12] + z[6,12] <= 0
R346: - x[6] + z[6,12] <= 0
R347: - z[6,12] <= 0
R348: x[6] + y[12] - z[6,12] <= 1
R349: - y[13] + z[6,13] <= 0
R350: - x[6] + z[6,13] <= 0
R351: - z[6,13] <= 0
R352: x[6] + y[13] - z[6,13] <= 1
R353: - y[14] + z[6,14] <= 0
R354: - x[6] + z[6,14] <= 0
R355: - z[6,14] <= 0
R356: x[6] + y[14] - z[6,14] <= 1
R357: - y[15] + z[6,15] <= 0
R358: - x[6] + z[6,15] <= 0
R359: - z[6,15] <= 0
R360: x[6] + y[15] - z[6,15] <= 1
R361: - y[1] + z[7,1] <= 0
R362: - x[7] + z[7,1] <= 0
R363: - z[7,1] <= 0
R364: x[7] + y[1] - z[7,1] <= 1
R365: - y[2] + z[7,2] <= 0
R366: - x[7] + z[7,2] <= 0
R367: - z[7,2] <= 0
R368: x[7] + y[2] - z[7,2] <= 1
R369: - y[3] + z[7,3] <= 0
R370: - x[7] + z[7,3] <= 0
R371: - z[7,3] <= 0
R372: x[7] + y[3] - z[7,3] <= 1
R373: - y[4] + z[7,4] <= 0
R374: - x[7] + z[7,4] <= 0
R375: - z[7,4] <= 0
R376: x[7] + y[4] - z[7,4] <= 1
R377: - y[5] + z[7,5] <= 0
R378: - x[7] + z[7,5] <= 0
R379: - z[7,5] <= 0
R380: x[7] + y[5] - z[7,5] <= 1
R381: - y[6] + z[7,6] <= 0
R382: - x[7] + z[7,6] <= 0
R383: - z[7,6] <= 0
R384: x[7] + y[6] - z[7,6] <= 1
R385: - y[7] + z[7,7] <= 0
R386: - x[7] + z[7,7] <= 0
R387: - z[7,7] <= 0
R388: x[7] + y[7] - z[7,7] <= 1
R389: - y[8] + z[7,8] <= 0
R390: - x[7] + z[7,8] <= 0
R391: - z[7,8] <= 0
R392: x[7] + y[8] - z[7,8] <= 1
R393: - y[9] + z[7,9] <= 0
R394: - x[7] + z[7,9] <= 0
R395: - z[7,9] <= 0
R396: x[7] + y[9] - z[7,9] <= 1
R397: - y[10] + z[7,10] <= 0
R398: - x[7] + z[7,10] <= 0
R399: - z[7,10] <= 0
R400: x[7] + y[10] - z[7,10] <= 1
R401: - y[11] + z[7,11] <= 0
R402: - x[7] + z[7,11] <= 0
R403: - z[7,11] <= 0
R404: x[7] + y[11] - z[7,11] <= 1
R405: - y[12] + z[7,12] <= 0
R406: - x[7] + z[7,12] <= 0
R407: - z[7,12] <= 0
R408: x[7] + y[12] - z[7,12] <= 1
R409: - y[13] + z[7,13] <= 0
R410: - x[7] + z[7,13] <= 0
R411: - z[7,13] <= 0
R412: x[7] + y[13] - z[7,13] <= 1
R413: - y[14] + z[7,14] <= 0
R414: - x[7] + z[7,14] <= 0
R415: - z[7,14] <= 0
R416: x[7] + y[14] - z[7,14] <= 1
R417: - y[15] + z[7,15] <= 0
R418: - x[7] + z[7,15] <= 0
R419: - z[7,15] <= 0
R420: x[7] + y[15] - z[7,15] <= 1
R421: - y[1] + z[8,1] <= 0
R422: - x[8] + z[8,1] <= 0
R423: - z[8,1] <= 0
R424: x[8] + y[1] - z[8,1] <= 1
R425: - y[2] + z[8,2] <= 0
R426: - x[8] + z[8,2] <= 0
R427: - z[8,2] <= 0
R428: x[8] + y[2] - z[8,2] <= 1
R429: - y[3] + z[8,3] <= 0
R430: - x[8] + z[8,3] <= 0
R431: - z[8,3] <= 0
R432: x[8] + y[3] - z[8,3] <= 1
R433: - y[4] + z[8,4] <= 0
R434: - x[8] + z[8,4] <= 0
R435: - z[8,4] <= 0
R436: x[8] + y[4] - z[8,4] <= 1
R437: - y[5] + z[8,5] <= 0
R438: - x[8] + z[8,5] <= 0
R439: - z[8,5] <= 0
R440: x[8] + y[5] - z[8,5] <= 1
R441: - y[6] + z[8,6] <= 0
R442: - x[8] + z[8,6] <= 0
R443: - z[8,6] <= 0
R444: x[8] + y[6] - z[8,6] <= 1
R445: - y[7] + z[8,7] <= 0
R446: - x[8] + z[8,7] <= 0
R447: - z[8,7] <= 0
R448: x[8] + y[7] - z[8,7] <= 1
R449: - y[8] + z[8,8] <= 0
R450: - x[8] + z[8,8] <= 0
R451: - z[8,8] <= 0
R452: x[8] + y[8] - z[8,8] <= 1
R453: - y[9] + z[8,9] <= 0
R454: - x[8] + z[8,9] <= 0
R455: - z[8,9] <= 0
R456: x[8] + y[9] - z[8,9] <= 1
R457: - y[10] + z[8,10] <= 0
R458: - x[8] + z[8,10] <= 0
R459: - z[8,10] <= 0
R460: x[8] + y[10] - z[8,10] <= 1
R461: - y[11] + z[8,11] <= 0
R462: - x[8] + z[8,11] <= 0
R463: - z[8,11] <= 0
R464: x[8] + y[11] - z[8,11] <= 1
R465: - y[12] + z[8,12] <= 0
R466: - x[8] + z[8,12] <= 0
R467: - z[8,12] <= 0
R468: x[8] + y[12] - z[8,12] <= 1
R469: - y[13] + z[8,13] <= 0
R470: - x[8] + z[8,13] <= 0
R471: - z[8,13] <= 0
R472: x[8] + y[13] - z[8,13] <= 1
R473: - y[14] + z[8,14] <= 0
R474: - x[8] + z[8,14] <= 0
R475: - z[8,14] <= 0
R476: x[8] + y[14] - z[8,14] <= 1
R477: - y[15] + z[8,15] <= 0
R478: - x[8] + z[8,15] <= 0
R479: - z[8,15] <= 0
R480: x[8] + y[15] - z[8,15] <= 1
R481: - y[1] + z[9,1] <= 0
R482: - x[9] + z[9,1] <= 0
R483: - z[9,1] <= 0
R484: x[9] + y[1] - z[9,1] <= 1
R485: - y[2] + z[9,2] <= 0
R486: - x[9] + z[9,2] <= 0
R487: - z[9,2] <= 0
R488: x[9] + y[2] - z[9,2] <= 1
R489: - y[3] + z[9,3] <= 0
R490: - x[9] + z[9,3] <= 0
R491: - z[9,3] <= 0
R492: x[9] + y[3] - z[9,3] <= 1
R493: - y[4] + z[9,4] <= 0
R494: - x[9] + z[9,4] <= 0
R495: - z[9,4] <= 0
R496: x[9] + y[4] - z[9,4] <= 1
R497: - y[5] + z[9,5] <= 0
R498: - x[9] + z[9,5] <= 0
R499: - z[9,5] <= 0
R500: x[9] + y[5] - z[9,5] <= 1
R501: - y[6] + z[9,6] <= 0
R502: - x[9] + z[9,6] <= 0
R503: - z[9,6] <= 0
R504: x[9] + y[6] - z[9,6] <= 1
R505: - y[7] + z[9,7] <= 0
R506: - x[9] + z[9,7] <= 0
R507: - z[9,7] <= 0
R508: x[9] + y[7] - z[9,7] <= 1
R509: - y[8] + z[9,8] <= 0
R510: - x[9] + z[9,8] <= 0
R511: - z[9,8] <= 0
R512: x[9] + y[8] - z[9,8] <= 1
R513: - y[9] + z[9,9] <= 0
R514: - x[9] + z[9,9] <= 0
R515: - z[9,9] <= 0
R516: x[9] + y[9] - z[9,9] <= 1
R517: - y[10] + z[9,10] <= 0
R518: - x[9] + z[9,10] <= 0
R519: - z[9,10] <= 0
R520: x[9] + y[10] - z[9,10] <= 1
R521: - y[11] + z[9,11] <= 0
R522: - x[9] + z[9,11] <= 0
R523: - z[9,11] <= 0
R524: x[9] + y[11] - z[9,11] <= 1
R525: - y[12] + z[9,12] <= 0
R526: - x[9] + z[9,12] <= 0
R527: - z[9,12] <= 0
R528: x[9] + y[12] - z[9,12] <= 1
R529: - y[13] + z[9,13] <= 0
R530: - x[9] + z[9,13] <= 0
R531: - z[9,13] <= 0
R532: x[9] + y[13] - z[9,13] <= 1
R533: - y[14] + z[9,14] <= 0
R534: - x[9] + z[9,14] <= 0
R535: - z[9,14] <= 0
R536: x[9] + y[14] - z[9,14] <= 1
R537: - y[15] + z[9,15] <= 0
R538: - x[9] + z[9,15] <= 0
R539: - z[9,15] <= 0
R540: x[9] + y[15] - z[9,15] <= 1
R541: - y[1] + z[10,1] <= 0
R542: - x[10] + z[10,1] <= 0
R543: - z[10,1] <= 0
R544: x[10] + y[1] - z[10,1] <= 1
R545: - y[2] + z[10,2] <= 0
R546: - x[10] + z[10,2] <= 0
R547: - z[10,2] <= 0
R548: x[10] + y[2] - z[10,2] <= 1
R549: - y[3] + z[10,3] <= 0
R550: - x[10] + z[10,3] <= 0
R551: - z[10,3] <= 0
R552: x[10] + y[3] - z[10,3] <= 1
R553: - y[4] + z[10,4] <= 0
R554: - x[10] + z[10,4] <= 0
R555: - z[10,4] <= 0
R556: x[10] + y[4] - z[10,4] <= 1
R557: - y[5] + z[10,5] <= 0
R558: - x[10] + z[10,5] <= 0
R559: - z[10,5] <= 0
R560: x[10] + y[5] - z[10,5] <= 1
R561: - y[6] + z[10,6] <= 0
R562: - x[10] + z[10,6] <= 0
R563: - z[10,6] <= 0
R564: x[10] + y[6] - z[10,6] <= 1
R565: - y[7] + z[10,7] <= 0
R566: - x[10] + z[10,7] <= 0
R567: - z[10,7] <= 0
R568: x[10] + y[7] - z[10,7] <= 1
R569: - y[8] + z[10,8] <= 0
R570: - x[10] + z[10,8] <= 0
R571: - z[10,8] <= 0
R572: x[10] + y[8] - z[10,8] <= 1
R573: - y[9] + z[10,9] <= 0
R574: - x[10] + z[10,9] <= 0
R575: - z[10,9] <= 0
R576: x[10] + y[9] - z[10,9] <= 1
R577: - y[10] + z[10,10] <= 0
R578: - x[10] + z[10,10] <= 0
R579: - z[10,10] <= 0
R580: x[10] + y[10] - z[10,10] <= 1
R581: - y[11] + z[10,11] <= 0
R582: - x[10] + z[10,11] <= 0
R583: - z[10,11] <= 0
R584: x[10] + y[11] - z[10,11] <= 1
R585: - y[12] + z[10,12] <= 0
R586: - x[10] + z[10,12] <= 0
R587: - z[10,12] <= 0
R588: x[10] + y[12] - z[10,12] <= 1
R589: - y[13] + z[10,13] <= 0
R590: - x[10] + z[10,13] <= 0
R591: - z[10,13] <= 0
R592: x[10] + y[13] - z[10,13] <= 1
R593: - y[14] + z[10,14] <= 0
R594: - x[10] + z[10,14] <= 0
R595: - z[10,14] <= 0
R596: x[10] + y[14] - z[10,14] <= 1
R597: - y[15] + z[10,15] <= 0
R598: - x[10] + z[10,15] <= 0
R599: - z[10,15] <= 0
R600: x[10] + y[15] - z[10,15] <= 1
R601: - y[1] + z[11,1] <= 0
R602: - x[11] + z[11,1] <= 0
R603: - z[11,1] <= 0
R604: x[11] + y[1] - z[11,1] <= 1
R605: - y[2] + z[11,2] <= 0
R606: - x[11] + z[11,2] <= 0
R607: - z[11,2] <= 0
R608: x[11] + y[2] - z[11,2] <= 1
R609: - y[3] + z[11,3] <= 0
R610: - x[11] + z[11,3] <= 0
R611: - z[11,3] <= 0
R612: x[11] + y[3] - z[11,3] <= 1
R613: - y[4] + z[11,4] <= 0
R614: - x[11] + z[11,4] <= 0
R615: - z[11,4] <= 0
R616: x[11] + y[4] - z[11,4] <= 1
R617: - y[5] + z[11,5] <= 0
R618: - x[11] + z[11,5] <= 0
R619: - z[11,5] <= 0
R620: x[11] + y[5] - z[11,5] <= 1
R621: - y[6] + z[11,6] <= 0
R622: - x[11] + z[11,6] <= 0
R623: - z[11,6] <= 0
R624: x[11] + y[6] - z[11,6] <= 1
R625: - y[7] + z[11,7] <= 0
R626: - x[11] + z[11,7] <= 0
R627: - z[11,7] <= 0
R628: x[11] + y[7] - z[11,7] <= 1
R629: - y[8] + z[11,8] <= 0
R630: - x[11] + z[11,8] <= 0
R631: - z[11,8] <= 0
R632: x[11] + y[8] - z[11,8] <= 1
R633: - y[9] + z[11,9] <= 0
R634: - x[11] + z[11,9] <= 0
R635: - z[11,9] <= 0
R636: x[11] + y[9] - z[11,9] <= 1
R637: - y[10] + z[11,10] <= 0
R638: - x[11] + z[11,10] <= 0
R639: - z[11,10] <= 0
R640: x[11] + y[10] - z[11,10] <= 1
R641: - y[11] + z[11,11] <= 0
R642: - x[11] + z[11,11] <= 0
R643: - z[11,11] <= 0
R644: x[11] + y[11] - z[11,11] <= 1
R645: - y[12] + z[11,12] <= 0
R646: - x[11] + z[11,12] <= 0
R647: - z[11,12] <= 0
R648: x[11] + y[12] - z[11,12] <= 1
R649: - y[13] + z[11,13] <= 0
R650: - x[11] + z[11,13] <= 0
R651: - z[11,13] <= 0
R652: x[11] + y[13] - z[11,13] <= 1
R653: - y[14] + z[11,14] <= 0
R654: - x[11] + z[11,14] <= 0
R655: - z[11,14] <= 0
R656: x[11] + y[14] - z[11,14] <= 1
R657: - y[15] + z[11,15] <= 0
R658: - x[11] + z[11,15] <= 0
R659: - z[11,15] <= 0
R660: x[11] + y[15] - z[11,15] <= 1
R661: - y[1] + z[12,1] <= 0
R662: - x[12] + z[12,1] <= 0
R663: - z[12,1] <= 0
R664: x[12] + y[1] - z[12,1] <= 1
R665: - y[2] + z[12,2] <= 0
R666: - x[12] + z[12,2] <= 0
R667: - z[12,2] <= 0
R668: x[12] + y[2] - z[12,2] <= 1
R669: - y[3] + z[12,3] <= 0
R670: - x[12] + z[12,3] <= 0
R671: - z[12,3] <= 0
R672: x[12] + y[3] - z[12,3] <= 1
R673: - y[4] + z[12,4] <= 0
R674: - x[12] + z[12,4] <= 0
R675: - z[12,4] <= 0
R676: x[12] + y[4] - z[12,4] <= 1
R677: - y[5] + z[12,5] <= 0
R678: - x[12] + z[12,5] <= 0
R679: - z[12,5] <= 0
R680: x[12] + y[5] - z[12,5] <= 1
R681: - y[6] + z[12,6] <= 0
R682: - x[12] + z[12,6] <= 0
R683: - z[12,6] <= 0
R684: x[12] + y[6] - z[12,6] <= 1
R685: - y[7] + z[12,7] <= 0
R686: - x[12] + z[12,7] <= 0
R687: - z[12,7] <= 0
R688: x[12] + y[7] - z[12,7] <= 1
R689: - y[8] + z[12,8] <= 0
R690: - x[12] + z[12,8] <= 0
R691: - z[12,8] <= 0
R692: x[12] + y[8] - z[12,8] <= 1
R693: - y[9] + z[12,9] <= 0
R694: - x[12] + z[12,9] <= 0
R695: - z[12,9] <= 0
R696: x[12] + y[9] - z[12,9] <= 1
R697: - y[10] + z[12,10] <= 0
R698: - x[12] + z[12,10] <= 0
R699: - z[12,10] <= 0
R700: x[12] + y[10] - z[12,10] <= 1
R701: - y[11] + z[12,11] <= 0
R702: - x[12] + z[12,11] <= 0
R703: - z[12,11] <= 0
R704: x[12] + y[11] - z[12,11] <= 1
R705: - y[12] + z[12,12] <= 0
R706: - x[12] + z[12,12] <= 0
R707: - z[12,12] <= 0
R708: x[12] + y[12] - z[12,12] <= 1
R709: - y[13] + z[12,13] <= 0
R710: - x[12] + z[12,13] <= 0
R711: - z[12,13] <= 0
R712: x[12] + y[13] - z[12,13] <= 1
R713: - y[14] + z[12,14] <= 0
R714: - x[12] + z[12,14] <= 0
R715: - z[12,14] <= 0
R716: x[12] + y[14] - z[12,14] <= 1
R717: - y[15] + z[12,15] <= 0
R718: - x[12] + z[12,15] <= 0
R719: - z[12,15] <= 0
R720: x[12] + y[15] - z[12,15] <= 1
R721: - y[1] + z[13,1] <= 0
R722: - x[13] + z[13,1] <= 0
R723: - z[13,1] <= 0
R724: x[13] + y[1] - z[13,1] <= 1
R725: - y[2] + z[13,2] <= 0
R726: - x[13] + z[13,2] <= 0
R727: - z[13,2] <= 0
R728: x[13] + y[2] - z[13,2] <= 1
R729: - y[3] + z[13,3] <= 0
R730: - x[13] + z[13,3] <= 0
R731: - z[13,3] <= 0
R732: x[13] + y[3] - z[13,3] <= 1
R733: - y[4] + z[13,4] <= 0
R734: - x[13] + z[13,4] <= 0
R735: - z[13,4] <= 0
R736: x[13] + y[4] - z[13,4] <= 1
R737: - y[5] + z[13,5] <= 0
R738: - x[13] + z[13,5] <= 0
R739: - z[13,5] <= 0
R740: x[13] + y[5] - z[13,5] <= 1
R741: - y[6] + z[13,6] <= 0
R742: - x[13] + z[13,6] <= 0
R743: - z[13,6] <= 0
R744: x[13] + y[6] - z[13,6] <= 1
R745: - y[7] + z[13,7] <= 0
R746: - x[13] + z[13,7] <= 0
R747: - z[13,7] <= 0
R748: x[13] + y[7] - z[13,7] <= 1
R749: - y[8] + z[13,8] <= 0
R750: - x[13] + z[13,8] <= 0
R751: - z[13,8] <= 0
R752: x[13] + y[8] - z[13,8] <= 1
R753: - y[9] + z[13,9] <= 0
R754: - x[13] + z[13,9] <= 0
R755: - z[13,9] <= 0
R756: x[13] + y[9] - z[13,9] <= 1
R757: - y[10] + z[13,10] <= 0
R758: - x[13] + z[13,10] <= 0
R759: - z[13,10] <= 0
R760: x[13] + y[10] - z[13,10] <= 1
R761: - y[11] + z[13,11] <= 0
R762: - x[13] + z[13,11] <= 0
R763: - z[13,11] <= 0
R764: x[13] + y[11] - z[13,11] <= 1
R765: - y[12] + z[13,12] <= 0
R766: - x[13] + z[13,12] <= 0
R767: - z[13,12] <= 0
R768: x[13] + y[12] - z[13,12] <= 1
R769: - y[13] + z[13,13] <= 0
R770: - x[13] + z[13,13] <= 0
R771: - z[13,13] <= 0
R772: x[13] + y[13] - z[13,13] <= 1
R773: - y[14] + z[13,14] <= 0
R774: - x[13] + z[13,14] <= 0
R775: - z[13,14] <= 0
R776: x[13] + y[14] - z[13,14] <= 1
R777: - y[15] + z[13,15] <= 0
R778: - x[13] + z[13,15] <= 0
R779: - z[13,15] <= 0
R780: x[13] + y[15] - z[13,15] <= 1
R781: - y[1] + z[14,1] <= 0
R782: - x[14] + z[14,1] <= 0
R783: - z[14,1] <= 0
R784: x[14] + y[1] - z[14,1] <= 1
R785: - y[2] + z[14,2] <= 0
R786: - x[14] + z[14,2] <= 0
R787: - z[14,2] <= 0
R788: x[14] + y[2] - z[14,2] <= 1
R789: - y[3] + z[14,3] <= 0
R790: - x[14] + z[14,3] <= 0
R791: - z[14,3] <= 0
R792: x[14] + y[3] - z[14,3] <= 1
R793: - y[4] + z[14,4] <= 0
R794: - x[14] + z[14,4] <= 0
R795: - z[14,4] <= 0
R796: x[14] + y[4] - z[14,4] <= 1
R797: - y[5] + z[14,5] <= 0
R798: - x[14] + z[14,5] <= 0
R799: - z[14,5] <= 0
R800: x[14] + y[5] - z[14,5] <= 1
R801: - y[6] + z[14,6] <= 0
R802: - x[14] + z[14,6] <= 0
R803: - z[14,6] <= 0
R804: x[14] + y[6] - z[14,6] <= 1
R805: - y[7] + z[14,7] <= 0
R806: - x[14] + z[14,7] <= 0
R807: - z[14,7] <= 0
R808: x[14] + y[7] - z[14,7] <= 1
R809: - y[8] + z[14,8] <= 0
R810: - x[14] + z[14,8] <= 0
R811: - z[14,8] <= 0
R812: x[14] + y[8] - z[14,8] <= 1
R813: - y[9] + z[14,9] <= 0
R814: - x[14] + z[14,9] <= 0
R815: - z[14,9] <= 0
R816: x[14] + y[9] - z[14,9] <= 1
R817: - y[10] + z[14,10] <= 0
R818: - x[14] + z[14,10] <= 0
R819: - z[14,10] <= 0
R820: x[14] + y[10] - z[14,10] <= 1
R821: - y[11] + z[14,11] <= 0
R822: - x[14] + z[14,11] <= 0
R823: - z[14,11] <= 0
R824: x[14] + y[11] - z[14,11] <= 1
R825: - y[12] + z[14,12] <= 0
R826: - x[14] + z[14,12] <= 0
R827: - z[14,12] <= 0
R828: x[14] + y[12] - z[14,12] <= 1
R829: - y[13] + z[14,13] <= 0
R830: - x[14] + z[14,13] <= 0
R831: - z[14,13] <= 0
R832: x[14] + y[13] - z[14,13] <= 1
R833: - y[14] + z[14,14] <= 0
R834: - x[14] + z[14,14] <= 0
R835: - z[14,14] <= 0
R836: x[14] + y[14] - z[14,14] <= 1
R837: - y[15] + z[14,15] <= 0
R838: - x[14] + z[14,15] <= 0
R839: - z[14,15] <= 0
R840: x[14] + y[15] - z[14,15] <= 1
R841: - y[1] + z[15,1] <= 0
R842: - x[15] + z[15,1] <= 0
R843: - z[15,1] <= 0
R844: x[15] + y[1] - z[15,1] <= 1
R845: - y[2] + z[15,2] <= 0
R846: - x[15] + z[15,2] <= 0
R847: - z[15,2] <= 0
R848: x[15] + y[2] - z[15,2] <= 1
R849: - y[3] + z[15,3] <= 0
R850: - x[15] + z[15,3] <= 0
R851: - z[15,3] <= 0
R852: x[15] + y[3] - z[15,3] <= 1
R853: - y[4] + z[15,4] <= 0
R854: - x[15] + z[15,4] <= 0
R855: - z[15,4] <= 0
R856: x[15] + y[4] - z[15,4] <= 1
R857: - y[5] + z[15,5] <= 0
R858: - x[15] + z[15,5] <= 0
R859: - z[15,5] <= 0
R860: x[15] + y[5] - z[15,5] <= 1
R861: - y[6] + z[15,6] <= 0
R862: - x[15] + z[15,6] <= 0
R863: - z[15,6] <= 0
R864: x[15] + y[6] - z[15,6] <= 1
R865: - y[7] + z[15,7] <= 0
R866: - x[15] + z[15,7] <= 0
R867: - z[15,7] <= 0
R868: x[15] + y[7] - z[15,7] <= 1
R869: - y[8] + z[15,8] <= 0
R870: - x[15] + z[15,8] <= 0
R871: - z[15,8] <= 0
R872: x[15] + y[8] - z[15,8] <= 1
R873: - y[9] + z[15,9] <= 0
R874: - x[15] + z[15,9] <= 0
R875: - z[15,9] <= 0
R876: x[15] + y[9] - z[15,9] <= 1
R877: - y[10] + z[15,10] <= 0
R878: - x[15] + z[15,10] <= 0
R879: - z[15,10] <= 0
R880: x[15] + y[10] - z[15,10] <= 1
R881: - y[11] + z[15,11] <= 0
R882: - x[15] + z[15,11] <= 0
R883: - z[15,11] <= 0
R884: x[15] + y[11] - z[15,11] <= 1
R885: - y[12] + z[15,12] <= 0
R886: - x[15] + z[15,12] <= 0
R887: - z[15,12] <= 0
R888: x[15] + y[12] - z[15,12] <= 1
R889: - y[13] + z[15,13] <= 0
R890: - x[15] + z[15,13] <= 0
R891: - z[15,13] <= 0
R892: x[15] + y[13] - z[15,13] <= 1
R893: - y[14] + z[15,14] <= 0
R894: - x[15] + z[15,14] <= 0
R895: - z[15,14] <= 0
R896: x[15] + y[14] - z[15,14] <= 1
R897: - y[15] + z[15,15] <= 0
R898: - x[15] + z[15,15] <= 0
R899: - z[15,15] <= 0
R900: x[15] + y[15] - z[15,15] <= 1
qc0: - z[1,1] + [ x[1] * y[1] ] = 0
qc1: - z[1,2] + [ x[1] * y[2] ] = 0
qc2: - z[1,3] + [ x[1] * y[3] ] = 0
qc3: - z[1,4] + [ x[1] * y[4] ] = 0
qc4: - z[1,5] + [ x[1] * y[5] ] = 0
qc5: - z[1,6] + [ x[1] * y[6] ] = 0
qc6: - z[1,7] + [ x[1] * y[7] ] = 0
qc7: - z[1,8] + [ x[1] * y[8] ] = 0
qc8: - z[1,9] + [ x[1] * y[9] ] = 0
qc9: - z[1,10] + [ x[1] * y[10] ] = 0
qc10: - z[1,11] + [ x[1] * y[11] ] = 0
qc11: - z[1,12] + [ x[1] * y[12] ] = 0
qc12: - z[1,13] + [ x[1] * y[13] ] = 0
qc13: - z[1,14] + [ x[1] * y[14] ] = 0
qc14: - z[1,15] + [ x[1] * y[15] ] = 0
qc15: - z[2,1] + [ x[2] * y[1] ] = 0
qc16: - z[2,2] + [ x[2] * y[2] ] = 0
qc17: - z[2,3] + [ x[2] * y[3] ] = 0
qc18: - z[2,4] + [ x[2] * y[4] ] = 0
qc19: - z[2,5] + [ x[2] * y[5] ] = 0
qc20: - z[2,6] + [ x[2] * y[6] ] = 0
qc21: - z[2,7] + [ x[2] * y[7] ] = 0
qc22: - z[2,8] + [ x[2] * y[8] ] = 0
qc23: - z[2,9] + [ x[2] * y[9] ] = 0
qc24: - z[2,10] + [ x[2] * y[10] ] = 0
qc25: - z[2,11] + [ x[2] * y[11] ] = 0
qc26: - z[2,12] + [ x[2] * y[12] ] = 0
qc27: - z[2,13] + [ x[2] * y[13] ] = 0
qc28: - z[2,14] + [ x[2] * y[14] ] = 0
qc29: - z[2,15] + [ x[2] * y[15] ] = 0
qc30: - z[3,1] + [ x[3] * y[1] ] = 0
qc31: - z[3,2] + [ x[3] * y[2] ] = 0
qc32: - z[3,3] + [ x[3] * y[3] ] = 0
qc33: - z[3,4] + [ x[3] * y[4] ] = 0
qc34: - z[3,5] + [ x[3] * y[5] ] = 0
qc35: - z[3,6] + [ x[3] * y[6] ] = 0
qc36: - z[3,7] + [ x[3] * y[7] ] = 0
qc37: - z[3,8] + [ x[3] * y[8] ] = 0
qc38: - z[3,9] + [ x[3] * y[9] ] = 0
qc39: - z[3,10] + [ x[3] * y[10] ] = 0
qc40: - z[3,11] + [ x[3] * y[11] ] = 0
qc41: - z[3,12] + [ x[3] * y[12] ] = 0
qc42: - z[3,13] + [ x[3] * y[13] ] = 0
qc43: - z[3,14] + [ x[3] * y[14] ] = 0
qc44: - z[3,15] + [ x[3] * y[15] ] = 0
qc45: - z[4,1] + [ x[4] * y[1] ] = 0
qc46: - z[4,2] + [ x[4] * y[2] ] = 0
qc47: - z[4,3] + [ x[4] * y[3] ] = 0
qc48: - z[4,4] + [ x[4] * y[4] ] = 0
qc49: - z[4,5] + [ x[4] * y[5] ] = 0
qc50: - z[4,6] + [ x[4] * y[6] ] = 0
qc51: - z[4,7] + [ x[4] * y[7] ] = 0
qc52: - z[4,8] + [ x[4] * y[8] ] = 0
qc53: - z[4,9] + [ x[4] * y[9] ] = 0
qc54: - z[4,10] + [ x[4] * y[10] ] = 0
qc55: - z[4,11] + [ x[4] * y[11] ] = 0
qc56: - z[4,12] + [ x[4] * y[12] ] = 0
qc57: - z[4,13] + [ x[4] * y[13] ] = 0
qc58: - z[4,14] + [ x[4] * y[14] ] = 0
qc59: - z[4,15] + [ x[4] * y[15] ] = 0
qc60: - z[5,1] + [ x[5] * y[1] ] = 0
qc61: - z[5,2] + [ x[5] * y[2] ] = 0
qc62: - z[5,3] + [ x[5] * y[3] ] = 0
qc63: - z[5,4] + [ x[5] * y[4] ] = 0
qc64: - z[5,5] + [ x[5] * y[5] ] = 0
qc65: - z[5,6] + [ x[5] * y[6] ] = 0
qc66: - z[5,7] + [ x[5] * y[7] ] = 0
qc67: - z[5,8] + [ x[5] * y[8] ] = 0
qc68: - z[5,9] + [ x[5] * y[9] ] = 0
qc69: - z[5,10] + [ x[5] * y[10] ] = 0
qc70: - z[5,11] + [ x[5] * y[11] ] = 0
qc71: - z[5,12] + [ x[5] * y[12] ] = 0
qc72: - z[5,13] + [ x[5] * y[13] ] = 0
qc73: - z[5,14] + [ x[5] * y[14] ] = 0
qc74: - z[5,15] + [ x[5] * y[15] ] = 0
qc75: - z[6,1] + [ x[6] * y[1] ] = 0
qc76: - z[6,2] + [ x[6] * y[2] ] = 0
qc77: - z[6,3] + [ x[6] * y[3] ] = 0
qc78: - z[6,4] + [ x[6] * y[4] ] = 0
qc79: - z[6,5] + [ x[6] * y[5] ] = 0
qc80: - z[6,6] + [ x[6] * y[6] ] = 0
qc81: - z[6,7] + [ x[6] * y[7] ] = 0
qc82: - z[6,8] + [ x[6] * y[8] ] = 0
qc83: - z[6,9] + [ x[6] * y[9] ] = 0
qc84: - z[6,10] + [ x[6] * y[10] ] = 0
qc85: - z[6,11] + [ x[6] * y[11] ] = 0
qc86: - z[6,12] + [ x[6] * y[12] ] = 0
qc87: - z[6,13] + [ x[6] * y[13] ] = 0
qc88: - z[6,14] + [ x[6] * y[14] ] = 0
qc89: - z[6,15] + [ x[6] * y[15] ] = 0
qc90: - z[7,1] + [ x[7] * y[1] ] = 0
qc91: - z[7,2] + [ x[7] * y[2] ] = 0
qc92: - z[7,3] + [ x[7] * y[3] ] = 0
qc93: - z[7,4] + [ x[7] * y[4] ] = 0
qc94: - z[7,5] + [ x[7] * y[5] ] = 0
qc95: - z[7,6] + [ x[7] * y[6] ] = 0
qc96: - z[7,7] + [ x[7] * y[7] ] = 0
qc97: - z[7,8] + [ x[7] * y[8] ] = 0
qc98: - z[7,9] + [ x[7] * y[9] ] = 0
qc99: - z[7,10] + [ x[7] * y[10] ] = 0
qc100: - z[7,11] + [ x[7] * y[11] ] = 0
qc101: - z[7,12] + [ x[7] * y[12] ] = 0
qc102: - z[7,13] + [ x[7] * y[13] ] = 0
qc103: - z[7,14] + [ x[7] * y[14] ] = 0
qc104: - z[7,15] + [ x[7] * y[15] ] = 0
qc105: - z[8,1] + [ x[8] * y[1] ] = 0
qc106: - z[8,2] + [ x[8] * y[2] ] = 0
qc107: - z[8,3] + [ x[8] * y[3] ] = 0
qc108: - z[8,4] + [ x[8] * y[4] ] = 0
qc109: - z[8,5] + [ x[8] * y[5] ] = 0
qc110: - z[8,6] + [ x[8] * y[6] ] = 0
qc111: - z[8,7] + [ x[8] * y[7] ] = 0
qc112: - z[8,8] + [ x[8] * y[8] ] = 0
qc113: - z[8,9] + [ x[8] * y[9] ] = 0
qc114: - z[8,10] + [ x[8] * y[10] ] = 0
qc115: - z[8,11] + [ x[8] * y[11] ] = 0
qc116: - z[8,12] + [ x[8] * y[12] ] = 0
qc117: - z[8,13] + [ x[8] * y[13] ] = 0
qc118: - z[8,14] + [ x[8] * y[14] ] = 0
qc119: - z[8,15] + [ x[8] * y[15] ] = 0
qc120: - z[9,1] + [ x[9] * y[1] ] = 0
qc121: - z[9,2] + [ x[9] * y[2] ] = 0
qc122: - z[9,3] + [ x[9] * y[3] ] = 0
qc123: - z[9,4] + [ x[9] * y[4] ] = 0
qc124: - z[9,5] + [ x[9] * y[5] ] = 0
qc125: - z[9,6] + [ x[9] * y[6] ] = 0
qc126: - z[9,7] + [ x[9] * y[7] ] = 0
qc127: - z[9,8] + [ x[9] * y[8] ] = 0
qc128: - z[9,9] + [ x[9] * y[9] ] = 0
qc129: - z[9,10] + [ x[9] * y[10] ] = 0
qc130: - z[9,11] + [ x[9] * y[11] ] = 0
qc131: - z[9,12] + [ x[9] * y[12] ] = 0
qc132: - z[9,13] + [ x[9] * y[13] ] = 0
qc133: - z[9,14] + [ x[9] * y[14] ] = 0
qc134: - z[9,15] + [ x[9] * y[15] ] = 0
qc135: - z[10,1] + [ x[10] * y[1] ] = 0
qc136: - z[10,2] + [ x[10] * y[2] ] = 0
qc137: - z[10,3] + [ x[10] * y[3] ] = 0
qc138: - z[10,4] + [ x[10] * y[4] ] = 0
qc139: - z[10,5] + [ x[10] * y[5] ] = 0
qc140: - z[10,6] + [ x[10] * y[6] ] = 0
qc141: - z[10,7] + [ x[10] * y[7] ] = 0
qc142: - z[10,8] + [ x[10] * y[8] ] = 0
qc143: - z[10,9] + [ x[10] * y[9] ] = 0
qc144: - z[10,10] + [ x[10] * y[10] ] = 0
qc145: - z[10,11] + [ x[10] * y[11] ] = 0
qc146: - z[10,12] + [ x[10] * y[12] ] = 0
qc147: - z[10,13] + [ x[10] * y[13] ] = 0
qc148: - z[10,14] + [ x[10] * y[14] ] = 0
qc149: - z[10,15] + [ x[10] * y[15] ] = 0
qc150: - z[11,1] + [ x[11] * y[1] ] = 0
qc151: - z[11,2] + [ x[11] * y[2] ] = 0
qc152: - z[11,3] + [ x[11] * y[3] ] = 0
qc153: - z[11,4] + [ x[11] * y[4] ] = 0
qc154: - z[11,5] + [ x[11] * y[5] ] = 0
qc155: - z[11,6] + [ x[11] * y[6] ] = 0
qc156: - z[11,7] + [ x[11] * y[7] ] = 0
qc157: - z[11,8] + [ x[11] * y[8] ] = 0
qc158: - z[11,9] + [ x[11] * y[9] ] = 0
qc159: - z[11,10] + [ x[11] * y[10] ] = 0
qc160: - z[11,11] + [ x[11] * y[11] ] = 0
qc161: - z[11,12] + [ x[11] * y[12] ] = 0
qc162: - z[11,13] + [ x[11] * y[13] ] = 0
qc163: - z[11,14] + [ x[11] * y[14] ] = 0
qc164: - z[11,15] + [ x[11] * y[15] ] = 0
qc165: - z[12,1] + [ x[12] * y[1] ] = 0
qc166: - z[12,2] + [ x[12] * y[2] ] = 0
qc167: - z[12,3] + [ x[12] * y[3] ] = 0
qc168: - z[12,4] + [ x[12] * y[4] ] = 0
qc169: - z[12,5] + [ x[12] * y[5] ] = 0
qc170: - z[12,6] + [ x[12] * y[6] ] = 0
qc171: - z[12,7] + [ x[12] * y[7] ] = 0
qc172: - z[12,8] + [ x[12] * y[8] ] = 0
qc173: - z[12,9] + [ x[12] * y[9] ] = 0
qc174: - z[12,10] + [ x[12] * y[10] ] = 0
qc175: - z[12,11] + [ x[12] * y[11] ] = 0
qc176: - z[12,12] + [ x[12] * y[12] ] = 0
qc177: - z[12,13] + [ x[12] * y[13] ] = 0
qc178: - z[12,14] + [ x[12] * y[14] ] = 0
qc179: - z[12,15] + [ x[12] * y[15] ] = 0
qc180: - z[13,1] + [ x[13] * y[1] ] = 0
qc181: - z[13,2] + [ x[13] * y[2] ] = 0
qc182: - z[13,3] + [ x[13] * y[3] ] = 0
qc183: - z[13,4] + [ x[13] * y[4] ] = 0
qc184: - z[13,5] + [ x[13] * y[5] ] = 0
qc185: - z[13,6] + [ x[13] * y[6] ] = 0
qc186: - z[13,7] + [ x[13] * y[7] ] = 0
qc187: - z[13,8] + [ x[13] * y[8] ] = 0
qc188: - z[13,9] + [ x[13] * y[9] ] = 0
qc189: - z[13,10] + [ x[13] * y[10] ] = 0
qc190: - z[13,11] + [ x[13] * y[11] ] = 0
qc191: - z[13,12] + [ x[13] * y[12] ] = 0
qc192: - z[13,13] + [ x[13] * y[13] ] = 0
qc193: - z[13,14] + [ x[13] * y[14] ] = 0
qc194: - z[13,15] + [ x[13] * y[15] ] = 0
qc195: - z[14,1] + [ x[14] * y[1] ] = 0
qc196: - z[14,2] + [ x[14] * y[2] ] = 0
qc197: - z[14,3] + [ x[14] * y[3] ] = 0
qc198: - z[14,4] + [ x[14] * y[4] ] = 0
qc199: - z[14,5] + [ x[14] * y[5] ] = 0
qc200: - z[14,6] + [ x[14] * y[6] ] = 0
qc201: - z[14,7] + [ x[14] * y[7] ] = 0
qc202: - z[14,8] + [ x[14] * y[8] ] = 0
qc203: - z[14,9] + [ x[14] * y[9] ] = 0
qc204: - z[14,10] + [ x[14] * y[10] ] = 0
qc205: - z[14,11] + [ x[14] * y[11] ] = 0
qc206: - z[14,12] + [ x[14] * y[12] ] = 0
qc207: - z[14,13] + [ x[14] * y[13] ] = 0
qc208: - z[14,14] + [ x[14] * y[14] ] = 0
qc209: - z[14,15] + [ x[14] * y[15] ] = 0
qc210: - z[15,1] + [ x[15] * y[1] ] = 0
qc211: - z[15,2] + [ x[15] * y[2] ] = 0
qc212: - z[15,3] + [ x[15] * y[3] ] = 0
qc213: - z[15,4] + [ x[15] * y[4] ] = 0
qc214: - z[15,5] + [ x[15] * y[5] ] = 0
qc215: - z[15,6] + [ x[15] * y[6] ] = 0
qc216: - z[15,7] + [ x[15] * y[7] ] = 0
qc217: - z[15,8] + [ x[15] * y[8] ] = 0
qc218: - z[15,9] + [ x[15] * y[9] ] = 0
qc219: - z[15,10] + [ x[15] * y[10] ] = 0
qc220: - z[15,11] + [ x[15] * y[11] ] = 0
qc221: - z[15,12] + [ x[15] * y[12] ] = 0
qc222: - z[15,13] + [ x[15] * y[13] ] = 0
qc223: - z[15,14] + [ x[15] * y[14] ] = 0
qc224: - z[15,15] + [ x[15] * y[15] ] = 0
Bounds
x[1] <= 1
x[2] <= 1
x[3] <= 1
x[4] <= 1
x[5] <= 1
x[6] <= 1
x[7] <= 1
x[8] <= 1
x[9] <= 1
x[10] <= 1
x[11] <= 1
x[12] <= 1
x[13] <= 1
x[14] <= 1
x[15] <= 1
y[1] <= 1
y[2] <= 1
y[3] <= 1
y[4] <= 1
y[5] <= 1
y[6] <= 1
y[7] <= 1
y[8] <= 1
y[9] <= 1
y[10] <= 1
y[11] <= 1
y[12] <= 1
y[13] <= 1
y[14] <= 1
y[15] <= 1
z[1,1] <= 1
z[1,2] <= 1
z[1,3] <= 1
z[1,4] <= 1
z[1,5] <= 1
z[1,6] <= 1
z[1,7] <= 1
z[1,8] <= 1
z[1,9] <= 1
z[1,10] <= 1
z[1,11] <= 1
z[1,12] <= 1
z[1,13] <= 1
z[1,14] <= 1
z[1,15] <= 1
z[2,1] <= 1
z[2,2] <= 1
z[2,3] <= 1
z[2,4] <= 1
z[2,5] <= 1
z[2,6] <= 1
z[2,7] <= 1
z[2,8] <= 1
z[2,9] <= 1
z[2,10] <= 1
z[2,11] <= 1
z[2,12] <= 1
z[2,13] <= 1
z[2,14] <= 1
z[2,15] <= 1
z[3,1] <= 1
z[3,2] <= 1
z[3,3] <= 1
z[3,4] <= 1
z[3,5] <= 1
z[3,6] <= 1
z[3,7] <= 1
z[3,8] <= 1
z[3,9] <= 1
z[3,10] <= 1
z[3,11] <= 1
z[3,12] <= 1
z[3,13] <= 1
z[3,14] <= 1
z[3,15] <= 1
z[4,1] <= 1
z[4,2] <= 1
z[4,3] <= 1
z[4,4] <= 1
z[4,5] <= 1
z[4,6] <= 1
z[4,7] <= 1
z[4,8] <= 1
z[4,9] <= 1
z[4,10] <= 1
z[4,11] <= 1
z[4,12] <= 1
z[4,13] <= 1
z[4,14] <= 1
z[4,15] <= 1
z[5,1] <= 1
z[5,2] <= 1
z[5,3] <= 1
z[5,4] <= 1
z[5,5] <= 1
z[5,6] <= 1
z[5,7] <= 1
z[5,8] <= 1
z[5,9] <= 1
z[5,10] <= 1
z[5,11] <= 1
z[5,12] <= 1
z[5,13] <= 1
z[5,14] <= 1
z[5,15] <= 1
z[6,1] <= 1
z[6,2] <= 1
z[6,3] <= 1
z[6,4] <= 1
z[6,5] <= 1
z[6,6] <= 1
z[6,7] <= 1
z[6,8] <= 1
z[6,9] <= 1
z[6,10] <= 1
z[6,11] <= 1
z[6,12] <= 1
z[6,13] <= 1
z[6,14] <= 1
z[6,15] <= 1
z[7,1] <= 1
z[7,2] <= 1
z[7,3] <= 1
z[7,4] <= 1
z[7,5] <= 1
z[7,6] <= 1
z[7,7] <= 1
z[7,8] <= 1
z[7,9] <= 1
z[7,10] <= 1
z[7,11] <= 1
z[7,12] <= 1
z[7,13] <= 1
z[7,14] <= 1
z[7,15] <= 1
z[8,1] <= 1
z[8,2] <= 1
z[8,3] <= 1
z[8,4] <= 1
z[8,5] <= 1
z[8,6] <= 1
z[8,7] <= 1
z[8,8] <= 1
z[8,9] <= 1
z[8,10] <= 1
z[8,11] <= 1
z[8,12] <= 1
z[8,13] <= 1
z[8,14] <= 1
z[8,15] <= 1
z[9,1] <= 1
z[9,2] <= 1
z[9,3] <= 1
z[9,4] <= 1
z[9,5] <= 1
z[9,6] <= 1
z[9,7] <= 1
z[9,8] <= 1
z[9,9] <= 1
z[9,10] <= 1
z[9,11] <= 1
z[9,12] <= 1
z[9,13] <= 1
z[9,14] <= 1
z[9,15] <= 1
z[10,1] <= 1
z[10,2] <= 1
z[10,3] <= 1
z[10,4] <= 1
z[10,5] <= 1
z[10,6] <= 1
z[10,7] <= 1
z[10,8] <= 1
z[10,9] <= 1
z[10,10] <= 1
z[10,11] <= 1
z[10,12] <= 1
z[10,13] <= 1
z[10,14] <= 1
z[10,15] <= 1
z[11,1] <= 1
z[11,2] <= 1
z[11,3] <= 1
z[11,4] <= 1
z[11,5] <= 1
z[11,6] <= 1
z[11,7] <= 1
z[11,8] <= 1
z[11,9] <= 1
z[11,10] <= 1
z[11,11] <= 1
z[11,12] <= 1
z[11,13] <= 1
z[11,14] <= 1
z[11,15] <= 1
z[12,1] <= 1
z[12,2] <= 1
z[12,3] <= 1
z[12,4] <= 1
z[12,5] <= 1
z[12,6] <= 1
z[12,7] <= 1
z[12,8] <= 1
z[12,9] <= 1
z[12,10] <= 1
z[12,11] <= 1
z[12,12] <= 1
z[12,13] <= 1
z[12,14] <= 1
z[12,15] <= 1
z[13,1] <= 1
z[13,2] <= 1
z[13,3] <= 1
z[13,4] <= 1
z[13,5] <= 1
z[13,6] <= 1
z[13,7] <= 1
z[13,8] <= 1
z[13,9] <= 1
z[13,10] <= 1
z[13,11] <= 1
z[13,12] <= 1
z[13,13] <= 1
z[13,14] <= 1
z[13,15] <= 1
z[14,1] <= 1
z[14,2] <= 1
z[14,3] <= 1
z[14,4] <= 1
z[14,5] <= 1
z[14,6] <= 1
z[14,7] <= 1
z[14,8] <= 1
z[14,9] <= 1
z[14,10] <= 1
z[14,11] <= 1
z[14,12] <= 1
z[14,13] <= 1
z[14,14] <= 1
z[14,15] <= 1
z[15,1] <= 1
z[15,2] <= 1
z[15,3] <= 1
z[15,4] <= 1
z[15,5] <= 1
z[15,6] <= 1
z[15,7] <= 1
z[15,8] <= 1
z[15,9] <= 1
z[15,10] <= 1
z[15,11] <= 1
z[15,12] <= 1
z[15,13] <= 1
z[15,14] <= 1
z[15,15] <= 1
EndAnd here is my manual McCormick relaxation:
Maximize
1.29 x[1] + 3.91 x[2] - 1.24 x[3] - 0.68 x[4] - 2.74 x[5] - 2.09 x[6]
+ 4.72 x[7] - 1.2 x[8] + 4.61 x[9] + 4.14 x[10] + 0.96 x[11] - 2.4 x[12]
+ 4.81 x[13] - 0.04 x[14] - 0.85 x[15] + 1.29 y[1] + 3.91 y[2]
- 1.24 y[3] - 0.68 y[4] - 2.74 y[5] - 2.09 y[6] + 4.72 y[7] - 1.2 y[8]
+ 4.61 y[9] + 4.14 y[10] + 0.96 y[11] - 2.4 y[12] + 4.81 y[13]
- 0.04 y[14] - 0.85 y[15] + 4.01 z[1,1] - 3.87 z[1,2] - 0.31 z[1,3]
- 2.53 z[1,4] + 0.44 z[1,5] + 0.74 z[1,6] - 4.87 z[1,7] - 2.83 z[1,8]
- 2.21 z[1,9] + 4.16 z[1,10] + 2.66 z[1,11] - 3.4 z[1,12] + 2.97 z[1,13]
- 3.61 z[1,14] + 1.17 z[1,15] - 3.73 z[2,1] - 4.98 z[2,2] + 3.71 z[2,3]
- 2.91 z[2,4] - 2.85 z[2,5] + 4.82 z[2,6] + 3.72 z[2,7] - 2.11 z[2,8]
+ 4.61 z[2,9] + 0.39 z[2,10] + 1.78 z[2,11] - 2.95 z[2,12]
+ 4.41 z[2,13] + 1.91 z[2,14] + 4.67 z[2,15] + 3.94 z[3,1] - 2.01 z[3,2]
- 1.39 z[3,3] - 3.34 z[3,4] - 3.54 z[3,5] - 4.35 z[3,6] - 1.99 z[3,7]
+ 1.03 z[3,8] - 4.97 z[3,9] + 1.78 z[3,10] - 1.62 z[3,11] - 1.9 z[3,12]
+ 3.19 z[3,13] - 0.19 z[3,14] - 1.84 z[3,15] - 0.19 z[4,1] + 2.05 z[4,2]
- 4.43 z[4,3] + 4.75 z[4,4] - 4.77 z[4,5] + 2.5 z[4,6] + 3.45 z[4,7]
- 4.82 z[4,8] + 2.88 z[4,9] - 1.34 z[4,10] + 0.79 z[4,11] - 4.91 z[4,12]
- 4.53 z[4,13] - 3.19 z[4,14] + 4.55 z[4,15] - 3.03 z[5,1] + 2.56 z[5,2]
+ 4.3 z[5,3] + 4.42 z[5,4] - 1.56 z[5,5] - 1.45 z[5,6] + 0.25 z[5,7]
+ 2.76 z[5,8] - 3.92 z[5,9] + 2.48 z[5,10] + 2.97 z[5,11] + 3.6 z[5,12]
- 4.63 z[5,13] + 4.46 z[5,14] - 4.09 z[5,15] - 1.59 z[6,1] + 1.11 z[6,2]
+ 4.18 z[6,3] - 1.6 z[6,4] + 4.24 z[6,5] + 0.45 z[6,6] - 1.88 z[6,7]
- 1.83 z[6,8] - 3.23 z[6,9] - 4.22 z[6,10] - 3.51 z[6,11] + 1.89 z[6,12]
+ 4.97 z[6,13] - 3.38 z[6,14] - 4.51 z[6,15] + 4.87 z[7,1] + 0.34 z[7,2]
- 0.94 z[7,3] - 2.63 z[7,4] + 0.94 z[7,5] + 3.26 z[7,6] - 0.44 z[7,7]
- 0.78 z[7,8] - 4.44 z[7,9] + 4.16 z[7,10] - 4.67 z[7,11] - 0.06 z[7,12]
+ 3.38 z[7,13] - 3.69 z[7,14] + 2.32 z[7,15] + 4.5 z[8,1] + 1.3 z[8,2]
+ 2.88 z[8,3] - 3.93 z[8,4] - 0.65 z[8,5] - 3.51 z[8,6] + 3.45 z[8,7]
- 2.05 z[8,8] - 0.47 z[8,9] + 4.99 z[8,10] + 3.52 z[8,11] + 4.76 z[8,12]
- 0.46 z[8,13] - 0.12 z[8,14] + 2.3 z[8,15] - 0.21 z[9,1] - 2.09 z[9,2]
- 0.96 z[9,3] - 3.53 z[9,4] - 1.23 z[9,5] + 4.88 z[9,6] + 4.6 z[9,7]
+ 1.27 z[9,8] - 0.01 z[9,9] - 1.62 z[9,10] - 4.11 z[9,11] - 2.28 z[9,12]
+ 2.82 z[9,13] + 3.67 z[9,14] - 1.39 z[9,15] + 2.86 z[10,1]
+ 2.75 z[10,2] + 1.95 z[10,3] + 1.64 z[10,4] + 2.6 z[10,5]
- 1.37 z[10,6] + 2.04 z[10,7] - 2.19 z[10,8] - 0.14 z[10,9]
+ 2.7 z[10,10] + 1.91 z[10,11] - 2.06 z[10,12] + 4.46 z[10,13]
+ 1.5 z[10,14] + 0.81 z[10,15] - 4.88 z[11,1] + 0.47 z[11,2]
- 2.49 z[11,3] + 1.72 z[11,4] - 0.37 z[11,5] + 3.17 z[11,6]
+ 1.47 z[11,7] + 2.98 z[11,8] - 1.52 z[11,9] + 1.44 z[11,10]
+ 2.38 z[11,11] + 3.28 z[11,12] - 1.5 z[11,13] + 3.43 z[11,14]
+ 3.7 z[11,15] + 1.88 z[12,1] + 4.76 z[12,2] + 4.57 z[12,3]
+ 0.18 z[12,4] + 0.29 z[12,5] - 3.34 z[12,6] + 3.37 z[12,7]
+ 4.37 z[12,8] - 0.23 z[12,9] + 1.91 z[12,10] + 2.2 z[12,11]
+ 2.3 z[12,12] - 3.28 z[12,13] + 2.8 z[12,14] + 0.81 z[12,15]
+ 1.66 z[13,1] - 0.79 z[13,2] + 1.24 z[13,3] + 2.75 z[13,4]
+ 1.37 z[13,5] + 2.2 z[13,6] - 4.72 z[13,7] - 3.4 z[13,8] - 0.59 z[13,9]
+ 1.5 z[13,10] - 2.81 z[13,11] + 1.86 z[13,12] + 1.31 z[13,13]
- 4.58 z[13,14] - 0.28 z[13,15] - 2.74 z[14,1] - 4.46 z[14,2]
- 3.66 z[14,3] - 1.83 z[14,4] - 3.18 z[14,5] - 3.07 z[14,6]
- 4.64 z[14,7] - 0.35 z[14,8] - 1.2 z[14,9] + 1.12 z[14,10]
+ 0.9 z[14,11] - 2.62 z[14,12] + 4.03 z[14,13] - 4.99 z[14,14]
- 0.95 z[14,15] - 2.21 z[15,1] - 0.9 z[15,2] - 3.85 z[15,3]
+ 3.31 z[15,4] - 1.26 z[15,5] - 4.64 z[15,6] + 1.14 z[15,7]
- 4.05 z[15,8] + 0.45 z[15,9] - 1.61 z[15,10] + 0.81 z[15,11]
+ 4.58 z[15,12] + 3.19 z[15,13] - 0.81 z[15,14] + 3.13 z[15,15]
Subject To
R0: x[1] + x[2] + x[3] <= 0.48
R1: x[1] + y[1] - z[1,1] <= 1
R2: x[1] + y[2] - z[1,2] <= 1
R3: x[1] + y[3] - z[1,3] <= 1
R4: x[1] + y[4] - z[1,4] <= 1
R5: x[1] + y[5] - z[1,5] <= 1
R6: x[1] + y[6] - z[1,6] <= 1
R7: x[1] + y[7] - z[1,7] <= 1
R8: x[1] + y[8] - z[1,8] <= 1
R9: x[1] + y[9] - z[1,9] <= 1
R10: x[1] + y[10] - z[1,10] <= 1
R11: x[1] + y[11] - z[1,11] <= 1
R12: x[1] + y[12] - z[1,12] <= 1
R13: x[1] + y[13] - z[1,13] <= 1
R14: x[1] + y[14] - z[1,14] <= 1
R15: x[1] + y[15] - z[1,15] <= 1
R16: x[2] + y[1] - z[2,1] <= 1
R17: x[2] + y[2] - z[2,2] <= 1
R18: x[2] + y[3] - z[2,3] <= 1
R19: x[2] + y[4] - z[2,4] <= 1
R20: x[2] + y[5] - z[2,5] <= 1
R21: x[2] + y[6] - z[2,6] <= 1
R22: x[2] + y[7] - z[2,7] <= 1
R23: x[2] + y[8] - z[2,8] <= 1
R24: x[2] + y[9] - z[2,9] <= 1
R25: x[2] + y[10] - z[2,10] <= 1
R26: x[2] + y[11] - z[2,11] <= 1
R27: x[2] + y[12] - z[2,12] <= 1
R28: x[2] + y[13] - z[2,13] <= 1
R29: x[2] + y[14] - z[2,14] <= 1
R30: x[2] + y[15] - z[2,15] <= 1
R31: x[3] + y[1] - z[3,1] <= 1
R32: x[3] + y[2] - z[3,2] <= 1
R33: x[3] + y[3] - z[3,3] <= 1
R34: x[3] + y[4] - z[3,4] <= 1
R35: x[3] + y[5] - z[3,5] <= 1
R36: x[3] + y[6] - z[3,6] <= 1
R37: x[3] + y[7] - z[3,7] <= 1
R38: x[3] + y[8] - z[3,8] <= 1
R39: x[3] + y[9] - z[3,9] <= 1
R40: x[3] + y[10] - z[3,10] <= 1
R41: x[3] + y[11] - z[3,11] <= 1
R42: x[3] + y[12] - z[3,12] <= 1
R43: x[3] + y[13] - z[3,13] <= 1
R44: x[3] + y[14] - z[3,14] <= 1
R45: x[3] + y[15] - z[3,15] <= 1
R46: x[4] + y[1] - z[4,1] <= 1
R47: x[4] + y[2] - z[4,2] <= 1
R48: x[4] + y[3] - z[4,3] <= 1
R49: x[4] + y[4] - z[4,4] <= 1
R50: x[4] + y[5] - z[4,5] <= 1
R51: x[4] + y[6] - z[4,6] <= 1
R52: x[4] + y[7] - z[4,7] <= 1
R53: x[4] + y[8] - z[4,8] <= 1
R54: x[4] + y[9] - z[4,9] <= 1
R55: x[4] + y[10] - z[4,10] <= 1
R56: x[4] + y[11] - z[4,11] <= 1
R57: x[4] + y[12] - z[4,12] <= 1
R58: x[4] + y[13] - z[4,13] <= 1
R59: x[4] + y[14] - z[4,14] <= 1
R60: x[4] + y[15] - z[4,15] <= 1
R61: x[5] + y[1] - z[5,1] <= 1
R62: x[5] + y[2] - z[5,2] <= 1
R63: x[5] + y[3] - z[5,3] <= 1
R64: x[5] + y[4] - z[5,4] <= 1
R65: x[5] + y[5] - z[5,5] <= 1
R66: x[5] + y[6] - z[5,6] <= 1
R67: x[5] + y[7] - z[5,7] <= 1
R68: x[5] + y[8] - z[5,8] <= 1
R69: x[5] + y[9] - z[5,9] <= 1
R70: x[5] + y[10] - z[5,10] <= 1
R71: x[5] + y[11] - z[5,11] <= 1
R72: x[5] + y[12] - z[5,12] <= 1
R73: x[5] + y[13] - z[5,13] <= 1
R74: x[5] + y[14] - z[5,14] <= 1
R75: x[5] + y[15] - z[5,15] <= 1
R76: x[6] + y[1] - z[6,1] <= 1
R77: x[6] + y[2] - z[6,2] <= 1
R78: x[6] + y[3] - z[6,3] <= 1
R79: x[6] + y[4] - z[6,4] <= 1
R80: x[6] + y[5] - z[6,5] <= 1
R81: x[6] + y[6] - z[6,6] <= 1
R82: x[6] + y[7] - z[6,7] <= 1
R83: x[6] + y[8] - z[6,8] <= 1
R84: x[6] + y[9] - z[6,9] <= 1
R85: x[6] + y[10] - z[6,10] <= 1
R86: x[6] + y[11] - z[6,11] <= 1
R87: x[6] + y[12] - z[6,12] <= 1
R88: x[6] + y[13] - z[6,13] <= 1
R89: x[6] + y[14] - z[6,14] <= 1
R90: x[6] + y[15] - z[6,15] <= 1
R91: x[7] + y[1] - z[7,1] <= 1
R92: x[7] + y[2] - z[7,2] <= 1
R93: x[7] + y[3] - z[7,3] <= 1
R94: x[7] + y[4] - z[7,4] <= 1
R95: x[7] + y[5] - z[7,5] <= 1
R96: x[7] + y[6] - z[7,6] <= 1
R97: x[7] + y[7] - z[7,7] <= 1
R98: x[7] + y[8] - z[7,8] <= 1
R99: x[7] + y[9] - z[7,9] <= 1
R100: x[7] + y[10] - z[7,10] <= 1
R101: x[7] + y[11] - z[7,11] <= 1
R102: x[7] + y[12] - z[7,12] <= 1
R103: x[7] + y[13] - z[7,13] <= 1
R104: x[7] + y[14] - z[7,14] <= 1
R105: x[7] + y[15] - z[7,15] <= 1
R106: x[8] + y[1] - z[8,1] <= 1
R107: x[8] + y[2] - z[8,2] <= 1
R108: x[8] + y[3] - z[8,3] <= 1
R109: x[8] + y[4] - z[8,4] <= 1
R110: x[8] + y[5] - z[8,5] <= 1
R111: x[8] + y[6] - z[8,6] <= 1
R112: x[8] + y[7] - z[8,7] <= 1
R113: x[8] + y[8] - z[8,8] <= 1
R114: x[8] + y[9] - z[8,9] <= 1
R115: x[8] + y[10] - z[8,10] <= 1
R116: x[8] + y[11] - z[8,11] <= 1
R117: x[8] + y[12] - z[8,12] <= 1
R118: x[8] + y[13] - z[8,13] <= 1
R119: x[8] + y[14] - z[8,14] <= 1
R120: x[8] + y[15] - z[8,15] <= 1
R121: x[9] + y[1] - z[9,1] <= 1
R122: x[9] + y[2] - z[9,2] <= 1
R123: x[9] + y[3] - z[9,3] <= 1
R124: x[9] + y[4] - z[9,4] <= 1
R125: x[9] + y[5] - z[9,5] <= 1
R126: x[9] + y[6] - z[9,6] <= 1
R127: x[9] + y[7] - z[9,7] <= 1
R128: x[9] + y[8] - z[9,8] <= 1
R129: x[9] + y[9] - z[9,9] <= 1
R130: x[9] + y[10] - z[9,10] <= 1
R131: x[9] + y[11] - z[9,11] <= 1
R132: x[9] + y[12] - z[9,12] <= 1
R133: x[9] + y[13] - z[9,13] <= 1
R134: x[9] + y[14] - z[9,14] <= 1
R135: x[9] + y[15] - z[9,15] <= 1
R136: x[10] + y[1] - z[10,1] <= 1
R137: x[10] + y[2] - z[10,2] <= 1
R138: x[10] + y[3] - z[10,3] <= 1
R139: x[10] + y[4] - z[10,4] <= 1
R140: x[10] + y[5] - z[10,5] <= 1
R141: x[10] + y[6] - z[10,6] <= 1
R142: x[10] + y[7] - z[10,7] <= 1
R143: x[10] + y[8] - z[10,8] <= 1
R144: x[10] + y[9] - z[10,9] <= 1
R145: x[10] + y[10] - z[10,10] <= 1
R146: x[10] + y[11] - z[10,11] <= 1
R147: x[10] + y[12] - z[10,12] <= 1
R148: x[10] + y[13] - z[10,13] <= 1
R149: x[10] + y[14] - z[10,14] <= 1
R150: x[10] + y[15] - z[10,15] <= 1
R151: x[11] + y[1] - z[11,1] <= 1
R152: x[11] + y[2] - z[11,2] <= 1
R153: x[11] + y[3] - z[11,3] <= 1
R154: x[11] + y[4] - z[11,4] <= 1
R155: x[11] + y[5] - z[11,5] <= 1
R156: x[11] + y[6] - z[11,6] <= 1
R157: x[11] + y[7] - z[11,7] <= 1
R158: x[11] + y[8] - z[11,8] <= 1
R159: x[11] + y[9] - z[11,9] <= 1
R160: x[11] + y[10] - z[11,10] <= 1
R161: x[11] + y[11] - z[11,11] <= 1
R162: x[11] + y[12] - z[11,12] <= 1
R163: x[11] + y[13] - z[11,13] <= 1
R164: x[11] + y[14] - z[11,14] <= 1
R165: x[11] + y[15] - z[11,15] <= 1
R166: x[12] + y[1] - z[12,1] <= 1
R167: x[12] + y[2] - z[12,2] <= 1
R168: x[12] + y[3] - z[12,3] <= 1
R169: x[12] + y[4] - z[12,4] <= 1
R170: x[12] + y[5] - z[12,5] <= 1
R171: x[12] + y[6] - z[12,6] <= 1
R172: x[12] + y[7] - z[12,7] <= 1
R173: x[12] + y[8] - z[12,8] <= 1
R174: x[12] + y[9] - z[12,9] <= 1
R175: x[12] + y[10] - z[12,10] <= 1
R176: x[12] + y[11] - z[12,11] <= 1
R177: x[12] + y[12] - z[12,12] <= 1
R178: x[12] + y[13] - z[12,13] <= 1
R179: x[12] + y[14] - z[12,14] <= 1
R180: x[12] + y[15] - z[12,15] <= 1
R181: x[13] + y[1] - z[13,1] <= 1
R182: x[13] + y[2] - z[13,2] <= 1
R183: x[13] + y[3] - z[13,3] <= 1
R184: x[13] + y[4] - z[13,4] <= 1
R185: x[13] + y[5] - z[13,5] <= 1
R186: x[13] + y[6] - z[13,6] <= 1
R187: x[13] + y[7] - z[13,7] <= 1
R188: x[13] + y[8] - z[13,8] <= 1
R189: x[13] + y[9] - z[13,9] <= 1
R190: x[13] + y[10] - z[13,10] <= 1
R191: x[13] + y[11] - z[13,11] <= 1
R192: x[13] + y[12] - z[13,12] <= 1
R193: x[13] + y[13] - z[13,13] <= 1
R194: x[13] + y[14] - z[13,14] <= 1
R195: x[13] + y[15] - z[13,15] <= 1
R196: x[14] + y[1] - z[14,1] <= 1
R197: x[14] + y[2] - z[14,2] <= 1
R198: x[14] + y[3] - z[14,3] <= 1
R199: x[14] + y[4] - z[14,4] <= 1
R200: x[14] + y[5] - z[14,5] <= 1
R201: x[14] + y[6] - z[14,6] <= 1
R202: x[14] + y[7] - z[14,7] <= 1
R203: x[14] + y[8] - z[14,8] <= 1
R204: x[14] + y[9] - z[14,9] <= 1
R205: x[14] + y[10] - z[14,10] <= 1
R206: x[14] + y[11] - z[14,11] <= 1
R207: x[14] + y[12] - z[14,12] <= 1
R208: x[14] + y[13] - z[14,13] <= 1
R209: x[14] + y[14] - z[14,14] <= 1
R210: x[14] + y[15] - z[14,15] <= 1
R211: x[15] + y[1] - z[15,1] <= 1
R212: x[15] + y[2] - z[15,2] <= 1
R213: x[15] + y[3] - z[15,3] <= 1
R214: x[15] + y[4] - z[15,4] <= 1
R215: x[15] + y[5] - z[15,5] <= 1
R216: x[15] + y[6] - z[15,6] <= 1
R217: x[15] + y[7] - z[15,7] <= 1
R218: x[15] + y[8] - z[15,8] <= 1
R219: x[15] + y[9] - z[15,9] <= 1
R220: x[15] + y[10] - z[15,10] <= 1
R221: x[15] + y[11] - z[15,11] <= 1
R222: x[15] + y[12] - z[15,12] <= 1
R223: x[15] + y[13] - z[15,13] <= 1
R224: x[15] + y[14] - z[15,14] <= 1
R225: x[15] + y[15] - z[15,15] <= 1
R226: - x[1] + z[1,1] <= 0
R227: - x[1] + z[1,2] <= 0
R228: - x[1] + z[1,3] <= 0
R229: - x[1] + z[1,4] <= 0
R230: - x[1] + z[1,5] <= 0
R231: - x[1] + z[1,6] <= 0
R232: - x[1] + z[1,7] <= 0
R233: - x[1] + z[1,8] <= 0
R234: - x[1] + z[1,9] <= 0
R235: - x[1] + z[1,10] <= 0
R236: - x[1] + z[1,11] <= 0
R237: - x[1] + z[1,12] <= 0
R238: - x[1] + z[1,13] <= 0
R239: - x[1] + z[1,14] <= 0
R240: - x[1] + z[1,15] <= 0
R241: - x[2] + z[2,1] <= 0
R242: - x[2] + z[2,2] <= 0
R243: - x[2] + z[2,3] <= 0
R244: - x[2] + z[2,4] <= 0
R245: - x[2] + z[2,5] <= 0
R246: - x[2] + z[2,6] <= 0
R247: - x[2] + z[2,7] <= 0
R248: - x[2] + z[2,8] <= 0
R249: - x[2] + z[2,9] <= 0
R250: - x[2] + z[2,10] <= 0
R251: - x[2] + z[2,11] <= 0
R252: - x[2] + z[2,12] <= 0
R253: - x[2] + z[2,13] <= 0
R254: - x[2] + z[2,14] <= 0
R255: - x[2] + z[2,15] <= 0
R256: - x[3] + z[3,1] <= 0
R257: - x[3] + z[3,2] <= 0
R258: - x[3] + z[3,3] <= 0
R259: - x[3] + z[3,4] <= 0
R260: - x[3] + z[3,5] <= 0
R261: - x[3] + z[3,6] <= 0
R262: - x[3] + z[3,7] <= 0
R263: - x[3] + z[3,8] <= 0
R264: - x[3] + z[3,9] <= 0
R265: - x[3] + z[3,10] <= 0
R266: - x[3] + z[3,11] <= 0
R267: - x[3] + z[3,12] <= 0
R268: - x[3] + z[3,13] <= 0
R269: - x[3] + z[3,14] <= 0
R270: - x[3] + z[3,15] <= 0
R271: - x[4] + z[4,1] <= 0
R272: - x[4] + z[4,2] <= 0
R273: - x[4] + z[4,3] <= 0
R274: - x[4] + z[4,4] <= 0
R275: - x[4] + z[4,5] <= 0
R276: - x[4] + z[4,6] <= 0
R277: - x[4] + z[4,7] <= 0
R278: - x[4] + z[4,8] <= 0
R279: - x[4] + z[4,9] <= 0
R280: - x[4] + z[4,10] <= 0
R281: - x[4] + z[4,11] <= 0
R282: - x[4] + z[4,12] <= 0
R283: - x[4] + z[4,13] <= 0
R284: - x[4] + z[4,14] <= 0
R285: - x[4] + z[4,15] <= 0
R286: - x[5] + z[5,1] <= 0
R287: - x[5] + z[5,2] <= 0
R288: - x[5] + z[5,3] <= 0
R289: - x[5] + z[5,4] <= 0
R290: - x[5] + z[5,5] <= 0
R291: - x[5] + z[5,6] <= 0
R292: - x[5] + z[5,7] <= 0
R293: - x[5] + z[5,8] <= 0
R294: - x[5] + z[5,9] <= 0
R295: - x[5] + z[5,10] <= 0
R296: - x[5] + z[5,11] <= 0
R297: - x[5] + z[5,12] <= 0
R298: - x[5] + z[5,13] <= 0
R299: - x[5] + z[5,14] <= 0
R300: - x[5] + z[5,15] <= 0
R301: - x[6] + z[6,1] <= 0
R302: - x[6] + z[6,2] <= 0
R303: - x[6] + z[6,3] <= 0
R304: - x[6] + z[6,4] <= 0
R305: - x[6] + z[6,5] <= 0
R306: - x[6] + z[6,6] <= 0
R307: - x[6] + z[6,7] <= 0
R308: - x[6] + z[6,8] <= 0
R309: - x[6] + z[6,9] <= 0
R310: - x[6] + z[6,10] <= 0
R311: - x[6] + z[6,11] <= 0
R312: - x[6] + z[6,12] <= 0
R313: - x[6] + z[6,13] <= 0
R314: - x[6] + z[6,14] <= 0
R315: - x[6] + z[6,15] <= 0
R316: - x[7] + z[7,1] <= 0
R317: - x[7] + z[7,2] <= 0
R318: - x[7] + z[7,3] <= 0
R319: - x[7] + z[7,4] <= 0
R320: - x[7] + z[7,5] <= 0
R321: - x[7] + z[7,6] <= 0
R322: - x[7] + z[7,7] <= 0
R323: - x[7] + z[7,8] <= 0
R324: - x[7] + z[7,9] <= 0
R325: - x[7] + z[7,10] <= 0
R326: - x[7] + z[7,11] <= 0
R327: - x[7] + z[7,12] <= 0
R328: - x[7] + z[7,13] <= 0
R329: - x[7] + z[7,14] <= 0
R330: - x[7] + z[7,15] <= 0
R331: - x[8] + z[8,1] <= 0
R332: - x[8] + z[8,2] <= 0
R333: - x[8] + z[8,3] <= 0
R334: - x[8] + z[8,4] <= 0
R335: - x[8] + z[8,5] <= 0
R336: - x[8] + z[8,6] <= 0
R337: - x[8] + z[8,7] <= 0
R338: - x[8] + z[8,8] <= 0
R339: - x[8] + z[8,9] <= 0
R340: - x[8] + z[8,10] <= 0
R341: - x[8] + z[8,11] <= 0
R342: - x[8] + z[8,12] <= 0
R343: - x[8] + z[8,13] <= 0
R344: - x[8] + z[8,14] <= 0
R345: - x[8] + z[8,15] <= 0
R346: - x[9] + z[9,1] <= 0
R347: - x[9] + z[9,2] <= 0
R348: - x[9] + z[9,3] <= 0
R349: - x[9] + z[9,4] <= 0
R350: - x[9] + z[9,5] <= 0
R351: - x[9] + z[9,6] <= 0
R352: - x[9] + z[9,7] <= 0
R353: - x[9] + z[9,8] <= 0
R354: - x[9] + z[9,9] <= 0
R355: - x[9] + z[9,10] <= 0
R356: - x[9] + z[9,11] <= 0
R357: - x[9] + z[9,12] <= 0
R358: - x[9] + z[9,13] <= 0
R359: - x[9] + z[9,14] <= 0
R360: - x[9] + z[9,15] <= 0
R361: - x[10] + z[10,1] <= 0
R362: - x[10] + z[10,2] <= 0
R363: - x[10] + z[10,3] <= 0
R364: - x[10] + z[10,4] <= 0
R365: - x[10] + z[10,5] <= 0
R366: - x[10] + z[10,6] <= 0
R367: - x[10] + z[10,7] <= 0
R368: - x[10] + z[10,8] <= 0
R369: - x[10] + z[10,9] <= 0
R370: - x[10] + z[10,10] <= 0
R371: - x[10] + z[10,11] <= 0
R372: - x[10] + z[10,12] <= 0
R373: - x[10] + z[10,13] <= 0
R374: - x[10] + z[10,14] <= 0
R375: - x[10] + z[10,15] <= 0
R376: - x[11] + z[11,1] <= 0
R377: - x[11] + z[11,2] <= 0
R378: - x[11] + z[11,3] <= 0
R379: - x[11] + z[11,4] <= 0
R380: - x[11] + z[11,5] <= 0
R381: - x[11] + z[11,6] <= 0
R382: - x[11] + z[11,7] <= 0
R383: - x[11] + z[11,8] <= 0
R384: - x[11] + z[11,9] <= 0
R385: - x[11] + z[11,10] <= 0
R386: - x[11] + z[11,11] <= 0
R387: - x[11] + z[11,12] <= 0
R388: - x[11] + z[11,13] <= 0
R389: - x[11] + z[11,14] <= 0
R390: - x[11] + z[11,15] <= 0
R391: - x[12] + z[12,1] <= 0
R392: - x[12] + z[12,2] <= 0
R393: - x[12] + z[12,3] <= 0
R394: - x[12] + z[12,4] <= 0
R395: - x[12] + z[12,5] <= 0
R396: - x[12] + z[12,6] <= 0
R397: - x[12] + z[12,7] <= 0
R398: - x[12] + z[12,8] <= 0
R399: - x[12] + z[12,9] <= 0
R400: - x[12] + z[12,10] <= 0
R401: - x[12] + z[12,11] <= 0
R402: - x[12] + z[12,12] <= 0
R403: - x[12] + z[12,13] <= 0
R404: - x[12] + z[12,14] <= 0
R405: - x[12] + z[12,15] <= 0
R406: - x[13] + z[13,1] <= 0
R407: - x[13] + z[13,2] <= 0
R408: - x[13] + z[13,3] <= 0
R409: - x[13] + z[13,4] <= 0
R410: - x[13] + z[13,5] <= 0
R411: - x[13] + z[13,6] <= 0
R412: - x[13] + z[13,7] <= 0
R413: - x[13] + z[13,8] <= 0
R414: - x[13] + z[13,9] <= 0
R415: - x[13] + z[13,10] <= 0
R416: - x[13] + z[13,11] <= 0
R417: - x[13] + z[13,12] <= 0
R418: - x[13] + z[13,13] <= 0
R419: - x[13] + z[13,14] <= 0
R420: - x[13] + z[13,15] <= 0
R421: - x[14] + z[14,1] <= 0
R422: - x[14] + z[14,2] <= 0
R423: - x[14] + z[14,3] <= 0
R424: - x[14] + z[14,4] <= 0
R425: - x[14] + z[14,5] <= 0
R426: - x[14] + z[14,6] <= 0
R427: - x[14] + z[14,7] <= 0
R428: - x[14] + z[14,8] <= 0
R429: - x[14] + z[14,9] <= 0
R430: - x[14] + z[14,10] <= 0
R431: - x[14] + z[14,11] <= 0
R432: - x[14] + z[14,12] <= 0
R433: - x[14] + z[14,13] <= 0
R434: - x[14] + z[14,14] <= 0
R435: - x[14] + z[14,15] <= 0
R436: - x[15] + z[15,1] <= 0
R437: - x[15] + z[15,2] <= 0
R438: - x[15] + z[15,3] <= 0
R439: - x[15] + z[15,4] <= 0
R440: - x[15] + z[15,5] <= 0
R441: - x[15] + z[15,6] <= 0
R442: - x[15] + z[15,7] <= 0
R443: - x[15] + z[15,8] <= 0
R444: - x[15] + z[15,9] <= 0
R445: - x[15] + z[15,10] <= 0
R446: - x[15] + z[15,11] <= 0
R447: - x[15] + z[15,12] <= 0
R448: - x[15] + z[15,13] <= 0
R449: - x[15] + z[15,14] <= 0
R450: - x[15] + z[15,15] <= 0
R451: - y[1] + z[1,1] <= 0
R452: - y[2] + z[1,2] <= 0
R453: - y[3] + z[1,3] <= 0
R454: - y[4] + z[1,4] <= 0
R455: - y[5] + z[1,5] <= 0
R456: - y[6] + z[1,6] <= 0
R457: - y[7] + z[1,7] <= 0
R458: - y[8] + z[1,8] <= 0
R459: - y[9] + z[1,9] <= 0
R460: - y[10] + z[1,10] <= 0
R461: - y[11] + z[1,11] <= 0
R462: - y[12] + z[1,12] <= 0
R463: - y[13] + z[1,13] <= 0
R464: - y[14] + z[1,14] <= 0
R465: - y[15] + z[1,15] <= 0
R466: - y[1] + z[2,1] <= 0
R467: - y[2] + z[2,2] <= 0
R468: - y[3] + z[2,3] <= 0
R469: - y[4] + z[2,4] <= 0
R470: - y[5] + z[2,5] <= 0
R471: - y[6] + z[2,6] <= 0
R472: - y[7] + z[2,7] <= 0
R473: - y[8] + z[2,8] <= 0
R474: - y[9] + z[2,9] <= 0
R475: - y[10] + z[2,10] <= 0
R476: - y[11] + z[2,11] <= 0
R477: - y[12] + z[2,12] <= 0
R478: - y[13] + z[2,13] <= 0
R479: - y[14] + z[2,14] <= 0
R480: - y[15] + z[2,15] <= 0
R481: - y[1] + z[3,1] <= 0
R482: - y[2] + z[3,2] <= 0
R483: - y[3] + z[3,3] <= 0
R484: - y[4] + z[3,4] <= 0
R485: - y[5] + z[3,5] <= 0
R486: - y[6] + z[3,6] <= 0
R487: - y[7] + z[3,7] <= 0
R488: - y[8] + z[3,8] <= 0
R489: - y[9] + z[3,9] <= 0
R490: - y[10] + z[3,10] <= 0
R491: - y[11] + z[3,11] <= 0
R492: - y[12] + z[3,12] <= 0
R493: - y[13] + z[3,13] <= 0
R494: - y[14] + z[3,14] <= 0
R495: - y[15] + z[3,15] <= 0
R496: - y[1] + z[4,1] <= 0
R497: - y[2] + z[4,2] <= 0
R498: - y[3] + z[4,3] <= 0
R499: - y[4] + z[4,4] <= 0
R500: - y[5] + z[4,5] <= 0
R501: - y[6] + z[4,6] <= 0
R502: - y[7] + z[4,7] <= 0
R503: - y[8] + z[4,8] <= 0
R504: - y[9] + z[4,9] <= 0
R505: - y[10] + z[4,10] <= 0
R506: - y[11] + z[4,11] <= 0
R507: - y[12] + z[4,12] <= 0
R508: - y[13] + z[4,13] <= 0
R509: - y[14] + z[4,14] <= 0
R510: - y[15] + z[4,15] <= 0
R511: - y[1] + z[5,1] <= 0
R512: - y[2] + z[5,2] <= 0
R513: - y[3] + z[5,3] <= 0
R514: - y[4] + z[5,4] <= 0
R515: - y[5] + z[5,5] <= 0
R516: - y[6] + z[5,6] <= 0
R517: - y[7] + z[5,7] <= 0
R518: - y[8] + z[5,8] <= 0
R519: - y[9] + z[5,9] <= 0
R520: - y[10] + z[5,10] <= 0
R521: - y[11] + z[5,11] <= 0
R522: - y[12] + z[5,12] <= 0
R523: - y[13] + z[5,13] <= 0
R524: - y[14] + z[5,14] <= 0
R525: - y[15] + z[5,15] <= 0
R526: - y[1] + z[6,1] <= 0
R527: - y[2] + z[6,2] <= 0
R528: - y[3] + z[6,3] <= 0
R529: - y[4] + z[6,4] <= 0
R530: - y[5] + z[6,5] <= 0
R531: - y[6] + z[6,6] <= 0
R532: - y[7] + z[6,7] <= 0
R533: - y[8] + z[6,8] <= 0
R534: - y[9] + z[6,9] <= 0
R535: - y[10] + z[6,10] <= 0
R536: - y[11] + z[6,11] <= 0
R537: - y[12] + z[6,12] <= 0
R538: - y[13] + z[6,13] <= 0
R539: - y[14] + z[6,14] <= 0
R540: - y[15] + z[6,15] <= 0
R541: - y[1] + z[7,1] <= 0
R542: - y[2] + z[7,2] <= 0
R543: - y[3] + z[7,3] <= 0
R544: - y[4] + z[7,4] <= 0
R545: - y[5] + z[7,5] <= 0
R546: - y[6] + z[7,6] <= 0
R547: - y[7] + z[7,7] <= 0
R548: - y[8] + z[7,8] <= 0
R549: - y[9] + z[7,9] <= 0
R550: - y[10] + z[7,10] <= 0
R551: - y[11] + z[7,11] <= 0
R552: - y[12] + z[7,12] <= 0
R553: - y[13] + z[7,13] <= 0
R554: - y[14] + z[7,14] <= 0
R555: - y[15] + z[7,15] <= 0
R556: - y[1] + z[8,1] <= 0
R557: - y[2] + z[8,2] <= 0
R558: - y[3] + z[8,3] <= 0
R559: - y[4] + z[8,4] <= 0
R560: - y[5] + z[8,5] <= 0
R561: - y[6] + z[8,6] <= 0
R562: - y[7] + z[8,7] <= 0
R563: - y[8] + z[8,8] <= 0
R564: - y[9] + z[8,9] <= 0
R565: - y[10] + z[8,10] <= 0
R566: - y[11] + z[8,11] <= 0
R567: - y[12] + z[8,12] <= 0
R568: - y[13] + z[8,13] <= 0
R569: - y[14] + z[8,14] <= 0
R570: - y[15] + z[8,15] <= 0
R571: - y[1] + z[9,1] <= 0
R572: - y[2] + z[9,2] <= 0
R573: - y[3] + z[9,3] <= 0
R574: - y[4] + z[9,4] <= 0
R575: - y[5] + z[9,5] <= 0
R576: - y[6] + z[9,6] <= 0
R577: - y[7] + z[9,7] <= 0
R578: - y[8] + z[9,8] <= 0
R579: - y[9] + z[9,9] <= 0
R580: - y[10] + z[9,10] <= 0
R581: - y[11] + z[9,11] <= 0
R582: - y[12] + z[9,12] <= 0
R583: - y[13] + z[9,13] <= 0
R584: - y[14] + z[9,14] <= 0
R585: - y[15] + z[9,15] <= 0
R586: - y[1] + z[10,1] <= 0
R587: - y[2] + z[10,2] <= 0
R588: - y[3] + z[10,3] <= 0
R589: - y[4] + z[10,4] <= 0
R590: - y[5] + z[10,5] <= 0
R591: - y[6] + z[10,6] <= 0
R592: - y[7] + z[10,7] <= 0
R593: - y[8] + z[10,8] <= 0
R594: - y[9] + z[10,9] <= 0
R595: - y[10] + z[10,10] <= 0
R596: - y[11] + z[10,11] <= 0
R597: - y[12] + z[10,12] <= 0
R598: - y[13] + z[10,13] <= 0
R599: - y[14] + z[10,14] <= 0
R600: - y[15] + z[10,15] <= 0
R601: - y[1] + z[11,1] <= 0
R602: - y[2] + z[11,2] <= 0
R603: - y[3] + z[11,3] <= 0
R604: - y[4] + z[11,4] <= 0
R605: - y[5] + z[11,5] <= 0
R606: - y[6] + z[11,6] <= 0
R607: - y[7] + z[11,7] <= 0
R608: - y[8] + z[11,8] <= 0
R609: - y[9] + z[11,9] <= 0
R610: - y[10] + z[11,10] <= 0
R611: - y[11] + z[11,11] <= 0
R612: - y[12] + z[11,12] <= 0
R613: - y[13] + z[11,13] <= 0
R614: - y[14] + z[11,14] <= 0
R615: - y[15] + z[11,15] <= 0
R616: - y[1] + z[12,1] <= 0
R617: - y[2] + z[12,2] <= 0
R618: - y[3] + z[12,3] <= 0
R619: - y[4] + z[12,4] <= 0
R620: - y[5] + z[12,5] <= 0
R621: - y[6] + z[12,6] <= 0
R622: - y[7] + z[12,7] <= 0
R623: - y[8] + z[12,8] <= 0
R624: - y[9] + z[12,9] <= 0
R625: - y[10] + z[12,10] <= 0
R626: - y[11] + z[12,11] <= 0
R627: - y[12] + z[12,12] <= 0
R628: - y[13] + z[12,13] <= 0
R629: - y[14] + z[12,14] <= 0
R630: - y[15] + z[12,15] <= 0
R631: - y[1] + z[13,1] <= 0
R632: - y[2] + z[13,2] <= 0
R633: - y[3] + z[13,3] <= 0
R634: - y[4] + z[13,4] <= 0
R635: - y[5] + z[13,5] <= 0
R636: - y[6] + z[13,6] <= 0
R637: - y[7] + z[13,7] <= 0
R638: - y[8] + z[13,8] <= 0
R639: - y[9] + z[13,9] <= 0
R640: - y[10] + z[13,10] <= 0
R641: - y[11] + z[13,11] <= 0
R642: - y[12] + z[13,12] <= 0
R643: - y[13] + z[13,13] <= 0
R644: - y[14] + z[13,14] <= 0
R645: - y[15] + z[13,15] <= 0
R646: - y[1] + z[14,1] <= 0
R647: - y[2] + z[14,2] <= 0
R648: - y[3] + z[14,3] <= 0
R649: - y[4] + z[14,4] <= 0
R650: - y[5] + z[14,5] <= 0
R651: - y[6] + z[14,6] <= 0
R652: - y[7] + z[14,7] <= 0
R653: - y[8] + z[14,8] <= 0
R654: - y[9] + z[14,9] <= 0
R655: - y[10] + z[14,10] <= 0
R656: - y[11] + z[14,11] <= 0
R657: - y[12] + z[14,12] <= 0
R658: - y[13] + z[14,13] <= 0
R659: - y[14] + z[14,14] <= 0
R660: - y[15] + z[14,15] <= 0
R661: - y[1] + z[15,1] <= 0
R662: - y[2] + z[15,2] <= 0
R663: - y[3] + z[15,3] <= 0
R664: - y[4] + z[15,4] <= 0
R665: - y[5] + z[15,5] <= 0
R666: - y[6] + z[15,6] <= 0
R667: - y[7] + z[15,7] <= 0
R668: - y[8] + z[15,8] <= 0
R669: - y[9] + z[15,9] <= 0
R670: - y[10] + z[15,10] <= 0
R671: - y[11] + z[15,11] <= 0
R672: - y[12] + z[15,12] <= 0
R673: - y[13] + z[15,13] <= 0
R674: - y[14] + z[15,14] <= 0
R675: - y[15] + z[15,15] <= 0
Bounds
x[1] <= 1
x[2] <= 1
x[3] <= 1
x[4] <= 1
x[5] <= 1
x[6] <= 1
x[7] <= 1
x[8] <= 1
x[9] <= 1
x[10] <= 1
x[11] <= 1
x[12] <= 1
x[13] <= 1
x[14] <= 1
x[15] <= 1
y[1] <= 1
y[2] <= 1
y[3] <= 1
y[4] <= 1
y[5] <= 1
y[6] <= 1
y[7] <= 1
y[8] <= 1
y[9] <= 1
y[10] <= 1
y[11] <= 1
y[12] <= 1
y[13] <= 1
y[14] <= 1
y[15] <= 1
z[1,1] <= 1
z[1,2] <= 1
z[1,3] <= 1
z[1,4] <= 1
z[1,5] <= 1
z[1,6] <= 1
z[1,7] <= 1
z[1,8] <= 1
z[1,9] <= 1
z[1,10] <= 1
z[1,11] <= 1
z[1,12] <= 1
z[1,13] <= 1
z[1,14] <= 1
z[1,15] <= 1
z[2,1] <= 1
z[2,2] <= 1
z[2,3] <= 1
z[2,4] <= 1
z[2,5] <= 1
z[2,6] <= 1
z[2,7] <= 1
z[2,8] <= 1
z[2,9] <= 1
z[2,10] <= 1
z[2,11] <= 1
z[2,12] <= 1
z[2,13] <= 1
z[2,14] <= 1
z[2,15] <= 1
z[3,1] <= 1
z[3,2] <= 1
z[3,3] <= 1
z[3,4] <= 1
z[3,5] <= 1
z[3,6] <= 1
z[3,7] <= 1
z[3,8] <= 1
z[3,9] <= 1
z[3,10] <= 1
z[3,11] <= 1
z[3,12] <= 1
z[3,13] <= 1
z[3,14] <= 1
z[3,15] <= 1
z[4,1] <= 1
z[4,2] <= 1
z[4,3] <= 1
z[4,4] <= 1
z[4,5] <= 1
z[4,6] <= 1
z[4,7] <= 1
z[4,8] <= 1
z[4,9] <= 1
z[4,10] <= 1
z[4,11] <= 1
z[4,12] <= 1
z[4,13] <= 1
z[4,14] <= 1
z[4,15] <= 1
z[5,1] <= 1
z[5,2] <= 1
z[5,3] <= 1
z[5,4] <= 1
z[5,5] <= 1
z[5,6] <= 1
z[5,7] <= 1
z[5,8] <= 1
z[5,9] <= 1
z[5,10] <= 1
z[5,11] <= 1
z[5,12] <= 1
z[5,13] <= 1
z[5,14] <= 1
z[5,15] <= 1
z[6,1] <= 1
z[6,2] <= 1
z[6,3] <= 1
z[6,4] <= 1
z[6,5] <= 1
z[6,6] <= 1
z[6,7] <= 1
z[6,8] <= 1
z[6,9] <= 1
z[6,10] <= 1
z[6,11] <= 1
z[6,12] <= 1
z[6,13] <= 1
z[6,14] <= 1
z[6,15] <= 1
z[7,1] <= 1
z[7,2] <= 1
z[7,3] <= 1
z[7,4] <= 1
z[7,5] <= 1
z[7,6] <= 1
z[7,7] <= 1
z[7,8] <= 1
z[7,9] <= 1
z[7,10] <= 1
z[7,11] <= 1
z[7,12] <= 1
z[7,13] <= 1
z[7,14] <= 1
z[7,15] <= 1
z[8,1] <= 1
z[8,2] <= 1
z[8,3] <= 1
z[8,4] <= 1
z[8,5] <= 1
z[8,6] <= 1
z[8,7] <= 1
z[8,8] <= 1
z[8,9] <= 1
z[8,10] <= 1
z[8,11] <= 1
z[8,12] <= 1
z[8,13] <= 1
z[8,14] <= 1
z[8,15] <= 1
z[9,1] <= 1
z[9,2] <= 1
z[9,3] <= 1
z[9,4] <= 1
z[9,5] <= 1
z[9,6] <= 1
z[9,7] <= 1
z[9,8] <= 1
z[9,9] <= 1
z[9,10] <= 1
z[9,11] <= 1
z[9,12] <= 1
z[9,13] <= 1
z[9,14] <= 1
z[9,15] <= 1
z[10,1] <= 1
z[10,2] <= 1
z[10,3] <= 1
z[10,4] <= 1
z[10,5] <= 1
z[10,6] <= 1
z[10,7] <= 1
z[10,8] <= 1
z[10,9] <= 1
z[10,10] <= 1
z[10,11] <= 1
z[10,12] <= 1
z[10,13] <= 1
z[10,14] <= 1
z[10,15] <= 1
z[11,1] <= 1
z[11,2] <= 1
z[11,3] <= 1
z[11,4] <= 1
z[11,5] <= 1
z[11,6] <= 1
z[11,7] <= 1
z[11,8] <= 1
z[11,9] <= 1
z[11,10] <= 1
z[11,11] <= 1
z[11,12] <= 1
z[11,13] <= 1
z[11,14] <= 1
z[11,15] <= 1
z[12,1] <= 1
z[12,2] <= 1
z[12,3] <= 1
z[12,4] <= 1
z[12,5] <= 1
z[12,6] <= 1
z[12,7] <= 1
z[12,8] <= 1
z[12,9] <= 1
z[12,10] <= 1
z[12,11] <= 1
z[12,12] <= 1
z[12,13] <= 1
z[12,14] <= 1
z[12,15] <= 1
z[13,1] <= 1
z[13,2] <= 1
z[13,3] <= 1
z[13,4] <= 1
z[13,5] <= 1
z[13,6] <= 1
z[13,7] <= 1
z[13,8] <= 1
z[13,9] <= 1
z[13,10] <= 1
z[13,11] <= 1
z[13,12] <= 1
z[13,13] <= 1
z[13,14] <= 1
z[13,15] <= 1
z[14,1] <= 1
z[14,2] <= 1
z[14,3] <= 1
z[14,4] <= 1
z[14,5] <= 1
z[14,6] <= 1
z[14,7] <= 1
z[14,8] <= 1
z[14,9] <= 1
z[14,10] <= 1
z[14,11] <= 1
z[14,12] <= 1
z[14,13] <= 1
z[14,14] <= 1
z[14,15] <= 1
z[15,1] <= 1
z[15,2] <= 1
z[15,3] <= 1
z[15,4] <= 1
z[15,5] <= 1
z[15,6] <= 1
z[15,7] <= 1
z[15,8] <= 1
z[15,9] <= 1
z[15,10] <= 1
z[15,11] <= 1
z[15,12] <= 1
z[15,13] <= 1
z[15,14] <= 1
z[15,15] <= 1
End0 -
Yes, there is something still happening. I will let you know once I found out.
0 -
Thanks
0 -
Hi Jan,
I double checked the behavior and what is happening is indeed expected. In any node (and also the root node), Gurobi performs trivial bound propagations irrespective of the Presolve setting. In your particular case, this means that the linear constraint
R0: x[1] + x[2] + x[3] <= 0.48
is used to tighten the upper bounds of variables \(x_1, x_2, x_3\) to \(0.48\). This explains the difference in the objective value between your manual McCormick relaxation and the root relaxation bound reported by Gurobi.
If you would like to only check whether your McCormick relaxation is correct, you could remove all non-bilinear constraints from your model. This would prevent Gurobi from taking advantage from any trivially deducible bound information.
I hope this helps.
Best regards,
Jaromił0 -
Hi Jaromił Najman,
yes, this helps. Thank you very much!
Is there a special reason, why these bound propagations are not considered as Presolve? In my opinion, it is unnecessarily confusing to the user that sets Presolve=0.
Best,
Jan0 -
Hi Jan,
Is there a special reason, why these bound propagations are not considered as Presolve? In my opinion, it is unnecessarily confusing to the user that sets Presolve=0.
Presolve controls what happens before the solution process (thus the name).
Bound propagation for particular nodes are performed outside of presolve and thus not affected by it. We discussed this issue and came to the conclusion that it does not make sense for the average user to have control over bound propagation within nodes. Of course there are special cases like yours, but for that we can provide a workaround as discussed above.
Best regards,
Jaromił0 -
Hello Jaromił Najman,
okay, thanks for that explanation. :)
Best,Jan
0
Please sign in to leave a comment.
Comments
24 comments