mirror of
https://github.com/Z3Prover/z3
synced 2025-06-06 22:23:22 +00:00
fallback stats
This commit is contained in:
parent
b9588af07a
commit
014fe4e3fd
2 changed files with 9 additions and 6 deletions
|
@ -554,6 +554,7 @@ namespace polysat {
|
||||||
m_justification[v] = justification::unassigned();
|
m_justification[v] = justification::unassigned();
|
||||||
if (!is_valid) {
|
if (!is_valid) {
|
||||||
LOG_H2("Chosen assignment " << assignment_pp(*this, v, val) << " is not actually viable!");
|
LOG_H2("Chosen assignment " << assignment_pp(*this, v, val) << " is not actually viable!");
|
||||||
|
++m_stats.m_num_viable_fallback;
|
||||||
// Try to find a valid replacement value
|
// Try to find a valid replacement value
|
||||||
switch (m_viable_fallback.find_viable(v, val)) {
|
switch (m_viable_fallback.find_viable(v, val)) {
|
||||||
case dd::find_t::singleton:
|
case dd::find_t::singleton:
|
||||||
|
@ -1194,12 +1195,13 @@ namespace polysat {
|
||||||
}
|
}
|
||||||
|
|
||||||
void solver::collect_statistics(statistics& st) const {
|
void solver::collect_statistics(statistics& st) const {
|
||||||
st.update("polysat iterations", m_stats.m_num_iterations);
|
st.update("polysat iterations", m_stats.m_num_iterations);
|
||||||
st.update("polysat decisions", m_stats.m_num_decisions);
|
st.update("polysat decisions", m_stats.m_num_decisions);
|
||||||
st.update("polysat conflicts", m_stats.m_num_conflicts);
|
st.update("polysat conflicts", m_stats.m_num_conflicts);
|
||||||
st.update("polysat bailouts", m_stats.m_num_bailouts);
|
st.update("polysat bailouts", m_stats.m_num_bailouts);
|
||||||
st.update("polysat propagations", m_stats.m_num_propagations);
|
st.update("polysat propagations", m_stats.m_num_propagations);
|
||||||
st.update("polysat restarts", m_stats.m_num_restarts);
|
st.update("polysat restarts", m_stats.m_num_restarts);
|
||||||
|
st.update("polysat viable fallback", m_stats.m_num_viable_fallback);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool solver::invariant() {
|
bool solver::invariant() {
|
||||||
|
|
|
@ -54,6 +54,7 @@ namespace polysat {
|
||||||
unsigned m_num_conflicts;
|
unsigned m_num_conflicts;
|
||||||
unsigned m_num_bailouts;
|
unsigned m_num_bailouts;
|
||||||
unsigned m_num_restarts;
|
unsigned m_num_restarts;
|
||||||
|
unsigned m_num_viable_fallback; ///< how often did we query the univariate solver
|
||||||
void reset() { memset(this, 0, sizeof(*this)); }
|
void reset() { memset(this, 0, sizeof(*this)); }
|
||||||
stats() { reset(); }
|
stats() { reset(); }
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue