choco.cp.solver.constraints.reified.leaves.arithm
Class ScalarNode

java.lang.Object
  extended by choco.kernel.solver.constraints.reified.INode
      extended by choco.cp.solver.constraints.reified.leaves.arithm.ScalarNode
All Implemented Interfaces:
IPretty, ArithmNode

public final class ScalarNode
extends INode
implements ArithmNode


Field Summary
protected  int[] coeffs
           
 
Fields inherited from class choco.kernel.solver.constraints.reified.INode
LOGGER, subtrees
 
Constructor Summary
ScalarNode(INode[] subt)
           
ScalarNode(INode[] subt, int[] coeffs)
           
 
Method Summary
 int[] computeLinearExpr(int scope)
           
 int eval(int[] tuple)
           
 IntDomainVar extractResult(Solver s)
           
 boolean isALinearTerm()
           
 String pretty()
          pretty printing of the object.
 
Methods inherited from class choco.kernel.solver.constraints.reified.INode
countNbVar, getModelScope, getNbSubTrees, getScope, getSubtree, getType, hasOnlyVariablesLeaves, isAConstant, isAVariable, isBoolean, isCsteEqualTo, isDecompositionPossible, isReified, setIndexes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

coeffs

protected int[] coeffs
Constructor Detail

ScalarNode

public ScalarNode(INode[] subt)

ScalarNode

public ScalarNode(INode[] subt,
                  int[] coeffs)
Method Detail

eval

public int eval(int[] tuple)
Specified by:
eval in interface ArithmNode

extractResult

public IntDomainVar extractResult(Solver s)
Overrides:
extractResult in class INode
Returns:
a variable that represents the true/false value of the tree belows this node if it is a reified node or its value if it is an arithmetic node

pretty

public String pretty()
Description copied from interface: IPretty
pretty printing of the object. This String is not constant and may depend on the context.

Specified by:
pretty in interface IPretty
Returns:
a readable string representation of the object

isALinearTerm

public boolean isALinearTerm()
Overrides:
isALinearTerm in class INode

computeLinearExpr

public int[] computeLinearExpr(int scope)
Overrides:
computeLinearExpr in class INode
Returns:
the set of coefficients encoding a linear equation


Copyright © 2012. All Rights Reserved.