Skip to content

Commit

Permalink
improve isomorphism(FPGroup, G)
Browse files Browse the repository at this point in the history
in the situation that the generators of G form a pcgs,
for example if `gens(G)` is the tail of the defining pcgs
of the full pc group that contains `G`.
(Perhaps this should be supported also in GAP.)
  • Loading branch information
ThomasBreuer committed Apr 17, 2024
1 parent e51f432 commit 5403e06
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions src/Groups/homomorphisms.jl
Original file line number Diff line number Diff line change
Expand Up @@ -542,6 +542,14 @@ function isomorphism(::Type{FPGroup}, G::GAPGroup; on_gens::Bool=false)
f = GAP.Globals.GroupHomomorphismByImages(G.X, GAP.Globals.FreeGroup(0), GAP.Obj([]), GAP.Obj([]))
GAP.Globals.SetIsBijective(f, true)
else
# The computations are easy if `Ggens` is a pcgs,
# otherwise GAP will call `CoKernel`.
if GAP.Globals.HasFamilyPcgs(G.X)
pcgs = GAP.Globals.InducedPcgsWrtFamilyPcgs(G.X)
if pcgs == Ggens
Ggens = pcgs
end
end
f = GAPWrap.IsomorphismFpGroupByGenerators(G.X, Ggens)
end
else
Expand Down

0 comments on commit 5403e06

Please sign in to comment.