mirror of
https://github.com/Z3Prover/z3
synced 2026-03-20 11:55:49 +00:00
Fix inconsistent optimization with scaled objectives (#8998)
When the LP optimizer returns the same blocker expression in successive iterations of geometric_lex (e.g., due to nonlinear constraints like mod/to_int preventing the LP from exploring the full feasible region), the loop now falls back to using the model-based lower bound to push harder instead of breaking immediately. This fixes the case where minimize(3*a) incorrectly returned -162 while minimize(a) correctly returned -infinity with the same constraints. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
parent
5df80705aa
commit
99099255b6
2 changed files with 58 additions and 0 deletions
|
|
@ -177,6 +177,7 @@ int main(int argc, char ** argv) {
|
|||
TST(api);
|
||||
TST(max_reg);
|
||||
TST(max_rev);
|
||||
TST(scaled_min);
|
||||
TST(deep_api_bugs);
|
||||
TST(api_algebraic);
|
||||
TST(api_polynomial);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue