|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.sat4j.tools.DimacsStringSolver
org.sat4j.pb.UserFriendlyPBStringSolver<T>
public class UserFriendlyPBStringSolver<T>
Solver to display SAT instances using domain objects names instead of Dimacs numbers.
| Constructor Summary | |
|---|---|
UserFriendlyPBStringSolver()
|
|
UserFriendlyPBStringSolver(int initSize)
|
|
| Method Summary | |
|---|---|
IConstr |
addAtLeast(IVecInt literals,
int degree)
Create a cardinality constraint of the type "at least n of those literals must be satisfied" |
IConstr |
addAtMost(IVecInt literals,
int degree)
Create a cardinality constraint of the type "at most n of those literals must be satisfied" |
IConstr |
addClause(IVecInt literals)
Create a clause from a set of literals The literals are represented by non null integers such that opposite literals a represented by opposite values. |
IConstr |
addPseudoBoolean(IVecInt lits,
IVec<BigInteger> coeffs,
boolean moreThan,
BigInteger d)
Create a Pseudo-Boolean constraint of the type "at least n of those literals must be satisfied" |
String |
getExplanation()
|
ObjectiveFunction |
getObjectiveFunction()
|
int |
newVar(int howmany)
Create howmany variables in the solver (and thus in the
vocabulary). |
void |
setExpectedNumberOfClauses(int nb)
To inform the solver of the expected number of clauses to read. |
void |
setListOfVariablesForExplanation(IVecInt listOfVariables)
|
void |
setMapping(Map<Integer,T> mapping)
|
void |
setObjectiveFunction(ObjectiveFunction obj)
|
String |
toString()
|
String |
toString(String prefix)
Display a textual representation of the solver configuration. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.sat4j.specs.ISolver |
|---|
addAllClauses, addBlockingClause, clearLearntClauses, expireTimeout, getLogPrefix, getSearchListener, getStat, getTimeout, getTimeoutMs, isDBSimplificationAllowed, isVerbose, newVar, nextFreeVarId, printStat, printStat, removeConstr, removeSubsumedConstr, reset, setDBSimplificationAllowed, setLogPrefix, setSearchListener, setTimeout, setTimeoutMs, setTimeoutOnConflicts, setVerbose, unsatExplanation |
| Methods inherited from interface org.sat4j.specs.IProblem |
|---|
findModel, findModel, isSatisfiable, isSatisfiable, isSatisfiable, isSatisfiable, model, model, nConstraints, nVars, printInfos |
| Constructor Detail |
|---|
public UserFriendlyPBStringSolver()
public UserFriendlyPBStringSolver(int initSize)
initSize - | Method Detail |
|---|
public void setMapping(Map<Integer,T> mapping)
public IConstr addPseudoBoolean(IVecInt lits,
IVec<BigInteger> coeffs,
boolean moreThan,
BigInteger d)
throws ContradictionException
IPBSolver
addPseudoBoolean in interface IPBSolverlits - a set of literals. The vector can be reused since the solver
is not supposed to keep a reference to that vector.coeffs - the coefficients of the literals. The vector can be reused
since the solver is not supposed to keep a reference to that
vector.moreThan - true if it is a constraint >= degreed - the degree of the cardinality constraint
ContradictionException - iff the vector of literals is empty or if the constraint is
falsified after unit propagationISolver.removeConstr(IConstr)public void setObjectiveFunction(ObjectiveFunction obj)
setObjectiveFunction in interface IPBSolver
public IConstr addAtLeast(IVecInt literals,
int degree)
throws ContradictionException
ISolver
addAtLeast in interface ISolveraddAtLeast in class DimacsStringSolverliterals - a set of literals. The vector can be reused since the solver
is not supposed to keep a reference to that vector.degree - the degree of the cardinality constraint
ContradictionException - iff the vector of literals is empty or if degree literals are
not remaining unfalsified after unit propagationISolver.removeConstr(IConstr)
public IConstr addAtMost(IVecInt literals,
int degree)
throws ContradictionException
ISolver
addAtMost in interface ISolveraddAtMost in class DimacsStringSolverliterals - a set of literals The vector can be reused since the solver is
not supposed to keep a reference to that vector.degree - the degree of the cardinality constraint
ContradictionException - iff the vector of literals is empty or if it contains more
than degree satisfied literals after unit propagationISolver.removeConstr(IConstr)
public IConstr addClause(IVecInt literals)
throws ContradictionException
ISolver
addClause in interface ISolveraddClause in class DimacsStringSolverliterals - a set of literals
ContradictionException - iff the vector of literals is empty or if it contains only
falsified literals after unit propagationISolver.removeConstr(IConstr)public String getExplanation()
public void setListOfVariablesForExplanation(IVecInt listOfVariables)
public String toString()
toString in class DimacsStringSolverpublic String toString(String prefix)
ISolver
toString in interface ISolvertoString in class DimacsStringSolverprefix - the prefix to use on each line.
public int newVar(int howmany)
ISolverhowmany variables in the solver (and thus in the
vocabulary).
newVar in interface ISolvernewVar in class DimacsStringSolverhowmany - number of variables to create
public void setExpectedNumberOfClauses(int nb)
ISolverp cnf line is
read in dimacs formatted input file.
Note that this method is supposed to be called AFTER a call to
newVar(int)
setExpectedNumberOfClauses in interface ISolversetExpectedNumberOfClauses in class DimacsStringSolvernb - the expected number of clauses.ISolver.newVar(int)public ObjectiveFunction getObjectiveFunction()
getObjectiveFunction in interface IPBSolver
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||