org.sat4j.pb
Class SolverFactory
java.lang.Object
   org.sat4j.core.ASolverFactory<IPBSolver>
org.sat4j.core.ASolverFactory<IPBSolver>
       org.sat4j.pb.SolverFactory
org.sat4j.pb.SolverFactory
- All Implemented Interfaces: 
- Serializable
- public class SolverFactory 
- extends ASolverFactory<IPBSolver>
User friendly access to pre-constructed solvers.
- Since:
- 2.0
- Author:
- leberre
- See Also:
- Serialized Form
 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
instance
public static SolverFactory instance()
- Access to the single instance of the factory.
 
- 
- Returns:
- the singleton of that class.
 
newPBResAllPB
public static PBSolverResolution newPBResAllPB()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and clause
         learning.
 
newPBCPAllPB
public static PBSolverCP newPBCPAllPB()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning.
 
newOPBStringSolver
public static IPBSolver newOPBStringSolver()
- 
- Returns:
- Solver used to display in a string the pb-instance in OPB format.
 
newPBCPMixedConstraints
public static PBSolverCP newPBCPMixedConstraints()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt).
 
newPBCPMixedConstraintsObjective
public static PBSolverCP newPBCPMixedConstraintsObjective()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A specific heuristics
         taking into account the objective value is used.
 
newCompetPBCPMixedConstraintsObjective
public static PBSolverCP newCompetPBCPMixedConstraintsObjective()
- 
 
newPBCPMixedConstraintsObjectiveLearnJustClauses
public static PBSolverCP newPBCPMixedConstraintsObjectiveLearnJustClauses()
- 
- Returns:
- MiniLearning with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A specific heuristics
         taking into account the objective value is used. Conflict
         analysis with full cutting plane inference. Only clauses are
         recorded.
 
newCompetPBCPMixedConstraintsObjectiveLearnJustClauses
public static PBSolverCP newCompetPBCPMixedConstraintsObjectiveLearnJustClauses()
- 
 
newPBKillerRSAT
public static PBSolverCP newPBKillerRSAT()
- 
 
newPBKillerClassic
public static PBSolverCP newPBKillerClassic()
- 
 
newPBKillerFixed
public static PBSolverCP newPBKillerFixed()
- 
 
newCompetPBKillerRSAT
public static PBSolverCP newCompetPBKillerRSAT()
- 
 
newCompetPBKillerClassic
public static PBSolverCP newCompetPBKillerClassic()
- 
 
newCompetPBKillerFixed
public static PBSolverCP newCompetPBKillerFixed()
- 
 
newMiniLearningOPBClauseCardConstrMaxSpecificOrderIncrementalReductionToClause
public static PBSolverCP newMiniLearningOPBClauseCardConstrMaxSpecificOrderIncrementalReductionToClause()
- 
- Returns:
- MiniLearning with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A specific heuristics
         taking into account the objective value is used. Conflict
         analysis reduces to clauses to avoid computations
 
newPBCPMixedConstraintsObjectiveNoLearning
public static PBSolverCP newPBCPMixedConstraintsObjectiveNoLearning()
- 
- Returns:
- MiniLearning with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A specific heuristics
         taking into account the objective value is used. The PB
         constraints are not learnt (watched), just used for backjumping.
 
newPBResMixedConstraintsObjective
public static PBSolverResolution newPBResMixedConstraintsObjective()
- 
 
newCompetPBResWLMixedConstraintsObjective
public static PBSolverResolution newCompetPBResWLMixedConstraintsObjective()
- 
 
newCompetPBResHTMixedConstraintsObjective
public static PBSolverResolution newCompetPBResHTMixedConstraintsObjective()
- 
 
newCompetPBResMixedConstraintsObjective
public static PBSolverResolution newCompetPBResMixedConstraintsObjective(PBDataStructureFactory dsf)
- 
 
newPBResHTMixedConstraintsObjective
public static PBSolverResolution newPBResHTMixedConstraintsObjective()
- 
 
newCompetPBResMinHTMixedConstraintsObjective
public static PBSolverResolution newCompetPBResMinHTMixedConstraintsObjective()
- 
 
newPBResMinHTMixedConstraintsObjective
public static PBSolverResolution newPBResMinHTMixedConstraintsObjective()
- 
 
newCompetPBResMixedConstraintsObjectiveExpSimp
public static PBSolverResolution newCompetPBResMixedConstraintsObjectiveExpSimp()
- 
 
newCompetPBResWLMixedConstraintsObjectiveExpSimp
public static PBSolverResolution newCompetPBResWLMixedConstraintsObjectiveExpSimp()
- 
 
newPBResHTMixedConstraintsObjectiveExpSimp
public static PBSolverResolution newPBResHTMixedConstraintsObjectiveExpSimp()
- 
 
newCompetPBResMinHTMixedConstraintsObjectiveExpSimp
public static PBSolverResolution newCompetPBResMinHTMixedConstraintsObjectiveExpSimp()
- 
 
newPBCPMixedConstraintsReduceToClause
public static PBSolverClause newPBCPMixedConstraintsReduceToClause()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A reduction of
         PB-constraints to clauses is made in order to simplify cutting
         planes.
 
newPBCPMixedConstraintsCautious
public static PBSolverCautious newPBCPMixedConstraintsCautious(int bound)
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A reduction of
         PB-constraints to clauses is made in order to simplify cutting
         planes (if coefficients are larger than bound).
 
newPBCPMixedConstraintsCautious
public static PBSolverCautious newPBCPMixedConstraintsCautious()
- 
 
newPBCPMixedConstraintsResCP
public static PBSolverResCP newPBCPMixedConstraintsResCP(long bound)
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). A reduction of
         PB-constraints to clauses is made in order to simplify cutting
         planes (if coefficients are larger than bound).
 
newPBCPMixedConstraintsResCP
public static PBSolverResCP newPBCPMixedConstraintsResCP()
- 
 
newPBCPMixedConstrainsImplied
public static PBSolverWithImpliedClause newPBCPMixedConstrainsImplied()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         constraint learning. Clauses and cardinalities with watched
         literals are also handled (and learnt). a pre-processing is
         applied which adds implied clauses from PB-constraints.
 
newMiniOPBClauseAtLeastConstrMax
public static PBSolverCP newMiniOPBClauseAtLeastConstrMax()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints,
         counter-based cardinalities, watched clauses and constraint
         learning. methods isAssertive() and getBacktrackLevel() are
         totally incremental. Conflicts for PB-constraints use a Map
         structure
 
newMiniOPBCounterBasedClauseCardConstrMax
public static PBSolverCP newMiniOPBCounterBasedClauseCardConstrMax()
- 
- Returns:
- MiniSAT with Counter-based pseudo boolean constraints and
         clauses, watched cardinalities, and constraint learning.
 
newPBResAllPBWL
public static PBSolverResolution newPBResAllPBWL()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and clause
         learning.
 
newPBCPAllPBWL
public static PBSolverCP newPBCPAllPBWL()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and constraint
         learning.
 
newPBResAllPBWLPueblo
public static PBSolverResolution newPBResAllPBWLPueblo()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and clause
         learning.
 
newPBCPAllPBWLPueblo
public static PBSolverCP newPBCPAllPBWLPueblo()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and constraint
         learning.
 
newMiniOPBClauseCardMinPueblo
public static PBSolverCP newMiniOPBClauseCardMinPueblo()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and clauses,
         cardinalities, and constraint learning.
 
newMiniOPBClauseCardMin
public static PBSolverCP newMiniOPBClauseCardMin()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and clauses,
         cardinalities, and constraint learning.
 
newMiniOPBClauseAtLeastMinPueblo
public static PBSolverCP newMiniOPBClauseAtLeastMinPueblo()
- 
- Returns:
- MiniSAT with WL-based pseudo boolean constraints and clauses,
         counter-based cardinalities, and constraint learning.
 
newCuttingPlanes
public static IPBSolver newCuttingPlanes()
- Cutting Planes based solver. The inference during conflict analysis is
 based on cutting planes instead of resolution as in a SAT solver.
 
- 
- Returns:
- the best available cutting planes based solver of the library.
 
newResolution
public static IPBSolver newResolution()
- Resolution based solver (i.e. classic SAT solver able to handle generic
 constraints. No specific inference mechanism.
 
- 
- Returns:
- the best available resolution based solver of the library.
 
newResolutionGlucose
public static IPBSolver newResolutionGlucose()
- Resolution based solver (i.e. classic SAT solver able to handle generic
 constraints. No specific inference mechanism). Uses glucose based memory
 management.
 
- 
- Returns:
- the best available resolution based solver of the library.
 
newResolutionSimpleRestarts
public static IPBSolver newResolutionSimpleRestarts()
- Resolution based solver (i.e. classic SAT solver able to handle generic
 constraints. No specific inference mechanism). Uses glucose based memory
 management. Uses a simple restart strategy (original Minisat's one).
 
- 
- Returns:
- the best available resolution based solver of the library.
 
newResolutionMaxMemory
public static IPBSolver newResolutionMaxMemory()
- Resolution based solver (i.e. classic SAT solver able to handle generic
 constraints. No specific inference mechanism).
 
 Keeps the constraints as long as there is enough memory available.
 
- 
- Returns:
- the best available resolution based solver of the library.
 
newDefault
public static IPBSolver newDefault()
- Default solver of the SolverFactory. This solver is meant to be used on
 challenging SAT benchmarks.
 
- 
- Returns:
- the best "general purpose" SAT solver available in the factory.
- See Also:
- the same method, polymorphic, to be called from an
      instance of ASolverFactory.
 
newDefaultNonNormalized
public static IPBSolver newDefaultNonNormalized()
- Default solver of the SolverFactory for instances not normalized. This
 solver is meant to be used on challenging SAT benchmarks.
 
- 
- Returns:
- the best "general purpose" SAT solver available in the factory.
- See Also:
- the same method, polymorphic, to be called from an
      instance of ASolverFactory.
 
defaultSolver
public IPBSolver defaultSolver()
- 
- Specified by:
- defaultSolverin class- ASolverFactory<IPBSolver>
 
- 
 
newLight
public static IPBSolver newLight()
- Small footprint SAT solver.
 
- 
- Returns:
- a SAT solver suitable for solving small/easy SAT benchmarks.
- See Also:
- the same method, polymorphic, to be called from an
      instance of ASolverFactory.
 
lightSolver
public IPBSolver lightSolver()
- 
- Specified by:
- lightSolverin class- ASolverFactory<IPBSolver>
 
- 
 
newDimacsOutput
public static ISolver newDimacsOutput()
- 
 
newEclipseP2
public static IPBSolver newEclipseP2()
- 
 
Copyright © 2010 Centre de Recherche en Informatique de Lens (CRIL). All Rights Reserved.