mirror of
https://github.com/Z3Prover/z3
synced 2025-10-01 05:29:28 +00:00
fix linear projection
This commit is contained in:
parent
6ef8a0b7bb
commit
d05961a021
1 changed files with 4 additions and 2 deletions
|
@ -1424,7 +1424,7 @@ namespace nlsat {
|
|||
polynomial_ref_vector ps_above_sample(m_pm);
|
||||
polynomial_ref_vector ps_equal_sample(m_pm);
|
||||
var x = m_todo.extract_max_polys(ps);
|
||||
if (x == max_x) {
|
||||
if (!m_assignment.is_assigned(x)) {
|
||||
// top level projection like original
|
||||
// we could also do a covering-style projection, sparing some resultants
|
||||
add_lcs(ps, x);
|
||||
|
@ -1433,7 +1433,7 @@ namespace nlsat {
|
|||
x = m_todo.extract_max_polys(ps);
|
||||
}
|
||||
|
||||
while (!m_todo.empty()) {
|
||||
while (true) {
|
||||
add_cell_lits_linear(ps, x, ps_below_sample, ps_above_sample, ps_equal_sample);
|
||||
if (all_univ(ps, x) && m_todo.empty()) {
|
||||
m_todo.reset();
|
||||
|
@ -1463,6 +1463,8 @@ namespace nlsat {
|
|||
}
|
||||
}
|
||||
}
|
||||
if (m_todo.empty())
|
||||
break;
|
||||
x = m_todo.extract_max_polys(ps);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue