FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
org.jacop.constraints.LexCloneable Class Reference

A cloneable version of the Lex constraint. More...

Inheritance diagram for org.jacop.constraints.LexCloneable:

Public Member Functions

 LexCloneable (IntVarCloneable[][] x)
 It creates a lexicographical order for vectors x[i], i.e.
 LexCloneable (IntVarCloneable[][] x, boolean lt)
 It creates a lexicographical order for vectors x[i], i.e.
LexCloneable cloneInto (StoreCloneable targetStore) throws FailException
ArrayList< IntVar > arguments ()
String id ()
List< Constraint > decomposeLERegular (Store store)
List< Constraint > decomposeLTRegular (Store store)
List< Constraint > decomposeLT (Store store)
List< Constraint > decomposeLE (Store store)
Public Member Functions inherited from org.jacop.constraints.ConstraintCloneableInterface< LexCloneable >
abstract C cloneInto (StoreCloneable targetStore) throws CloneNotSupportedException, FailException
 Creates a new constraint that is a (state-less) clone of this one, but expressed on the variables with the same names found in the input store.

Private Attributes

final String id
 This constraint's ID/name.

Static Private Attributes

static int idNbr = 0
 Used to increment the id of constraints.

Detailed Description

A cloneable version of the Lex constraint.

Author
Thomas Leaute

Constructor & Destructor Documentation

◆ LexCloneable() [1/2]

org.jacop.constraints.LexCloneable.LexCloneable ( IntVarCloneable x[][])

It creates a lexicographical order for vectors x[i], i.e.

forall i, exists j : x[i][k] = x[i+1][k] for k < j and x[i][k] <= x[i+1][k] for k >= j

vectors x[i] does not need to be of the same size.

Parameters
xvector of vectors which assignment is constrained by Lex constraint.

References idNbr.

Referenced by cloneInto().

◆ LexCloneable() [2/2]

org.jacop.constraints.LexCloneable.LexCloneable ( IntVarCloneable x[][],
boolean lt )

It creates a lexicographical order for vectors x[i], i.e.

forall i, exists j : x[i][k] = x[i+1][k] for k < j and x[i][k] <= x[i+1][k] for k >= j

vectors x[i] does not need to be of the same size.

Parameters
xvector of vectors which assignment is constrained by Lex constraint.
ltdefines if we require Lex_{<} (lt = false) or Lex_{<=} (lt = true)

References idNbr.

Member Function Documentation

◆ arguments()

ArrayList< IntVar > org.jacop.constraints.LexCloneable.arguments ( )

◆ cloneInto()

LexCloneable org.jacop.constraints.LexCloneable.cloneInto ( StoreCloneable targetStore) throws FailException
See also
ConstraintCloneableInterface.cloneInto(StoreCloneable)

References LexCloneable().

Here is the call graph for this function:

◆ decomposeLE()

List< Constraint > org.jacop.constraints.LexCloneable.decomposeLE ( Store store)
See also
org.jacop.constraints.Lex#decomposeLE(org.jacop.core.Store)

◆ decomposeLERegular()

List< Constraint > org.jacop.constraints.LexCloneable.decomposeLERegular ( Store store)
See also
org.jacop.constraints.Lex#decomposeLERegular(org.jacop.core.Store)

◆ decomposeLT()

List< Constraint > org.jacop.constraints.LexCloneable.decomposeLT ( Store store)
See also
org.jacop.constraints.Lex#decomposeLT(org.jacop.core.Store)

◆ decomposeLTRegular()

List< Constraint > org.jacop.constraints.LexCloneable.decomposeLTRegular ( Store store)
See also
org.jacop.constraints.Lex#decomposeLTRegular(org.jacop.core.Store)

◆ id()

String org.jacop.constraints.LexCloneable.id ( )

Member Data Documentation

◆ id

final String org.jacop.constraints.LexCloneable.id
private

This constraint's ID/name.

◆ idNbr

int org.jacop.constraints.LexCloneable.idNbr = 0
staticprivate

Used to increment the id of constraints.

Referenced by LexCloneable(), and LexCloneable().


The documentation for this class was generated from the following file: