git-subtree-dir: software/mza git-subtree-split: f970a59b177c13ca3dd8aaef8cc6681d83b7e813
16 lines
529 B
MiniZinc
16 lines
529 B
MiniZinc
include "fzn_subcircuit.mzn";
|
|
include "fzn_subcircuit_reif.mzn";
|
|
|
|
/** @group globals
|
|
Constrains the elements of \a x to define a subcircuit where \a x[\p i] = \p j
|
|
means that \p j is the successor of \p i and \a x[\p i] = \p i means that \p i
|
|
is not in the circuit.
|
|
*/
|
|
predicate subcircuit(array[int] of var int: x) =
|
|
fzn_subcircuit(x);
|
|
|
|
predicate subcircuit_reif(array[int] of var int: x, var bool: b) =
|
|
fzn_subcircuit_reif(x, b);
|
|
|
|
%-----------------------------------------------------------------------------%
|