Commit f4066b5b by Alan Mishchenko

Initial implementation of AnalyseFinal

parent 002ad0f9
...@@ -976,7 +976,7 @@ static lbool sat_solver_search(sat_solver* s, ABC_INT64_T nof_conflicts, ABC_INT ...@@ -976,7 +976,7 @@ static lbool sat_solver_search(sat_solver* s, ABC_INT64_T nof_conflicts, ABC_INT
#endif #endif
s->stats.conflicts++; conflictC++; s->stats.conflicts++; conflictC++;
if (sat_solver_dlevel(s) == s->root_level){ if (sat_solver_dlevel(s) == s->root_level){
// lit p = clause_is_lit(confl)? clause_read_lit(confl) : clause_begin(confl)[0]; lit p = clause_is_lit(confl)? clause_read_lit(confl) : clause_begin(confl)[0];
// sat_solver_analyze_final(s, lit_neg(p), &s->conf_final); // sat_solver_analyze_final(s, lit_neg(p), &s->conf_final);
veci_delete(&learnt_clause); veci_delete(&learnt_clause);
return l_False; return l_False;
......
...@@ -85,6 +85,8 @@ extern int sat_solver_nconflicts(sat_solver* s); ...@@ -85,6 +85,8 @@ extern int sat_solver_nconflicts(sat_solver* s);
extern void sat_solver_setnvars(sat_solver* s,int n); extern void sat_solver_setnvars(sat_solver* s,int n);
extern int sat_solver_final(sat_solver* s, int ** ppArray);
struct stats_t struct stats_t
{ {
ABC_INT64_T starts, decisions, propagations, inspects, conflicts; ABC_INT64_T starts, decisions, propagations, inspects, conflicts;
...@@ -214,6 +216,12 @@ static void sat_solver_compress(sat_solver* s) ...@@ -214,6 +216,12 @@ static void sat_solver_compress(sat_solver* s)
} }
} }
static int sat_solver_final(sat_solver* s, int ** ppArray)
{
*ppArray = s->conf_final.ptr;
return s->conf_final.size;
}
ABC_NAMESPACE_HEADER_END ABC_NAMESPACE_HEADER_END
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment