diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2021-04-27 14:46:05 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2021-04-27 14:46:05 -0700 |
commit | 5f8a8a596a009046896acd8af6397acecc1e36a9 (patch) | |
tree | 111b1022a28a4ef86a12ed2252ada6e6874e4eda /src/sat/glucose2/SimpSolver2.cpp | |
parent | de71e5f61038748b59bcbb2bf6f0c8666b45190a (diff) | |
download | abc-5f8a8a596a009046896acd8af6397acecc1e36a9.tar.gz abc-5f8a8a596a009046896acd8af6397acecc1e36a9.tar.bz2 abc-5f8a8a596a009046896acd8af6397acecc1e36a9.zip |
Upgrade to the circuit-based solver.
Diffstat (limited to 'src/sat/glucose2/SimpSolver2.cpp')
-rw-r--r-- | src/sat/glucose2/SimpSolver2.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/sat/glucose2/SimpSolver2.cpp b/src/sat/glucose2/SimpSolver2.cpp index 7c2a3b26..37093277 100644 --- a/src/sat/glucose2/SimpSolver2.cpp +++ b/src/sat/glucose2/SimpSolver2.cpp @@ -707,7 +707,7 @@ void SimpSolver::cleanUpClauses() for (i = j = 0; i < clauses.size(); i++) if (ca[clauses[i]].mark() == 0) clauses[j++] = clauses[i]; - clauses.shrink(i - j); + clauses.shrink_(i - j); } @@ -760,18 +760,22 @@ void SimpSolver::reset() Solver::reset(); grow = opt_grow; asymm_lits = eliminated_vars = bwdsub_assigns = n_touched = 0; - elimclauses.clear(false); - touched.clear(false); - occurs.clear(false); - n_occ.clear(false); - elim_heap.clear(false); + subsumption_queue.clear(false); - frozen.clear(false); - eliminated.clear(false); vec<Lit> dummy(1,lit_Undef); ca.extra_clause_field = true; // NOTE: must happen before allocating the dummy clause below. bwdsub_tmpunit = ca.alloc(dummy); remove_satisfied = false; + + occurs.clear(false); + + touched .shrink_( touched .size() ); + n_occ .shrink_( n_occ .size() ); + eliminated .shrink_( eliminated .size() ); + frozen .shrink_( frozen .size() ); + elimclauses .shrink_( elimclauses .size() ); + + elim_heap .clear_(false); } ABC_NAMESPACE_IMPL_END |