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

Make GroupWithMemory behave more like Group, and e.g. make the wrapped generators immutable, and for matrices try to convert them to a better representation #5480

Merged
merged 1 commit into from
Aug 18, 2023

Conversation

fingolfin
Copy link
Member

In particular, ensure that the wrapped generators are made
immutable, and in the case of matrices, possibly converted
to a better representation. This is achieved by calling
GroupWithGenerators on the given generators, and then
wrapping the generators of the resulting group.

This avoids a surprising mismatch in behavior between
ordinary groups and groups with memory in some situations.
And of course making the generators immutable prevents
further pitfalls.

Copy link
Contributor

@ThomasBreuer ThomasBreuer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, good idea.

(Since Codecov noticed that there is apparently no test code for the situation that gens is not a group, what about omitting the GroupByGenerators call in the construction of G in tst/testinstall/memory.tst?)

In particular, ensure that the wrapped generators are made
immutable, and in the case of matrices, possibly converted
to a better representation. This is achieved by calling
`GroupWithGenerators` on the given generators, and then
wrapping the generators of the resulting group.

This avoids a surprising mismatch in behavior between
ordinary groups and groups with memory in some situations.
And of course making the generators immutable prevents
further pitfalls.

Also make sure we have at least one test for GroupWithMemory
where the input is not a group.
@fingolfin
Copy link
Member Author

@ThomasBreuer good suggestion. Also there was a comment which suggested that the input must be a list of generators... so I adjusted that as well...

@ThomasBreuer ThomasBreuer merged commit ed50a6b into gap-system:master Aug 18, 2023
22 checks passed
@fingolfin fingolfin deleted the mh/GroupWithMemory branch August 22, 2023 12:53
@fingolfin fingolfin changed the title Make GroupWithMemory behave more like Group Make GroupWithMemory behave more like Group, and e.g. make the wrapped generators immutable, and for matrices try to convert them to a better representation Jan 23, 2024
@fingolfin fingolfin added kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements topic: library release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes labels Jan 23, 2024
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: library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants