mirror of
https://github.com/Z3Prover/z3
synced 2025-04-29 20:05:51 +00:00
Re-integrate forbidden intervals
This commit is contained in:
parent
a0570908fb
commit
75bac21574
4 changed files with 11 additions and 15 deletions
|
@ -17,6 +17,7 @@ Author:
|
|||
#include "math/polysat/log.h"
|
||||
#include "math/polysat/log_helper.h"
|
||||
#include "math/polysat/explain.h"
|
||||
#include "math/polysat/forbidden_intervals.h"
|
||||
#include "math/polysat/saturation.h"
|
||||
#include "math/polysat/variable_elimination.h"
|
||||
#include <algorithm>
|
||||
|
@ -252,6 +253,15 @@ namespace polysat {
|
|||
m_solver->assign_core(v, m_solver->m_value[v], justification::propagation(m_solver->m_level));
|
||||
}
|
||||
*/
|
||||
if (conflict_var() == v) {
|
||||
clause_builder lemma(s());
|
||||
forbidden_intervals fi;
|
||||
if (fi.perform(s(), v, *this, lemma)) {
|
||||
set_bailout();
|
||||
m_bailout_lemma = std::move(lemma);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
for (auto c : cjust_v)
|
||||
insert(c);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue