|
Let G = < X | R > be a finitely presented group. Suppose
that H is a subgroup of G having finite index m. Let V = {
c1 (=H), c2, ..., cm } denote the set of distinct
right cosets of H in G. This set admits a natural G-action
f : V x G -> V
where f : < ci, x > = ck iff ci * x = ck,
for ci ∈V and x ∈G. The set V together with this action
is a G-set called a right coset space for H in G. The action
may also be represented using a coset table T.
If certain of the products ci * x are unknown, the corresponding images
under f are undefined. In this case, T is not closed, and V is
called an incomplete coset space for H in G.
A coset table is represented in Magma as a mapping. Given a finitely-presented
group G and a subgroup H, the corresponding (right) coset table is a mapping
f:{1, ..., r} x G -> {0, ..., r}, where r is the index
of H in G. f(i, x) is the coset to which coset i is mapped under the action
of x∈G. The value 0 is only included in the codomain if the coset table
is not closed, and it denotes that the coset is not known.
The (right) coset table for G over subgroup H, constructed by means
of the Todd-Coxeter procedure. If the coset table does
not close then the codomain will include the value 0.
Experienced users can control the Todd-Coxeter procedure invoked by this
function with a wide range of parameters. This function accepts the same
parameters as the function CosetEnumerationProcess described
in Subsec. Interactive Coset Enumeration.
Given a coset table T for a subgroup H of G, construct the
permutation representation of G given by its action on the cosets of H,
using the columns of T. The function returns:
- (a)
- The homomorphism f: G -> P;
- (b)
- The permutation group image P;
- (c)
- The kernel K of the action (a subgroup of G).
Given a coset table T for a subgroup H of G, construct the
permutation group image of G given by its action on the cosets of H,
using the columns of T. This is the second return value of
CosetTableToRepresentation(G, T).
Consider the infinite dihedral group.
> G<a,b> := DihedralFPGroup(0);
> G;
Finitely presented group G on 2 generators
Relations
b^2 = Id(G)
(a * b)^2 = Id(G)
We define a subgroup S of G and compute the coset table map for S in G.
> S := sub<G|a*b, a^10>;
> ct := CosetTable(G, S);
> ct;
Mapping from: Cartesian Product<{ 1 .. 10 }, GrpFP: G>
to { 1 .. 10 }
$1 $2 -$1
1. 2 2 3
2. 4 1 1
3. 1 4 5
4. 6 3 2
5. 3 6 7
6. 8 5 4
7. 5 8 9
8. 10 7 6
9. 7 10 10
10. 9 9 8
When printing the coset table, the action of the generators and of the
non-trivial inverses of generators on the enumerated transversal is shown
in table form.
Using the coset table, we now construct the permutation representation of G
on the cosets of S in G. We assign the representation (a homomorphism),
the image (a permutation group of degree [G:S] = 10) and the kernel of the
permutation representation (a subgroup of G).
> fP, P, K := CosetTableToRepresentation(G, ct);
> fP;
Homomorphism of GrpFP: G into GrpPerm: P, Degree 10,
Order 2^2 * 5 induced by
a |--> (1, 2, 4, 6, 8, 10, 9, 7, 5, 3)
b |--> (1, 2)(3, 4)(5, 6)(7, 8)(9, 10)
Note that the images of a and b correspond to the first two columns of
the printed coset table above.
> P;
Permutation group P acting on a set of cardinality 10
Order = 20 = 2^2 * 5
(1, 2, 4, 6, 8, 10, 9, 7, 5, 3)
(1, 2)(3, 4)(5, 6)(7, 8)(9, 10)
> K;
Finitely presented group K
Index in group G is 20 = 2^2 * 5
Subgroup of group G defined by coset table
Now, we define a subgroup of infinite index in G and compute a coset table
for it.
> H := sub<G|b>;
> ct := CosetTable(G, H);
Of course, the coset table cannot be complete; note that 0 is in its codomain,
indicating unknown images of cosets.
> ct;
Mapping from: Cartesian Product<{ 1 .. 1333331 }, GrpFP: G>
to { 0 .. 1333331 }
Given a subgroup H of the group G, this function constructs the
permutation representation φ of G given by the action of G
on the cosets of H. It returns:
- (a)
- The homomorphism φ;
- (b)
- The image group φ(G).
- (c)
- (if possible) the kernel of φ.
The permutation representation is obtained by using the Todd-Coxeter
procedure to construct the coset table for H in G. Note that G
may be an infinite group: it is only necessary that the index of H
in G be finite.
Construct the permutation representation L of G given by the action
of G on the coset space V.
It returns the permutation representation φ (as a map) and its image.
Construct the image of G given by its action on the (right) coset
space of H in G.
Construct the image of G as defined by its action on the coset
space V.
CosetKernel(G, H) : GrpFP, GrpFP -> GrpFP
The kernel of G in its action on the (right) coset space of H in G.
(Only available when the index of H in G is very small).
This function may require the computation of a coset table. Experienced users
can control the behaviour of a possibly invoked coset enumeration with a set of
global parameters. These global parameters can be changed using the function
SetGlobalTCParameters. For a detailed description of the
available parameters and their meanings, we refer to Subsec. Interactive Coset Enumeration.
The kernel of G in its action on the (right) coset space V.
(Only available when the index of the subgroup H of G defining
the coset space is very small).
The first Conway group has a representation as the image of the group
G = <a, b, c, d, e, f, g, h | a^2, b^2, c^2, d^2, e^2, f^2, g^2, h^2,
(ab)^3, (ac)^2, (ad)^2, (ae)^4, (af)^2, (ag)^2, (ah)^3,
(bc)^5, (bd)^2, (be)^2, (bf)^2, (bg)^4, (bh)^4,
(cd)^3, (ce)^3, (cf)^4, (cg)^2, (ch)^2,
(de)^2, (df)^3, (dg)^2, (dh)^2,
(ef)^6, (eg)^2, (eh)^2,
(fg)^4, (fh)^6,
(gh)^2,
a(cf)^2 = (adfh)^3 = b(ef)^3 = (baefg)^3 = 1,
(cef)^7 = d(bh)^2 = d(aeh)^3 = e(bg)^2 = 1>
under the homomorphism defined by the action of G on the cosets of the
subgroup H = <a, b, c, d, e, f, g, (adefcefgh) 39 >.
The permutation
group can be constructed as follows:
> F<s, t, u, v, w, x, y, z> := FreeGroup(8);
> G<a, b, c, d, e, f, g, h> := quo<F | s^2, t^2, u^2, v^2, w^2, x^2, y^2, z^2,
> (s*t)^3, (s*u)^2, (s*v)^2, (s*w)^4, (s*x)^2, (s*y)^2, (s*z)^3,
> (t*u)^5, (t*v)^2, (t*w)^2, (t*x)^2, (t*y)^4, (t*z)^4,
> (u*v)^3, (u*w)^3, (u*x)^4, (u*y)^2, (u*z)^2,
> (v*w)^2, (v*x)^3, (v*y)^2, (v*z)^2,
> (w*x)^6, (w*y)^2, (w*z)^2,
> (x*y)^4, (x*z)^6,
> (y*z)^2,
> s*(u*x)^2 = (s*v*x*z)^3 = t*(w*x)^3 = (t*s*w*x*y)^3 = 1,
> (u*w*x)^7 = v*(t*z)^2 = v*(s*w*z)^3 = w*(t*y)^2 = 1>;
> H := sub< G | a, b, c, d, e, f, g, (a*d*e*f*c*e*f*g*h)^39 >;
> V := CosetSpace(G, H: FillFactor := 100000);
> Co1 := CosetImage(V);
> Degree(Co1);
98280
The group G 2(3) is a homomorph of the fp-group G defined below.
We construct a permutation representation G1 for G 2(3) on 351 points,
and then compute the subgroup generated by the images of the first four
generators of G in G1. (The functions applied to permutation groups are
described in Chapter PERMUTATION GROUPS.)
> F<a,b,c,d,y,x,w> := FreeGroup(7);
> z := y*c*a^2*b;
> u := x*d;
> t := w*c*a*d*b^2*c;
> G<a,b,c,d,y,x,w>, g :=
> quo< F | a^4, b^4, c^2, d^2, (a,b), (a*c)^2, (b*c)^2,
> (c*d)^2, d*a*d*b^-1, y^3, (a^-1*b)^y*d*a^-1*b^-1,
> (c*d*a^-1*b)^y*b^-1*a*d*c, a*d*y*d*a^-1*y, x^3,
> a^x*b^-1, b^x*a*b, c^x*c, (x*d)^2, (u*z)^6, w^3,
> (w,y), (a*b)^w*b^-1*a*d*c, (c*d*a^-1*b)^w*d*c*b^2,
> (b^2*c*d)^w*a^-1*b^-1, (c*a^2*b*w)^2,
> (a^-1*b)^w*d*a^-1*b^-1, (t*u)^3 >;
> z1 := g(z);
> u1 := g(u);
> t1 := g(t);
> H := sub< G | z1*a^2*b^2, u1*c, t1*a^2*b^2 >;
> f, G1, K := CosetAction(G, H);
> Degree(G1);
351
> print Order(G1), FactoredOrder(G1);
4245696 [ <2, 6>, <3, 6>, <7, 1>, <13, 1> ]
> CompositionFactors(G1);
G
| G(2, 3)
1
> S := sub< G1 | f(a), f(b), f(c), f(d) >;
> BSGS(S);
> S;
Permutation group S of degree 351
Order = 64 = 2^6
Thus, the images of a, b, c and d in G1 generate the Sylow 2-subgroup.
The indexed (right) coset space V of the subgroup H of the group G is
a G-set consisting of the set of integers { 1, ..., m}, where i
represents the right coset ci of H in G. The action of G on
this G-set is that induced by the natural G-action
f : V x G -> V
where
f : < ci, x > = ck iff ci * x = ck,
for ci ∈V and x ∈G.
If certain of the products ci * x are unknown, the corresponding images
under f are undefined, and V is called an incomplete coset space
for H in G.
This function attempts to construct a coset space for the subgroup H
in the group G by means of the Todd-Coxeter procedure. If the enumeration
fails to complete, the function returns an incomplete coset space. The coset
space is returned as an indexed right coset space. For a sample application
of this function see Example H80E36.
Experienced users can control the Todd-Coxeter procedure invoked by this
function with a wide range of parameters. This function accepts the same
parameters as the function CosetEnumerationProcess described
in Subsec. Interactive Coset Enumeration.
LeftCosetSpace(G, H: parameters) : GrpFP, GrpFP -> GrpFPCos
The explicit right coset space of the subgroup H of the group G
is a G-set containing the set of right cosets of H in G. The
elements of this G-set are the pairs < H, x >, where x
runs through a transversal for H in G. Similarly, the explicit left
coset space of H is a G-set containing the set of left cosets of
H in G, represented as the pairs < x, H >. These
functions use the Todd-Coxeter procedure to construct the explicit
right (left) coset space of the subgroup H of the group G.
For a sample application see Example H80E36.
Experienced users can control the Todd-Coxeter procedure invoked by these
functions with a wide range of parameters. Both functions accept the same
parameters as the function CosetEnumerationProcess described
in Subsec. Interactive Coset Enumeration.
Right coset of the subgroup H of the group G, where g is an
element of G (as an element of the right coset of H).
Coset to which the right coset C of the group G is mapped by the
(right) action of g, where g is an element of G.
Given two right cosets of the same normal subgroup H of the
group G, return the right coset that is the product of C and D.
Return true if element g of group G lies in the coset C.
Return true if element g of group G does not lie in the coset C.
Returns true if the coset C1 is equal to the coset C2.
Returns true if the coset C1 is not equal to the coset C2.
The cardinality of the coset space V.
The mapping V x G -> V giving the action of G on the
coset space V. This mapping is a coset table.
T(i, w) : Map, GrpFPCosElt, GrpFPElt -> GrpFPElt
The image of coset i as defined in the coset table T, under the action
of word w.
The element of the explicit coset space that corresponds to indexed
coset i.
The element of the indexed coset space V to which the element w of
G corresponds.
The element of the indexed coset space V to which the
explicit coset C of G corresponds.
The group G for which V is a coset space.
The subgroup H of G such that V is a coset space for G over H.
Returns true if the coset space V is complete.
ExcludedConjugates(T) : Map -> { GrpFPElt }
Given a partial or complete coset space V for the group G over the
subgroup H, or a coset table T corresponding to this coset space,
this function returns the set of words
E ={gi - 1hjgi | gi a generator of G, hj a generator of
H, and, modulo V, gi - 1hjgi does not lie in H}. If E
is empty, then H is a normal subgroup of G, while if E is
non-empty, the addition of the elements of E to the generators of H
will usually be a larger subgroup of the normal closure of H. This
function may be used with incomplete coset spaces for G over H;
it may then happen that some of the elements of E actually lie in H
but there is insufficient information for this to be detected.
This function is normally used in conjunction with the Todd-Coxeter
algorithm when seeking some subgroup having index sufficiently small
so that the Todd-Coxeter procedure completes. The conjugates are
returned as a set of words.
RightTransversal(G, H) : GrpFP, GrpFP -> {@ GrpFPElt @}, Map
Given a finitely presented group G and a subgroup H of G, this function
returns
- (a)
- A set of elements T of G forming a right transversal for G
over H; and
- (b)
- The corresponding transversal mapping φ: G -> T.
If T = [t1, ..., tr] and g ∈G, φ is defined by
φ(g) = ti, where g∈H * ti.
These functions may require the computation of a coset table. Experienced users
can control the behaviour of a possibly invoked coset enumeration with a set of
global parameters. These global parameters can be changed using the function
SetGlobalTCParameters. For a detailed description of the
available parameters and their meanings, we refer to Subsec. Interactive Coset Enumeration.
Consider the infinite dihedral group.
> G<a,b> := DihedralFPGroup(0);
We define a subgroup H of index 10 in G ...
> H := sub< G | a*b, a^10 >;
> Index(G, H);
10
... and construct a right transversal for H in G and the associate
transversal map.
> RT, transmap := Transversal(G, H);
> RT;
{@ Id(G), a, a^-1, a^2, a^-2, a^3, a^-3, a^4, a^-4, a^5 @}
> transmap;
Mapping from: GrpFP: G to SetIndx: RT
From this a left transversal is easily obtained:
> LT := {@ x^-1 : x in RT @};
> LT;
{@ Id(G), a^-1, a, a^-2, a^2, a^-3, a^3, a^-4, a^4, a^-5 @}
We construct the coset table and check whether the enumeration of the cosets
is compatible to the enumeration of the right transversal RT.
> ct := CosetTable(G, H);
> forall(culprit){ i : i in [1..Index(G, H)]
> | ct(1, RT[i]) eq i};
true
It is. Thus, we can very easily define a function
RT x G -> RT, describing the action of G on the set of
right cosets of H in G.
> action := func< r, g | RT[ct(Index(RT, r), g)] >;
Note that the definition of the function action relies on the fact that
the computed right transversal and its enumeration match the ones internally
used for the coset table ct.
> action(Id(G), b);
a
i.e. H * b = H * a.
> action(a^-4, a*b);
a^4
i.e. Ha - 4 * (ab) = Ha 4.
Consider the group G =< a, b | a8, b7, (ab)2, (a - 1b)3 > and the
subgroup H of G, generated by a2 and a - 1b.
> F<x, y> := FreeGroup(2);
> G<a, b> := quo< F | x^8, y^7, (x*y)^2, (x^-1*y)^3 >;
> H := sub< G | a^2,a^-1*b >;
We construct an indexed right coset space V and an explicit right coset
space Vr for H in G.
> V := CosetSpace(G, H);
> Vr := RightCosetSpace(G, H);
The coset H always has index 1.
> trivial_coset := ExplicitCoset(Vr, 1);
> trivial_coset;
<GrpFP: H, Id(G)>
> IndexedCoset(V, trivial_coset);
1
We now pick a coset ...
> coset := ExplicitCoset(Vr, 42);
> coset;
<GrpFP: H, a^-1 * b^-1 * a^3 * b^-1>
... multiply from the right with b ...
> coset * b;
<GrpFP: H, a^-1 * b^-1 * a^3>
... and check where this gets us in the indexed coset space V.
> IndexedCoset(V, coset * b);
23
We present a function which computes the derived subgroup
G' for the finitely presented group G. It assumes that the
Todd-Coxeter procedure can enumerate the coset space of G' in G.
> function DerSub(G)
>
> /* Initially define S to contain the commutator of each pair of distinct
> generators of G */
>
> S := { (x,y) : x, y in Generators(G) | (x,y) ne Id(G) };
>
> /* successively extend S until it is closed under conjugation by the
> generators of G */
>
> repeat
> V := CosetSpace(G, sub<G | S>);
> E := ExcludedConjugates(V);
> S := S join E;
> until # E eq 0;
> return sub<G | S>;
> end function;
Given a subgroup H of the finitely presented group G,
for which the Todd-Coxeter procedure does not complete, add excluded
conjugates one at a time to the generators of G until a subgroup K is
reached such that either K is normal in G, or K has sufficiently small
index for the Todd-Coxeter method to complete. The set hgens contains a set
of generating words for H.
> function NormClosure(G, hgens)
> xgens := hgens;
> kgens := hgens;
> indx := 0;
> while # xgens ne 0 do
> Include(~kgens, Representative(xgens));
> V := CosetSpace(G, sub<G | kgens>);
> if IsComplete(V) then break; end if;
> xgens := ExcludedConjugates(V);
> end while;
> if IsComplete(V) then
> print "The subgroup generated by", kgens, "has index", #V;
> return kgens;
> else
> print "The construction was unsuccessful";
> return { };
> end if;
> end function;
The double coset H * g * K of the subgroups H and K
of the group G, where g is an element of G.
DoubleCosets(G, H, K) : GrpFP, GrpFP, GrpFP -> { GrpFPDcosElt }
Set of double cosets H * g * K of the group G.
This function may require the computation of a coset table. Experienced users
can control the behaviour of a possibly invoked coset enumeration with a set of
global parameters. These global parameters can be changed using the function
SetGlobalTCParameters. For a detailed description of the
available parameters and their meanings, we refer to Subsec. Interactive Coset Enumeration.
Consider again the infinite dihedral group G ...
> G<a,b> := DihedralFPGroup(0);
... and the subgroup H of index 10 in G.
> H := sub< G | a*b, a^10 >;
The set of H-H double cosets in G can be obtained with the statement
> DoubleCosets(G, H, H);
{ <GrpFP: H, Id(G), GrpFP: H>, <GrpFP: H, a^5, GrpFP: H>,
<GrpFP: H, a^4, GrpFP: H>, <GrpFP: H, a^2, GrpFP: H>,
<GrpFP: H, a, GrpFP: H>, <GrpFP: H, a^3, GrpFP: H> }
CosetsSatisfying(T, S: parameters) : Map, { GrpFPElt }: -> { GrpFPCosElt }
CosetSatisfying(T, S: parameters) : Map, { GrpFPElt }: -> { GrpFPCosElt }
CosetsSatisfying(V, S: parameters) : GrpFPCos, { GrpFPElt }: -> { GrpFPCosElt }
CosetSatisfying(V, S: parameters) : GrpFPCos, { GrpFPElt }: -> { GrpFPCosElt }
Given a fp-group G, and a partial or complete coset space V or
coset table T for G
over the subgroup H generated by the set of words S, these functions
return representatives for the cosets of V which satisfy the conditions
defined in the parameters. In the description of the parameters below,
the symbol l will denote a Boolean value, while the
symbol n will denote a positive integer in the range [1, #V].
The functions are not identical. CosetsSatisfying returns a set of coset
representatives for V as defined in the parameters. CosetSatisfying
is the same as CosetsSatisfying with the Limit parameter equal
to 1; thus it returns a set containing a single coset representative, or an
empty set if no cosets satisfy the conditions.
First: RngIntElt Default: 1
Start looking for coset representatives satisfying the designated
conditions beginning with coset i of V.
Last: RngIntElt Default: #V
Stop looking for coset representatives after examining
coset j of V.
Limit: RngIntElt Default: ∞
Terminate the search for coset representatives as soon as l have
been found which satisfy the designated conditions. This parameter
is not available for CosetSatisfying, since Limit is set
to 1 for this function.
Normalizing: BoolElt Default: false
If true, select coset representatives x such that, modulo V,
the word x - 1h1x, ..., x1hsx is contained in H.
Order: RngIntElt Default: 0
Select coset representatives x such that, modulo V, the word
xn is contained in H.
Print: RngIntElt Default: 0
If t > 0, print the coset representatives found to satisfy the
designated conditions.
Consider the braid group G on 4 strings with Artin generators a, b
and c and the subgroup H of G generated by a and b.
> G<a,b,c> := BraidFPGroup(4);
> H := sub< G | a,b >;
We construct an -- obviously incomplete -- explicit right coset space for
H in G.
> V := RightCosetSpace(G, H);
Using the function CosetSatisfying, we compute an element
of G, not contained in H, which normalises H.
> cs := CosetSatisfying(V, Generators(Subgroup(V))
> : Normalizing := true, First := 2);
> cs;
{
<GrpFP: H, c * b * a^2 * b * c>
}
> rep := c * b * a^2 * b * c;
The conjugates of a and b by this element had better be in H ...
> rep^-1 * a * rep in H;
true
> rep^-1 * b * rep in H;
true
... OK.
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. Such a presentation can be
obtained either on a set of Schreier generators for H or on the given
generators of H using the Reidemeister-Schreier rewriting
technique [MKS76], if necessary together with extended coset
enumeration [AR84], [HKRR84].
We emphasise that if the user wishes only to determine the structure
of the maximal abelian quotient of H, then the function
AbelianQuotientInvariants 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
abelianises each relator as soon as it is constructed. Thus, compared to
the function Rewrite, the function AbelianQuotientInvariants
can be applied to subgroups of much larger index.
Rewrite(G, H : parameters) : GrpFP, GrpFP -> GrpFP, Map
Given a finitely presented group G and a subgroup H having finite index
in G, return a group R isomorphic to H with a presentation on (some of)
the Schreier generators of H in G. The group R will be created as a
subgroup of G and defining relations of R on its generators will be
available.
Note that the generators of R will, in general, not correspond to the
generators of H. The isomorphism from H onto R is returned
as second return value.
This function may require the computation of a coset table. Experienced users
can control the behaviour of a possibly invoked coset enumeration with a set of
global parameters. These global parameters can be changed using the function
SetGlobalTCParameters. For a detailed description of the
available parameters and their meanings, we refer to Subsec. Interactive Coset Enumeration.
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 (by setting
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.
EliminationLimit: RngIntElt Default: 100
ExpandLimit: RngIntElt Default: 150
GeneratorsLimit: RngIntElt Default: 0
LengthLimit: RngIntElt Default: ∞
SaveLimit: RngIntElt Default: 10
SearchSimultaneous: RngIntElt Default: 20
Iterations: RngIntElt Default: 10000
Print: RngIntElt Default: 0
These parameters control the simplification. See the description of
Simplify for an explanation of these parameters.
Rewrite(G, ~H : parameters) : GrpFP, GrpFP ->
Given a finitely presented group G and a subgroup H having finite index
in G, compute a defining set of relations for H on the existing generators,
using extended coset enumeration and Reidemeister-Schreier rewriting,
and change the presentation of H accordingly.
If the computation is successful, defining relations for H on its generators
will be available at the end; any previously computed relations of H will
be discarded. If the computation is unsuccessful, H is not changed. In
any case, both the isomorphism type of H and its embedding into G as a
subgroup is preserved by this function.
Simplify: BoolElt Default: true
If this parameter is given the value true (default), then an attempt
will be made to simplify the constructed set of relations by substring
searches, that is, Tietze transformations not changing any generators. The
generating set of H is not modified by this process.
Moreover, the extended coset enumeration can be controlled by a wide range
of parameters. The function Rewrite -- in addition to the parameter
Simplify -- accepts the same parameters as the function
CosetEnumerationProcess described in Subsec. Interactive Coset Enumeration.
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 - 1xy - 1xy. We present the subgroup K, compute its abelian
quotient structure and then show that the class 30 2-quotient of K
has order 2 62.
> G<x, y> := FPGroup< x, y | x^2, y^3, (x*y)^12, (x*y)^6*(x*y^-1)^6 >;
> 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 >;
> K;
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
> Index(G, K);
3
> T := Rewrite(G, K);
> T;
Finitely presented group T on 3 generators
Generators as words in group G
T.1 = x
T.2 = y * x * y^-1
T.3 = x^y
Relations
T.1^2 = Id(T)
T.2^2 = Id(T)
T.3^2 = Id(T)
(T.3 * T.2 * T.1 * T.3 * T.2)^2 = Id(T)
(T.1 * T.3 * T.2 * T.1 * T.3)^2 = Id(T)
(T.1 * T.2 * T.1 * T.3 * T.2)^2 = Id(T)
> AbelianQuotientInvariants(T);
[ 2, 2, 2 ]
> Q2 := pQuotient(T, 2, 30);
> FactoredOrder(Q2);
[ <2, 62> ]
In this example we illustrate how the function Rewrite
can be used to obtain a presentation of a finitely presented group on a
different set of generators.
We start with a presentation of L2(7) on two generators x and y.
> F<x,y> := FPGroup< x, y | x^3 = 1, y^3 = 1, (x*y)^4 = 1,
> (y*y^x)^2 = y^x*y >;
The group is also generated by the elements a = (xy) 2 and b = y.
> H<a,b> := sub<F | (x*y)^2, y >;
> Index(F,H);
1
At the moment, no defining relations of H isomorphic to F on the generators a and
b are known.
> H;
Finitely presented group H on 2 generators
Index in group F is 1
Generators as words in group F
a = (x * y)^2
b = y
We apply the function Rewrite to H as a subgroup of F
in order to compute defining relations on the generators a and b.
> Rewrite(F, ~H);
> H;
Finitely presented group H on 2 generators
Index in group F is 1
Generators as words in group F
a = (x * y)^2
b = y
Relations
a^2 = Id(H)
b^3 = Id(H)
(a * b)^7 = Id(H)
(a * b^-1 * a * b)^4 = Id(H)
(b * a * b^-1 * a * b * a)^4 = Id(H)
The last relation turns out to be redundant; a and b are standard
generators for L 2(7).
> Order(DeleteRelation(H,5)) eq Order(H);
true
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|