retrieve a group from the database of Frobenius groups
return the number of Frobenius groups of a given order
return the database ID of a Frobenius group isomorphic to a given Frobenius group
retrieve all Frobenius groups of a given order
FrobeniusGroup( n, d )
FrobeniusGroup( [ n, d ] )
NumFrobeniusGroups( n )
IdentifyFrobeniusGroup( G, opts )
AllFrobeniusGroups( n, outopt )
a positive integer
a Frobenius group isomorphic to one in the database
option of the form 'assign' = name
option of the form 'output' = "list" (the default) or 'output' = "iterator"
The IdentifyFrobeniusGroup command takes an option of the form 'assign' = iso, where iso is an unassigned name.
The AllFrobeniusGroups command takes an option of the form 'output' = "list" or "iterator".
The Frobenius groups database contains all the Frobenius groups of order less than or equal to 15000, with certain exceptions, namely, those orders for which the Frobenius kernel has order divisible by 1024. The groups are sorted by their orders and they are listed up to isomorphism; that is, for each of the available orders, a complete and irredundant list of isomorphism type representatives of groups is given. These groups are available as permutation groups, and their Frobenius kernels and Frobenius complements are pre-computed.
The exceptional orders n for which Frobenius groups of order n have not yet been fully computed, and are therefore not complete in the database are: 3072 and 12288. For these orders, only those Frobenius groups for which the Frobenius kernel is Abelian are included in the database.
The FrobeniusGroup( n, d ) command returns the d-th Frobenius group of order n in the Frobenius groups database. The value of n must be at most 15000 and not among those exceptions listed above. The value of d must be less than or equal to the number of Frobenius groups of order n. The syntax FrobeniusGroup( [ n, d ] ) is also accepted.
The NumFrobeniusGroups( n ) command returns the number of Frobenius groups of order n, where n is an integer for which the Frobenius groups of order n are known to Maple. A value of 0 is returned if it is known that there are no Frobenius groups of order n. If the Frobenius groups of order n are known, then a positive integral value is returned. Otherwise, an exception is raised.
The IdentifyFrobeniusGroup( G ) command attempts to locate an isomorphic copy of the given Frobenius group G in the database of Frobenius groups. If G is isomorphic to the d-th Frobenius group of order n in the database, then the pair (n, d) is returned. If G is not a Frobenius group, or if the Frobenius groups of the same order as the order of G are not known (in the database), then an exception is raised.
An option of the form 'assign' = iso causes IdentifyFrobeniusGroup to compute an isomorphism from the input Frobenius group to the Frobenius group in the database. If an exception occurs in the presence of this option, then the name iso is not assigned a value.
The algorithm used by IdentifyFrobeniusGroup involves producing a hash value for the group based on evaluating a translate of the order class polynomial of the group at a particular point modulo a suitable prime number. This turns out to be a perfect hash for the Frobenius groups database, so no additional isomorphism tests are required to identify the group. (The specific prime and evaluation point are subject to change, and therefore are not documented.) For this reason, the use of the assign option can add considerably to the cost of identifying groups of larger order, as it requires an additional, explicit isomorphism computation.
By default the AllFrobeniusGroups( n ) command returns a list of all the Frobenius groups of order n, where n is a positive integer for which the Frobenius groups of order n are known. You can use the 'output' = "iterator" option to cause AllFrobeniusGroups to return an iterator object instead.
G1 ≔ FrobeniusGroup⁡72,1
G1≔ < a permutation group on 9 letters with 5 generators >
H1 ≔ FrobeniusComplement⁡G1
G2 ≔ FrobeniusGroup⁡72,2
G2≔ < a permutation group on 9 letters with 5 generators >
In this case, the given dihedral group is a Frobenius group, but is larger than the groups in the database.
Error, (in GroupTheory:-NumFrobeniusGroups) data for Frobenius groups of order 118098 not available
Cyclic groups are not Frobenius groups, so a different exception is raised in this example.
Error, (in GroupTheory:-IdentifyFrobeniusGroup) group is not a Frobenius group
L ≔ AllFrobeniusGroups⁡100
L≔ < a permutation group on 25 letters with 4 generators > , < a permutation group on 25 letters with 4 generators > , < a permutation group on 25 letters with 4 generators >
cycomp ≔ Array⁡:
it ≔ AllFrobeniusGroups⁡15000,'output'=iterator
it≔⟨Frobenius Groups Iterator: 15000/1 .. 15000/12⟩
forid,GinitdoifIsCyclic⁡FrobeniusComplement⁡Gthen`,=`⁡cycomp,idend ifend do:
G ≔ DihedralGroup⁡333:
Use the assign option to request that an explicit isomorphism be computed.
id ≔ IdentifyFrobeniusGroup⁡DihedralGroup⁡333,'assign'='η'
Construct the Frobenius group directly from the database.
F1 ≔ FrobeniusGroup⁡id:
Construct a group as the image of the computed isomorphism eta.
F2 ≔ Image⁡η
Check that F1 and F2 are, in fact, the same group.
The smallest insoluble (in fact, perfect) Frobenius group has order 14520.
id ≔ SearchFrobeniusGroups⁡'soluble'=false
G ≔ FrobeniusGroup⁡id
G≔ < a permutation group on 121 letters with 5 generators >
In fact, G is a perfect group.
All perfect Frobenius groups have the same Frobenius complement up to isomorphism.
(Note that there are additional (much larger) Frobenius groups in the database of perfect groups that are not present in the Frobenius groups database.)
The GroupTheory[FrobeniusGroup], GroupTheory[NumFrobeniusGroups], GroupTheory[IdentifyFrobeniusGroup] and GroupTheory[AllFrobeniusGroups] commands were introduced in Maple 2019.
For more information on Maple 2019 changes, see Updates in Maple 2019.
Download Help Document