From 783e572a4b6c6973aa3bf10d481c342806624e12 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Thu, 28 Nov 2019 08:36:42 +0100 Subject: [PATCH] Fix bug in IrrConlon leading to unexpected errors SubgroupNC expects a parent plus a list of generators of the subgroup. However, the old code actually passed a subgroup as "list of generators". Which is bad by itself, but it also means that later `Length( gens )` failed. This is resolved by the new code, which also ensures that known attributes of the subgroups, such as its size, are retained. This used to work in GAP 4.9, but in GAP 4.10 we changed the code which creates subgroups, which introduced this regression in behavior. Reported by Benjamin Sambale. --- lib/ctblsolv.gi | 3 ++- tst/testbugfix/2019-11-28-IrrConlon.tst | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 tst/testbugfix/2019-11-28-IrrConlon.tst diff --git a/lib/ctblsolv.gi b/lib/ctblsolv.gi index 8ef4d34b62..05d2c8be80 100644 --- a/lib/ctblsolv.gi +++ b/lib/ctblsolv.gi @@ -630,7 +630,8 @@ InstallGlobalFunction( CoveringTriplesCharacters, function( G, z ) k:= KernelUnderDualAction( O, Opcgs, CanonicalRepresentativeOfExternalSet( orb ) ); if not zn in k then - t:= SubgroupNC( G, StabilizerOfExternalSet( orb ) ); + t:= StabilizerOfExternalSet( orb ); + Assert( 1, IsIdenticalObj( Parent( t ), G ) ); h:= NaturalHomomorphismByNormalSubgroupNC( t, k ); img:= ImagesSource( h ); Append( r, diff --git a/tst/testbugfix/2019-11-28-IrrConlon.tst b/tst/testbugfix/2019-11-28-IrrConlon.tst new file mode 100644 index 0000000000..c8013542bb --- /dev/null +++ b/tst/testbugfix/2019-11-28-IrrConlon.tst @@ -0,0 +1,4 @@ +# the following used to run into an error +# reported by Benjamin Sambale +gap> Length(IrrConlon(SmallGroup(8,2))); +8