Subgroup Constructions

Although, in the case of an abelian group, many of the standard subgroup constructors are trivial, they are all implemented for the sake of uniformity. Here we document only those which are meaningful in the context of abelian groups.

H meet K : GrpAb, GrpAb -> GrpAb
Given subgroups H and K of some group G, construct their intersection.
H meet:= K : GrpAb, GrpAb -> GrpAb
Replace H with the intersection of groups H and K.
H + K : GrpAb, GrpAb -> GrpAb
Given subgroups H and K of some group G, construct the smallest subgroup containing both.
n * G : RngIntElt, GrpAb -> GrpAb, Map
For an integer n and some abelian group G, construct the subgroup nG. The second return value is the map G to G sending g to ng.
FrattiniSubgroup(G) : GrpAb -> GrpAb
The Frattini subgroup of the finite abelian group G.

SylowSubgroup(G, p : parameters) : GrpAb, RngIntElt -> GrpAb
Sylow(G, p : parameters) : GrpAb, RngIntElt -> GrpAb
    Structure: Bool                     Default: false
The Sylow p-subgroup for the group G. If G is a generic group and the parameter Structure is true, or if the group structure of A is known, then the group structure of the Sylow subgroup is computed.

Example GrpAb_pSylowComputation (H75E12)

In the following example, we construct the Sylow 2-subgroup of G = Z34384.
> m := 34384;
> Zm := Integers(m);
> U := {@ x : x in Zm | GCD(x, m) eq 1 @};
> G := GenericAbelianGroup(U : IdIntrinsic := "Id",
>    AddIntrinsic := "*", InverseIntrinsic := "/");
> _ := AbelianGroup(G);
> Factorization(#G);
> Sylow(G, 2);
2-Sylow subgroup: Generic Abelian Group over
Residue class ring of integers modulo 34384
Abelian Group isomorphic to Z/2 + Z/2 + Z/2 + Z/4
Defined on 4 generators in supergroup G:
  GAp.1 = G.1
  GAp.2 = G.2
  GAp.3 = 3*G.3
  GAp.4 = 153*G.4
Relations:
  2*GAp.1 = 0
  2*GAp.2 = 0
  2*GAp.3 = 0
  4*GAp.4 = 0
V2.28, 13 July 2023