From 388d9c28ecb2acae26cf3de7572554e062320fee Mon Sep 17 00:00:00 2001 From: ThomasBreuer Date: Mon, 4 Nov 2019 14:44:54 +0100 Subject: [PATCH] fix power maps in result of CharacterTableIsoclinic The following bug gets fixed that had been introduced in an earlier change: The result of `CharacterTableIsoclinic` in the case of a central subgroup of order four can store wrong power maps. Note that this bug was not present in released GAP versions (up to 4.10.2). --- lib/ctbl.gi | 2 +- tst/teststandard/ctblisoc.tst | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/ctbl.gi b/lib/ctbl.gi index bab8c7b627..24532d44a9 100644 --- a/lib/ctbl.gi +++ b/lib/ctbl.gi @@ -6226,7 +6226,7 @@ InstallMethod( CharacterTableIsoclinic, for i in [ 1 .. p-1 ] do # Deal with the classes in the 'i'-th coset. - ypos:= PowerMap( tbl, ( k * QuoInt( i * q, p ) ) mod p, xpos ); + ypos:= PowerMap( tbl, ( k * QuoInt( i * q, p ) ), xpos ); for class in outer[i] do old:= map[ class ]; images:= invfusion[ factorfusion[ old ] ]; diff --git a/tst/teststandard/ctblisoc.tst b/tst/teststandard/ctblisoc.tst index fcbcf4dfb9..0d66c1238d 100644 --- a/tst/teststandard/ctblisoc.tst +++ b/tst/teststandard/ctblisoc.tst @@ -113,6 +113,10 @@ gap> if TestPackageAvailability( "ctbllib" ) <> fail and > # that the *first* generator of the centre appears first. > Error( "wrong ordering of classes for isoclinic table" ); > fi; +> if ForAny( PrimeDivisors( Size( iso ) ), +> p -> not PowerMap( iso, p ) in PossiblePowerMaps( iso, p ) ) then +> Error( "wrong power map for isoclinic table" ); +> fi; > fi; # optional arguments: