Large Nilpotent Subgroups of Sporadic Simple Groups
THOMAS BREUER
Lehrstuhl D für Mathematik
RWTH, 52056 Aachen, Germany
June 6th, 2009
We show that any nontrivial nilpotent subgroup U
in a sporadic simple group G satisfies |U| ·|NG(U)| < |G|.
The proof uses the information in the ATLAS of Finite Groups [CCN+85]
and the GAP system [GAP04],
in particular its Character Table Library [Bre04]
and its library of Tables of Marks.
1 The Result
The aim of this writeup is to show the following statement.
Proposition 1
Let G be a sporadic simple group,
let U be a nontrivial nilpotent subgroup in G,
and let NG(U) denote the normalizer of U in G.
Then |U| ·|NG(U)| < |G| holds.
The following criteria are sufficient to prove Proposition 1.
Note that we are interested in an argument that uses only information about
the character tables of the sporadic simple groups and of their maximal
subgroups.
Lemma 2
Let G be a nonabelian finite simple group,
and suppose that U is a nontrivial nilpotent subgroup of G such that
|U| ·|NG(U)| ≥ |G| holds.
Let Π = { p1, p2, …, pn } be the set of prime divisors
of |U|, and set n = ∏p ∈ Π p.
(a)
G contains an element g of order n and a maximal subgroup M
with the properties g ∈ Z(U) and NG(U) ≤ M.
Set c: = gcd(|CG(g)|Π, |M|),
where |CG(g)|Π denotes the largest divisor of the order of the
centralizer of g in G whose prime divisors are elements of the set
Π.
Then we have |U| ≤ c and hence c ·|M| ≥ |G|,
in particular |M|2 ≥ |G|.
(b)
If (g, M) is as in part (a) then one of the following holds.
(b1)
U is normal in M, and the Fitting subgroup Fit(M) of M
satisfies |Fit(M)| ·|M| ≥ |G|.
(b2)
U is not normal in M, so NG(U) is a proper subgroup of M,
in particular |G| ≤ |U| ·|M|/2 ≤ c ·|M| / 2 holds.
(c)
Let (g, M) be as in part (b2) and assume that M contains a normal
subgroup K such that [M]: = M/K is an almost simple group
with socle S,
i. e., [M] has a nonabelian simple normal subgroup S
such that C[M](S) is trivial.
Then either U ≤ K holds, and hence |K| ·|M| ≥ |G|,
or we are in the following situation.
The group [U]: = U K / K is a nontrivial nilpotent normal
subgroup of [N]: = NG(U) K / K,
and H: = S ∩[N] is a proper subgroup of S.
The latter statement holds because otherwise S ∩[U]
would be normal in S and thus would be trivial,
which would imply that S would centralize [U].
As a consequence, |[N]| divides
|[M]/S| ·|H| = |[M]| / [S:H],
in particular,
[S:H] ≤ |[M]| / |[N]| = |M| / |NG(U) K| ≤ |M| / |NG(U)| ≤ |M| ·|U| / |G| ≤ c / [G:M]
holds.
We will apply Lemma 2 as follows.
From the character tables of G and M,
the value |Fit(M)| and the maximal possible c can be computed.
If part (a) of the lemma applies then we verify that part (b1)
does not apply, and that either (b2) or (c) yields a contradiction.
Note that we can determine from the character table of M
whether M has a normal subgroup K such that M/K is almost simple,
and in this case we can compute the order of the socle S of M/K.
For proving the nonexistence of the subgroup H in the situation of
part (c), we will show that all subgroups of [M] of index up to
d: = c ·[[M]:S] / [G:M] contain S.
For that, we will compute the complete list of those possible permutation
characters of [M] whose degree is at most d,
and then check that the kernels of these characters contain S.
(Note that these computations are cheap because
the bound d is small in the cases that occur.
There are easier criteria for proving the nonexistence of a subgroup
of index at most d in a simple group S,
for example in the case |S| > d! / 2 or if
the smallest nontrivial irreducible degree of S is at least d;
but these criteria do not suffice in our situation.)
We illustrate the application of Lemma 2 with some examples.
- J1:
-
The first Janko group J1 (see [CCN+85,p. 36])
has order 175 560,
and the largest maximal subgroup has order 660.
The largest centralizer of a nonidentity element in J1 has order
120, and 660 ·120 = 79 200 < |J1|.
Thus J1 satisfies Proposition 1.
- 𝕄:
-
For the Monster group 𝕄 (see [CCN+85,p. 234]),
we read off from the list [Wil]
of maximal subgroups that the only maximal subgroups M of 𝕄 with the
property |M|2 ≥ |𝕄| have the structure 2.B.
Already for the second largest maximal subgroups,
with the structure 21+24.Co1, the order is smaller than the
index in the Monster.
Only elements g from the classes 2A, 2B, and 3A have the property
that the product of |2.B| and the order of the centralizer of g
in 𝕄 is not smaller than |𝕄|.
So U can be only a 2- or a 3-subgroup of 2.B.
However, the 2-part and the 3-part of |2.B| are
242 and 313, respectively, which are smaller than the index
of 2.B in 𝕄.
Thus 𝕄 satisfies Proposition 1.
- Fi23:
-
We show that no counterexample to Proposition 1 can arise
from maximal subgroups M of the type O8+(3):S3 in the Fischer
group Fi23 (see [CCN+85,p. 177]).
Several element centralizers in G satisfy Lemma 2 (a),
the largest value c arises from elements in the class 6B,
whose centralizers have order 28 ·39,
which divides |M|.
So |U| ≤ 28 ·39, and a possible counterexample to
Proposition 1 must satisfy
|NG(U)| ≥ |G| / (28 ·39) = 811 588 377 600.
We have |M| = 29 713 078 886 400, which is less than 37 times
this minimal order required for NG(U).
However, the intersection H of this group with the simple subgroup
S ≅ O8+(3) in M cannot be at most 36,
because the largest maximal subgroups in S have index 1 080
(see [CCN+85,p. 140]).
Arguing not with S but with M, we can show -using only the
character table of M- that all proper
subgroups of index less than 37 ·6 in M contain S.
2 The Proof
The following GAP function utilizes Lemma 2.
Its input are the GAP character table tbl of a group G, say,
and a list maxesinfo of character tables of maximal subgroups of G,
covering at least all those maximal subgroups M for which |M|2 ≥ |G|
holds.
The idea is to collect pairs (M, g) that satisfy part (a) of
Lemma 2,
and then to show that they do not satisfy part (b) or part (c).
For each maximal subgroup M that admits elements g as in
Lemma 2,
information is printed how this candidate is excluded.
The function returns a list of length three.
The first entry is true if the criteria of Lemma 2
are sufficient to prove that Proposition 1 is true for G,
and false otherwise.
The second entry is the name of G,
and the third entry in the number of maximal subgroups M
for which an element g as in Lemma 2 (a) exists.
gap> ApplyTheLemma:= function( tbl, maxesinfo )
> local Gname, Gsize, cents, orders, result, Mtbl, Msize, maxc, i, pi,
> pipart, c, Mclasslengths, Fit, excluded, Kclasses, Mbar, Ksize,
> Sclasses, Ssize, d;
> Gname:= Identifier( tbl );
> Gsize:= Size( tbl );
> cents:= SizesCentralizers( tbl );
> orders:= OrdersClassRepresentatives( tbl );
> result:= [ true, Gname, 0 ];
> # Run over the relevant maximal subgroups.
> for Mtbl in maxesinfo do
> Msize:= Size( Mtbl );
> # Run over nonidentity class representatives g of squarefree order,
> # compute the largest c that occurs.
> maxc:= 1;
> for i in [ 2 .. NrConjugacyClasses( tbl ) ] do
> pi:= Factors( orders[i] );
> if IsSet( pi ) then
> # The elements in class `i' have squarefree order.
> pipart:= Product( Filtered( Factors( cents[i] ),
> x -> x in pi ) );
> c:= Gcd( pipart, Msize );
> if maxc < c then
> maxc:= c;
> fi;
> fi;
> od;
> if maxc * Msize >= Gsize then
> # Criterion (a) is satisfied, try to exclude (b) and (c).
> result[3]:= result[3] + 1;
> Print( Gname, ": consider M = ", Identifier( Mtbl ),
> ", c = ", StringPP( maxc ),
> ", c * |M| / |G| >= ", Int( maxc * Msize / Gsize ), "\n" );
> Mclasslengths:= SizesConjugacyClasses( Mtbl );
> Fit:= Mclasslengths{ ClassPositionsOfFittingSubgroup( Mtbl ) };
> if Sum( Fit ) * Msize >= Gsize then
> # Criterion (b1) is satisfied.
> Print( Gname, ": not excludable by (b1)\n" );
> result[1]:= false;
> elif maxc * Msize < 2 * Gsize then
> # Criterion (b2) is not satisfied.
> Print( Gname, ": excluded by (b2)\n" );
> else
> # Run over the normal subgroups of M.
> excluded:= false;
> for Kclasses in ClassPositionsOfNormalSubgroups( Mtbl ) do
> Mbar:= Mtbl / Kclasses;
> Ksize:= Sum( Mclasslengths{ Kclasses } );
> if IsAlmostSimpleCharacterTable( Mbar ) and
> Ksize * Msize < Gsize then
> # We are in the situation of criterion (c).
> # The socle is the unique minimal normal subgroup.
> Sclasses:= ClassPositionsOfMinimalNormalSubgroups(
> Mbar )[1];
> Ssize:= Sum( SizesConjugacyClasses( Mbar ){ Sclasses } );
> d:= Int( maxc * Msize * Size( Mbar ) / ( Gsize * Ssize ) );
> # Try to show that all subgroups of index up to d in Mbar
> # contain the socle.
> if ForAll( [ 2 .. d ],
> n -> ForAll( PermChars( Mbar, rec( torso:= [ n ] ) ),
> chi -> IsSubset( ClassPositionsOfKernel( chi ),
> Sclasses ) ) ) then
> Print( Gname, ": excluded by (c), |K| = ",
> StringPP( Ksize ), ", degree bound ", d, "\n" );
> excluded:= true;
> break;
> fi;
> fi;
> od;
> if not excluded then
> Print( Gname, ": not excludable by (c)\n" );
> result[1]:= false;
> fi;
> fi;
> fi;
> od;
> return result;
> end;;
So our proof relies on the classifications of maximal subgroups of
sporadic simple groups, see [CCN+85] and [BN95].
The GAP Character Table Library [Bre04] contains
the character tables of the sporadic simple groups
and of their maximal subgroups,
except that not all character tables of maximal subgroups of
the Monster group are available yet.
(See Section 1 for the treatment of the Monster group.)
Since the GAP Character Table Library is used for the computations
in this section, we first load this package.
gap> LoadPackage( "ctbllib" );
true
Now we apply the function to the sporadic simple groups.
gap> info:= [];;
gap> for name in AllCharacterTableNames( IsSporadicSimple, true ) do
> tbl:= CharacterTable( name );
> if HasMaxes( tbl ) then
> mx:= List( Maxes( tbl ), CharacterTable );
> elif name = "M" then
> mx:= [ CharacterTable( "2.B" ) ];
> else
> Error( "this should not happen ...");
> fi;
> Add( info, ApplyTheLemma( tbl, mx ) );
> od;
B: consider M = 2.2E6(2).2, c = 2^38, c * |M| / |G| >= 20
B: excluded by (c), |K| = 2, degree bound 40
Co1: consider M = Co2, c = 2^13*3^5, c * |M| / |G| >= 20
Co1: excluded by (c), |K| = 1, degree bound 20
Co1: consider M = 3.Suz.2, c = 2^13*3^5, c * |M| / |G| >= 1
Co1: excluded by (b2)
Co2: consider M = U6(2).2, c = 2^16, c * |M| / |G| >= 28
Co2: excluded by (c), |K| = 1, degree bound 56
Co2: consider M = 2^10:m22:2, c = 2^18, c * |M| / |G| >= 5
Co2: excluded by (c), |K| = 2^10, degree bound 11
Co2: consider M = 2^1+8:s6f2, c = 2^18, c * |M| / |G| >= 4
Co2: excluded by (c), |K| = 2^9, degree bound 4
Co3: consider M = McL.2, c = 2^4*3^4, c * |M| / |G| >= 4
Co3: excluded by (c), |K| = 1, degree bound 9
F3+: consider M = Fi23, c = 2^9*3^9, c * |M| / |G| >= 32
F3+: excluded by (c), |K| = 1, degree bound 32
Fi22: consider M = 2.U6(2), c = 2^7*3^6, c * |M| / |G| >= 26
Fi22: excluded by (c), |K| = 2, degree bound 26
Fi22: consider M = O7(3), c = 2^7*3^6, c * |M| / |G| >= 6
Fi22: excluded by (c), |K| = 1, degree bound 6
Fi22: consider M = Fi22M3, c = 2^7*3^6, c * |M| / |G| >= 6
Fi22: excluded by (c), |K| = 1, degree bound 6
Fi22: consider M = O8+(2).3.2, c = 2^7*3^6, c * |M| / |G| >= 1
Fi22: excluded by (b2)
Fi23: consider M = 2.Fi22, c = 2^8*3^9, c * |M| / |G| >= 159
Fi23: excluded by (c), |K| = 2, degree bound 159
Fi23: consider M = O8+(3).3.2, c = 2^8*3^9, c * |M| / |G| >= 36
Fi23: excluded by (c), |K| = 1, degree bound 219
HS: consider M = M22, c = 2^7, c * |M| / |G| >= 1
HS: excluded by (b2)
M11: consider M = A6.2_3, c = 2^4, c * |M| / |G| >= 1
M11: excluded by (b2)
M12: consider M = M11, c = 2^4, c * |M| / |G| >= 1
M12: excluded by (b2)
M12: consider M = M12M2, c = 2^4, c * |M| / |G| >= 1
M12: excluded by (b2)
M22: consider M = L3(4), c = 2^6, c * |M| / |G| >= 2
M22: excluded by (c), |K| = 1, degree bound 2
M22: consider M = 2^4:a6, c = 2^7, c * |M| / |G| >= 1
M22: excluded by (b2)
M23: consider M = M22, c = 2^7, c * |M| / |G| >= 5
M23: excluded by (c), |K| = 1, degree bound 5
M24: consider M = M23, c = 2^7, c * |M| / |G| >= 5
M24: excluded by (c), |K| = 1, degree bound 5
M24: consider M = 2^4:a8, c = 2^10, c * |M| / |G| >= 1
M24: excluded by (b2)
McL: consider M = U4(3), c = 3^6, c * |M| / |G| >= 2
McL: excluded by (c), |K| = 1, degree bound 2
Ru: consider M = 2F4(2)'.2, c = 2^12, c * |M| / |G| >= 1
Ru: excluded by (b2)
Suz: consider M = G2(4), c = 2^12, c * |M| / |G| >= 2
Suz: excluded by (c), |K| = 1, degree bound 2
First of all, we see that Lemma 2 is sufficient
to prove Proposition 1,
since all candidates were excluded.
Moreover, we see that for ten sporadic simple groups,
no candidates had to be considered.
(No information was printed about these groups.)
gap> Filtered( info, x -> x[3] = 0 );
[ [ true, "HN", 0 ], [ true, "He", 0 ], [ true, "J1", 0 ], [ true, "J2", 0 ],
[ true, "J3", 0 ], [ true, "J4", 0 ], [ true, "Ly", 0 ], [ true, "M", 0 ],
[ true, "ON", 0 ], [ true, "Th", 0 ] ]
3 Alternative: Use GAP's Tables of Marks
We can easily inspect all conjugacy classes of subgroups of a group G
whose table of marks is contained in GAP's Library of Tables of Marks.
First we load this GAP package.
gap> LoadPackage( "tomlib" );
true
The following GAP function takes the table of marks of a group G
and returns the list of pairs [ U, NG(U) ]
where U ranges over representatives of conjugacy classes
of those nilpotent subgroups of G for which
|U| ·|NG(U)| is maximal.
gap> maximalpairs:= function( tom )
> local g, max, result, i, u, n, prod;
> g:= UnderlyingGroup( tom );
> max:= 1;
> result:= [];
> for i in [ 1 .. Length( OrdersTom( tom ) ) ] do
> u:= RepresentativeTom( tom, i );
> if not IsTrivial( u ) and IsNilpotent( u ) then
> n:= Normalizer( g, u );
> prod:= Size( u ) * Size( n );
> if max < prod then
> max:= prod;
> result:= [ [ u, n ] ];
> elif max = prod then
> Add( result, [ u, n ] );
> fi;
> fi;
> od;
> return result;
> end;;
So let us collect the data for those sporadic simple groups
for which the table of marks is known.
gap> info:= [];;
gap> for name in AllCharacterTableNames( IsSporadicSimple, true ) do
> tom:= TableOfMarks( name );
> if tom <> fail then
> Add( info, [ name, tom, maximalpairs( tom ) ] );
> fi;
> od;
gap> Length( info );
12
We got results for twelve sporadic simple groups.
The following computations show that in ten cases,
the simple group G contains a unique class of nontrivial nilpotent
subgroups U
for which the maximal value of |U| ·|NG(U)| is attained.
The ratio of this value and |G| is less than 21%.
The following table shows the name of the group G,
the orders of U and NG(U), and the integral part of 106 times
the ratio.
gap> List( info, x -> Length( x[3] ) );
[ 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1 ]
gap> mat:= [];;
gap> for entry in info do
> pair:= entry[3][1]; # [ U, N_G(U) ]
> bound:= Size( pair[1] ) * Size( pair[2] ); # |U|*|N_G(U)|
> size:= Size( UnderlyingGroup( entry[2] ) ); # |G|
> Add( mat, [ entry[1],
> StringPP( Size( pair[1] ) ), StringPP( Size( pair[2] ) ),
> Int( 10^6 * bound / size ) ] );
> if Size( pair[1] ) * Size( pair[2] ) > 20/100 * size then Error("!"); fi;
> od;
gap> PrintArray( mat );
[ [ Co3, 3^5, 2^5*3^7*5*11, 1886 ],
[ HS, 2^6, 2^9*3*7, 15515 ],
[ He, 2^6, 2^10*3^3*5, 2195 ],
[ J1, 19, 2*3*19, 12337 ],
[ J2, 2^6, 2^7*3^2, 121904 ],
[ J3, 3^5, 2^3*3^5, 9404 ],
[ M11, 3^2, 2^4*3^2, 163636 ],
[ M12, 2^5, 2^6*3, 64646 ],
[ M22, 2^4, 2^7*3^2*5, 207792 ],
[ M23, 2^4, 2^7*3^2*5*7, 63241 ],
[ M24, 2^6, 2^10*3^3*5, 36137 ],
[ McL, 3^5, 2^4*3^6*5, 15779 ] ]
Moreover, we see that in most cases, the group U for which the
maximum is attained is not the largest p-subgroup in the
simple group in question.
References
- [BN95]
-
T. Breuer and S. P. Norton, Improvements to the Atlas, London
Mathematical Society Monographs. New Series, vol. 11, p. 297-327,
The Clarendon Press Oxford University Press, New York, 1995, Appendix 2 by T.
Breuer and S. Norton, Oxford Science Publications. MR1367961 (96k:20016)
- [Bre04]
-
T. Breuer, The GAP Character Table Library, Version
1.1.3, http://www.math.rwth-aachen.de/
~Thomas.Breuer/
ctbllib, Mar 2004, GAP package.
- [CCN+85]
-
J. H. Conway, R. T. Curtis, S. P. Norton, R. A. Parker, and R. A. Wilson,
Atlas of finite groups, Oxford University Press, Eynsham, 1985,
Maximal subgroups and ordinary characters for simple groups, With
computational assistance from J. G. Thackray. MR827219 (88g:20025)
- [GAP04]
-
The GAP Group, GAP-Groups, Algorithms, and
Programming, Version 4.4, 2004, http://www.gap-system.org.
- [Wil]
-
R. A. Wilson, ATLAS: Monster group M, http://brauer.maths.qmul.ac.uk/
Atlas/v3/
spor/M.
File translated from
TEX
by
TTH,
version 3.59.
On 12 Jun 2009, 11:05.