One can deal with the matrix representation constructed by VE also using the MeatAxe share library. This way the matrices are not read into GAP but written to files and converted into internal MeatAxe format. See chapter The MeatAxe for details.
gap> a:= FreeAlgebra( GF(2), 2 );; gap> a:= a / [ a.1^2 - a.one, a.2^2 - a.one, > (a.1*a.2)^3 - a.one ];; gap> RequirePackage("meataxe"); #I The MeatAxe share library functions are available now. #I All files will be placed in the directory #I '/var/tmp/tmp.006103' #I Use 'MeatAxe.SetDirectory( <path> )' if you want to change. gap> op:= Operation( a, a^1, "mtx" ); UnitalAlgebra( GF(2), [ MeatAxeMat( "/var/tmp/tmp.006103/a/g.1", GF(2), [ 6, 6 ], a.1 ), MeatAxeMat( "/var/tmp/tmp.006103/a/g.2", GF(2), [ 6, 6 ], a.2 ) ] ) gap> Display( op.1 ); #I calling 'maketab' for field of size 2 MeatAxe.Matrix := [ [0,0,1,0,0,0], [0,0,0,1,0,0], [1,0,0,0,0,0], [0,1,0,0,0,0], [0,0,0,0,0,1], [0,0,0,0,1,0] ]*Z(2); gap> MeatAxe.Unbind();
Previous Up Top