Skip to content

Make RestrictedMapping of a group homomorphism use the same Range as the original morphism#6230

Open
stertooy wants to merge 1 commit intogap-system:masterfrom
stertooy:restricted-mapping-range
Open

Make RestrictedMapping of a group homomorphism use the same Range as the original morphism#6230
stertooy wants to merge 1 commit intogap-system:masterfrom
stertooy:restricted-mapping-range

Conversation

@stertooy
Copy link
Contributor

Closes #6225

Text for release notes

see title

Further details

Shouldn't have much impact, unless some other code actually relied on RestrictedMapping returning a surjective map.

@ThomasBreuer ThomasBreuer added the release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes label Feb 12, 2026
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.

The proposed changes are correct.

In another pull request, we will eventually

  • extend the documentation of RestrictedMapping in order to state what the return value is,
  • make sure that all methods of RestrictedMapping fit to this description,
  • document the surjective option that is used already in at least one of these methods.

@ThomasBreuer ThomasBreuer changed the title Make RestrictedMapping of a group homomorphism use the same range as the original morphism Make RestrictedMapping of a group homomorphism use the same Range as the original morphism Feb 12, 2026
SetIsInjective(rest,true);
fi;
if HasIsTotal(hom) and IsTotal(hom) then
SetIsTotal(rest,true);
Copy link
Member

Choose a reason for hiding this comment

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

Why is this removed? If the map was total (= not partial) then surely its restriction is also total? And this is kinda important to know about a map

Copy link
Contributor Author

Choose a reason for hiding this comment

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

IsGroupHomomorphism implies IsTotal, so both hom and rest should have IsTotal set to true already.

@fingolfin
Copy link
Member

I agree that the range should not be touched (although it would be useful, nay important, to have a function doing that as well, and ideally do both in one go). However, I am wary this may break packages, or user code, so I've started a run of the package distro test suite. Of course even if it fails, that doesn't mean the end of the PR, but then we need to carefully evaluate the failures.

And if it passes: great!

BTW a long time tree was to refactor the whole mapping code, separating the part of the map which does the actual computation (the ... "underlying function" ? hrm, don't have a good word for that... basically, the $\mapsto$ part) out, so that restrictions and co-restrictions are essentially free (they can all share the same/identical "mapsto-part")

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

Labels

release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

RestrictedMapping incorrectly changes the codomain (Range) of the resulting morphism

3 participants