Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve construction of permutation actions and by this e.g. make FactorCosetAction faster by several magnitudes in certain examples #5698

Merged
merged 8 commits into from
May 6, 2024

Conversation

hulpke
Copy link
Contributor

@hulpke hulpke commented Apr 5, 2024

Speed up transversal/action on cosets in permutation group by:

  • Using natural series of subgroups induced by actions
  • Rephrasing set test in AddCosetInfoStabChain by testing the negative condition
  • Add option for orbit algorithm to keep track of permutation images of generators (so far partially available)
  • FactorCosetAction uses the subgroup series (and induction) and if possible acts on objects rather than transversal.
    Overall speedup of this (e.g. in Performance problem with creating group actions on cosets #5040) is several magnitudes.

Resolves #5040
Resolves #5337

@hulpke hulpke added kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes labels Apr 5, 2024
@hulpke hulpke changed the title Improvements to FactorCosetAction Improvements to construction of permutation actions. Apr 5, 2024
hulpke added 6 commits May 6, 2024 09:52
Rewrite a condition, mapping with inverse permutations, to test for a
small set of numbers rather than a large one. Doing so can give a
substantial speedup for constructing certain right transversals.

Also adjust of storage limits to reflect hardware progress over
20 years.
using an option, if they are obtained for free during the calculation
Speed up these operations by finding a better subgroup series, defined by
actions, and use these actions if possible.

Added example and clarify that ordering of points in `FactorCosetAction`
is not guaranteed.

This resolves gap-system#5040, gap-system#5337
in finding induced permutation representation of FpGroup,
even if max parameter was increased in between. This resolves gap-system#5697
In rare cases, class representatives might all lie in existing group, but
other elts are outside. Cover this situation.
This fixes gap-system#5708
@fingolfin fingolfin changed the title Improvements to construction of permutation actions. Improve construction of permutation actions and by this e.g. make FactorCosetAction faster by several magnitudes in certain examples May 6, 2024
@fingolfin fingolfin added the topic: performance bugs or enhancements related to performance (improvements or regressions) label May 6, 2024
@fingolfin fingolfin enabled auto-merge (squash) May 6, 2024 20:59
@fingolfin fingolfin merged commit 6935405 into gap-system:master May 6, 2024
22 checks passed
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 release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes topic: performance bugs or enhancements related to performance (improvements or regressions)
Projects
None yet
2 participants