-
-
Notifications
You must be signed in to change notification settings - Fork 655
Description
At the moment the construction of group homomorphisms between groups implemented under the classes ParentLibGAP
and PermutationGroup_generic
(and vice versa) is not possible in sage using the method hom
. For example, it isn't possible to construct the natural projection from symplectic groups onto the corresponding projective group although this is possible using GAP:
sage: Sp43 = Sp(4,3)
sage: PSp43 = PSp(4,3)
sage: natProj = Sp43.hom(PSp43.gens())
Traceback (most recent call last):
...
TypeError: unable to convert [(3,4)(6,7)(9,10)(12,13)(17,20)(18,21)(19,22)(23,32)(24,33)(25,34)(26,38)(27,39)(28,40)(29,35)(30,36)(31,37), (1,5,14,17,27,22,19,36,3)(2,6,32)(4,7,23,20,37,13,16,26,40)(8,24,29,30,39,10,33,11,34)(9,15,35)(12,25,38)(21,28,31)] to an element of Set of Morphisms from Symplectic Group of degree 4 over Finite Field of size 3 to The projective symplectic linear group of degree 4 over Finite Field of size 3 in Category of finite groups
The reason for this is that the constructor of the class GroupHomset_libgap
explicitly checks both groups to be instances of ParentLibGAP
. So an easy way to have hom
work in such cases, as well, would be to allow PermutationGroup_generic
additionally.
An alternative option is to shift PermutationGroup_generic
into the ParentLibGAP
framework. But this would cause a lot of work to have all doctests pass through. The main problem here is that the element class of PermutationGroup_generic still has parent
as second (optional) argument (in opposite to ParentLibGAP
).
Therefore, this ticket will follow the first option!
Depends on #26420
Component: group theory
Keywords: permutation group, homomorphism, libgap
Author: Sebastian Oehms
Branch: 66ceb94
Reviewer: Simon Brandhorst
Issue created by migration from https://trac.sagemath.org/ticket/26750