org.sat4j.opt
Class PseudoOptDecorator
java.lang.Object
  
org.sat4j.tools.SolverDecorator
      
org.sat4j.opt.PseudoOptDecorator
- All Implemented Interfaces: 
 - java.io.Serializable, IOptimizationProblem, IProblem, ISolver
 
public class PseudoOptDecorator
- extends SolverDecorator
- implements IOptimizationProblem
  
A decorator that computes minimal pseudo boolean models.
- Author:
 
  - daniel
 
- See Also:
 - Serialized Form
 
 
 
| Methods inherited from class org.sat4j.tools.SolverDecorator | 
addAllClauses, addAtLeast, addAtMost, addClause, addPseudoBoolean, clearLearntClauses, decorated, findModel, findModel, getStat, getTimeout, isSatisfiable, isSatisfiable, model, nConstraints, newVar, newVar, nVars, printStat, printStat, removeConstr, reset, setExpectedNumberOfClauses, setTimeout, setTimeoutMs, toString | 
 
| Methods inherited from class java.lang.Object | 
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
 
PseudoOptDecorator
public PseudoOptDecorator(ISolver solver)
setObjectTiveFunction
public void setObjectTiveFunction(ObjectiveFunction objf)
 
 
admitABetterSolution
public boolean admitABetterSolution()
                             throws TimeoutException
- Specified by:
 admitABetterSolution in interface IOptimizationProblem
 
- Throws:
 TimeoutException
 
hasNoObjectiveFunction
public boolean hasNoObjectiveFunction()
- Specified by:
 hasNoObjectiveFunction in interface IOptimizationProblem
 
 
nonOptimalMeansSatisfiable
public boolean nonOptimalMeansSatisfiable()
- Specified by:
 nonOptimalMeansSatisfiable in interface IOptimizationProblem
 
 
calculateObjective
public java.lang.Number calculateObjective()
- Specified by:
 calculateObjective in interface IOptimizationProblem
 
 
discard
public void discard()
             throws ContradictionException
- Specified by:
 discard in interface IOptimizationProblem
 
- Throws:
 ContradictionException
 
model
public int[] model()
- Description copied from interface: 
IProblem 
- Provide a model (if any) for a satisfiable formula. That method should be
 called AFTER isSatisfiable() or isSatisfiable(IVecInt) if the formula is
 satisfiable. Else an exception UnsupportedOperationException is launched.
- Specified by:
 model in interface IProblem- Overrides:
 model in class SolverDecorator
 
- Returns:
 - a model of the formula as an array of literals to satisfy.
 - See Also:
 IProblem.isSatisfiable(), 
IProblem.isSatisfiable(IVecInt)