1predicate fzn_sum_set_reif(array[int] of int: vs, array[int] of int: ws, 2 var set of int: x, var int: s, var bool: b) = 3 b <-> s == sum(j in index_set(vs)) ( bool2int(j in x) * ws[j] );