public class SimpleTable extends Constraint implements UsesQueueVariable, Stateful, SatisfiedPresent
"Compact-Table: Efficient Filtering Table Constraints with Reversible Sparse Bit-Sets" Jordan Demeulenaere, Renaud Hartert, Christophe Lecoutre, Guillaume Perez, Laurent Perron, Jean-Charles ReĢgin, Pierre Schaus. Proc. International Conference on Principles and Practice of Constraint Programming, CP 2016. pp 207-223
Modifier and Type | Field and Description |
---|---|
int[][] |
tuple
Tuples specifying the allowed values
|
IntVar[] |
x
Variables within the scope of table constraint
|
atomicExecution, consistencyPruningEvents, constraintScope, earlyTerminationOK, increaseWeight, numberId, scope, trace
queueIndex
Constructor and Description |
---|
SimpleTable(IntVar[] list,
int[][] tuples)
It constructs a table constraint.
|
SimpleTable(IntVar[] list,
int[][] tuples,
boolean reuseTupleArguments)
It constructs a table constraint.
|
Modifier and Type | Method and Description |
---|---|
void |
consistency(Store store)
It is a (most probably incomplete) consistency function which removes the
values from variables domains.
|
int |
getDefaultConsistencyPruningEvent() |
void |
impose(Store store)
It imposes the constraint in a given store.
|
void |
queueVariable(int level,
Var v)
This is a function called to indicate which variable in a scope of
constraint has changed.
|
void |
removeLevel(int level)
This function is called in case of the backtrack, so a constraint can
clear the queue of changed variables which is no longer valid.
|
boolean |
satisfied()
It checks if the constraint is satisfied.
|
String |
toString()
It produces a string representation of a constraint state.
|
afc, arguments, cleanAfterFailure, decompose, getConsistencyPruningEvent, getGuideConstraint, getGuideValue, getGuideVariable, grounded, grounded, id, impose, imposeDecomposition, increaseWeight, intArrayToString, long2int, numberArgs, removeConstraint, requiresMonotonicity, setConsistencyPruningEvent, setConstraintScope, setScope, setScope, setScope, setScope, setScope, setWatchedVariableGrounded, supplyGuideFeedback, updateAFC, watchedVariableGrounded
auxiliaryVariables, checkInput, checkInput, checkInputForDuplication, checkInputForDuplicationSkipSingletons, checkInputForNullness, checkInputForNullness, checkInputForNullness, derivative, getDubletonsSkipSingletons, imposeDecomposition
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
isStateful
public IntVar[] x
public int[][] tuple
public SimpleTable(IntVar[] list, int[][] tuples)
list
- the variables in the scope of the constraint.tuples
- the tuples which define alloed values.public SimpleTable(IntVar[] list, int[][] tuples, boolean reuseTupleArguments)
list
- the variables in the scope of the constraint.tuples
- the tuples which define allowed values.reuseTupleArguments
- specifies if the tuples argument should be used directly without copying.public int getDefaultConsistencyPruningEvent()
getDefaultConsistencyPruningEvent
in class Constraint
public void impose(Store store)
Constraint
impose
in class Constraint
store
- the constraint store to which the constraint is imposed to.public void consistency(Store store)
Constraint
consistency
in class Constraint
store
- constraint store within which the constraint consistency is being checked.public void queueVariable(int level, Var v)
Constraint
queueVariable
in class Constraint
level
- the level of the store at which the change has occurred.v
- variable which has changed.public boolean satisfied()
SatisfiedPresent
Implementations of this interface for constraints that are not PrimitiveConstraint may require constraint imposition and consistency check as a requirement to work correctly.
satisfied
in interface SatisfiedPresent
public void removeLevel(int level)
Stateful
removeLevel
in interface Stateful
level
- the level which is being removed.public String toString()
Constraint
toString
in class Constraint
Copyright © 2022. All rights reserved.