Package org.jacop.constraints.netflow
Class Arithmetic
- java.lang.Object
-
- org.jacop.constraints.DecomposedConstraint<Constraint>
-
- org.jacop.constraints.netflow.Arithmetic
-
public class Arithmetic extends DecomposedConstraint<Constraint>
- Version:
- 4.8
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
Arithmetic.ArithmeticBuilder
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.List<Constraint>
decomposition
protected java.util.List<int[]>
eqns
protected java.util.Map<IntVar,java.lang.Integer>
map
static IntVar
NULL_VAR
protected java.util.List<IntVar>
vars
-
Fields inherited from class org.jacop.constraints.DecomposedConstraint
queueIndex
-
-
Constructor Summary
Constructors Constructor Description Arithmetic()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEquation(IntVar[] vars, int[] coeffs)
void
addEquation(IntVar[] vars, int[] coeffs, int constant)
void
addSum(IntVar[] vars, IntVar sum)
void
addXplusYeqZ(IntVar x, IntVar y, IntVar z)
void
addXsubYeqZ(IntVar x, IntVar y, IntVar z)
java.util.List<Constraint>
decompose(Store store)
It returns an array list of constraint which are used to decompose this constraint.private static void
flip(int[] eqn)
void
imposeDecomposition(Store store)
It imposes the constraint in a given store.private int
lookup(IntVar var)
private boolean
optimize(int[] sum)
java.util.List<Constraint>
primitiveDecomposition(Store store)
private static int[]
transform(int[] sum, int[] eqn)
private static int
weight(int[] array)
-
Methods inherited from class org.jacop.constraints.DecomposedConstraint
auxiliaryVariables, checkInput, checkInput, checkInputForDuplication, checkInputForDuplicationSkipSingletons, checkInputForNullness, checkInputForNullness, checkInputForNullness, derivative, getDubletonsSkipSingletons, imposeDecomposition
-
-
-
-
Field Detail
-
NULL_VAR
public static final IntVar NULL_VAR
-
eqns
protected java.util.List<int[]> eqns
-
vars
protected java.util.List<IntVar> vars
-
map
protected java.util.Map<IntVar,java.lang.Integer> map
-
decomposition
java.util.List<Constraint> decomposition
-
-
Method Detail
-
lookup
private int lookup(IntVar var)
-
addEquation
public void addEquation(IntVar[] vars, int[] coeffs)
-
addEquation
public void addEquation(IntVar[] vars, int[] coeffs, int constant)
-
primitiveDecomposition
public java.util.List<Constraint> primitiveDecomposition(Store store)
-
optimize
private boolean optimize(int[] sum)
-
weight
private static int weight(int[] array)
-
transform
private static int[] transform(int[] sum, int[] eqn)
-
flip
private static void flip(int[] eqn)
-
decompose
public java.util.List<Constraint> decompose(Store store)
Description copied from class:DecomposedConstraint
It returns an array list of constraint which are used to decompose this constraint. It actually creates a decomposition (possibly also creating variables), but it does not impose the constraint.- Specified by:
decompose
in classDecomposedConstraint<Constraint>
- Parameters:
store
- the constraint store in which context the decomposition takes place.- Returns:
- an array list of constraints used to decompose this constraint.
-
imposeDecomposition
public void imposeDecomposition(Store store)
Description copied from class:DecomposedConstraint
It imposes the constraint in a given store.- Specified by:
imposeDecomposition
in classDecomposedConstraint<Constraint>
- Parameters:
store
- the constraint store to which the constraint is imposed to.
-
-