Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit beee218

Browse files
committedMar 16, 2025·
nits
Signed-off-by: Nikolaj Bjorner <[email protected]>
1 parent 78d66b9 commit beee218

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed
 

‎src/math/lp/dioph_eq.cpp

+12-7
Original file line numberDiff line numberDiff line change
@@ -1397,7 +1397,7 @@ namespace lp {
13971397
std_vector<unsigned> sorted_changed_terms;
13981398
std_vector<unsigned> processed_terms;
13991399
m_tightened_columns.reset();
1400-
for (unsigned j: m_terms_to_tighten) {
1400+
for (unsigned j: m_terms_to_tighten) {
14011401
if (j >= lra.column_count() ||
14021402
!lra.column_has_term(j) ||
14031403
lra.column_is_free(j) ||
@@ -1423,14 +1423,19 @@ namespace lp {
14231423
);
14241424
for (unsigned j : sorted_changed_terms) {
14251425
m_terms_to_tighten.remove(j);
1426-
r = tighten_bounds_for_term_column(j);
1427-
if (r != lia_move::undef) {
1426+
auto r0 = tighten_bounds_for_term_column(j);
1427+
if (r0 == lia_move::conflict) {
1428+
r = r0;
14281429
break;
1429-
}
1430+
}
1431+
else if (r0 == lia_move::continue_with_check)
1432+
r = r0;
1433+
else if (r0 == lia_move::branch && r == lia_move::undef)
1434+
r = r0;
14301435
}
1431-
for (unsigned j :processed_terms) {
1436+
for (unsigned j : processed_terms)
14321437
m_terms_to_tighten.remove(j);
1433-
}
1438+
TRACE("dio", tout << r << "\n");
14341439
return r;
14351440
}
14361441

@@ -1802,10 +1807,10 @@ namespace lp {
18021807
lia_move ret = process_f(f_vector);
18031808
if (ret != lia_move::undef)
18041809
return ret;
1805-
TRACE("dio", print_S(tout););
18061810
ret = tighten_terms_with_S();
18071811
if (ret == lia_move::conflict)
18081812
lra.stats().m_dio_tighten_conflicts++;
1813+
TRACE("dio", print_S(tout););
18091814
return ret;
18101815
}
18111816

0 commit comments

Comments
 (0)
Please sign in to comment.