[ library(cardinal) | Reference Manual | Alphabetic Index ]

struct cardinal(domain, cardinality, minimum, maximum, union, bounded, glb, lub, bound)

Cardinal attributes of a set variable

Fields

domain
Set domain in the form [Glb:NIn,Poss:NMax], where Glb is the set's glb, NIn its cardinality, Poss is its poss (i.e. its lub\glb), and NMax is the lub's cardinality (i.e. NIn + #(Poss)). If it is a set of sets and a union function attribute has been declared, then each element of Poss comes annotated with its respective length.
cardinality
Cardinality function (an integer or an FD variable).
minimum
Minimum function (an integer or an FD variable), for sets of integers. Free variable if unused.
maximum
Maximum function (an integer or an FD variable), for sets of integers. Free variable if unused.
union
Union function, for sets of sets. Free variable if unused; otherwise, a list in the form [UnionVar, GlbU+PossU, Singles, Lengths], where:
UnionVar: A set (variable or ground) corresponding to the union of the set's elements
	(sets themselves);
GlbU: Set union of the set's glb;
PossU: Set of possible union elements with counters (X:N), i.e. an ordered
	list of all elements in the sets in set's poss (lub\glb)
	with the number of occurrences attached
Singles: Set of elements where N=1 in PossU
bounded
Suspension list.
glb
Suspension list.
lub
Suspension list.
bound
Suspension list.