Skip to content

Refactor HighsCliqueTable::addClique - #2753

Merged
jajhall merged 11 commits into
ERGO-Code:latestfrom
fwesselm:refactorAddClique
Jan 19, 2026
Merged

Refactor HighsCliqueTable::addClique#2753
jajhall merged 11 commits into
ERGO-Code:latestfrom
fwesselm:refactorAddClique

Conversation

@fwesselm

Copy link
Copy Markdown
Collaborator
  • Refactor HighsCliqueTable::addClique and related code
  • HighsCliqueTable::addClique now checks if an equality clique with two elements is passed and automatically considers the complemented clique as well (i.e. x_1 + x_2 <= 1 and (1 - x_1) + (1 - x_2) <= 1, which is useful for equality cliques identified by solution enumeration).
  • Computational results are very similar to the baseline, so average performance is not affected very much. However, the new code is very helpful on individual models.

@fwesselm
fwesselm changed the base branch from master to latest January 16, 2026 11:16
@fwesselm
fwesselm requested a review from Opt-Mucca January 16, 2026 11:17
@fwesselm

Copy link
Copy Markdown
Collaborator Author

code-coverage is falling with the following error:

lcov: ERROR: 'exclude' pattern 'app/CLI11*' is unused.
	(use "lcov --ignore-errors unused ..." to bypass this error)

@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.

Very nice refactor with foundCover! The code is way nicer to read now. Two questions:

  • Now all substitutions are resolved before "checking" the clique. Is there any reason this wasn't done before (looks to be neater and potentially more efficient)
  • I'm not understanding why the complemented inequality clique is valid here (even if it's only for size 2).

@galabovaa

Copy link
Copy Markdown
Contributor

code-coverage is falling with the following error:

lcov: ERROR: 'exclude' pattern 'app/CLI11*' is unused.
	(use "lcov --ignore-errors unused ..." to bypass this error)

Thank you, @fwesselm

Fixed this in #2757

@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.

Cleared up some misunderstanding on my part!

@jajhall
jajhall merged commit 1ae7e0f into ERGO-Code:latest Jan 19, 2026
270 of 278 checks passed
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.

4 participants