10 lines
411 B
MiniZinc
10 lines
411 B
MiniZinc
predicate fzn_writes(array[int] of var int: I, array[int] of var int: P,
|
|
array[int] of var int: V, array[int] of var int: O) =
|
|
forall(j in index_set(P))(O[P[j]] = V[j]) /\
|
|
forall(i in index_set(I))
|
|
(if forall(j in index_set(P))(P[j] != i) then
|
|
O[i] = I[i]
|
|
else true endif);
|
|
|
|
%-----------------------------------------------------------------------------%
|