var bool: BOOL____00002 :: is_defined_var :: var_is_introduced; var bool: BOOL____00003 :: is_defined_var :: var_is_introduced; var bool: BOOL____00004 :: is_defined_var :: var_is_introduced; var bool: BOOL____00005 :: is_defined_var :: var_is_introduced; var bool: BOOL____00007 :: is_defined_var :: var_is_introduced; var bool: BOOL____00008 :: is_defined_var :: var_is_introduced; var bool: BOOL____00009 :: is_defined_var :: var_is_introduced; var bool: BOOL____00012 :: is_defined_var :: var_is_introduced; var 1..4: end :: output_var; var 1..4: start :: output_var; array [1..4] of var 0..1: x :: output_array([1..4]); constraint array_bool_and([BOOL____00003, BOOL____00004], BOOL____00005); constraint array_bool_and([BOOL____00007, BOOL____00008], BOOL____00009); constraint int_eq_reif(x[1], 1, BOOL____00002) :: defines_var(BOOL____00002); constraint int_eq_reif(x[2], 1, BOOL____00005) :: defines_var(BOOL____00005); constraint int_eq_reif(x[3], 1, BOOL____00009) :: defines_var(BOOL____00009); constraint int_eq_reif(x[4], 1, BOOL____00012) :: defines_var(BOOL____00012); constraint int_le(start, end); constraint int_le_reif(2, end, BOOL____00004) :: defines_var(BOOL____00004); constraint int_le_reif(3, end, BOOL____00008) :: defines_var(BOOL____00008); constraint int_le_reif(4, end, BOOL____00012); constraint int_le_reif(start, 1, BOOL____00002); constraint int_le_reif(start, 2, BOOL____00003) :: defines_var(BOOL____00003); constraint int_le_reif(start, 3, BOOL____00007) :: defines_var(BOOL____00007); solve satisfy;