Skip to content

Make smallgrp an explicit dependency - #1206

Open
fingolfin wants to merge 1 commit into
semigroups:mainfrom
fingolfin:mh/no-smallgrp
Open

Make smallgrp an explicit dependency#1206
fingolfin wants to merge 1 commit into
semigroups:mainfrom
fingolfin:mh/no-smallgrp

Conversation

@fingolfin

Copy link
Copy Markdown
Contributor

SEMIGROUPS_ProcessRandomArgsCons for IsReesMatrixSemigroup picks a random group when the caller does not supply one, using NumberSmallGroups and SmallGroup. Without the SmallGrp package this fails, e.g. in a GAP started with `--bare':

gap> RandomSemigroup(IsReesMatrixSemigroup);;
Error, Variable: 'NumberSmallGroups' must have an assigned value

This is the only place in Semigroups using the small groups library.

See gap-system/gap#2434

Co-Authored-By: Claude Opus 5 noreply@anthropic.com


Of course you could also rework the code to not use SmallGrp, that'd be perfectly cromulent :-)

SEMIGROUPS_ProcessRandomArgsCons for IsReesMatrixSemigroup picks a random
group when the caller does not supply one, using NumberSmallGroups and
SmallGroup. Without the SmallGrp package this fails, e.g. in a GAP
started with `--bare':

    gap> RandomSemigroup(IsReesMatrixSemigroup);;
    Error, Variable: 'NumberSmallGroups' must have an assigned value

This is the only place in Semigroups using the small groups library.

See gap-system/gap#2434

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@fingolfin

Copy link
Copy Markdown
Contributor Author

BTW the current function would also run into an error if it happened to produce order equal to one of 1024, 2016, 2024, 2025, 2040 as for those SmallGrp does not provide the groups. So the function is a chance of about 1 in 400 to run into an error.

Also, if the goal was to select small groups uniformly, that is of course also not the case. But I assume you are aware, just wanted to mention it for completeness sake :-).

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