this repo has no description
at develop 446 B view raw
1predicate fzn_if_then_else_partiality(array[int] of var bool: c, array[int] of var bool: def, var bool: b) = 2 let { array[index_set(c)] of var bool: d; } in 3 forall(i in index_set(c)) 4 (if i > min(index_set(c)) then 5 d[i] = (not c[i-1] /\ d[i-1]) 6 else 7 d[i] = true 8 endif) /\ 9 forall(i in index_set(c)) 10 ( (b /\ c[i] /\ d[i] -> def[i])) /\ 11 forall (i in index_set(c)) (d[i] /\ c[i] -> b);