Kernel Subgroups¶
The kernel of a homomorphism implemented as a subgroup.
AUTHORS:
- Travis Scrimshaw (1-2023): Initial version 
- class sage.groups.kernel_subgroup.KernelSubgroup(morphism)[source]¶
- Bases: - UniqueRepresentation,- Parent- The kernel (normal) subgroup. - Let \(\phi : G \to H\) be a group homomorphism. The kernel \(K = \{\phi(g) = 1 | g \in G\}\) is a normal subgroup of \(G\). - class Element[source]¶
- Bases: - ElementWrapper
 - ambient()[source]¶
- Return the ambient group of - self.- EXAMPLES: - sage: PJ3 = groups.misc.PureCactus(3) # needs sage.rings.number_field sage: PJ3.ambient() # needs sage.rings.number_field Cactus Group with 3 fruit - >>> from sage.all import * >>> PJ3 = groups.misc.PureCactus(Integer(3)) # needs sage.rings.number_field >>> PJ3.ambient() # needs sage.rings.number_field Cactus Group with 3 fruit 
 - defining_morphism()[source]¶
- Return the defining morphism of - self.- EXAMPLES: - sage: PJ3 = groups.misc.PureCactus(3) # needs sage.rings.number_field sage: PJ3.defining_morphism() # needs sage.rings.number_field Conversion via _from_cactus_group_element map: From: Cactus Group with 3 fruit To: Symmetric group of order 3! as a permutation group - >>> from sage.all import * >>> PJ3 = groups.misc.PureCactus(Integer(3)) # needs sage.rings.number_field >>> PJ3.defining_morphism() # needs sage.rings.number_field Conversion via _from_cactus_group_element map: From: Cactus Group with 3 fruit To: Symmetric group of order 3! as a permutation group 
 - gens()[source]¶
- Return the generators of - self.- EXAMPLES: - sage: S2 = SymmetricGroup(2) sage: S3 = SymmetricGroup(3) sage: H = Hom(S3, S2) sage: phi = H(S2.__call__) sage: from sage.groups.kernel_subgroup import KernelSubgroup sage: K = KernelSubgroup(phi) sage: K.gens() ((),) - >>> from sage.all import * >>> S2 = SymmetricGroup(Integer(2)) >>> S3 = SymmetricGroup(Integer(3)) >>> H = Hom(S3, S2) >>> phi = H(S2.__call__) >>> from sage.groups.kernel_subgroup import KernelSubgroup >>> K = KernelSubgroup(phi) >>> K.gens() ((),) 
 - lift(x)[source]¶
- Lift - xto the ambient group of- self.- EXAMPLES: - sage: PJ3 = groups.misc.PureCactus(3) # needs sage.rings.number_field sage: PJ3.lift(PJ3.an_element()).parent() # needs sage.rings.number_field Cactus Group with 3 fruit - >>> from sage.all import * >>> PJ3 = groups.misc.PureCactus(Integer(3)) # needs sage.rings.number_field >>> PJ3.lift(PJ3.an_element()).parent() # needs sage.rings.number_field Cactus Group with 3 fruit 
 - retract(x)[source]¶
- Convert - xto an element of- self.- EXAMPLES: - sage: # needs sage.rings.number_field sage: J3 = groups.misc.Cactus(3) sage: s12,s13,s23 = J3.group_generators() sage: PJ3 = groups.misc.PureCactus(3) sage: elt = PJ3.retract(s23*s12*s23*s13); elt s[2,3]*s[1,2]*s[2,3]*s[1,3] sage: elt.parent() is PJ3 True - >>> from sage.all import * >>> # needs sage.rings.number_field >>> J3 = groups.misc.Cactus(Integer(3)) >>> s12,s13,s23 = J3.group_generators() >>> PJ3 = groups.misc.PureCactus(Integer(3)) >>> elt = PJ3.retract(s23*s12*s23*s13); elt s[2,3]*s[1,2]*s[2,3]*s[1,3] >>> elt.parent() is PJ3 True