The Construction of Finitely Presented Groups
Construction of a Free Group
FreeGroup(n) : RngIntElt -> GrpFP
Example GrpFP_1_Free (H19E1)
Construction of Words
G ! [ i_1, ..., i_s ] : GrpFP, [ RngIntElt ] -> GrpFPElt
Identity(G) : GrpFP -> GrpFPElt
Random(G, m, n) : GrpFP, RngIntElt, RngIntElt -> GrpFPElt
Access Functions for Words
# w : GrpFPElt -> RngIntElt
ElementToSequence(w) : GrpFPElt -> [ RngIntElt ]
ExponentSum(w, x) : GrpFPElt, GrpFPElt -> RngIntElt
GeneratorNumber(w) : GrpFPElt -> RngIntElt
LeadingGenerator(w) : GrpFPElt -> GrpFPElt
Parent(w) : GrpFPElt -> GrpFP
Example GrpFP_1_WordAccess (H19E2)
Arithmetic Operators for Words
u * v : GrpFPElt, GrpFPElt -> GrpFPElt
u ^ n : GrpFPElt, RngIntElt -> GrpFPElt
u ^ v : GrpFPElt, GrpFPElt -> GrpFPElt
(u, v) : GrpFPElt, GrpFPElt -> GrpFPElt
(u_1, ..., u_n) : List(GrpFPElt) -> GrpFPElt
Comparison of Words
u eq v : GrpFPElt, GrpFPElt -> BoolElt
u ne v : GrpFPElt, GrpFPElt -> BoolElt
u lt v : GrpFPElt, GrpFPElt -> BoolElt
u le v : GrpFPElt, GrpFPElt -> BoolElt
u ge v : GrpFPElt, GrpFPElt -> BoolElt
u gt v : GrpFPElt, GrpFPElt -> BoolElt
Example GrpFP_1_Words (H19E3)
Relations
w_1 = w_2 : GrpFPElt, GrpFPElt -> GrpFPRel
r[1] : GrpFPRel, RngIntElt -> GrpFPElt
r[2] : GrpFPRel, RngIntElt -> GrpFPElt
r[1] = w : GrpFPRel, RngIntElt, GrpFPElt -> GrpFPRel
r[2] = w : GrpFPRel, RngIntElt, GrpFPElt -> GrpFPRel
f(r) : Hom(GrpFP), GrpFPRel -> GrpFPRel
Parent(r) : GrpFPRel -> GrpFP
Example GrpFP_1_Relations (H19E4)
The Quotient Group Constructor
quo< F | R > : GrpFP, List -> GrpFP, Hom(Grp)
G / H : GrpFP, GrpFP -> GrpFP
Example GrpFP_1_Symmetric1 (H19E5)
Example GrpFP_1_Symmetric2 (H19E6)
Example GrpFP_1_Modular (H19E7)
The FP-Group Constructor
Group< X | R > : List(Var), List(GrpFPRel) -> GrpFP, Hom(Grp)
Example GrpFP_1_Tetrahedral (H19E8)
Example GrpFP_1_ThreeInvols (H19E9)
Example GrpFP_1_Coxeter (H19E10)
Construction from a Finite Permutation or Matrix Group
FPGroup(G) : GrpPerm -> GrpFP, Hom(Grp)
FPGroupStrong(G) : GrpPerm -> GrpFP, Hom(Grp)
FPGroupStrong(G, N) : GrpPerm, GrpPerm -> GrpFP, Hom(Grp)
Example GrpFP_1_FPGroup1 (H19E11)
Construction of the Standard Presentation for a Coxeter Group
CoxeterGroup(GrpFP, W) : Cat, GrpCox -> GrpFP, Map
Example GrpFP_1_FPCoxeterGroups (H19E12)
Conversion from a Special Form of FP-Group
FPGroup(G) : GrpPC -> GrpFP, Hom(Grp)
Example GrpFP_1_FPGroup2 (H19E13)
Construction of a Standard Group
AbelianGroup(GrpFP, [n_1,...,n_r]): Cat, [ RngIntElt ] -> GrpFP
AlternatingGroup(GrpFP, n) : Cat, RngIntElt -> GrpFP
BraidGroup(GrpFP, n) : Cat, RngIntElt -> GrpFP
CoxeterGroup(GrpFP, t) : Cat, MonStgElt -> GrpFP
CyclicGroup(GrpFP, n) : Cat, RngIntElt -> GrpFP
DihedralGroup(GrpFP, n) : Cat, RngIntElt -> GrpFP
ExtraSpecialGroup(GrpFP, p, n : parameters) : Cat, RngIntElt, RngIntElt -> GrpFP
ImprimitiveReflectionGroup(GrpFP,{ m, p, n}) : Cat, RngIntElt, RngIntElt, RngIntElt -> GrpFP
SymmetricGroup(GrpFP, n) : Cat, RngIntElt -> GrpFP
Example GrpFP_1_StandardGroups (H19E14)
Construction of Extensions
Darstellungsgruppe(G) : GrpFP -> GrpFP
DirectProduct(G, H) : GrpFP, GrpFP -> GrpFP
DirectProduct(Q) : [ GrpFP ] -> GrpFP
FreeProduct(G, H) : GrpFP, GrpFP -> GrpFP
FreeProduct(Q) : [ GrpFP ] -> GrpFP
Example GrpFP_1_ControlExtn (H19E15)
Example GrpFP_1_DirectProduct (H19E16)
Accessing the Defining Generators and Relations
G . i : GrpFP, RngIntElt -> GrpFPElt
Generators(G) : GrpFP -> { GrpFPElt }
NumberOfGenerators(G) : GrpFP -> RngIntElt
PresentationLength(G) : GrpFP -> RngIntElt
Relations(G) : GrpFP -> [ GrpFPRel ]
Construction of Homomorphisms
hom< P -> G | S > : Struct , Struct -> Map
IsSatisfied(U, E) : { RelElt }, [ GrpElt ] -> BoolElt
Accessing Homomorphisms
w @ f : GrpFPElt, Map -> GrpElt
H @ f : GrpFP, Map -> Grp
g @@ f : GrpElt, Map -> GrpFPElt
H @@ f : Grp, Map -> GrpFP
Domain(f) : Map -> Grp
Codomain(f) : Map -> Grp
Image(f) : Map -> Grp
Kernel(f) : Map -> Grp
Example GrpFP_1_Homomorphism (H19E17)
Abelian, Nilpotent and Soluble Quotient
Abelian Quotient
AbelianQuotient(G) : GrpFP -> GrpAb, Map
ElementaryAbelianQuotient(G, p) : GrpFP, RngIntElt -> GrpAb, Map
AbelianQuotientInvariants(G) : GrpFP -> [ RngIntElt ]
AbelianQuotientInvariants(H) : GrpFP -> [ RngIntElt ]
AbelianQuotientInvariants(G, n) : GrpFP, RngIntElt -> [ RngIntElt ]
AbelianQuotientInvariants(H, n) : GrpFP, RngIntElt -> [ RngIntElt ]
HasComputableAbelianQuotient(G) : GrpFP -> BoolElt, GrpAb, Map
HasInfiniteComputableAbelianQuotient(G) : GrpFP -> BoolElt, GrpAb, Map
TorsionFreeRank(G) : GrpFP -> RngIntElt
Example GrpFP_1_F27 (H19E18)
Example GrpFP_1_modular-abelian-quotient (H19E19)
The Construction of a p-Quotient
pQuotient(F, p, c: parameters) : GrpFP, RngIntElt, RngIntElt -> GrpPC, Map, SeqEnum , BoolElt
Example GrpFP_1_pQuotient1 (H19E20)
Example GrpFP_1_pQuotient2 (H19E21)
Example GrpFP_1_pQuotient3 (H19E22)
Example GrpFP_1_pQuotient4 (H19E23)
Nilpotent Quotient
NilpotentQuotient(G, c: parameters) : GrpFP, RngIntElt -> GrpGPC, Map
Example GrpFP_1_NilpotentQuotient1 (H19E24)
SetVerbose("NilpotentQuotient", n) : MonStgElt, RngIntElt ->
Example GrpFP_1_NilpotentQuotient2 (H19E25)
Soluble Quotient
SolvableQuotient(G : parameters): GrpFP, RngIntElt -> GrpPC, Map, SeqEnum, MonStgElt
Example GrpFP_1_SolubleQuotient1 (H19E26)
SolvableQuotient(F, n : parameters): GrpFP, RngIntElt -> GrpPC, Map, SeqEnum, MonStgElt
Example GrpFP_1_SolubleQuotient2 (H19E27)
Specification of a Subgroup
sub< G | L > : GrpFP, List -> GrpFP
sub< G | f > : GrpFP, Hom(Grp) -> GrpFP
ncl< G | L > : GrpFP, List -> GrpFP
ncl<G | f> : GrpFP, Hom(Grp) -> GrpFP
DerivedSubgroup(G) : GrpGPC -> GrpGPC
Example GrpFP_1_Subgroups1 (H19E28)
Example GrpFP_1_Subgroups2 (H19E29)
Index of a Subgroup: The Todd-Coxeter Algorithm
ToddCoxeter(G, H: parameters) : GrpFP, GrpFP -> RngIntElt, Map, RngIntElt, RngIntElt
Index(G, H: parameters) : GrpFP, GrpFP -> RngIntElt
Example GrpFP_1_Index1 (H19E30)
Order(G: parameters) : GrpFP -> RngIntElt
Example GrpFP_1_Order11 (H19E31)
Example GrpFP_1_HN (H19E32)
Example GrpFP_1_Family (H19E33)
Implicit Invocation of the Todd-Coxeter Algorithm
SetGlobalTCParameters(: parameters) : ->
UnsetGlobalTCParameters() : ->
Example GrpFP_1_ImplicitCosetEnumeration (H19E34)
Constructing a Presentation for a Subgroup
Rewriting
Rewrite(G, H : parameters) : GrpFP, GrpFP -> GrpFP, Map
Example GrpFP_1_Rewrite (H19E35)
Low Index Subgroups
LowIndexSubgroups(G, R : parameters) : GrpFP, RngIntElt -> [ GrpFP ]
Example GrpFP_1_Lix1 (H19E36)
Example GrpFP_1_Lix2 (H19E37)
LowIndexProcess(G, R : parameters) : GrpFP, RngIntElt -> Process(Lix)
NextSubgroup(~P) : Process(Lix) ->
ExtractGroup(P) : Process(Lix) -> GrpFP
ExtractGenerators(P) : Process(Lix) -> { GrpFPElt }
IsEmpty(P) : Process(Lix) -> BoolElt
Example GrpFP_1_Lix3 (H19E38)
Example GrpFP_1_Lix4 (H19E39)
Example GrpFP_1_Lix5 (H19E40)
Subgroup Constructions
H ^ u : GrpFP, GrpFPElt -> GrpFP
H meet K : GrpFP, GrpFP -> GrpFP
Core(G, H) : GrpFP, GrpFP -> GrpFP
GeneratingWords(G, H) : GrpFP, GrpFP -> { GrpFPElt }
MaximalOvergroup(G, H) : GrpFP, GrpFP -> GrpFP
MinimalOvergroup(G, H) : GrpFP, GrpFP -> GrpFP
H ^ G : GrpFP, GrpFP -> GrpFP
Normaliser(G, H) : GrpFP, GrpFP -> GrpFP
SchreierGenerators(G, H : parameters) : GrpFP, GrpFP -> { GrpFPElt }
SchreierSystem(G, H) : GrpFP, GrpFP -> {@ GrpFPElt @}, Map
Transversal(G, H, K) : GrpFP, GrpFP, GrpFP -> {@ GrpFPElt @}, Map
Example GrpFP_1_SubgroupConstructions (H19E41)
Example GrpFP_1_SchreierGenerators (H19E42)
Properties of Subgroups
u in H : GrpFPElt, GrpFP -> BoolElt
u notin H : GrpFPElt, GrpFP -> BoolElt
H eq K : GrpFP, GrpFP -> BoolElt
H != K : GrpFP, GrpFP -> BoolElt
H subset K : GrpFP, GrpFP -> BoolElt
H notsubset K : GrpFP, GrpFP -> BoolElt
IsConjugate(G, H, K) : GrpFP, GrpFP, GrpFP -> BoolElt, GrpFPElt
IsNormal(G, H) : GrpFP, GrpFP -> BoolElt
IsMaximal(G, H) : GrpFP, GrpFP -> BoolElt
IsSelfNormalizing(G, H) : GrpFP, GrpFP -> BoolElt
Example GrpFP_1_SubgroupOps (H19E43)
Example GrpFP_1_BuildSubgroups (H19E44)
Coset Tables
CosetTable(G, H: parameters) : GrpFP, GrpFP -> Map
CosetTableToRepresentation(G, T): GrpFP, Map -> Map, GrpPerm, Grp
CosetTableToPermutationGroup(G, T) : GrpFP, Map -> GrpPerm
Example GrpFP_1_CosetTable1 (H19E45)
Coset Spaces: Construction
CosetSpace(G, H: parameters) : GrpFP, GrpFP: -> GrpFPCos
RightCosetSpace(G, H: parameters) : GrpFP, GrpFP -> GrpFPCos
Coset Spaces: Elementary Operations
H * g : GrpFP, GrpFPElt -> GrpFPCosElt
C * g : GrpFPCosElt, GrpFPElt -> GrpFPCosElt
C * D : GrpFPCosElt, GrpFPCosElt -> GrpFPCosElt
g in C : GrpFPElt, GrpFPCosElt -> BoolElt
g notin C : GrpFPElt, GrpFPCosElt -> BoolElt
C1 eq C2 : GrpFPCosElt, GrpFPCosElt -> BoolElt
C1 ne C2 : GrpFPCosElt, GrpFPCosElt -> BoolElt
Accessing Information
# V : GrpFPCos -> RngIntElt
Action(V) : GrpFPCos -> Map
<i, w> @ T : GrpFPCosElt, GrpFPElt, Map -> GrpFPElt
ExplicitCoset(V, i) : GrpFPCos, RngIntElt -> GrpFPCosElt
IndexedCoset(V, w) : GrpFPCos, GrpFPElt -> GrpFPCosElt
IndexedCoset(V, C) : GrpFPCos, GrpFPCosElt -> GrpFPCosElt
Group(V) : GrpFPCos -> GrpFP
Subgroup(V) : GrpFPCos -> GrpFP
IsComplete(V) : GrpFPCos -> BoolElt
ExcludedConjugates(V) : GrpFPCos -> { GrpFPElt }
Transversal(G, H) : GrpFP, GrpFP -> {@ GrpFPElt @}, Map
Example GrpFP_1_CosetTable2 (H19E46)
Example GrpFP_1_CosetSpace (H19E47)
Example GrpFP_1_DerSub (H19E48)
Example GrpFP_1_ExcludedConjugates (H19E49)
Double Coset Spaces: Construction
DoubleCoset(G, H, g, K ) : GrpFP, GrpFP, GrpFPElt, GrpFP -> GrpFPDcosElt
DoubleCosets(G, H, K) : GrpFP, GrpFP, GrpFP -> { GrpFPDcosElt }
Example GrpFP_1_DoubleCosets (H19E50)
Coset Spaces: Selection of Cosets
CosetsSatisfying(T, S: parameters) : Map, { GrpFPElt }: -> { GrpFPCosElt }
Example GrpFP_1_CosetSatisfying (H19E51)
Coset Spaces: Induced Homomorphism
CosetAction(G, H) : Grp, Grp -> Hom(Grp), GrpPerm, Grp
CosetAction(V) : GrpFPCos, Grp -> Hom(Grp), GrpPerm
CosetImage(G, H) : Grp, Grp -> GrpPerm
CosetImage(V) : GrpFPCos, Grp -> GrpPerm
CosetKernel(G, H) : GrpFP, GrpFP -> GrpFP
CosetKernel(V) : GrpFPCos -> GrpFP
Example GrpFP_1_Co1 (H19E52)
Example GrpFP_1_G23 (H19E53)
Reducing generating sets
ReduceGenerators(G) : GrpFP -> GrpFP, Map
Tietze transformations
Simplify(G: parameters) : GrpFP -> GrpFP
Example GrpFP_1_Simplify1 (H19E54)
SimplifyLength(G: parameters) : GrpFP -> GrpFP
TietzeProcess(G: parameters) : GrpFP -> Process(Tietze)
ShowOptions(~P : parameters) : Process(Tietze) ->
SetOptions(~P : parameters) : Process(Tietze) ->
Simplify(~P : parameters) : Process(Tietze) ->
SimplifyLength(~P : parameters) : Process(Tietze) ->
Eliminate(~P: parameters) : Process(Tietze) ->
Search(~P: parameters) : Process(Tietze) ->
SearchEqual(~P: parameters) : Process(Tietze) ->
Group(P) : Process(Tietze) -> GrpFP, Map
NumberOfGenerators(P) : Process(Tietze) -> RngIntElt
NumberOfRelations(P) : Process(Tietze) -> RngIntElt
PresentationLength(P) : Process(Tietze) -> RngIntElt
Example GrpFP_1_F276 (H19E55)
Example GrpFP_1_ReduceGeneratingSet (H19E56)
Example GrpFP_1_F29 (H19E57)
Example GrpFP_1_L372 (H19E58)
Representation Theory
GModulePrimes(G, A) : GrpFP, GrpFP -> SetMulti
GModulePrimes(G, A, B) : GrpFP, GrpFP, GrpFP -> SetMulti
GModule(G, A, p) : GrpFP, GrpFP, RngIntElt -> ModGrp, Map
GModule(G, A, B, p) : GrpFP, GrpFP, GrpFP, RngIntElt -> ModGrp, Map
Pullback(f, N) : Map, ModGrp -> GrpFP
Example GrpFP_1_RepresentationTheory (H19E59)
Example GrpFP_1_gmoduleprimes (H19E60)