Take me offffffff of this list pleassssssssss
talaia
On Mon, 31 Jan 2000, Willem de Graaf wrote:
Dear Alexander Konovalov,
Thank you very much for your message on Lie nilpotent
group rings. The behaviour you observed was in fact due to
an error in the GAP library; the problem occurred in the
function `LieAlgebraByDomain' that constructs the Lie algebra
corresponding to an associative algebra. This will be fixed
in the next release of GAP4 (GAP4.2). Also you will find the corrected
code at the end of this message. You can read this into GAP,
and then the error you observed should disappear. Alternatively
you can replace the function `LieAlgebraByDomain' in the file
`lib/algebra.gi' by the code below. In that case you will
have to rebuild the completion files (start GAP with the -N option,
and issue `CreateCompletionFiles()').I hope this helps; if you have further questions, please ask.
Best wishes,
Willem de Graaf
School of Mathematical and Computational Sciences University of St Andrews North Haugh Tel: +44 1334 463273 St Andrews Email: wdg@dcs.st-and.ac.uk Fife KY16 9SS Scotland -------------------------------------------------------------------------- ############################################################################# ## #M LieAlgebraByDomain( <A> ) ## ## The Lie algebra of the associative algebra <A> ## InstallMethod( LieAlgebraByDomain, "for an algebra", true, [ IsAlgebra ], 0, function( A )local T, n, zero, nullvec, S, i, j, k, m, cfs, cij, cji;
if not IsAssociative( A ) then TryNextMethod(); fi;
# We construct a structure constants table for the Lie algebra
# corresponding to <A>. If the structure constants of <A> are given by
# d_{ij}^k, then the structure constants of the Lie algebra will be given
# by d_{ij}^k - d_{ji}^k.T:= StructureConstantsTable( Basis( A ) ); n:= Dimension( A ); zero:= Zero( LeftActingDomain( A ) ); nullvec:= List( [1..n], x -> zero ); S:= EmptySCTable( n, zero, "antisymmetric" ); for i in [1..n] do for j in [i+1..n] do cfs:= ShallowCopy( nullvec ); cij:= T[i][j]; cji:= T[j][i]; for m in [1..Length(cij[1])] do k:= cij[1][m]; cfs[k]:= cfs[k] + cij[2][m]; od; for m in [1..Length(cji[1])] do k:= cji[1][m]; cfs[k]:= cfs[k] - cji[2][m]; od;cij:= [ ];for m in [1..n] do if cfs[m] <> zero then Add( cij, cfs[m] ); Add( cij, m ); fi; od; SetEntrySCTable( S, i, j, cij ); od; od;>return LieAlgebraByStructureConstants( LeftActingDomain( A ), S );
end );