3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-28 11:25:51 +00:00

cheap_eqs tree

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2020-06-15 16:08:53 -07:00
parent 274323b818
commit f7f9c15676
3 changed files with 28 additions and 20 deletions

View file

@ -501,8 +501,10 @@ public:
clear_for_eq();
unsigned x_index, y_index;
mpq offset;
if (!is_offset_row_wrong(row_index, x_index, y_index, offset))
if (!is_offset_row_wrong(row_index, x_index, y_index, offset)) {
m_visited_rows.insert(row_index);
return;
}
TRACE("cheap_eq", lp().get_int_solver()->display_row_info(tout, row_index););
m_root = alloc(vertex, row_index, x_index, mpq(0));
vertex* v_y = alloc(vertex, row_index, y_index, offset);
@ -541,11 +543,13 @@ public:
unsigned row_index = c.var();
if (m_visited_rows.contains(row_index))
continue;
m_visited_rows.insert(row_index);
unsigned x_index, y_index;
mpq row_offset;
if (!is_offset_row_wrong(row_index, x_index, y_index, row_offset))
if (!is_offset_row_wrong(row_index, x_index, y_index, row_offset)) {
m_visited_rows.insert(row_index);
continue;
}
m_visited_rows.insert(row_index);
TRACE("cheap_eq", lp().get_int_solver()->display_row_info(tout, row_index););
// who is it the same column?
if (lp().get_row(row_index)[x_index].var() == j) { // conected to x