See: Description
| Interface | Description | 
|---|---|
| IConstr | The most general abstraction for handling a constraint. | 
| IGroupSolver | Represents a CNF in which clauses are grouped into levels. | 
| ILogAble | Utility interface to catch objects with logging capability (able to log). | 
| IOptimizationProblem | Represents an optimization problem. | 
| IProblem | Access to the information related to a given problem instance. | 
| ISolver | This interface contains all services provided by a SAT solver. | 
| ISolverService | The aim on that interface is to allow power users to communicate with the SAT
 solver using Dimacs format. | 
| IteratorInt | Iterator interface to avoid boxing int into Integer. | 
| IVec<T> | An abstraction on the type of vector used in the library. | 
| IVecInt | An abstraction for the vector of int used on the library. | 
| RandomAccessModel | That interface allows to efficiently retrieve the truth value of a given
 variable in the solver. | 
| SearchListener<S extends ISolverService> | Interface to the solver main steps. | 
| Class | Description | 
|---|---|
| Lbool | That enumeration defines the possible truth value for a variable: satisfied,
 falsified or unknown/undefined. | 
| Exception | Description | 
|---|---|
| ContradictionException | That exception is launched whenever a trivial contradiction is found (e.g. | 
| TimeoutException | Exception launched when the solver cannot solve a problem within its allowed
 time. | 
        ISolver solver = SolverFactory.defaultSolver();
        solver.setTimeout(3600); // 1 hour timeout
        Reader reader = new DimacsReader(solver);
        // CNF filename is given on the command line 
        try {
                IProblem problem = reader.parseInstance(args[0]);
                if (problem.isSatisfiable()) {
                        System.out.println("Satisfiable !");
                        System.out.println(reader.decode(problem.model()));
                } else {
                        System.out.println("Unsatisfiable !");
                }
        } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
        } catch (ParseFormatException e) {
                // TODO Auto-generated catch block
        } catch (IOException e) {
                // TODO Auto-generated catch block
        } catch (ContradictionException e) {
                System.out.println("Unsatisfiable (trivial)!");
        } catch (TimeoutException e) {
                System.out.println("Timeout, sorry!");          
        }
        Copyright © 2013 Centre de Recherche en Informatique de Lens (CRIL). All Rights Reserved.