jopt.csp.spi.arcalgorithm.graph.arc.binary
Class BinaryBoolImpliesThreeVarArc
java.lang.Object
jopt.csp.spi.arcalgorithm.graph.arc.AbstractArc
jopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryArc
jopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryBoolArc
jopt.csp.spi.arcalgorithm.graph.arc.binary.BinaryBoolImpliesThreeVarArc
- All Implemented Interfaces:
- Arc
- public class BinaryBoolImpliesThreeVarArc
- extends BinaryBoolArc
Arc representing Z = A -> b or Z = a -> B
Method Summary |
void |
propagate()
Attempts to reduce values in target node domain based on values
in all source nodes |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
BinaryBoolImpliesThreeVarArc
public BinaryBoolImpliesThreeVarArc(BooleanNode a,
boolean notA,
boolean b,
BooleanNode z,
boolean notZ)
- Constraint
- Parameters:
a
- A portion of equationnotA
- True if A portion of equation is equal to !A, false if right side is equal to Ab
- B portion of equationz
- Left side of equationnotZ
- True if left side of equation is equal to !Z, false if left side is equal to Z
BinaryBoolImpliesThreeVarArc
public BinaryBoolImpliesThreeVarArc(boolean a,
BooleanNode b,
boolean notB,
BooleanNode z,
boolean notZ)
- Constraint
- Parameters:
a
- A portion of equationb
- B portion of equationnotB
- True if B portion of equation is equal to !B, false if right side is equal to Bz
- Left side of equationnotZ
- True if left side of equation is equal to !Z, false if left side is equal to Z
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