Open b7b30ad4-17d9-42b7-bc1d-7ceb7b0f2dbb opened 6 years ago
If you look at the source for simplification_isomorphism
you'll see
I = self.gap().IsomorphismSimplifiedFpGroup()
domain = self
codomain = wrap_FpGroup(I.Range())
phi = lambda x: codomain(I.ImageElm(x.gap()))
HS = self.Hom(codomain)
return GroupMorphismWithGensImages(HS, phi)
The first step toward finding an inverse in Sage is to figure out how to do it in Gap....
You can look at 47.12-1 in https://www.gap-system.org/Manuals/doc/ref/chap47.html
I'm sorry about being slow to respond: I've been busy.
When I get a chance, I'll try to figure out how to do this myself so that I can submit a patch. Thanks for your help.
Replying to @sagetrac-wphooper:
I'm sorry about being slow to respond: I've been busy.
When I get a chance, I'll try to figure out how to do this myself so that I can submit a patch. Thanks for your help.
No problem; we're all busy. Feel free to comment here if you get stuck.
The simplification_isomorphism() method in the class sage.groups.finitely_presented.FinitelyPresentedGroup_with_category returns an isomorphism, which would in particular mean it is invertible. It would be useful to be able to access the inverse, however there is no obvious way to access this inverse.
Running the following code
Results in:
I'm not sure if ~I would be the way to invert the map, but there are no obvious inversion methods in I, and the type of I suggests it is not invertible.
Thank you for your help. I am happy to help in any way I can, but I don't have much experience with creating patches, etc.
Component: group theory
Keywords: simplification_isomorphism
Issue created by migration from https://trac.sagemath.org/ticket/24137