# Gecode::Set Namespace Reference

## Detailed Description

Finite integer sets.The Gecode::Set namespace contains all functionality required to program propagators and branchings for finite integer sets. In addition, all propagators and branchings for finite integer sets provided by Gecode are contained as nested namespaces.

## Classes | |

class | VariableOutOfRangeDomain |

Exception: Variable created with values too large for domain More... | |

class | VariableOutOfRangeCardinality |

Exception: Variable created with wrong cardinality More... | |

class | VariableFailedDomain |

Exception: Variable created with failed domain More... | |

class | ArgumentEmpty |

Exception: No arguments available in argument array More... | |

class | ArgumentSizeMismatch |

Exception: Arguments are of different size More... | |

class | InvalidRelation |

Exception: Invalid relation passed as argument More... | |

class | InvalidProjector |

Exception: Invalid projector passed as argument More... | |

class | UnknownBranching |

Exception: Unknown value or variable selection passed as argument More... | |

class | SetMeDiff |

Modification event difference for Set-variable implementations. More... | |

class | SetVarImpBase |

Base-class for Set-variable implementations. More... | |

class | LubRanges< SetVarImp * > |

Range iterator for the least upper bound of a set variable implementation. More... | |

class | GlbRanges< SetVarImp * > |

Range iterator for the greatest lower bound of a set variable implementation. More... | |

class | RangeList |

Lists of ranges (intervals). More... | |

class | BndSet |

Sets of integers. More... | |

class | BndSetRanges |

Range iterator for integer sets. More... | |

class | GLBndSet |

Growing sets of integers. More... | |

class | LUBndSet |

Shrinking sets of integers. More... | |

class | RangesCompl |

A complement iterator spezialized for the BndSet limits. More... | |

class | LubRanges |

Range iterator for the least upper bound. More... | |

class | GlbRanges |

Range iterator for the greatest lower bound. More... | |

class | UnknownRanges |

Range iterator for the unknown set. More... | |

class | SetVarImp |

Finite integer set variable implementation. More... | |

class | LubRanges< ComplementView< View > > |

Range iterator for least upper bound of complement set views More... | |

class | LubRanges< ComplementView< ComplementView< View > > > |

Range iterator for the least upper bound of double-complement-views. More... | |

class | GlbRanges< ComplementView< View > > |

Range iterator for greatest lower bound of complement set views More... | |

class | GlbRanges< ComplementView< ComplementView< View > > > |

Range iterator for the greatest lower bound of double-complement-views. More... | |

class | ArrayRanges |

Range iterator for a two-dimensional array More... | |

class | LubRanges< EmptyView > |

Range iterator for least upper bound of constantly empty set view More... | |

class | GlbRanges< EmptyView > |

Range iterator for greatesr lower bound of constantly empty set view More... | |

class | LubRanges< UniverseView > |

Range iterator for least upper bound of constant universe set view More... | |

class | GlbRanges< UniverseView > |

Range iterator for greatest lower bound of constant universe set view More... | |

class | LubRanges< ConstantView > |

Range iterator for least upper bound of constant set view More... | |

class | GlbRanges< ConstantView > |

Range iterator for greatest lower bound of constant set view More... | |

class | LubRanges< SetView > |

Range iterator for least upper bound of set variable views More... | |

class | GlbRanges< SetView > |

Range iterator for greatest lower bound of set variable views More... | |

class | LubRanges< SingletonView > |

Range iterator for least upper bound of singleton set view More... | |

class | GlbRanges< SingletonView > |

Range iterator for greatest lower bound of singleton set view More... | |

class | SetView |

Set view for set variables More... | |

class | ConstantView |

Constant view. More... | |

class | EmptyView |

Constant view for the empty set. More... | |

class | UniverseView |

Constant view for the universe. More... | |

class | SingletonView |

Singleton set view. More... | |

class | ComplementView |

Complement set view. More... | |

class | ComplementView< ComplementView< View > > |

Complement set view specialized for complement set views. More... | |

## Namespaces | |

namespace | Branch |

Set branchings | |

namespace | Convex |

Propagators for convexity. | |

namespace | Distinct |

Propagators for global distinctness constraints. | |

namespace | Int |

Propagators connecting set and int variables. | |

namespace | Projection |

namespace | Rel |

Standard set relation propagators. | |

namespace | RelOp |

Standard set operation propagators. | |

namespace | Select |

Set selection propagators | |

namespace | Sequence |

Propagators for ordered sequences of sets. | |

## Variables | |

const Gecode::ModEvent | ME_SET_FAILED = Gecode::ME_GEN_FAILED |

Domain operation has resulted in failure. | |

const Gecode::ModEvent | ME_SET_NONE = Gecode::ME_GEN_NONE |

Domain operation has not changed domain. | |

const Gecode::ModEvent | ME_SET_VAL = Gecode::ME_GEN_ASSIGNED |

Domain operation has resulted in a value (assigned variable). | |

const Gecode::ModEvent | ME_SET_CARD = Gecode::ME_GEN_ASSIGNED + 1 |

Domain operation has changed the variable cardinality. | |

const Gecode::ModEvent | ME_SET_LUB = Gecode::ME_GEN_ASSIGNED + 2 |

Domain operation has changed the least upper bound. | |

const Gecode::ModEvent | ME_SET_GLB = Gecode::ME_GEN_ASSIGNED + 3 |

Domain operation has changed the greatest lower bound. | |

const Gecode::ModEvent | ME_SET_BB = Gecode::ME_GEN_ASSIGNED + 4 |

Domain operation has changed both greatest lower and least upper bound. | |

const Gecode::ModEvent | ME_SET_CLUB = Gecode::ME_GEN_ASSIGNED + 5 |

Domain operation has changed the least upper bound and the cardinality. | |

const Gecode::ModEvent | ME_SET_CGLB = Gecode::ME_GEN_ASSIGNED + 6 |

Domain operation has changed the greatest lower bound and the cardinality. | |

const Gecode::ModEvent | ME_SET_CBB = Gecode::ME_GEN_ASSIGNED + 7 |

Domain operation has changed both the greatest lower bound and the least upper bound, as well as the cardinality. | |

const Gecode::PropCond | PC_SET_VAL = Gecode::PC_GEN_ASSIGNED |

Propagate when a view becomes assigned (single value). | |

const Gecode::PropCond | PC_SET_CARD = Gecode::PC_GEN_ASSIGNED + 1 |

Propagate when the cardinality of a view changes. | |

const Gecode::PropCond | PC_SET_CLUB = Gecode::PC_GEN_ASSIGNED + 2 |

Propagate when the cardinality or the least upper bound of a view changes. | |

const Gecode::PropCond | PC_SET_CGLB = Gecode::PC_GEN_ASSIGNED + 3 |

Propagate when the cardinality or the greatest lower bound of a view changes. | |

const Gecode::PropCond | PC_SET_ANY = Gecode::PC_GEN_ASSIGNED + 4 |

Propagate when any bound or the cardinality of a view changes. |