# Standard Constructions and Conversions

## `AbelianGroup(GrpAb, Q): Cat, [ RngIntElt ] -> GrpAb`

## `AbelianGroup(Q): [ RngIntElt ] -> GrpAb`

Let $Q = [ a_1, \ldots, a_r]$ be a sequence of non-negative integers. This function creates the abelian group ${\mathbb{Z}}_1 + \cdots + {\mathbb{Z}}_r$, where $Z_i$ is the cyclic group of order $|a_i|$ if $a_i\neq0$ or the infinite cyclic group ${\mathbb{Z}}$ otherwise, $i = 1, \ldots, r$.

## `AbelianGroup(G): Grp -> GrpAb, Hom`

Given an abelian permutation, matrix or polycyclic group $G$, represent it as an abelian group $A$. The function also returns the isomorphism $\phi: G \rightarrow A$ as its second value.

## `AbelianQuotient(G): Grp -> GrpAb, Hom`

Given a finitely presented, permutation, matrix or polycyclic group $G$, return the maximal abelian quotient $A$ of $G$. The function returns the natural homomorphism $\phi: G \rightarrow A$ as its second value.

## `DirectSum(A, B): GrpAb, GrpAb -> GrpAb`

The direct sum of abelian groups $A$ and $B$.

## `PCGroup(A): GrpAb -> GrpPC, Hom(Grp)`

A pc-group representation $G$ of $A$. The isomorphism $\phi: A\rightarrow G$ is also returned.

## `PermutationGroup(A): GrpAb -> GrpPerm, Hom(Grp)`

A permutation group representation of $A$. The particular group $G$ is generated by disjoint cycles whose lengths are the abelian invariants of $A$. The isomorphism $\phi: G\rightarrow A$ is also returned.

## `FPGroup(A): GrpAb -> GrpFP, Hom(Grp)`

A fp-group group representation of $A$. The particular group $G$ is generated by commuting generators whose orders are the abelian invariants of $A$. The isomorphism $\phi: G\rightarrow A$ is also returned.

## `CommutatorSubgroup(G): GrpAb -> GrpAb`

## `DerivedSubgroup(G): GrpAb -> GrpAb`

## `DerivedGroup(G): GrpAb -> GrpAb`

The derived subgroup of $G$, that is the trivial group, since $G$ is abelian.

## `CommutatorSubgroup(H, K): GrpAb, GrpAb -> GrpAb`

## `CommutatorSubgroup(G, H, K): GrpAb, GrpAb, GrpAb -> GrpAb`

The commutator subgroup of groups $H$ and $K$ in their common overgroup $G$.

## `Centralizer(G, a): GrpAb, GrpAbElt -> GrpAb`

## `Centraliser(G, a): GrpAb, GrpAbElt -> GrpAb`

The centraliser of $a$ in $G$.

## `Core(G, H): GrpAb, GrpAb -> GrpAb`

The maximal normal subgroup of $G$ that is contained in the subgroup $H$ of $G$. Since $G$ is abelian, this is $H$ itself.

## `Centre(G): GrpAb -> GrpAb`

## `Center(G): GrpAb -> GrpAb`

The center of $G$, ie. $G$ itself.

## `FittingGroup(G): GrpAb -> GrpAb`

## `FittingSubgroup(G): GrpAb -> GrpAb`

The Fitting subgroup of $G$.

## `Hypercentre(G): GrpAb -> GrpAb`

## `Hypercenter(G): GrpAb -> GrpAb`

The hypercentre of $G$.
