3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-16 07:45:27 +00:00
This commit is contained in:
Miguel Angelo Da Terra Neves 2017-12-01 11:02:35 -08:00
commit 2e042a8bea
13 changed files with 304 additions and 158 deletions

View file

@ -171,13 +171,19 @@ namespace sat {
svector<bool> m_is_decision;
literal_vector m_cube;
double m_freevars_threshold;
unsigned m_conflicts;
unsigned m_cutoffs;
cube_state() { reset(); }
void reset() {
m_first = true;
m_is_decision.reset();
m_cube.reset();
m_freevars_threshold = 0;
m_freevars_threshold = 0;
reset_stats();
}
void reset_stats() { m_conflicts = 0; m_cutoffs = 0; }
void inc_conflict() { ++m_conflicts; }
void inc_cutoff() { ++m_cutoffs; }
};
config m_config;
@ -577,6 +583,8 @@ namespace sat {
lbool cube(bool_var_vector const& vars, literal_vector& lits, unsigned backtrack_level);
void update_cube_statistics(statistics& st);
literal select_lookahead(literal_vector const& assumptions, bool_var_vector const& vars);
/**
\brief simplify set of clauses by extracting units from a lookahead at base level.