Skip to content

Presolve infrastructure for adding rows/columns - #3218

Merged
Opt-Mucca merged 248 commits into
latestfrom
FMPresolve5-peripheral
Aug 21, 2026
Merged

Presolve infrastructure for adding rows/columns#3218
Opt-Mucca merged 248 commits into
latestfrom
FMPresolve5-peripheral

Conversation

@fwesselm

Copy link
Copy Markdown
Collaborator
  • This is just the infrastructure part from Fourier-Motzkin presolve #3191.
  • ImpliedEquation reduction type was added to properly handle conversion of inequality constraints into equality constraints.
  • Benchmarking (on 100 MIPs) did not reveal any unintended side effects.
  • Added a test to exercise new code.

@fwesselm
fwesselm requested a review from Opt-Mucca August 17, 2026 16:55
@codecov

codecov Bot commented Aug 17, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 90.90909% with 31 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.13%. Comparing base (2ed99be) to head (9bee4bb).
⚠️ Report is 23 commits behind head on latest.

Files with missing lines Patch % Lines
highs/presolve/HighsPostsolveStack.cpp 81.31% 17 Missing ⚠️
highs/presolve/HPresolve.cpp 89.15% 9 Missing ⚠️
highs/presolve/HighsPostsolveStack.h 93.24% 5 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           latest    #3218      +/-   ##
==========================================
+ Coverage   73.06%   73.13%   +0.07%     
==========================================
  Files         445      445              
  Lines      107661   107796     +135     
  Branches    17257    17260       +3     
==========================================
+ Hits        78659    78835     +176     
+ Misses      28726    28685      -41     
  Partials      276      276              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jajhall jajhall self-assigned this Aug 18, 2026

@Opt-Mucca Opt-Mucca left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am a hugeeeeeeeeeeeeeeeeee fan of this PR!!!!! It somehow doesn't complicate the code at all, and even does a latent TODO for equation upgrades!

I've only found two potential issues. Both could be me missing the larger picture (not unlikely), but I think they're potential bugs.

Comment thread highs/presolve/HighsPostsolveStack.h
Comment thread highs/presolve/HPresolve.cpp
@Opt-Mucca
Opt-Mucca merged commit 8ac75fe into latest Aug 21, 2026
548 of 549 checks passed
@fwesselm
fwesselm deleted the FMPresolve5-peripheral branch September 2, 2026 11:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants