21 #ifndef Minisat_Solver_h
22 #define Minisat_Solver_h
262 static inline double drand(
double& seed) {
264 int q = (int)(seed / 2147483647);
265 seed -= (double)q * 2147483647;
266 return seed / 2147483647; }
286 if ( (
activity[v] += inc) > 1e100 ) {
288 for (
int i = 0; i <
nVars(); i++)
RegionAllocator< uint32_t >::Ref CRef
void setConfBudget(int64_t x)
bool locked(const Clause &c) const
int learntsize_adjust_cnt
void relocAll(ClauseAllocator &to)
bool operator()(const Watcher &w) const
void setPropBudget(int64_t x)
lbool modelValue(Var x) const
double learntsize_adjust_inc
bool withinBudget() const
void setPolarity(Var v, bool b)
void claBumpActivity(Clause &c)
bool addClause(const vec< Lit > &ps)
int learntsize_adjust_start_confl
bool operator!=(const Watcher &w) const
void attachClause(CRef cr)
lbool search(int nof_conflicts)
void setDecisionVar(Var v, bool b)
void cancelUntil(int level)
void insertVarOrder(Var x)
void copyTo(vec< T > ©) const
void detachClause(CRef cr, bool strict=false)
void removeSatisfied(vec< CRef > &cs)
bool litRedundant(Lit p, uint32_t abstract_levels)
lbool solveLimited(const vec< Lit > &assumps)
uint64_t learnts_literals
int decisionLevel() const
bool addClause_(vec< Lit > &ps)
uint64_t clauses_literals
const vec< double > & activity
const ClauseAllocator & ca
int64_t propagation_budget
bool operator()(Var x, Var y) const
void removeClause(CRef cr)
vec< Lit > analyze_toclear
void toDimacs(FILE *f, const vec< Lit > &assumps)
static double drand(double &seed)
OccLists< Lit, vec< Watcher >, WatcherDeleted > watches
VarOrderLt(const vec< double > &act)
virtual void garbageCollect()
static int irand(double &seed, int size)
Var newVar(bool polarity=true, bool dvar=true)
void analyzeFinal(Lit p, vec< Lit > &out_conflict)
bool enqueue(Lit p, CRef from=CRef_Undef)
void uncheckedEnqueue(Lit p, CRef from=CRef_Undef)
bool operator==(const Watcher &w) const
uint32_t abstractLevel(Var x) const
void analyze(CRef confl, vec< Lit > &out_learnt, int &out_btlevel)
bool satisfied(const Clause &c) const
double progressEstimate() const
WatcherDeleted(const ClauseAllocator &_ca)
void varBumpActivity(Var v, double inc)
Heap< VarOrderLt > order_heap
static VarData mkVarData(CRef cr, int l)
double learntsize_adjust_confl