jopt.csp.spi.arcalgorithm.graph.arc.binary
Class BinaryBoolEqThreeVarArc

java.lang.Object
  extended byjopt.csp.spi.arcalgorithm.graph.arc.AbstractArc
      extended byjopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryArc
          extended byjopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryBoolArc
              extended byjopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryBoolEqThreeVarArc
All Implemented Interfaces:
Arc

public class BinaryBoolEqThreeVarArc
extends BinaryBoolArc

Arc representing Z = (A == b)


Field Summary
 
Fields inherited from interface jopt.csp.spi.arcalgorithm.graph.arc.Arc
BINARY, GENERIC, HYPER, NODE, SCHEDULE
 
Constructor Summary
BinaryBoolEqThreeVarArc(BooleanNode a, boolean notA, boolean b, BooleanNode z, boolean notZ)
          Constraint
 
Method Summary
 void propagate()
          Attempts to reduce values in target node domain based on values in all source nodes
 
Methods inherited from class jopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryBoolArc
propagate
 
Methods inherited from class jopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryArc
getArcType, getComplexity, getSourceDependency, getSourceNode, getTargetNode
 
Methods inherited from class jopt.csp.spi.arcalgorithm.graph.arc.AbstractArc
setAlgorithmStrength, setUseDomainDeltas
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BinaryBoolEqThreeVarArc

public BinaryBoolEqThreeVarArc(BooleanNode a,
                               boolean notA,
                               boolean b,
                               BooleanNode z,
                               boolean notZ)
Constraint

Parameters:
a - A portion of equation
notA - True if A portion of equation is equal to !A, false if equal to A
b - B constant of equation
z - Left side of equation
notZ - True if left side of equation is equal to !Z, false if equal to Z
Method Detail

propagate

public void propagate()
               throws jopt.csp.variable.PropagationFailureException
Attempts to reduce values in target node domain based on values in all source nodes

Throws:
jopt.csp.variable.PropagationFailureException - If domain of target node becomes empty