
Calling Sequence


SearchTransitiveGroups( spec, formopt )


Parameters


spec



expression sequence of search parameters

outopt



(optional) an option of the form output = X, where X is one of "list" (the default), "iterator", or "count"

formopt



(optional) an option of the form form = X, where X is one of "id" (the default), or "permgroup"





Description


•

The SearchTransitiveGroups( spec ) command searches Maple's transitive groups database for groups satisfying properties specified in a sequence spec of search parameters. This allows you to locate examples of transitive permutation groups that have specific, supported properties, or combinations of those properties.

•

The output option controls the type of output produced by the SearchTransitiveGroups command, while the form option controls (depending upon the form selected) what form the content of that output has.

•

Use the output = X option, for which the default is the string "list", to control what the SearchTransitiveGroups command produces. By default (with output = "list"), a sequence of either identifiers or permutation groups is returned. Specifying output = "iterator" causes SearchTransitiveGroups to instead return an iterator object which produces either identifiers or permutation groups as you iterate over the object. The output = "count" option instructs the SearchTransitiveGroups command to return just the number of groups in the database that satisfy the search query indicated by spec. In this case, the form option has no effect, as the "form" of the output is necessarily just a nonnegative integer.

•

Use the form = X option to control the form of the output from this command when the output is either a sequence or an iterator object. By default, an expression sequence of IDs for the TransitiveGroups database is returned. This is the same as specifying form = "id". To have an expression sequence of permutation groups, use the form = "permgroup" option.

•

Note that the IDs returned in the default case are the IDs of the groups within the TransitiveGroups database. These may differ from the IDs for the same group if it happens to be present in another database, which has its own set of group IDs. In particular, the first member of the TransitiveGroups database ID is the degree of the group, not its order.

•

So, for example, the symmetric group of degree $3$ appears in the database of transitive groups with ID equal to (3, 2), but appears also in the database of small groups with ID equal to (6, 1).

•

The valid search parameters may be grouped into several classes, as follows.


Boolean Search Parameters


•

Boolean search parameters p, such as regular, can be specified in one of the forms p = true, p = false or just p, which is equivalent to p = true. If the boolean search parameter p is true, then only groups satisfying the corresponding predicate are returned. If the boolean search parameter p is false, then only groups that do not satisfy the predicate are returned. Leaving a boolean search parameter unspecified causes the SearchTransitiveGroups command to return groups that do, and do not, satisfy the corresponding predicate.

•

Several boolean search parameters are currently supported, and are described in the following table.

primitive

describes the class of primitive groups

regular

describes the class of regular groups

frobenius

describes the class of Frobenius permutation groups

cyclic

describes the class of cyclic groups

abelian

describes the class of Abelian groups

nilpotent

describes the class of nilpotent groups

soluble

describes the class of soluble groups

perfect

describes the class of perfect groups

simple

describes the class of simple groups

quasisimple

describes the class of quasisimple groups

almostsimple

describes the class of almostsimple groups



•

Some properties, such as primitive and frobenius describe permutation group properties, that is, properties of the action of the group. Others, such as simple and nilpotent, described abstract group theoretic properties independent of how the group acts.



Numeric Search Parameters


•

Maple supports search parameters that describe numeric invariants of transitive groups. Each has a positive integer value. A numeric search parameter p may be given in the form p = n, for some specific value n, or by indicating a range, as in p = a .. b. In the former case, only groups for which the numeric parameter has the value n will be returned. In the case in which a range is specified, groups for which the numeric invariant lies within the indicate range (inclusive of its endpoints) are returned. You can also use inequalities of the form p < n (or p > n) and p <= n (or p >= n), and these can be freely mixed. Thus, for example, specifying both p >= a and p <= b is equivalent to using a range in the form p = a .. b.

•

The supported numeric search parameters are listed in the following table.

degree

indicates the degree of the group

order

indicates the order (cardinality) of the group

rank

indicates the rank (as a permutation group) of the group

transitivity

indicates the transitivity of the group



•

Since the permutation groups in the database of transitive groups all act on an initial segment of the positive integers, the degree property is equivalent to the support length and also the maximum of the support of the group. See Degree, MaxSupport and SupportLength.



Subgroup Search Parameters


•

Several subgroup search parameters are supported. These describe the isomorphism type of various subgroups of a transitive group by specifying the Small Group ID (as returned by the IdentifySmallGroup command). (A subgroup of a transitive group need not be transitive.)

•

For a subgroup search parameter p, passing an equation of the form p = [ord, id] causes the SearchTransitiveGroups command to return only groups whose subgroup corresponding to p are isomorphic to the small group ord/id to be returned. Passing an equation of the form p = ord causes the SearchTransitiveGroups command to return only groups whose subgroup corresponding to p have order ord.

•

The subgroup search parameters are described briefly in the following table.

center

specifies the center of a group

centre

specifies the centre of a group

socle

specifies the socle of a group

solubleradical

specifies the soluble radical of a group

fittingsubgroup

specifies the Fitting subgroup of a group






Examples


>

$\mathrm{with}\left(\mathrm{GroupTheory}\right)\:$

Count the total number of groups in the database.
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{output}\'\=''count''\right)$

Find the doublytransitive groups of degree 6
>

$\mathrm{id}\u2254\mathrm{SearchTransitiveGroups}\left(\'\mathrm{degree}\'\=6\,\'\mathrm{transitivity}\'\=2\right)$

${\mathrm{id}}{\u2254}\left[{6}{\,}{12}\right]$
 (2) 
>

$G\u2254\mathrm{TransitiveGroup}\left(\mathrm{op}\left(\mathrm{id}\right)\right)$

${G}{\u2254}\u27e8\left({1}{\,}{2}{\,}{3}{\,}{4}{\,}{6}\right){\,}\left({1}{\,}{4}\right)\left({5}{\,}{6}\right)\u27e9$
 (3) 
>

$\mathrm{Degree}\left(G\right)$

Which transitive groups in the database have order 24 and are multiply transitive?
>

$\mathrm{id}\u2254\mathrm{SearchTransitiveGroups}\left(\'\mathrm{order}\'\=24\,1<\'\mathrm{transitivity}\'\right)$

${\mathrm{id}}{\u2254}\left[{4}{\,}{5}\right]$
 (5) 
>

$\mathrm{Transitivity}\left(\mathrm{TransitiveGroup}\left(\mathrm{op}\left(\mathrm{id}\right)\right)\right)$

Find the regular permutation groups of degree 6.
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{degree}\'\=6\,\'\mathrm{regular}\'\,\'\mathrm{form}\'\=''permgroup''\right)$

$\u27e8\left({1}{\,}{6}{\,}{5}{\,}{4}{\,}{3}{\,}{2}\right)\u27e9{,}\u27e8\left({1}{\,}{3}{\,}{5}\right)\left({2}{\,}{4}{\,}{6}\right){\,}\left({1}{\,}{4}\right)\left({2}{\,}{3}\right)\left({5}{\,}{6}\right)\u27e9$
 (7) 
Which transitive groups in the database are quasisimple, but not simple?
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{quasisimple}\'\,\'\mathrm{simple}\'\=\mathrm{false}\right)$

$\left[{16}{\,}{715}\right]{,}\left[{18}{\,}{262}\right]{,}\left[{24}{\,}{201}\right]{,}\left[{24}{\,}{2947}\right]{,}\left[{24}{\,}{18440}\right]$
 (8) 
How many primitive groups are in the transitive groups database?
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{primitive}\'\,\'\mathrm{output}\'\=''count''\right)$

Note that there are two ways to count the transitive groups of a given degree.
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{degree}\'\=24\,\'\mathrm{output}\'\=''count''\right)\=\mathrm{NumTransitiveGroups}\left(24\right)$

Find the IDs of the semiprimitive groups whose Fitting subgroup has order equal to $8$.
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{semiprimitive}\'\,\'\mathrm{fittingsubgroup}\'\=8\right)$

$\left[{8}{\,}{12}\right]{,}\left[{8}{\,}{23}\right]{,}\left[{8}{\,}{25}\right]{,}\left[{8}{\,}{36}\right]{,}\left[{8}{\,}{48}\right]{,}\left[{24}{\,}{7}\right]{,}\left[{24}{\,}{9}\right]{,}\left[{24}{\,}{22}\right]$
 (11) 
Which transitive groups have centre cyclic of order $8$.
>

$\mathrm{SearchTransitiveGroups}\left(\'\mathrm{centre}\'\=\left[8\,1\right]\right)$

$\left[{8}{\,}{1}\right]{,}\left[{16}{\,}{16}\right]{,}\left[{16}{\,}{22}\right]{,}\left[{16}{\,}{114}\right]{,}\left[{16}{\,}{124}\right]{,}\left[{16}{\,}{289}\right]{,}\left[{24}{\,}{32}\right]{,}\left[{24}{\,}{85}\right]{,}\left[{24}{\,}{322}\right]{,}\left[{24}{\,}{936}\right]{,}\left[{24}{\,}{1992}\right]{,}\left[{24}{\,}{4206}\right]{,}\left[{24}{\,}{7020}\right]$
 (12) 


Compatibility


•

The GroupTheory[SearchTransitiveGroups] command was introduced in Maple 2015.

•

The GroupTheory[SearchTransitiveGroups] command was updated in Maple 2019.



