Package org.jacop.core
Class Var
java.lang.Object
org.jacop.core.Var
- All Implemented Interfaces:
Backtrackable
Defines a variable and related operations on it.
- Version:
- 4.9
-
Field Summary
FieldsModifier and TypeFieldDescriptionId string of the variable.static final AtomicInteger
It is a counter to indicate number of created variables.int
It specifies the index at which it is stored in Store.(package private) double
Pruning activity of this variable.Each variable is created in a store.int
It specifies the current weight of the variable. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondouble
activity()
static <T extends Var>
voidaddPositionMapping
(Map<T, Integer> position, T[] list, boolean skipSingletons, Class clazz) static <T extends Var,
R>
voidaddPositionMapping
(Map<T, R> position, T[] list, Function<T, R> function, boolean skipSingletons, Class clazz) float
afcValue()
void
abstract Domain
dom()
This function returns current domain of the variable.abstract void
domainHasChanged
(int event) It informs the variable that its variable has changed according to the specified event.abstract int
getSize()
It returns the size of the current domain.abstract double
It returns the size of the current domain.getStore()
This function returns store used by this variable.id()
This function returns variable id.int
index()
This function returns the index of variable in store array.abstract boolean
isEmpty()
It checks if the domain is empty.abstract int
level()
This function returns stamp of the current domain of variable.positionMapping
(T[] list, boolean skipSingletons, Class clazz) positionMapping
(T[] list, Function<T, R> function, boolean skipSingletons, Class clazz) abstract void
It registers constraint with current variable, so anytime this variable is changed the constraint is reevaluated.abstract void
putModelConstraint
(Constraint c, int pruningEvent) It registers constraint with current variable, so anytime this variable is changed the constraint is reevaluated.abstract void
It registers constraint with current variable, so always when this variable is changed the constraint is reevaluated.abstract void
It detaches constraint from the current variable, so change in variable will not cause constraint reevaluation.abstract boolean
It checks if the domain contains only one value.abstract int
It returns current number of constraints which are associated with variable and are not yet satisfied.abstract int
It returns all constraints which are associated with variable, even the ones which are already satisfied.abstract int
It returns current number of constraints which are associated with variable and are not yet satisfied.abstract String
It returns the string representation of the variable using the full representation of the domain.void
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jacop.core.Backtrackable
remove
-
Field Details
-
idNumber
It is a counter to indicate number of created variables. -
id
Id string of the variable. -
index
public int indexIt specifies the index at which it is stored in Store. -
weight
public int weightIt specifies the current weight of the variable. -
store
Each variable is created in a store. This attribute represents the store in which this variable was created. -
pruningActivity
double pruningActivityPruning activity of this variable.
-
-
Constructor Details
-
Var
public Var()
-
-
Method Details
-
dom
This function returns current domain of the variable.- Returns:
- the domain of the variable.
-
getSize
public abstract int getSize()It returns the size of the current domain.- Returns:
- the size of the variables domain.
-
getSizeFloat
public abstract double getSizeFloat()It returns the size of the current domain.- Returns:
- the size of the variables domain.
-
isEmpty
public abstract boolean isEmpty()It checks if the domain is empty.- Returns:
- true if variable domain is empty.
-
putModelConstraint
It registers constraint with current variable, so anytime this variable is changed the constraint is reevaluated. Pruning events constants from 0 to n, where n is the strongest pruning event.- Parameters:
c
- the constraint which is being attached to the variable.pruningEvent
- type of the event which must occur to trigger the execution of the consistency function.
-
putSearchConstraint
It registers constraint with current variable, so always when this variable is changed the constraint is reevaluated.- Parameters:
c
- the constraint which is added as a search constraint.
-
removeConstraint
It detaches constraint from the current variable, so change in variable will not cause constraint reevaluation. It is only removed from the current level onwards. Removing current level at later stage will automatically re-attached the constraint to the variable.- Parameters:
c
- the constraint being detached from the variable.
-
singleton
public abstract boolean singleton()It checks if the domain contains only one value.- Returns:
- true if the variable domain is a singleton, false otherwise.
-
sizeConstraints
public abstract int sizeConstraints()It returns current number of constraints which are associated with variable and are not yet satisfied.- Returns:
- number of constraints attached to the variable.
-
sizeConstraintsOriginal
public abstract int sizeConstraintsOriginal()It returns all constraints which are associated with variable, even the ones which are already satisfied.- Returns:
- number of constraints attached at the earliest level of the variable.
-
sizeSearchConstraints
public abstract int sizeSearchConstraints()It returns current number of constraints which are associated with variable and are not yet satisfied.- Returns:
- number of attached search constraints.
-
level
public abstract int level()This function returns stamp of the current domain of variable. It is equal or smaller to the stamp of store. Larger difference indicates that variable has not been changed for a longer time.- Specified by:
level
in interfaceBacktrackable
- Returns:
- level for which the most recent changes have been applied to.
-
toStringFull
It returns the string representation of the variable using the full representation of the domain.- Returns:
- string representation.
-
domainHasChanged
public abstract void domainHasChanged(int event) It informs the variable that its variable has changed according to the specified event.- Parameters:
event
- the type of the change (GROUND, BOUND, ANY).
-
putConstraint
It registers constraint with current variable, so anytime this variable is changed the constraint is reevaluated.- Parameters:
c
- the constraint being attached to this variable.
-
getStore
This function returns store used by this variable.- Returns:
- the store of the variable.
-
id
This function returns variable id.- Returns:
- the id of the variable.
-
index
public int index()This function returns the index of variable in store array.- Specified by:
index
in interfaceBacktrackable
- Returns:
- the index of the variable.
-
afcValue
public float afcValue() -
updateActivity
public void updateActivity() -
activity
public double activity() -
applyDecay
public void applyDecay() -
createEmptyPositioning
-
positionMapping
-
addPositionMapping
-
positionMapping
-
addPositionMapping
-