You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
gh-40276: Avoid hermite_form in solve_right if possible
Currently, hermite_form can be randomly very slow
(#33418,
flintlib/flint#389)
When `rank()==ncols()`, the solution is uniquely determined, so that an
alternative algorithm is to solve the system over the fraction field,
then convert it back to the ring. And computing rank is much faster —
the current default algorithm for ℤ picks a random prime p and compute
rank modulo p.
This PR detects the full-rank case and implement the alternative
algorithm.
### 📝 Checklist
<!-- Put an `x` in all the boxes that apply. -->
- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [ ] I have updated the documentation and checked the documentation
preview.
### ⌛ Dependencies
<!-- List all open PRs that this PR logically depends on. For example,
-->
<!-- - #12345: short description why this is a dependency -->
<!-- - #34567: ... -->
URL: #40276
Reported by: user202729
Reviewer(s): Travis Scrimshaw
0 commit comments