mirror of
https://github.com/Z3Prover/z3
synced 2025-11-05 13:56:03 +00:00
v0.1 of nla saturation
This commit is contained in:
parent
3e9afb30af
commit
fdac93fff3
3 changed files with 6 additions and 1 deletions
|
|
@ -8,6 +8,7 @@ BasedOnStyle: LLVM
|
||||||
IndentWidth: 4
|
IndentWidth: 4
|
||||||
TabWidth: 4
|
TabWidth: 4
|
||||||
UseTab: Never
|
UseTab: Never
|
||||||
|
IndentCaseLabels: false
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1318,6 +1318,7 @@ lbool core::check() {
|
||||||
return l_false;
|
return l_false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (no_effect() && lp_settings().m_enable_stellensatz)
|
if (no_effect() && lp_settings().m_enable_stellensatz)
|
||||||
ret = m_stellensatz.saturate();
|
ret = m_stellensatz.saturate();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3475,9 +3475,12 @@ public:
|
||||||
++m_stats.m_conflicts;
|
++m_stats.m_conflicts;
|
||||||
for (auto ev : m_explanation)
|
for (auto ev : m_explanation)
|
||||||
set_evidence(ev.ci(), m_core, m_eqs);
|
set_evidence(ev.ci(), m_core, m_eqs);
|
||||||
|
|
||||||
if (m_eqs.empty() && all_of(m_core, [&](literal l) { return ctx().get_assignment(l) == l_false; }))
|
if (m_eqs.empty() && all_of(m_core, [&](literal l) { return ctx().get_assignment(l) == l_false; }))
|
||||||
is_conflict = true;
|
is_conflict = true;
|
||||||
|
for (auto l : m_core) {
|
||||||
|
IF_VERBOSE(1, verbose_stream() << l << " " << ctx().get_assignment(l) << "\n");
|
||||||
|
}
|
||||||
|
|
||||||
TRACE(arith_conflict,
|
TRACE(arith_conflict,
|
||||||
tout << "@" << ctx().get_scope_level() << (is_conflict ? " conflict":" lemma");
|
tout << "@" << ctx().get_scope_level() << (is_conflict ? " conflict":" lemma");
|
||||||
for (auto const& p : m_params) tout << " " << p;
|
for (auto const& p : m_params) tout << " " << p;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue