Package org.tweetyproject.sat.minisat
Class MinisatSatSolver
java.lang.Object
org.tweetyproject.sat.minisat.MinisatSatSolver
- All Implemented Interfaces:
AutoCloseable,SatSolver
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidadd(int[] clause) Adds the given clause to the SAT solver state.voidclose()intnewVar()Creates and returns the integer representation of a fresh propositional variable.booleanbooleansatisfiable(int[] assumptions) boolean[]witness(int[] atoms) Returns the truth assignment of the given variables.boolean[]witness(int[] atoms, int[] assumptions)
-
Constructor Details
-
MinisatSatSolver
public MinisatSatSolver()
-
-
Method Details
-
satisfiable
public boolean satisfiable()- Specified by:
satisfiablein interfaceSatSolver
-
satisfiable
public boolean satisfiable(int[] assumptions) - Specified by:
satisfiablein interfaceSatSolver
-
witness
public boolean[] witness(int[] atoms) Description copied from interface:SatSolverReturns the truth assignment of the given variables. -
witness
public boolean[] witness(int[] atoms, int[] assumptions) -
add
public void add(int[] clause) Description copied from interface:SatSolverAdds the given clause to the SAT solver state.Note that contrary to DIMACS format, a trailing '0' is not required!
-
newVar
public int newVar()Description copied from interface:SatSolverCreates and returns the integer representation of a fresh propositional variable.It is necessary to only use variables returned by this method, since some solvers require to first allocate and maintain a data structure of the variables before they can be used in clauses. Hence, using integers not returned by this method may work for some solvers, but not for others.
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceSatSolver
-