[ library(conjunto) | Reference Manual | Alphabetic Index ]
sum_weight(?Svar, ?Var)
Svar is a weighted set domain variable or a weighted ground set and Var a
free variable or a domain variable or an integer which represents the
weight of Svar.
- ?Svar
- A weighted set domain variable or a weighted ground set.
- ?Var
- Term unifying with a domain variable or an integer.
Description
Svar is a weighted set domain variable or ground set. Var is the weight
of Svar. If Var is a free variable, this constraint is a mean to access
a set weight and attach it to Var. If not, the weight of Svar is
constrained to be equal to Var. The constraint is delayed and activated
each time a modification occurs in the domain of Svar or Var.
Convenient when dealing with packing problems.
Fail Conditions
Fails if Svar is not a weighted set term or if Var can not represent the
weight of Svar.
Resatisfiable
No.
Examples
[eclipse 4]: S `:: {e(a,10), e(b,15)} ..{e(a,10), e(b,15),
e(c,20)}, sum_weight(S, W).
S = S{{e(a, 10), e(b, 15)} .. {e(a, 10), e(b, 15), e(c, 20)}}
W = W{[25..45]}
Delayed goals:
weight_s(S{{e(a, 10), e(b, 15)} .. {e(a, 10),
e(b, 15), e(c, 20)}}, W{[25..45]})
yes.
See Also
`:: / 2