Properties of a Rewrite Group#

IsConfluent(G): GrpRWS -> BoolElt#

Returns true if \(G\) is confluent, false otherwise.

IsFinite(G): GrpRWS -> BoolElt, RngIntElt#

Given a confluent group \(G\) return true if \(G\) has finite order and false otherwise. If \(G\) does have finite order also return the order of \(G\).

Order(G): GrpRWS -> RngIntElt#
# G: GrpRWS -> RngIntElt#

The order of the group \(G\) as an integer. If the order of \(G\) is known to be infinite, the symbol \(\infty\) is returned.

Example: Is Confluent (ex-40c60a)#

We construct the Weyl group \(E_8\).

> FG<a,b,c,d,e,f,g,h> := FreeGroup(8);
> Q := quo< FG | a^2=1, b^2=1, c^2=1, d^2=1, e^2=1, f^2=1, g^2=1,
>     h^2=1, b*a*b=a*b*a, c*a=a*c, d*a=a*d, e*a=a*e, f*a=a*f,
>     g*a=a*g, h*a=a*h, c*b*c=b*c*b, d*b=b*d, e*b=b*e, f*b=b*f,
>     g*b=b*g, h*b=b*h, d*c*d=c*d*c, e*c*e=c*e*c, f*c=c*f,
>     g*c=c*g, h*c=c*h, e*d=d*e, f*d=d*f, g*d=d*g, h*d=d*h,
>     f*e*f=e*f*e, g*e=e*g, h*e=e*h, g*f*g=f*g*f, h*f=f*h,
>     h*g*h=g*h*g>;
> G := RWSGroup(Q);
> IsConfluent(G);
true
> IsFinite(G);
true 696729600

Run in calculator

So the group is finite of order \(696,729,600\).

Example: Order (ex-174016)#

We construct a \(2\)-generator \(2\)-relator group and use the order function to show that the group is infinite. The symbol Infinity, returned by Order, indicates that the group has infinite order.

> G := Group< x, y | x^2 = y^2, x*y*x = y*x*y >;
> R := RWSGroup(G);
> print Order(G);
Infinity

Run in calculator