Commit ec9bd59f authored by leberre's avatar leberre

Removed redundant public modifier.

git-svn-id: svn+ssh://svn.forge.ow2.org/svnroot/sat4j/maven/trunk@1708 ba638df5-4473-46d1-82f8-c3ae2a17a6e1
parent 64eefd49
......@@ -45,176 +45,176 @@ import org.sat4j.specs.IVecInt;
*/
public interface IPBSolver extends ISolver {
/**
* Create a Pseudo-Boolean constraint of the type "at least n or at most n
* of those literals must be satisfied"
*
* @param lits
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param moreThan
* true if it is a constraint >= degree, false if it is a
* constraint <= degree
* @param d
* the degree of the cardinality constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the vector of literals is empty or if the constraint is
* falsified after unit propagation
* @see #removeConstr(IConstr)
*/
IConstr addPseudoBoolean(IVecInt lits, IVec<BigInteger> coeffs,
boolean moreThan, BigInteger d) throws ContradictionException;
/**
* Create a Pseudo-Boolean constraint of the type "at least n or at most n
* of those literals must be satisfied"
*
* @param lits
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param moreThan
* true if it is a constraint >= degree, false if it is a
* constraint <= degree
* @param d
* the degree of the cardinality constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the vector of literals is empty or if the constraint is
* falsified after unit propagation
* @see #removeConstr(IConstr)
*/
IConstr addPseudoBoolean(IVecInt lits, IVec<BigInteger> coeffs,
boolean moreThan, BigInteger d) throws ContradictionException;
/**
* Create a pseudo boolean constraint of the type "at most".
*
* @param literals
* a set of literals The vector can be reused since the solver is
* not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
/**
* Create a pseudo boolean constraint of the type "at most".
*
* @param literals
* a set of literals The vector can be reused since the solver is
* not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
IConstr addAtMost(IVecInt literals, IVecInt coeffs, int degree)
throws ContradictionException;
IConstr addAtMost(IVecInt literals, IVecInt coeffs, int degree)
throws ContradictionException;
/**
* Create a pseudo boolean constraint of the type "at most".
*
* @param literals
* a set of literals The vector can be reused since the solver is
* not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
/**
* Create a pseudo boolean constraint of the type "at most".
*
* @param literals
* a set of literals The vector can be reused since the solver is
* not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
IConstr addAtMost(IVecInt literals, IVec<BigInteger> coeffs,
BigInteger degree) throws ContradictionException;
IConstr addAtMost(IVecInt literals, IVec<BigInteger> coeffs,
BigInteger degree) throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "at least".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
IConstr addAtLeast(IVecInt literals, IVecInt coeffs, int degree)
throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "at least".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
IConstr addAtLeast(IVecInt literals, IVecInt coeffs, int degree)
throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "at least".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
IConstr addAtLeast(IVecInt literals, IVec<BigInteger> coeffs,
BigInteger degree) throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "at least".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param degree
* the degree of the pseudo-boolean constraint
* @return a reference to the constraint added in the solver, to use in
* removeConstr().
* @throws ContradictionException
* iff the constraint is found trivially unsat.
* @see #removeConstr(IConstr)
* @since 2.3.1
*/
IConstr addAtLeast(IVecInt literals, IVec<BigInteger> coeffs,
BigInteger degree) throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "subset sum".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param weight
* the number of literals that must be satisfied
* @return a reference to the constraint added to the solver. It might
* return an object representing a group of constraints.
* @throws ContradictionException
* iff the constraint is trivially unsatisfiable.
* @since 2.3.1
*/
IConstr addExactly(IVecInt literals, IVecInt coeffs, int weight)
throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "subset sum".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param weight
* the number of literals that must be satisfied
* @return a reference to the constraint added to the solver. It might
* return an object representing a group of constraints.
* @throws ContradictionException
* iff the constraint is trivially unsatisfiable.
* @since 2.3.1
*/
IConstr addExactly(IVecInt literals, IVecInt coeffs, int weight)
throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "subset sum".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param weight
* the number of literals that must be satisfied
* @return a reference to the constraint added to the solver. It might
* return an object representing a group of constraints.
* @throws ContradictionException
* iff the constraint is trivially unsatisfiable.
* @since 2.3.1
*/
IConstr addExactly(IVecInt literals, IVec<BigInteger> coeffs,
BigInteger weight) throws ContradictionException;
/**
* Create a pseudo-boolean constraint of the type "subset sum".
*
* @param literals
* a set of literals. The vector can be reused since the solver
* is not supposed to keep a reference to that vector.
* @param coeffs
* the coefficients of the literals. The vector can be reused
* since the solver is not supposed to keep a reference to that
* vector.
* @param weight
* the number of literals that must be satisfied
* @return a reference to the constraint added to the solver. It might
* return an object representing a group of constraints.
* @throws ContradictionException
* iff the constraint is trivially unsatisfiable.
* @since 2.3.1
*/
IConstr addExactly(IVecInt literals, IVec<BigInteger> coeffs,
BigInteger weight) throws ContradictionException;
/**
* Provide an objective function to the solver.
*
* @param obj
* the objective function
*/
public void setObjectiveFunction(ObjectiveFunction obj);
/**
* Provide an objective function to the solver.
*
* @param obj
* the objective function
*/
void setObjectiveFunction(ObjectiveFunction obj);
/**
* Retrieve the objective function from the solver.
*
* @return the objective function
*/
public ObjectiveFunction getObjectiveFunction();
/**
* Retrieve the objective function from the solver.
*
* @return the objective function
*/
ObjectiveFunction getObjectiveFunction();
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment