Skip to content

Improve interface#19

Merged
duembgen merged 7 commits intomainfrom
improve_interface
Sep 9, 2025
Merged

Improve interface#19
duembgen merged 7 commits intomainfrom
improve_interface

Conversation

@duembgen
Copy link
Collaborator

@duembgen duembgen commented Sep 9, 2025

This pull request introduces improvements to the matrix rank manipulation utilities in cert_tools/linalg_tools.py and enhances the reporting of solver status in cert_tools/sdp_solvers.py. The main changes include the addition of a new function for extracting lower-rank solutions from positive semidefinite matrices and improved reporting and typing.

Matrix rank manipulation utilities:

  • Added a new function extract_lower_rank_solution to cert_tools/linalg_tools.py that attempts to reduce the rank of a given positive semidefinite matrix by one, using nullspace computations and iterative updates.
  • Updated the return type of rank_project to explicitly return a tuple of a NumPy array and a dictionary, and ensured the projected matrix is returned as a NumPy array.
  • Added an import of warnings to support warning messages in new functionality.

Solver status reporting:

  • In cert_tools/sdp_solvers.py, added extraction of solver statistics and success status after solving, and included this information in the returned info dictionary for low-rank SDP solves.

@duembgen duembgen merged commit c67e576 into main Sep 9, 2025
1 check passed
@duembgen duembgen requested a review from holmesco September 9, 2025 07:47
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.

1 participant