#include <ogdf/lib/minisat/simp/SimpSolver.h>
Classes | |
struct | ClauseDeleted |
struct | ElimLt |
Public Member Functions | |
SimpSolver () | |
~SimpSolver () | |
bool | addClause (const vec< Lit > &ps) |
bool | addClause (Lit p) |
bool | addClause (Lit p, Lit q) |
bool | addClause (Lit p, Lit q, Lit r) |
bool | addClause_ (vec< Lit > &ps) |
bool | addEmptyClause () |
bool | eliminate (bool turn_off_elim=false) |
virtual void | garbageCollect () override |
bool | isEliminated (Var v) const |
Var | newVar (bool polarity=true, bool dvar=true) |
void | setFrozen (Var v, bool b) |
bool | solve (bool do_simp=true, bool turn_off_simp=false) |
bool | solve (const vec< Lit > &assumps, bool do_simp=true, bool turn_off_simp=false) |
bool | solve (Lit p, bool do_simp=true, bool turn_off_simp=false) |
bool | solve (Lit p, Lit q, bool do_simp=true, bool turn_off_simp=false) |
bool | solve (Lit p, Lit q, Lit r, bool do_simp=true, bool turn_off_simp=false) |
lbool | solveLimited (const vec< Lit > &assumps, bool do_simp=true, bool turn_off_simp=false) |
bool | substitute (Var v, Lit x) |
Public Member Functions inherited from Minisat::Internal::Solver | |
Solver () | |
virtual | ~Solver () |
bool | addClause (const vec< Lit > &ps) |
bool | addClause (Lit p) |
bool | addClause (Lit p, Lit q) |
bool | addClause (Lit p, Lit q, Lit r) |
bool | addClause_ (vec< Lit > &ps) |
bool | addEmptyClause () |
void | budgetOff () |
void | checkGarbage () |
void | checkGarbage (double gf) |
void | clearInterrupt () |
void | interrupt () |
lbool | modelValue (Lit p) const |
lbool | modelValue (Var x) const |
int | nAssigns () const |
int | nClauses () const |
Var | newVar (bool polarity=true, bool dvar=true) |
int | nFreeVars () const |
int | nLearnts () const |
int | nVars () const |
bool | okay () const |
void | setConfBudget (int64_t x) |
void | setDecisionVar (Var v, bool b) |
void | setPolarity (Var v, bool b) |
void | setPropBudget (int64_t x) |
bool | simplify () |
bool | solve () |
bool | solve (const vec< Lit > &assumps) |
bool | solve (double t, SolverStatus &st) |
bool | solve (Lit p) |
bool | solve (Lit p, Lit q) |
bool | solve (Lit p, Lit q, Lit r) |
lbool | solveLimited (const vec< Lit > &assumps) |
void | toDimacs (const char *file) |
void | toDimacs (const char *file, const vec< Lit > &assumps) |
void | toDimacs (const char *file, Lit p) |
void | toDimacs (const char *file, Lit p, Lit q) |
void | toDimacs (const char *file, Lit p, Lit q, Lit r) |
void | toDimacs (std::ostream &out, Clause &c, vec< Var > &map, Var &max) |
void | toDimacs (std::ostream &out, const vec< Lit > &assumps) |
lbool | value (Lit p) const |
lbool | value (Var x) const |
Public Attributes | |
int | asymm_lits |
int | clause_lim |
int | eliminated_vars |
int | grow |
int | merges |
double | simp_garbage_frac |
int | subsumption_lim |
bool | use_asymm |
bool | use_elim |
bool | use_rcheck |
Public Attributes inherited from Minisat::Internal::Solver | |
int | ccmin_mode |
double | clause_decay |
uint64_t | clauses_literals |
vec< Lit > | conflict |
uint64_t | conflicts |
uint64_t | dec_vars |
uint64_t | decisions |
double | garbage_frac |
uint64_t | learnts_literals |
double | learntsize_adjust_inc |
int | learntsize_adjust_start_confl |
double | learntsize_factor |
double | learntsize_inc |
bool | luby_restart |
uint64_t | max_literals |
vec< lbool > | model |
int | phase_saving |
uint64_t | propagations |
double | random_seed |
double | random_var_freq |
int | restart_first |
double | restart_inc |
uint64_t | rnd_decisions |
bool | rnd_init_act |
bool | rnd_pol |
uint64_t | solves |
uint64_t | starts |
uint64_t | tot_literals |
double | var_decay |
int | verbosity |
Protected Member Functions | |
bool | asymm (Var v, CRef cr) |
bool | asymmVar (Var v) |
bool | backwardSubsumptionCheck (bool verbose=false) |
void | cleanUpClauses () |
bool | eliminateVar (Var v) |
void | extendModel () |
void | gatherTouchedClauses () |
bool | implied (const vec< Lit > &c) |
bool | merge (const Clause &_ps, const Clause &_qs, Var v, int &size) |
bool | merge (const Clause &_ps, const Clause &_qs, Var v, vec< Lit > &out_clause) |
void | relocAll (ClauseAllocator &to) |
void | removeClause (CRef cr) |
lbool | solve_ (bool do_simp=true, bool turn_off_simp=false) |
bool | strengthenClause (CRef cr, Lit l) |
void | updateElimHeap (Var v) |
Protected Member Functions inherited from Minisat::Internal::Solver | |
uint32_t | abstractLevel (Var x) const |
void | analyze (CRef confl, vec< Lit > &out_learnt, int &out_btlevel) |
void | analyzeFinal (Lit p, vec< Lit > &out_conflict) |
void | attachClause (CRef cr) |
void | cancelUntil (int level) |
void | claBumpActivity (Clause &c) |
void | claDecayActivity () |
int | decisionLevel () const |
void | detachClause (CRef cr, bool strict=false) |
bool | enqueue (Lit p, CRef from=CRef_Undef) |
void | insertVarOrder (Var x) |
int | level (Var x) const |
bool | litRedundant (Lit p, uint32_t abstract_levels) |
bool | locked (const Clause &c) const |
void | newDecisionLevel () |
Lit | pickBranchLit () |
double | progressEstimate () const |
CRef | propagate () |
CRef | reason (Var x) const |
void | rebuildOrderHeap () |
void | reduceDB () |
void | relocAll (ClauseAllocator &to) |
void | removeClause (CRef cr) |
void | removeSatisfied (vec< CRef > &cs) |
bool | satisfied (const Clause &c) const |
lbool | search (int nof_conflicts) |
lbool | search (int nof_conflicts, double &time) |
lbool | solve_ () |
lbool | solve_ (double &t) |
void | uncheckedEnqueue (Lit p, CRef from=CRef_Undef) |
void | varBumpActivity (Var v) |
void | varBumpActivity (Var v, double inc) |
void | varDecayActivity () |
bool | withinBudget () const |
Additional Inherited Members | |
Public Types inherited from Minisat::Internal::Solver | |
enum | AnswerType { A_TRUE, A_FALSE, A_UNDEF } |
Static Protected Member Functions inherited from Minisat::Internal::Solver | |
static double | drand (double &seed) |
static int | irand (double &seed, int size) |
static VarData | mkVarData (CRef cr, int l) |
Definition at line 33 of file SimpSolver.h.
Minisat::Internal::SimpSolver::SimpSolver | ( | ) |
Minisat::Internal::SimpSolver::~SimpSolver | ( | ) |
Definition at line 181 of file SimpSolver.h.
|
inline |
Definition at line 183 of file SimpSolver.h.
Definition at line 184 of file SimpSolver.h.
Definition at line 185 of file SimpSolver.h.
|
inline |
Definition at line 182 of file SimpSolver.h.
|
protected |
|
protected |
|
protected |
bool Minisat::Internal::SimpSolver::eliminate | ( | bool | turn_off_elim = false | ) |
|
protected |
|
protected |
|
overridevirtual |
Reimplemented from Minisat::Internal::Solver.
|
protected |
|
inline |
Definition at line 171 of file SimpSolver.h.
|
protected |
|
protected |
Var Minisat::Internal::SimpSolver::newVar | ( | bool | polarity = true , |
bool | dvar = true |
||
) |
|
protected |
|
protected |
|
inline |
Definition at line 186 of file SimpSolver.h.
|
inline |
Definition at line 188 of file SimpSolver.h.
|
inline |
Definition at line 192 of file SimpSolver.h.
|
inline |
Definition at line 189 of file SimpSolver.h.
|
inline |
Definition at line 190 of file SimpSolver.h.
|
inline |
Definition at line 191 of file SimpSolver.h.
|
protected |
|
inline |
Definition at line 195 of file SimpSolver.h.
|
inlineprotected |
Definition at line 172 of file SimpSolver.h.
int Minisat::Internal::SimpSolver::asymm_lits |
Definition at line 96 of file SimpSolver.h.
|
protected |
Definition at line 139 of file SimpSolver.h.
|
protected |
Definition at line 144 of file SimpSolver.h.
int Minisat::Internal::SimpSolver::clause_lim |
Definition at line 84 of file SimpSolver.h.
Definition at line 135 of file SimpSolver.h.
|
protected |
Definition at line 130 of file SimpSolver.h.
|
protected |
Definition at line 138 of file SimpSolver.h.
int Minisat::Internal::SimpSolver::eliminated_vars |
Definition at line 97 of file SimpSolver.h.
|
protected |
Definition at line 128 of file SimpSolver.h.
|
protected |
Definition at line 137 of file SimpSolver.h.
int Minisat::Internal::SimpSolver::grow |
Definition at line 83 of file SimpSolver.h.
int Minisat::Internal::SimpSolver::merges |
Definition at line 95 of file SimpSolver.h.
|
protected |
Definition at line 134 of file SimpSolver.h.
|
protected |
Definition at line 140 of file SimpSolver.h.
|
protected |
Definition at line 133 of file SimpSolver.h.
double Minisat::Internal::SimpSolver::simp_garbage_frac |
Definition at line 87 of file SimpSolver.h.
int Minisat::Internal::SimpSolver::subsumption_lim |
Definition at line 86 of file SimpSolver.h.
Definition at line 136 of file SimpSolver.h.
|
protected |
Definition at line 131 of file SimpSolver.h.
bool Minisat::Internal::SimpSolver::use_asymm |
Definition at line 89 of file SimpSolver.h.
bool Minisat::Internal::SimpSolver::use_elim |
Definition at line 91 of file SimpSolver.h.
bool Minisat::Internal::SimpSolver::use_rcheck |
Definition at line 90 of file SimpSolver.h.
|
protected |
Definition at line 129 of file SimpSolver.h.