array [1..64] of int: matrix = [0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0]; var 0..16: INT____00001 :: is_defined_var :: var_is_introduced; array [1..8] of var 0..1: X :: output_array([1..8]); array [1..8] of var 0..1: Y :: output_array([1..8]); var 0..16: c_armies :: output_var = INT____00001; constraint int_le(Y[1], X[1]); constraint int_le(Y[2], X[2]); constraint int_le(Y[3], X[3]); constraint int_le(Y[4], X[4]); constraint int_le(Y[5], X[5]); constraint int_le(Y[6], X[6]); constraint int_le(Y[7], X[7]); constraint int_le(Y[8], X[8]); constraint int_lin_eq([-1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [INT____00001, X[1], X[2], X[3], X[4], X[5], X[6], X[7], X[8], Y[1], Y[2], Y[3], Y[4], Y[5], Y[6], Y[7], Y[8]], 0) :: defines_var(INT____00001); constraint int_lin_le([-1, -1, -1], [X[2], Y[1], Y[4]], -1); constraint int_lin_le([-1, -1, -1], [X[3], Y[5], Y[6]], -1); constraint int_lin_le([-1, -1, -1, -1], [X[4], Y[1], Y[2], Y[7]], -1); constraint int_lin_le([-1, -1, -1, -1], [X[5], Y[3], Y[6], Y[7]], -1); constraint int_lin_le([-1, -1, -1, -1], [X[8], Y[1], Y[6], Y[7]], -1); constraint int_lin_le([-1, -1, -1, -1, -1], [X[1], Y[2], Y[4], Y[7], Y[8]], -1); constraint int_lin_le([-1, -1, -1, -1, -1], [X[6], Y[3], Y[5], Y[7], Y[8]], -1); constraint int_lin_le([-1, -1, -1, -1, -1, -1], [X[7], Y[1], Y[4], Y[5], Y[6], Y[8]], -1); solve minimize INT____00001;