Skip to content

Changes to stabilizer calculations and permreps in automorphism groups - #6494

Open
hulpke wants to merge 5 commits into
gap-system:masterfrom
hulpke:isom_better
Open

Changes to stabilizer calculations and permreps in automorphism groups#6494
hulpke wants to merge 5 commits into
gap-system:masterfrom
hulpke:isom_better

Conversation

@hulpke

@hulpke hulpke commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

These changes resolve memory use and sluggishness issues being brought up in #6478. This is done by reducing over cautious effort in computing a permutation representation, and by using a new stabilizer routine that works along a composition series, mirrorign what the pc algorithm does. It also will try replacing a large orbit buildup with specific element tests to save on memory.

Also added special handling of 2-generator groups, which might refer back to the old routine if there are few images.

@hulpke hulpke added kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements do not review PRs which are not yet ready for a proper external review (e.g. only submitted for test results) labels Aug 6, 2026
hulpke added 5 commits August 11, 2026 20:15
When computing the permutation representation of an automorphism group,
avoid being dragged into a special case for abelian groups.
Use `SubnormalOrbitExtension` to speed up a stabilizer calculation. Call the
function directly, before trying to fit it more generally in the method
selection.
to compute an orbit along a composition series also in a nonsolvable group.
avoid some membership tests and transfer group orders
For two-generator groups, isomorphism test will use old routine if only few
possible images.
Automorphism groups of abelian groups will know their order.
@hulpke hulpke added topic: performance bugs or enhancements related to performance (improvements or regressions) and removed do not review PRs which are not yet ready for a proper external review (e.g. only submitted for test results) labels Aug 12, 2026
@codecov

codecov Bot commented Aug 12, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 18.77729% with 186 lines in your changes missing coverage. Please review.
✅ Project coverage is 70.92%. Comparing base (153950b) to head (76ad4aa).
⚠️ Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
lib/oprtperm.gi 0.57% 172 Missing ⚠️
lib/grppcaut.gi 33.33% 6 Missing ⚠️
lib/morpheus.gi 85.36% 6 Missing ⚠️
lib/grppcext.gi 66.66% 2 Missing ⚠️

❗ There is a different number of reports uploaded between BASE (153950b) and HEAD (76ad4aa). Click for more details.

HEAD has 24 uploads less than BASE
Flag BASE (153950b) HEAD (76ad4aa)
30 6
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6494      +/-   ##
==========================================
- Coverage   79.03%   70.92%   -8.12%     
==========================================
  Files         685      683       -2     
  Lines      293802   292998     -804     
  Branches     8664     8611      -53     
==========================================
- Hits       232219   207815   -24404     
- Misses      59782    83278   +23496     
- Partials     1801     1905     +104     

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements topic: performance bugs or enhancements related to performance (improvements or regressions)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant