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

Basic Operations

Subsections

Accessing Group Information

The functions in this group provide access to basic information stored for a automatic group G.

G . i : GrpAtc, RngIntElt -> GrpAtcElt
The i-th defining generator for G.
Generators(G) : GrpAtc -> [GrpAtcElt]
A sequence containing the defining generators for G.

NumberOfGenerators(G) : GrpAtc -> RngIntElt
Ngens(G) : GrpAtc -> RngIntElt
The number of defining generators for G.
Relations(G) : GrpAtc -> [GrpFPRel]
A sequence containing the defining relations for G. The relations will be given between elements of the free group of which G is a quotient. In these relations the (image of the) left hand side (in G) will always be greater than the (image of the) right hand side (in G) in the ordering on words used to construct G.
NumberOfRelations(G) : GrpAtc -> RngIntElt
Nrels(G) : GrpAtc -> RngIntElt
The number of relations in G.
Ordering(G) : GrpAtc -> String
The ordering of G.
Parent(w) : GrpAtcElt -> GrpAtc
The parent group G for the word w.

Example GrpAtc_BasicAccess (H31E4)

We illustrate the access operations using the Von Dyck (2,3,5) group (isomorphic to A_5).

> F<a,b> := FreeGroup(2);
> Q := quo< F | a*a=1, b*b=b^-1, a*b^-1*a*b^-1*a=b*a*b*a*b>;
> G<a,b> := AutomaticGroup(Q);
> G;
A confluent automatic group.
Generator Ordering = [ a, a^-1, b, b^-1 ]
The first word difference machine has 33 states.
The second word difference machine has 33 states.
The word acceptor has 28 states.
The word multiplier has 101 states.
> print G.1*G.2;
a * b
> print Generators(G);
[ a, b ]
> print Ngens(G);
2
> print Relations(G);
[ b * b^-1 = Id(F), b^-1 * b = Id(F), a^2 = Id(F), b^2 = b^-1, b * a * b * a * b
= a * b^-1 * a * b^-1 * a, a^-1 = a, b^-2 = b, b^-1 * a * b^-1 * a * b^-1 = a * 
b * a * b * a, a * b^-1 * a * b^-1 * a * b = b * a * b * a * b^-1, b * a * b^-1 
* a * b^-1 * a = b^-1 * a * b * a * b, a * b * a * b * a * b^-1 = b^-1 * a * 
b^-1 * a * b, b^-1 * a * b * a * b * a = b * a * b^-1 * a * b^-1, b * a * b * a 
* b^-1 * a * b * a = a * b^-1 * a * b * a * b^-1 * a * b^-1, b^-1 * a * b^-1 * a
* b * a * b^-1 * a = a * b * a * b^-1 * a * b * a * b, b^-1 * a * b * a * b^-1 *
a * b * a * b^-1 = b * a * b^-1 * a * b * a * b^-1 * a * b, b * a * b^-1 * a * b
* a * b^-1 * a * b^-1 = (b^-1 * a * b * a)^2, b^-1 * a * b * a * b^-1 * a * b * 
a * b = (b * a * b^-1 * a)^2, b * a * b^-1 * a * b * a * b^-1 * a * b * a = a * 
b * a * b^-1 * a * b * a * b^-1 * a * b ]
> print Nrels(G);
18
> print Ordering(G);
ShortLex

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