void RestartTypeChooser::calcHeap()
{
- firstVars.resize(topX);
+ firstVars.clear();
+ firstVars.reserve(topX);
#ifdef VERBOSE_DEBUG
std::cout << "First vars:" << std::endl;
#endif
Heap<Solver::VarOrderLt> tmp(S->order_heap);
- uint thisTopX = std::min(S->order_heap.size(), topX);
- for (uint i = 0; i != thisTopX; i++) {
+ uint32_t thisTopX = std::min(tmp.size(), topX);
+ for (uint32_t i = 0; i != thisTopX; i++) {
#ifdef VERBOSE_DEBUG
std::cout << tmp.removeMin()+1 << ", ";
#endif
- firstVars[i] = tmp.removeMin();
+ firstVars.push_back(tmp.removeMin());
}
#ifdef VERBOSE_DEBUG
std::cout << std::endl;
const double avg() const;
const Solver* const S;
- const uint topX;
- const uint limit;
+ const uint32_t topX;
+ const uint32_t limit;
vector<Var> sameIns;
vector<Var> firstVars, firstVarsOld;
seen[p.var()] = 1;
- for (int i = trail.size()-1; i >= trail_lim[0]; i--) {
+ for (int32_t i = (int32_t)trail.size()-1; i >= (int32_t)trail_lim[0]; i--) {
Var x = trail[i].var();
if (seen[x]) {
if (reason[x] == NULL) {
return l_Undef;
}
break;
+ case auto_restart:
+ assert(false);
+ break;
}
// Simplify the set of problem clauses:
vector<bool> polarity; // The preferred polarity of each variable.
vector<bool> decision_var; // Declares if a variable is eligible for selection in the decision heuristic.
vec<Lit> trail; // Assignment stack; stores all assigments made in the order they were made.
- vec<int32_t> trail_lim; // Separator indices for different decision levels in 'trail'.
+ vec<uint32_t> trail_lim; // Separator indices for different decision levels in 'trail'.
vec<Clause*> reason; // 'reason[var]' is the clause that implied the variables current value, or 'NULL' if none.
vec<int32_t> level; // 'level[var]' contains the level at which the assignment was made.
vec<Var> permDiff; // LS: permDiff[var] contains the current conflict number... Used to count the number of different decision level variables in learnt clause
#ifdef UPDATEVARACTIVITY
vec<Lit> lastDecisionLevel;
#endif
- int64_t curRestart;
- int64_t conf4Stats;
+ uint64_t curRestart;
+ uint64_t conf4Stats;
uint32_t nbclausesbeforereduce;
uint32_t qhead; // Head of queue (as index into the trail -- no more explicit propagation queue in MiniSat).
uint32_t simpDB_assigns; // Number of top-level assignments since last execution of 'simplify()'.
CryptoMiniSat
-SVN revision: 681
-GIT revision: 14117f70a8eaa1c54e813f028252fa4449fdc151
+SVN revision: 685
+GIT revision: 4c03a6cf5a46679d144b5f68cb454c1f62b0c60c