array [1..2] of int: X_INTRODUCED_5_ = [1,-1]; array [1..3] of int: X_INTRODUCED_17_ = [2,-1,-1]; array [1..4] of int: X_INTRODUCED_18_ = [1,-1,-1,1]; array [1..2] of int: X_INTRODUCED_19_ = [-1,1]; var 1..25: X_INTRODUCED_1_; var 0..25: X_INTRODUCED_2_; var 0..25: X_INTRODUCED_3_; var 0..25: X_INTRODUCED_4_; var 0..25: X_INTRODUCED_10_ ::var_is_introduced :: is_defined_var; var 0..25: X_INTRODUCED_11_ ::var_is_introduced :: is_defined_var; var 0..25: X_INTRODUCED_12_ ::var_is_introduced :: is_defined_var; var 0..25: X_INTRODUCED_13_ ::var_is_introduced :: is_defined_var; var 0..25: X_INTRODUCED_14_ ::var_is_introduced :: is_defined_var; var 0..25: X_INTRODUCED_15_ ::var_is_introduced :: is_defined_var; array [1..5] of var int: mark:: output_array([1..5]) = [0,X_INTRODUCED_1_,X_INTRODUCED_2_,X_INTRODUCED_3_,X_INTRODUCED_4_]; array [1..10] of var int: differences = [X_INTRODUCED_1_,X_INTRODUCED_2_,X_INTRODUCED_3_,X_INTRODUCED_4_,X_INTRODUCED_10_,X_INTRODUCED_11_,X_INTRODUCED_12_,X_INTRODUCED_13_,X_INTRODUCED_14_,X_INTRODUCED_15_]; constraint int_lin_le(X_INTRODUCED_5_,[X_INTRODUCED_1_,X_INTRODUCED_2_],-1); constraint int_lin_le(X_INTRODUCED_5_,[X_INTRODUCED_2_,X_INTRODUCED_3_],-1); constraint int_lin_le(X_INTRODUCED_5_,[X_INTRODUCED_3_,X_INTRODUCED_4_],-1); constraint int_lin_ne(X_INTRODUCED_5_,[X_INTRODUCED_1_,X_INTRODUCED_2_],0); constraint int_lin_ne(X_INTRODUCED_5_,[X_INTRODUCED_1_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_5_,[X_INTRODUCED_1_,X_INTRODUCED_4_],0); constraint int_lin_ne([2,-1],[X_INTRODUCED_1_,X_INTRODUCED_2_],0); constraint int_lin_ne([2,-1],[X_INTRODUCED_1_,X_INTRODUCED_3_],0); constraint int_lin_ne([2,-1],[X_INTRODUCED_1_,X_INTRODUCED_4_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_1_,X_INTRODUCED_3_,X_INTRODUCED_2_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_1_,X_INTRODUCED_4_,X_INTRODUCED_2_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_1_,X_INTRODUCED_4_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_5_,[X_INTRODUCED_2_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_5_,[X_INTRODUCED_2_,X_INTRODUCED_4_],0); constraint int_lin_ne([1],[X_INTRODUCED_1_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_2_,X_INTRODUCED_3_,X_INTRODUCED_1_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_2_,X_INTRODUCED_4_,X_INTRODUCED_1_],0); constraint int_lin_ne([2,-1],[X_INTRODUCED_2_,X_INTRODUCED_3_],0); constraint int_lin_ne([2,-1],[X_INTRODUCED_2_,X_INTRODUCED_4_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_2_,X_INTRODUCED_4_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_5_,[X_INTRODUCED_3_,X_INTRODUCED_4_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_3_,X_INTRODUCED_2_,X_INTRODUCED_1_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_3_,X_INTRODUCED_4_,X_INTRODUCED_1_],0); constraint int_lin_ne([1],[X_INTRODUCED_2_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_3_,X_INTRODUCED_4_,X_INTRODUCED_2_],0); constraint int_lin_ne([2,-1],[X_INTRODUCED_3_,X_INTRODUCED_4_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_4_,X_INTRODUCED_2_,X_INTRODUCED_1_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_4_,X_INTRODUCED_3_,X_INTRODUCED_1_],0); constraint int_lin_ne([1,-1,1],[X_INTRODUCED_4_,X_INTRODUCED_3_,X_INTRODUCED_2_],0); constraint int_lin_ne([1],[X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_17_,[X_INTRODUCED_2_,X_INTRODUCED_1_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_17_,[X_INTRODUCED_2_,X_INTRODUCED_1_,X_INTRODUCED_4_],0); constraint int_lin_ne(X_INTRODUCED_18_,[X_INTRODUCED_2_,X_INTRODUCED_1_,X_INTRODUCED_4_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_19_,[X_INTRODUCED_1_,X_INTRODUCED_2_],0); constraint int_lin_ne(X_INTRODUCED_18_,[X_INTRODUCED_3_,X_INTRODUCED_1_,X_INTRODUCED_4_,X_INTRODUCED_2_],0); constraint int_lin_ne(X_INTRODUCED_17_,[X_INTRODUCED_3_,X_INTRODUCED_1_,X_INTRODUCED_4_],0); constraint int_lin_ne(X_INTRODUCED_18_,[X_INTRODUCED_4_,X_INTRODUCED_1_,X_INTRODUCED_3_,X_INTRODUCED_2_],0); constraint int_lin_ne(X_INTRODUCED_19_,[X_INTRODUCED_1_,X_INTRODUCED_3_],0); constraint int_lin_ne(X_INTRODUCED_17_,[X_INTRODUCED_3_,X_INTRODUCED_2_,X_INTRODUCED_4_],0); constraint int_lin_ne(X_INTRODUCED_19_,[X_INTRODUCED_2_,X_INTRODUCED_3_],0); constraint int_lin_le([1,-1,1],[X_INTRODUCED_1_,X_INTRODUCED_4_,X_INTRODUCED_3_],-1); constraint int_lin_eq([1,-1,-1],[X_INTRODUCED_2_,X_INTRODUCED_1_,X_INTRODUCED_10_],0):: defines_var(X_INTRODUCED_10_); constraint int_lin_eq([1,-1,-1],[X_INTRODUCED_3_,X_INTRODUCED_1_,X_INTRODUCED_11_],0):: defines_var(X_INTRODUCED_11_); constraint int_lin_eq([1,-1,-1],[X_INTRODUCED_4_,X_INTRODUCED_1_,X_INTRODUCED_12_],0):: defines_var(X_INTRODUCED_12_); constraint int_lin_eq([1,-1,-1],[X_INTRODUCED_3_,X_INTRODUCED_2_,X_INTRODUCED_13_],0):: defines_var(X_INTRODUCED_13_); constraint int_lin_eq([1,-1,-1],[X_INTRODUCED_4_,X_INTRODUCED_2_,X_INTRODUCED_14_],0):: defines_var(X_INTRODUCED_14_); constraint int_lin_eq([1,-1,-1],[X_INTRODUCED_4_,X_INTRODUCED_3_,X_INTRODUCED_15_],0):: defines_var(X_INTRODUCED_15_); solve :: int_search(mark,input_order,indomain,complete) minimize X_INTRODUCED_4_;