org.sat4j.minisat.constraints.pb
Class MinWatchCardPB

java.lang.Object
  extended by org.sat4j.minisat.constraints.card.MinWatchCard
      extended by org.sat4j.minisat.constraints.pb.MinWatchCardPB
All Implemented Interfaces:
java.io.Serializable, PBConstr, Constr, Propagatable, Undoable, IConstr

public class MinWatchCardPB
extends MinWatchCard
implements PBConstr

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.sat4j.minisat.constraints.card.MinWatchCard
ATLEAST, ATMOST, watchCumul
 
Constructor Summary
MinWatchCardPB(ILits voc, IVecInt ps, boolean moreThan, int degree)
           
MinWatchCardPB(ILits voc, IVecInt ps, int degree)
           
 
Method Summary
 void assertConstraint(UnitPropagationListener s)
          Method called when the constraint is to be asserted.
 IVecInt computeAnImpliedClause()
           
 java.math.BigInteger getCoef(int literal)
           
 java.math.BigInteger[] getCoefs()
           
 java.math.BigInteger getDegree()
           
 boolean learnt()
          D?
static MinWatchCardPB minWatchCardPBNew(UnitPropagationListener s, ILits voc, IVecInt ps, boolean moreThan, int degree)
          Permet la cr?
static MinWatchCardPB normalizedMinWatchCardPBNew(UnitPropagationListener s, ILits voc, IVecInt ps, int degree)
          Permet la cr?
 void register()
          Register the constraint to the solver.
 void setLearnt()
          Mark a constraint as learnt.
 
Methods inherited from class org.sat4j.minisat.constraints.card.MinWatchCard
calcReason, computePropagation, computeWatches, get, getActivity, getLits, getVocabulary, incActivity, linearisation, locked, minWatchCardNew, normalize, propagate, remove, rescaleBy, simplify, size, toString, undo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.sat4j.minisat.constraints.pb.PBConstr
getLits, getVocabulary
 
Methods inherited from interface org.sat4j.minisat.core.Constr
calcReason, getActivity, incActivity, locked, remove, rescaleBy, simplify
 
Methods inherited from interface org.sat4j.minisat.core.Propagatable
propagate
 
Methods inherited from interface org.sat4j.specs.IConstr
get, size
 

Constructor Detail

MinWatchCardPB

public MinWatchCardPB(ILits voc,
                      IVecInt ps,
                      boolean moreThan,
                      int degree)

MinWatchCardPB

public MinWatchCardPB(ILits voc,
                      IVecInt ps,
                      int degree)
Method Detail

getCoef

public java.math.BigInteger getCoef(int literal)
Specified by:
getCoef in interface PBConstr

getDegree

public java.math.BigInteger getDegree()
Specified by:
getDegree in interface PBConstr

getCoefs

public java.math.BigInteger[] getCoefs()
Specified by:
getCoefs in interface PBConstr

normalizedMinWatchCardPBNew

public static MinWatchCardPB normalizedMinWatchCardPBNew(UnitPropagationListener s,
                                                         ILits voc,
                                                         IVecInt ps,
                                                         int degree)
                                                  throws ContradictionException
Permet la cr?ation de contrainte de cardinalit? ? observation minimale

Parameters:
s - outil pour la propagation des litt?raux
voc - vocabulaire utilis? par la contrainte
ps - liste des litt?raux de la nouvelle contrainte
degree - fournit le degr? de la contrainte
Returns:
une nouvelle clause si tout va bien, null sinon
Throws:
ContradictionException

minWatchCardPBNew

public static MinWatchCardPB minWatchCardPBNew(UnitPropagationListener s,
                                               ILits voc,
                                               IVecInt ps,
                                               boolean moreThan,
                                               int degree)
                                        throws ContradictionException
Permet la cr?ation de contrainte de cardinalit? ? observation minimale

Parameters:
s - outil pour la propagation des litt?raux
voc - vocabulaire utilis? par la contrainte
ps - liste des litt?raux de la nouvelle contrainte
moreThan - d?termine si c'est une sup?rieure ou ?gal ? l'origine
degree - fournit le degr? de la contrainte
Returns:
une nouvelle clause si tout va bien, null sinon
Throws:
ContradictionException

learnt

public boolean learnt()
D?termine si la contrainte est apprise

Specified by:
learnt in interface IConstr
Overrides:
learnt in class MinWatchCard
Returns:
true si la contrainte est apprise, false sinon
See Also:
IConstr.learnt()

setLearnt

public void setLearnt()
Description copied from interface: Constr
Mark a constraint as learnt.

Specified by:
setLearnt in interface Constr
Overrides:
setLearnt in class MinWatchCard

register

public void register()
Description copied from interface: Constr
Register the constraint to the solver.

Specified by:
register in interface Constr
Overrides:
register in class MinWatchCard

assertConstraint

public void assertConstraint(UnitPropagationListener s)
Description copied from interface: Constr
Method called when the constraint is to be asserted. It means that the constraint was learnt during the search and it should now propagate some truth values. In the clausal case, only one literal should be propagated. In other cases, it might be different.

Specified by:
assertConstraint in interface Constr
Overrides:
assertConstraint in class MinWatchCard
Parameters:
s - a UnitPropagationListener to use for unit propagation.

computeAnImpliedClause

public IVecInt computeAnImpliedClause()
Specified by:
computeAnImpliedClause in interface PBConstr


Copyright © 2007 Centre de Recherche en Informatique de Lens (CRIL). All Rights Reserved.