org.sat4j.tools
Class Minimal4InclusionModel

java.lang.Object
  extended by org.sat4j.tools.SolverDecorator
      extended by org.sat4j.tools.Minimal4InclusionModel
All Implemented Interfaces:
java.io.Serializable, IProblem, ISolver

public class Minimal4InclusionModel
extends SolverDecorator
implements java.io.Serializable

Computes models with a minimal subset (with respect to set inclusion) of negative literals. This is done be adding a clause containing the negation of the negative literals appearing in the model found (which prevents any interpretation containing that subset of negative literals to be a model of the formula). Computes only one model minimal for inclusion, since there is currently no way to save the state of the solver.

Author:
leberre
See Also:
ISolver.addClause(IVecInt), Serialized Form

Constructor Summary
Minimal4InclusionModel(ISolver solver)
           
 
Method Summary
 int[] model()
          Provide a model (if any) for a satisfiable formula.
 
Methods inherited from class org.sat4j.tools.SolverDecorator
addAllClauses, addAtLeast, addAtMost, addClause, addPseudoBoolean, decorated, getStat, getTimeout, isSatisfiable, isSatisfiable, model, nConstraints, newVar, newVar, nVars, printStat, printStat, removeConstr, reset, setExpectedNumberOfClauses, setTimeout, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Minimal4InclusionModel

public Minimal4InclusionModel(ISolver solver)
Parameters:
solver -
Method Detail

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() 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.