> < ^ Date: Tue, 25 Jun 1996 13:27:00 +0100 (MET)
> < ^ From: Thomas Breuer <Thomas.Breuer@Math.RWTH-Aachen.DE >
^ Subject: BUGFIX # 16 (serious problem in 'Symmetrisations')

This mail contains a bugfix for a serious problem in GAP 3.4.3.
You should apply this bugfix soon if you are computing with characters.
The problem is in 'Symmetrisations', and causes it to fail.

HOW TO APPLY

The problem is a serious problem, because it may cause a computation to
fail. Thus the bugfix has medium priority, and we recommend that you
apply it soon if you are computing with characters.

Go to the GAP directory (the directory with the 'lib/' subdirectory),
name this mail 'bugfix16.dif', and issue the command:

patch -p0 < bugfix16.dif

If 'patch' writes "I can't seem to find a patch in there" try 'patch -v'.
If 'patch -v' gives an error message or reports a version older than 2.1,
get 2.1 from 'ftp://FTP.Math.RWTH-Aachen.DE/pub/gap/utils/patch2_1.zoo'.

This workaround changes only the library. Thus you need not recompile
the GAP kernel.

VERSION

GAP 3.4.3.0

DESCRIPTION

'Symmetrisations' fails and signals

Error, List Element: <list>[1] must have a value at
lst[i] := fun( arg[1][i] ) ... in
List( powermap, Length ) called from
Symmetrisations( t, t.irreducibles, 2 ) called from
main loop

CORRECT BEHAVIOUR

gap> t:= CharTable( "A5" );;
gap> Symmetrisations( t, t.irreducibles, 2 );
[ [ 0, 0, 0, 0, 0 ], [ 1, 1, 1, 1, 1 ],
  [ 3, -1, 0, -E(5)-E(5)^4, -E(5)^2-E(5)^3 ], [ 6, 2, 0, 1, 1 ],
  [ 3, -1, 0, -E(5)^2-E(5)^3, -E(5)-E(5)^4 ], [ 6, 2, 0, 1, 1 ],
  [ 6, -2, 0, 1, 1 ], [ 10, 2, 1, 0, 0 ], [ 10, -2, 1, 0, 0 ],
  [ 15, 3, 0, 0, 0 ] ]

COMMENT

'Symmetrizations' called 'List' with a list that contains holes.
The manual forbids this, and since version 3.4.3 'List' does not
accept lists with holes.

PATCH

Prereq: 3.52.1.2
--- lib/ctcharac.g      Wed Jun 19 16:46:18 1996
+++ lib/ctcharac.g      Wed Jun 19 17:00:44 1996
@@ -3,13 +3,16 @@
 #A  ctcharac.g                  GAP library                     Thomas Breuer
 #A                                                              & Ansgar Kaup
 ##
-#A  @(#)$Id: 1.html,v 1.2 2004/04/21 15:03:10 felsch Exp $
+#A  @(#)$Id: 1.html,v 1.2 2004/04/21 15:03:10 felsch Exp $
 ##
 #Y  Copyright 1990-1992,  Lehrstuhl D fuer Mathematik,  RWTH Aachen,  Germany
 ##
 ##  This file contains those functions which mainly deal with characters.
 ##
 #H  $Log: 1.html,v $
 #H  Revision 1.2  2004/04/21 15:03:10  felsch
 #H  Corrected links in the Forum Archive pages.   VF
 #H
 #H  Revision 1.1.1.1  2004/04/20 13:39:30  felsch
 #H  The final GAP-Forum archive until 2003.
 #H
 #H  Revision 1.5  2003/06/12 19:20:33  gap
 #H  Further update. AH
 #H
 #H  Revision 1.4  2003/06/12 17:28:25  gap
 #H  Address updates by JN. AH
 #H
 #H  Revision 1.3  1997/08/15 11:19:33  gap
 #H  New forum setup. AH
 #H
 #H  Revision 1.2  1997/04/24 15:32:47  gap
 #H  These files were replaced by the versions in WWW. The content is basically the
 #H  same but the formatting has been much more friendly towards the HTML-Converter.
 #H  AH
 #H
 #H  Revision 1.1  1996/10/30 13:07:04  gap
 #H  added forum archive and translation files.
 #H
+#H  Revision 3.52.1.3  1996/06/19  14:58:39  sam
+#H  'List' does no longer accept lists with holes.
+#H
 #H  Revision 3.52.1.2  1995/06/28  07:03:38  sam
 #H  fixed 'IntegralizedMat', 'Decomposition'
 #H
@@ -1260,7 +1263,6 @@
 #F  Symmetrisations( <tbl>, <characters>, <Sn> )
 #F  Symmetrisations( <tbl>, <characters>, <n> )
 ##
-##
 Symmetrisations := function( tbl, characters, Sn )

     local i, j, l, n, cyclestruct, symmirreds, symmclasses, symmorder, cycl,
@@ -1311,7 +1313,13 @@
       fi;
     od;
     powermap:= ShallowCopy( tbl.powermap );
-    powermap[1]:= [ 1 .. Maximum( List( powermap, Length ) ) ];
+    i:= Length( powermap[ Length( powermap ) ] );
+    for j in [ 2 .. Length( powermap ) - 1 ] do
+      if IsBound( powermap[j] ) and i < Length( powermap[j] ) then
+        i:= Length( powermap[j] );
+      fi;
+    od;
+    powermap[1]:= [ 1 .. i ];

     symmetrisations:= [];
     for chi in characters do
END OF  bugfix16.dif ________________________________________________________

> < [top]