diff --git a/doc/ref/grplib.xml b/doc/ref/grplib.xml
index d7abb2ac48..596cbef1bb 100644
--- a/doc/ref/grplib.xml
+++ b/doc/ref/grplib.xml
@@ -312,13 +312,16 @@ available to the ⪆ community by contributing their files. It should
be noted that their book contains a lot of further information for many
of the library groups. So we would like to recommend it to any ⪆
user who is interested in the groups.
-Two additional groups omitted from the book Perfect Groups
have also
-been included.
-
The library of these has been brought into ⪆ format by Volkmar Felsch.
-The perfect groups of size less than 10^6which were missing in the work of Holt
-and Plesken have been enumerated by Alexander
+Several additional groups omitted from the book Perfect Groups
have also
+been included. Two groups -- one of order 450000 with a factor group of
+type A_6 and the one of order 962280 -- were found by Jack Schmidt in
+2005. Two groups of order 243000 and one each of orders 729000, 871200, 878460
+were found in 2020 by Alexander Hulpke.
+
+The perfect groups of size less than 10^6 which had not been
+classified in the work of Holt and Plesken have been enumerated by Alexander
Hulpke. They are stored directly and provide less construction information
in their names.
diff --git a/grp/perf0.grp b/grp/perf0.grp
index ccc4943946..ab542a5fac 100644
--- a/grp/perf0.grp
+++ b/grp/perf0.grp
@@ -219,12 +219,12 @@ number:=[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 7, 1, 1, 1, 1, 3, 1, 1,
98, 1, 4, 1, 1, 1, 4, 1, 4, 4, 3, 1, 1, 6, 1, 52, 1, 8, 2, 1, 3, 1, 1, 1,
1, 1, 1, 15, 3, 1, 1, 1, 4, 5, 2, 258, 1, 6, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1,
18, 1, 3, 1, 12, 1, 154, 8, 1, 1, 1, 3, 1, 19, 1, 1, 2, 1, 1, 1, 1, 1, 3, 1,
- 2, 1, 26, 3, 3, 1, 17, 5, 1, 1, 2, 582, 1, 1, 4, 3, 2, 7, 1, 1, 2, 1, 3, 2,
+ 2, 1, 26, 3, 3, 1, 17, 5, 3, 1, 2, 582, 1, 1, 4, 3, 2, 7, 1, 1, 2, 1, 3, 2,
3, 1, 3, 18, 1, 27, 1, 1, 291, 3, 1, 1, 1, 6, 1, 1, 3, 3, 46, 1, 1, 11, 1, 1,
2, 2, 1, 1, 4, 3, 1, 1, 1, 1, 3, 1, 2, 1, 1, 3, 8, 1, 1, 25, 4, 3, 18, 1,
4, 17, 6, 1, 975, 1, 1, 1, 1, 1, 9, 1, 1, 1, 1, 19, 1, 1, 7, 1, 1, 2, 3, 1,
- 4, 1, 12, 1, 2, 41, 1, 1, 1, 3, 2, 1, 508, 23, 3, 2, 1, 1, 1, 1, 2, 3, 2, 1,
- 1, 3, 54, 1, 13, 2, 5, 3, 16, 2, 2, 1, 3, 2, 3, 3, 2, 1, 2, 1, 1, 3, 1, 7,
+ 4, 1, 12, 1, 2, 41, 1, 1, 1, 3, 2, 1, 508, 23, 3, 2, 1, 1, 1, 1, 2, 3, 3, 1,
+ 1, 3, 54, 1, 13, 2, 5, 3, 16, 2, 2, 1, 3, 2, 3, 3, 3, 1, 3, 1, 1, 3, 1, 7,
6, 4, 1, 23, 8, 2, 21, 3, 8, 1, 2, 1, 12, 1, 20, 1, 1, 4, 1881, 1 ],
));
diff --git a/grp/perf11.grp b/grp/perf11.grp
index 95edaf88b5..04d3b83e64 100644
--- a/grp/perf11.grp
+++ b/grp/perf11.grp
@@ -1337,7 +1337,34 @@
# 729000.2
[[4,29160,6,3000,2,120,3,1],
"A5 2^1 # 3^5 5^2 [2]",6,3,
- 1,[243,25]]
+ 1,[243,25]],
+ # 729000.3
+ [[1,"abrstuvwxyz",
+ function(a,b,r,s,t,u,v,w,x,y,z)
+ return
+ [[w^2,t^3,u^3,v^3,s^3,z^3,x^-1*y^-1*x*y,b^-1*z*b*z^-1,u^-1*y*u*y^-1,
+ t*s*t^-1*s^-1,u*z^-1*u^-1*z,t^-1*z*t*z^-1,s^-1*x^-1*s*x,t^-1*x^-1*t*x,
+ t^-1*y^-1*t*y,w*z*w*z^-1,s^-1*z*s*z^-1,(w*y)^2,(w*x^-1)^2,u*x^-1*u^-1*x,
+ s^-1*w*s*w,a^-1*u*a*t^-1,v*x*v^-1*x^-1,u^-1*t^-1*u*t,a^-1*z*a*z^-1,
+ u^-1*w*u*w,v*y^-1*v^-1*y,s*v^-1*s^-1*v,s^-1*y^-1*s*y,v^-1*w*v*w,t^-1*w*t*w,
+ r^-1*z*r*z^-1,v^-1*z*v*z^-1,t^-1*v*t*v^-1,x^-1*z*x*z^-1,v^-1*u^-1*v*u,
+ s*u^-1*s^-1*u,y^-1*z*y*z^-1,z^-1*t*b^-1*u^-1*b,a*u^-1*a^-1*t*s,
+ r^-1*t^-1*r*v^-1*u,z^-1*v^-1*r*v^-1*r^-1,z^-1*u^-1*b^-1*t*b,x*r*x*r^-1*y^-1,
+ r^-1*x^-1*r*y^-1*x,x^-1*r*w*r^-1*w,a*t*s*a^-1*t^-1,a*z^-1*v^-1*a^-1*v,
+ v*r*t*r^-1*u^-1,a^-1*u*t^-1*a*s,a^-1*z^-1*v*a*v^-1,b^-1*x^-1*b*x^2,y^5,x^5,
+ w*y*b*w*x^-1*b^-1,a^-1*x*w*y^-1*a*w,w*a^-1*w*a*x*y^-1,s*z^-1*b*v^-1*u*b^-1,
+ b^-1*x^-1*y^-1*b*y^-2,a*x*y^-1*a*w*a,b^-1*v^-1*z*b*t*s,y*x^-1*y*a^-1*y*a,
+ s*r*t^-1*z^-1*u*s^-1*r^-1,s^-1*r*t*z*u^-1*s*r^-1,a*y^-2*a^-1*r^-1*y^-1*r,
+ r^-1*b^-1*r^-1*b*r*b*x^-1,a^-1*r^-1*a^-1*r*t^-1*u*s*x^-1,b^-2*u*w*t*x*y^-1*x,
+ r^-2*w*y*s*u*t^-1*y,r^-1*a*r*t*u^-1*s^-1*a*x,a^-1*r*x*t*a^-1*t^-1*s*r^-1*x^-1,
+ r^-1*a*r*x*a*r^-1*a^-1*r*a^-1,(b^-1*a^-1)^2*b*s*a^-1*x^-1*v*w,
+ (b^-1*a)^2*b*a*x*s^-1*t*y^-2],
+ [[v,w,x,y,u*t*u,t*y*s,(u^-1)^b,a*r^-1*x^-1,r*b^-1*r],
+ [s,t,u,v,w,z,x*a*y^-1,b*a^-1*y^-1,a*w^-1*r^-1]]];
+ end,
+ [18,25]],
+ "PG729000.3",[0,0,0],3,1,[18,25]]
+
];
PERFGRP[287]:=[# 730800.1
[[2,60,1,12180,1],
diff --git a/grp/perf12.grp b/grp/perf12.grp
index 2957ee2b39..64265ee159 100644
--- a/grp/perf12.grp
+++ b/grp/perf12.grp
@@ -615,7 +615,10 @@
# 871200.2
[[3,1320,1,1320,1,"d1","d2"],
"( L2(11) x L2(11) ) 2^1 [2]",40,2,
- [5,5],288]
+ [5,5],288],
+ # 871200.3 (new)
+ [[2,60,1,14520,1],
+ "A5 x A5 2^1 11^2",0,1,[1,1],[5,121]]
];
PERFGRP[305]:=[# 874800.1
[[2,60,1,14580,1],
@@ -654,7 +657,19 @@
end,
[132]],
"L2(11) N 11^3",[19,3,2],1,
- 5,132]
+ 5,132],
+ # 878460.3 (new)
+ [[1,"abcwxyz",
+ function(a,b,c,w,x,y,z)
+ return
+ [[b^2,c^2,a^3,y^-1*z^-1*y*z,(a*c)^2,w^-1*y^-1*w*y,w^-1*z^-1*w*z,
+ a^-1*y*a*y^-1,w^-1*x^-1*w*x,x^-1*z^-1*x*z,b*x*b*y^-1,b*z*b*z^-1,
+ x^-1*y^-1*x*y,a^-1*w*a*x^-1, c*x*c*x^-1,a^-1*z*a*z^-1,c*y*c*z^-1,
+ b*w*b*c*w^-1*c,(b*c)^3,(b*a^-1)^3,c*y*w*z*c*x*w,z^11,y^11,x^11,w^11],
+ [[a,b,x^-1*w]]];
+ end,[55]],
+ "A5 11^4",0,1,[1],55]
+
];
PERFGRP[307]:=[# 881280.1
[[2,360,1,2448,1],
diff --git a/grp/perf9.grp b/grp/perf9.grp
index c8db00a8a1..fd2c51107e 100644
--- a/grp/perf9.grp
+++ b/grp/perf9.grp
@@ -449,11 +449,53 @@
"( L3(2) x A6 ) 2^2",[37,2,1],4,
[2,3],[16,80]]
];
+
PERFGRP[176]:=[# 243000.1
[[4,9720,4,3000,2,120,3,1],
"A5 2^1 # 3^4 5^2",6,1,
- 1,[45,25]]
+ 1,[45,25]],
+ # 243000.2
+ [[1,"abstuvwxyz",
+ function(a,b,s,t,u,v,w,x,y,z)
+ return
+ [[t^2,u^3,v^3,x^3,s^-2*t,a^3,w^3,b^-2*t,x^-1*w^-1*x*w,u*a^-1*v^-1*a,
+ (t*y)^2,s^-1*u^-1*s*v^-1,w^-1*y*w*y^-1,u*v*u^-1*v^-1,s^-1*v*s*u,
+ b^-1*w^-1*b*x^-1,b^-1*x^-1*b*w^-1,(t*z)^2,u*x^-1*u^-1*x,a*s^-1*a*s,
+ t*u^-1*t*u,a^-1*x*a*x^-1,t*v^-1*t*v,u^-1*z*u*z^-1,x^-1*z*x*z^-1,
+ v*x^-1*v^-1*x,u^-1*w*u*w^-1,a*t*a^-1*t,v^-1*y*v*y^-1,v*w^-1*v^-1*w,
+ s^-1*x^-1*s*x^-1,u^-1*y*u*y^-1,x^-1*y*x*y^-1,y^-1*z^-1*y*z,t*w^-1*t*w,
+ w^-1*z*w*z^-1,v^-1*z*v*z^-1,t*x^-1*t*x,x*w*s^-1*w^-1*s,s^-1*z*s*y^-1*z^-1,
+ a*u*v*a^-1*u,a^-1*w*v*a*w^-1,s^-1*y*z*s*z,y^5,z^5,b^-1*y*b*y^-2,
+ b^-1*z*b*z^2,a^-1*z*a*y^-1*z^-1*y^-1,a^-1*y*a*y*z^-1*y,
+ x^-1*b^-1*u^-1*b*v^-1*w^-1,b^-1*x^-1*v^-1*b*u^-1*x,b^-1*s^-1*b*s*b*s^-1,
+ a^-1*b^-1*(a^-1*b)^2],
+ [[t,u,v,w,y,z,a^-1*x*u^-1,s^-1*b*s^-1],[a,b,s,t,u,v,w,x]]];
+ end,
+ [15,25]],
+ "PG243000.2",[0,0,0],1,1,[15,25]],
+ # 243000.3
+ [[1,"abstuvwxyz",
+ function(a,b,s,t,u,v,w,x,y,z)
+ return
+ [[t^2,u^3,v^3,x^3,w^3,t*u^-1*t*u,v*u^-1*v^-1*u,w^-1*u^-1*w*u,v*x^-1*v^-1*x,
+ (t*z)^2,a*w^-1*a^-1*w,a*t*a^-1*t,s^-1*w*s*w,v^-1*z*v*z^-1,s^-1*t*s*t,
+ u^-1*y*u*y^-1,t*x^-1*t*x,v^-1*y*v*y^-1,w^-1*y*w*y^-1,w*v*w^-1*v^-1,
+ w*x^-1*w^-1*x,(t*y)^2,u^-1*z*u*z^-1,t*v^-1*t*v,b^-1*t*b*t,y^-1*z^-1*y*z,
+ x^-1*y*x*y^-1,u*x^-1*u^-1*x,x^-1*z*x*z^-1,w^-1*z*w*z^-1,t*w^-1*t*w,
+ a*w^-1*u*a^-1*v,b^-1*y*z*b*z,a^-1*w^-1*v*a*u,b^-1*t*u*b^-1*u,
+ x*a^-1*x^-1*a*v^-1,b^-1*x^-1*b*v*u^-1,b^-1*u^-1*v*b*x^-1,b^-1*z*b*y^-1*z^-1,
+ s^-1*w*v^-1*s*u,b^-1*u*b*w^-1*v^-1,s^-1*w^-1*u*s*v^-1,t*a^-3*w,z^5,
+ a*s^-1*a*s*v,y^5,s^-1*z*s*z^2,a^-1*s^-1*a^-1*v*s,s^-1*y*s*y^-2,
+ b^-1*x^-1*w^-1*b*w^-1*x^-1,w*a^-1*u*a*u*v^-1,a^-1*z*a*y^-1*z^2,
+ a*w^-1*v^-1*a^-1*u*v^-1,s^-1*x*s*u^-1*v*x^-1,b^-1*x*w*b*w*x,t*s^-2*v*w*x^-1,
+ a^-1*y*a*b^-1*y^-1*b*y,s^-1*b^-1*s^-1*b*w^-1*s*b*v,x*u^-1*a*b^-1*w*b*u*a^-1,
+ (b^-1*a^-1)^2*b*a^-1*x*v],
+ [[a,b,s,t,u,v,w,x],[t,v,w,x,y,z,t^-1*a*s,(u^-1*b)^a]]];
+ end,
+ [25,30]],
+ "PG243000.3",[0,0,0],1,1,[25,30]]
];
+
PERFGRP[177]:=[# 244800.1
[[2,60,1,4080,1],
"A5 x L2(16)",40,1,