[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Constructing a Presentation for a Subgroup

Constructing a Presentation for a Subgroup

Subsections

Introduction

Let H be a subgroup of finite index in the finitely presented group G. It frequently happens that it is desirable to construct a set of defining relations for H from those of G. In principle, such a presentation can be obtained either on a set of Schreier generators for H using the Reidemeister-Schreier rewriting technique or on the given generators of H.

If the user wishes only to determine the structure of the derived quotient group of H, then the function AbelianQuotientInvariants, described above, should be used. In this case there is no need to first construct a presentation for H using the Rewrite function described below, since AbelianQuotientInvariants employs a special form of the Reidemeister-Schreier rewriting process which abelianizes each relator as soon as it is constructed. Thus AbelianQuotientInvariants may be applied to subgroups H of much larger index in G than may be the function Rewrite.

Rewriting

Rewrite(G, H : parameters) : GrpFP, GrpFP -> GrpFP
Given a finitely presented group G and a subgroup H having finite index in G, construct a presentation for H by rewriting the presentation given for G.

    Simplify: BoolElt                   Default: true

If this Boolean-valued parameter is given the value true, then the resulting presentation for H will be simplified (default). The function Rewrite returns a finitely presented group that is isomorphic to H. If simplification is requested (Simplify := true) then the simplification procedures are invoked (see next section). These procedures perform a sequence of Tietze transformations which typically result in a considerable simplification of the presentation produced by the rewriting process. Alternatively, the user can set Simplify := false and then perform the simplification directly if desired. (See next section). If simplification is not requested as part of Rewrite, a small amount of simplification is performed on the presentation before it is returned.

    Iterations: RngIntElt               Default: 0

Perform at most n iterations (default: no limit) of the main elimination loop. Usually, one generator is eliminated for each iteration of the loop.

    SearchLimit: RngIntElt              Default: 1500

Only look for substrings of relators of length less than or equal to the limit specified when looking for Tietze transformations. If this bound is exceeded, then the number of times the limit was enforced will be printed.

SchreierGenerators(G, H) : GrpFP, GrpFP -> { GrpFPElt }
Given a subgroup H of the finitely presented group G, return a set containing the Schreier generators for H.

Example GrpFP_Rewrite (H12E35)

Starting with the group G defined by < x, y | x^2, y^3, (xy)^(12), (xy)^6(xy^(-1))^6 >, we construct a subgroup K of index 3 generated by the words x, yxy^(-1) and yxy^(-1)xy^(-1)xy. We present the subgroup K, compute its abelian quotient structure and then show that the class 30 2-quotient of K has order 2^(22).

> G<x, y> := Group< x, y | x^2, y^3, (x*y)^12, (x*y)^6*(x*y^-1)^6 >;
> print G;

Finitely presented group G on 2 generators Relations x^2 = Id(G) y^3 = Id(G) (x * y)^12 = Id(G) x * y * x * y * x * y * x * y * x * y * x * y * x * y^-1 * x * y^-1 * x * y^-1 * x * y^-1 * x * y^-1 * x * y^-1 = Id(G)

> K := sub< G | x, y*x*y^-1, y*x*y^-1*x*y^-1*x*y >; > print K; > print Index(G, K); 3

Finitely presented group K on 3 generators Generators as words in group G K.1 = x K.2 = y * x * y^-1 K.3 = y * x * y^-1 * x * y^-1 * x * y

> T := Rewrite(G, K); > print T;

Finitely presented group T on 3 generators Generators as words in group G T.1 = x T.2 = y * x * y^-1 * x * y * x^-1 * y^-1 T.3 = y * x^-1 * y^-1 * x * y * x * y^-1

Relations T.1^2 = Id(T) T.2^2 = Id(T) T.3^2 = Id(T) T.1 * T.2 * T.1^-1 * T.3 * T.2 * T.1^-1 * T.2^-1 * T.1 * T.3^-1 * T.2^-1 = Id(T) T.1 * T.2^-1 * T.3^-1 * T.2 * T.3 * T.1^-1 * T.2 * T.3 * T.2^-1 * T.3^-1 = Id(T) (T.1 * T.2^-1 * T.3^-1 * T.2^-1 * T.3^-1)^2 = Id(T) (T.1 * T.2^-1 * T.3^-1)^4 = Id(T)

> print AbelianQuotientInvariants(T); [ 2, 2, 2 ]

> Q2 := pQuotient(T, 2, 30); > print FactoredOrder(Q2); 2^22


[Next] [Prev] [Right] [Left] [Up] [Index] [Root]