Hello, 1. I'm trying to construct bilinear maps f_m(K) for m x m matrix multiplication over a field K, for small values of m, like 2, 3, 4.
I'm particularly interested in f_Q(3), and f_Q(4), where Q is the field of rationals. If T := Mat_Q(3) denotes the 3 x 3 matrix Q-algebra, with standard basis, it should be possible to do this explicitly on GAP by constructing the direct sum S := Mat_Q(3) \otimes Mat_Q(3), a Q-algebra of dimension 18 with standard basis, and then computing f_Q(3) as the map f: S --> T by using AlgebraHomomorphismByImages( source, target, imgs ). However, I'm getting a "exceeded the permitted memory" error. 2. Also, I don't understand the behaviour of the IsAlgebraWithOne( algebra ) function. For example, I have defined gap> A := FullMatrixAlgebra( Rationals, 3 ); ( Rationals^[ 3, 3 ] ) This is an algebra with One( A ) = [ [1,0,0], [0,1,0], [0,0,1]]. However, when I construct the direct S = sum A \otimes A by gap> S := DirectSumOfAlgebras( A, A ); <algebra over Rationals, with 6 generators> This has the unit gap> One( S ); [ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ] ] however, IsAlgebraWithOne( S ) is returning false: gap> IsAlgebraWithOne( S ); false Sincerely, Sandeep. _______________________________________________ Forum mailing list Forum@mail.gap-system.org http://mail.gap-system.org/mailman/listinfo/forum