Dear Stefan, yes, that is exactly what I'm looking for!
Do you already have it, or must it be written? Keith Stefan Kohl <sk...@st-andrews.ac.uk> wrote: > 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 <alexander.hul...@colostate.edu> > Sent: Thursday, December 19, 2019 12:21 AM > To: GAP <g...@rkd.math.cornell.edu> > Cc: GAP Forum <forum@gap-system.org> > 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 > > Forum@gap-system.org > > https://mail.gap-system.org/mailman/listinfo/forum > > _______________________________________________ > Forum mailing list > Forum@gap-system.org > https://mail.gap-system.org/mailman/listinfo/forum _______________________________________________ Forum mailing list Forum@gap-system.org https://mail.gap-system.org/mailman/listinfo/forum