Given a group G and a subgroup H of G of finite index, return the factored index of H in G
The factored order of the finite group G.
The index of the subgroup H in the group G, returned as an ordinary integer.
The order of the group G, returned as an ordinary integer.
Given an element g and a group G, return true if g is an element of G, false otherwise.
Given an element g and a group G, return true if g is not an element of G, false otherwise.
Given a group G and a set S of elements belonging to a group H, where G and H have some covering group, return true if S is a subset of G, false otherwise.
Given a group G and a set S of elements belonging to a group H, where G and H have some covering group, return true if S is not a subset of G, false otherwise.
Given groups G and H, having some covering group, return true if H is a subgroup of G, false otherwise.
Given groups G and H, having some covering group, return true if H is not a subgroup of G, false otherwise.
Given groups G and H, having some covering group, return true if G and H are the same group, false otherwise.
Given groups G and H, having some covering group, return true if G and H are distinct groups, false otherwise.
A representative element of G.
Slots: RngIntElt Default: 10
Scramble: RngIntElt Default: 100
Create a process to generate pseudo-randomly chosen elements from the group G. The process uses an `expansion' procedure to construct a set of elements corresponding to fairly long words in the generators of G [CLGM+95]. At all times, N elements forming a generating set for G are stored. Here, N is the maximum of n + 1 and the specified value for Slots, where n is the number of generators of G. Initially, these are just the generators of G and products of pairs of generators of G. Random elements are now produced by successive calls to Random(P), where P is the process created by this function. Each such call chooses an element previously stored by the process as the new random element. The process then replaces this stored element with the product of this element and another one of the stored elements (on the left or the right). Setting Scramble:= m causes m such operations to be performed before the process is returned.Care should be taken when trying to apply this function to infinite polycyclic groups. Firstly, the computations may take a considerable amount of time and secondly, the quality of the pseudo-random element generator may be extremely poor, depending on the required properties of the sequence of pseudo-random elements.
Given a random element process P created by the function RandomProcess(G) for the group G, construct a pseudo-random element of G by forming a random product over the expanded generating set currently stored by the process. The remarks concerning random elements of infinite polycyclic groups given in the description of RandomProcess apply here.
An element, pseudo-randomly chosen, from the group G. An exponent vector in normal form is chosen at random. Exponents of polycyclic generators for which there is no power relation, are chosen to have absolute value less or equal to max. A default value for max is 10.It should be kept in mind that the distribution of the elements returned by Random is uniform only in the case that G is finite.