Just in case -- if anyone is interested in an iterator which runs through the
orders of nonabelian finite simple groups without actually constructing the
groups and which is not limited to |G| < 10^18, then please let me know! --
Stefan
P.S.: Sample use cases are e.g.:
gap> iter := SimpleGroupsSizesIterator(1,10^20:names);
<iterator of orders of simple groups>
gap> L := [];;
gap> for G in iter do Add(L,G); od; time;
45524
gap> Length(L);
403874
gap> L{[1..20]};
[ [ 60, 1, [ 5 ], "A5" ], [ 168, 2, [ 2, 2 ], "PSL(3,2)" ],
[ 360, 1, [ 6 ], "A6" ], [ 504, 2, [ 1, 8 ], "PSL(2,8)" ],
[ 660, 2, [ 1, 11 ], "PSL(2,11)" ], [ 1092, 2, [ 1, 13 ], "PSL(2,13)" ],
[ 2448, 2, [ 1, 17 ], "PSL(2,17)" ], [ 2520, 1, [ 7 ], "A7" ],
[ 3420, 2, [ 1, 19 ], "PSL(2,19)" ], [ 4080, 2, [ 1, 16 ], "PSL(2,16)" ],
[ 5616, 2, [ 2, 3 ], "PSL(3,3)" ], [ 6048, 3, [ 2, 3 ], "PSU(3,3)" ],
[ 6072, 2, [ 1, 23 ], "PSL(2,23)" ], [ 7800, 2, [ 1, 25 ], "PSL(2,25)" ],
[ 7920, 18, [ 1 ], "M11" ], [ 9828, 2, [ 1, 27 ], "PSL(2,27)" ],
[ 12180, 2, [ 1, 29 ], "PSL(2,29)" ], [ 14880, 2, [ 1, 31 ], "PSL(2,31)" ],
[ 20160, 1, [ 8 ], "A8" ], [ 20160, 2, [ 2, 4 ], "PSL(3,4)" ] ]
gap> Filtered(L,l->l[2]=18); # sporadics
[ [ 7920, 18, [ 1 ], "M11" ], [ 95040, 18, [ 2 ], "M12" ],
[ 175560, 18, [ 3 ], "J_1" ], [ 443520, 18, [ 4 ], "M22" ],
[ 604800, 18, [ 5 ], "J_2" ], [ 10200960, 18, [ 6 ], "M23" ],
[ 17971200, 18, [ 7 ], "2F(4,2)'" ], [ 44352000, 18, [ 8 ], "HS" ],
[ 50232960, 18, [ 9 ], "J_3" ], [ 244823040, 18, [ 10 ], "M24" ],
[ 898128000, 18, [ 11 ], "McL" ], [ 4030387200, 18, [ 12 ], "He" ],
[ 145926144000, 18, [ 13 ], "Ru" ], [ 448345497600, 18, [ 14 ], "Suz" ],
[ 460815505920, 18, [ 15 ], "ON" ], [ 495766656000, 18, [ 16 ], "Co_3" ],
[ 42305421312000, 18, [ 17 ], "Co_2" ],
[ 64561751654400, 18, [ 18 ], "Fi22" ],
[ 273030912000000, 18, [ 19 ], "HN" ],
[ 51765179004000000, 18, [ 20 ], "Ly" ],
[ 90745943887872000, 18, [ 21 ], "Th" ],
[ 4089470473293004800, 18, [ 22 ], "Fi23" ],
[ 4157776806543360000, 18, [ 23 ], "Co_1" ],
[ 86775571046077562880, 18, [ 24 ], "J_4" ] ]
gap> Filtered([1..Length(L)],i->L[i][2]=18); # positions of sporadics in the
list
[ 15, 31, 36, 46, 50, 98, 111, 138, 143, 203, 269, 388, 976, 1325, 1334,
1364, 4771, 5396, 8240, 39569, 46944, 150537, 151306, 386553 ]
gap> iter :=
SimpleGroupsSizesIterator(1,Size(CharacterTable("M")):names,nopsl2);
<iterator of orders of simple groups>
gap> L := [];;
gap> for G in iter do Add(L,G); od; time;
144912
gap> Length(L);
837104
gap> L{[1..20]};
[ [ 60, 1, [ 5 ], "A5" ], [ 168, 2, [ 2, 2 ], "PSL(3,2)" ],
[ 360, 1, [ 6 ], "A6" ], [ 2520, 1, [ 7 ], "A7" ],
[ 5616, 2, [ 2, 3 ], "PSL(3,3)" ], [ 6048, 3, [ 2, 3 ], "PSU(3,3)" ],
[ 7920, 18, [ 1 ], "M11" ], [ 20160, 1, [ 8 ], "A8" ],
[ 20160, 2, [ 2, 4 ], "PSL(3,4)" ], [ 25920, 3, [ 3, 2 ], "PSU(4,2)" ],
[ 29120, 5, [ 8 ], "Sz(8)" ], [ 62400, 3, [ 2, 4 ], "PSU(3,4)" ],
[ 95040, 18, [ 2 ], "M12" ], [ 126000, 3, [ 2, 5 ], "PSU(3,5)" ],
[ 175560, 18, [ 3 ], "J_1" ], [ 181440, 1, [ 9 ], "A9" ],
[ 372000, 2, [ 2, 5 ], "PSL(3,5)" ], [ 443520, 18, [ 4 ], "M22" ],
[ 604800, 18, [ 5 ], "J_2" ], [ 979200, 4, [ 2, 4 ], "O(5,4)" ] ]
gap> L[Length(L)];
[ 808017424794512875886459904961710757005754368000000000, 18, [ 27 ], "M" ]
________________________________
From: Hulpke,Alexander <[email protected]>
Sent: Thursday, December 19, 2019 12:21 AM
To: GAP <[email protected]>
Cc: GAP Forum <[email protected]>
Subject: Re: [GAP Forum] list simple groups, again
Dear Forum, Dear Keith,
> Is there something wrong with my installation?
No. Both issues are in the released code.
You encounter two different issues where particular cases have not yet been
implemented. As they occur only for comparatively large groups I felt the
functionality for simple groups was valuable as-is without having to wait for
these cases to be sorted out. Both have to do with triality automorphisms, and
would be somewhat fiddly to get right.
(If anyone has code or ready descriptions for these cases, I would be happy to
include it for future releases.)
> GRP[208]:=[208,65784756654489600,"O",[9,3]]
> Error, mixed triality not yet done at
> /home/dennis/GAP4.10.1/gap-4.10.1/grp/simple.gi:859 called from
> EFactors( Gcd( 2, (par[2] - 1) ) ^ 2, expo, 6 ) at
> /home/dennis/GAP4.10.1/gap-4.10.1/grp/simple.gi:1047 called from
> DataAboutSimpleGroup( id ) at
DataAboutSimpleGroups calculates (beyond what
IsomorphismTypeInfoFiniteSimpleGroup does) — among other things — the structure
of the outer automorphism group.
For type D4 this involves also the triality automorphism, and the current code
does not yet consider its interaction with field automorphisms — thus the error
message.
> GRP[211]:=[211,67671071404425216,"U",[3,127]]
> Error, Can't do yet at
> /home/dennis/GAP4.10.1/gap-4.10.1/grp/simple.gi:577 called from
> CallFuncList( SimpleGroup, b ) at
This would be the Chevalley group of type 3D4(4). The simple groups code does
not construct groups as Chevalley groups, but as classical groups of from
existing libraries. I am not aware of an existing library that contains a
representation of 3D4(4).
(The same holds for any larger fields and certain other large exceptional
groups).
Regards,
Alexander Hulpke
> /home/dennis/GAP4.10.1/gap-4.10.1/grp/simple.gi:696 called from
> 0 = cnt mod len at SimpleGroupList.gap:83 called from
> <function "ListSimpleShortNoL2">( <arguments> )
> called from read-eval loop at *stdin*:5
> you can 'quit;' to quit to outer loop, or
> you can 'return;' to continue
> brk> return;
> Error, Variable: 'g' must have an assigned value in
> if s <> fail and not HasName( g ) then
> SetName( g, s );
> fi; at /home/dennis/GAP4.10.1/gap-4.10.1/grp/simple.gi:629 called from
> CallFuncList( SimpleGroup, b ) at
> /home/dennis/GAP4.10.1/gap-4.10.1/grp/simple.gi:696 called from
> 0 = cnt mod len at SimpleGroupList.gap:83 called from
> <function "ListSimpleShortNoL2">( <arguments> )
> called from read-eval loop at *stdin*:5
> you can 'return;' after assigning a value
> brk>
>
>
>
>
>
> Ok, I tried the NOSL2 option, and ran into another problem.
>
>
> Keith
>
>
>
> _______________________________________________
> Forum mailing list
> [email protected]
> https://mail.gap-system.org/mailman/listinfo/forum
_______________________________________________
Forum mailing list
[email protected]
https://mail.gap-system.org/mailman/listinfo/forum
_______________________________________________
Forum mailing list
[email protected]
https://mail.gap-system.org/mailman/listinfo/forum