this repo has no description
1/** @group flatzinc.ann Mark declaration as being stored in register \a r */
2ann: global_register(int: r);
3
4/** @group flatzinc.bool Constrains \( \a r \leftrightarrow \bigwedge_i \a as[i]\) */
5predicate array_bool_and(array[int] of var bool: as, var bool: r);
6/** @group flatzinc.bool Constrains \( \a r \leftrightarrow \bigvee_i \a as[i]\) */
7predicate array_bool_or(array[int] of var bool: as, var bool: r);
8/** @group flatzinc.bool Constrains \( \bigvee_i \a as[i] \lor \bigvee_j \lnot \a bs[j] \) */
9predicate bool_clause(array[int] of var bool: as, array[int] of var bool: bs);
10/** @group flatzinc.two Reified clause constraint.
11 Constrains \( \a b \leftrightarrow \bigvee_i \a as[i] \lor \bigvee_j \lnot \a bs[j] \)
12 */
13predicate bool_clause_reif(array[int] of var bool: as, array[int] of var bool: bs, var bool: b);
14/** @group flatzinc.int Constrains \( \a c = \sum_i \a as[i]*\a bs[i] \) */
15predicate int_lin_eq(array[int] of int: as, array[int] of var int: bs, int: c);