choco.cp.solver.constraints.global.tree.filtering.structuralFiltering
Class Nproper

java.lang.Object
  extended by choco.cp.solver.constraints.global.tree.filtering.AbstractPropagator
      extended by choco.cp.solver.constraints.global.tree.filtering.structuralFiltering.Nproper

public class Nproper
extends AbstractPropagator


Field Summary
protected  int lowerBd
          current lower bound on the number of proper trees
protected  IStateBitSet tmp
          the set of nodes that belong to the required graph and that reach a potential root by a path of required arcs
protected  int upperBd
          current upper bound on the number of proper trees
 
Fields inherited from class choco.cp.solver.constraints.global.tree.filtering.AbstractPropagator
affiche, condPrecs, costStruct, doms, incomp, indices, inputGraph, LOGGER, nbVertices, nodes, precs, propagateStruct, solver, struct, tree
 
Constructor Summary
Nproper(Object[] params)
           
 
Method Summary
 boolean feasibility()
          check the consistency of the filtering rules of a given propagator
 void filter()
           the filtering rule is decomposed in two steps: - max(nproper) <= lowerBd: enforce the potential root of each node which does not belong to tmp .
 String getTypePropag()
           
 
Methods inherited from class choco.cp.solver.constraints.global.tree.filtering.AbstractPropagator
applyConstraint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

lowerBd

protected int lowerBd
current lower bound on the number of proper trees


upperBd

protected int upperBd
current upper bound on the number of proper trees


tmp

protected IStateBitSet tmp
the set of nodes that belong to the required graph and that reach a potential root by a path of required arcs

Constructor Detail

Nproper

public Nproper(Object[] params)
Method Detail

getTypePropag

public String getTypePropag()
Specified by:
getTypePropag in class AbstractPropagator

feasibility

public boolean feasibility()
                    throws ContradictionException
Description copied from class: AbstractPropagator
check the consistency of the filtering rules of a given propagator

Specified by:
feasibility in class AbstractPropagator
Returns:
false iff the propagator detect an inconsistency
Throws:
ContradictionException

filter

public void filter()

the filtering rule is decomposed in two steps:

- max(nproper) <= lowerBd: enforce the potential root of each node which does not belong to tmp .
- min(nProper) >= upperBd: enforce the potential root of each isolated node.

Specified by:
filter in class AbstractPropagator


Copyright © 2012. All Rights Reserved.