Magma

MAGMA Computational Algebra System

Magma
 •  How to get it
 •  Download
 •  Online Demo
 
Resources
 •  Online Help
 •  Discovering Mathematics with Magma
 •  Citations
 •  How to cite Magma
 •  Links
 •  Contact us
 
[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Basic Algebras

In the implementation the algebra is given as the sequence of projective modules P1, ..., Ps together with a path tree for each module. The projective module consists of a matrix for each generator a1, a2, ..., at giving the action of the generator on the vector space of the module. The basis b1, b2, ..., bn for the vector space of Pi is chosen so that each basis element is the image of a basis element of lower index under multiplication by a nonidempotent generator of A. The structure of the basis is recorded in the path tree which is a sequence [<1, i>, <j, k>, ... ] of 2-tuples of length n = Dimension(Pi). The first entry <1, i> indicates that b1 = b1 * ai where ai is the primitive idempotent in the algebra A such that Pi = A.ai. Similarly, if entry number k in the path tree is < u, v > then bk = bu * av where v > s if k > 1.

Subsections

Creation

BasicAlgebra(Q) : SeqEnum[Tup] -> AlgBas
Given a sequence [Qi, ..., Qs] of 2-tuples such that each Qi = <Mi, Ti> consisting of a module for a matrix algebra Mi and a path tree Ti for Mi, the function creates the basic algebra whose projective modules are the first entries M1, ..., Ms and the path trees are the corresponding second entries.
BasicAlgebra(G, k) : GrpPerm, FldFin -> AlgBas
BasicAlgebra(G, k) : GrpPC, FldFin -> AlgBas
BasicAlgebra(G) : GrpPerm -> AlgBas
Given a finite p-group G and a field k of characteristic p, returns the group algebra kG in the form of a basic algebra. If no field k is supplied then the prime field of characteristic p is assumed to be the field of coefficients.
BasicAlgebra(F,R,s,P): AlgFr, SeqEnum, RngIntElt, SeqEnum -> AlgBas
Creates the basic algebra given by the presentation. Here F is a free algebra and R is the sequence of relation for the nonidempotent generators of the algebra. If the free algebra F is generated by elements a1, ..., at, the function assumes that a1, ..., as are the mutually orthogonal primitive idempotents and it creates all of the appropriate relations including a1 + ... + as = 1. The nonidempotent generators are then as + 1, ..., at. So ellk = < i, j > for i, j ≤s means that as + k = ai * as + k * aj. Each of the relations in R is given as a linear combination of words in the nonidempotent generators as + 1, ..., at ∈F. The sequence P is a sequence of 2-tuples, one for each nonidempotent generator, giving the beginning and ending nodes of the generator. That is each tuple is the pair of indices of the idempotents which multiply as the identity on the nonidempotent generator on the left and on the right.
BasicAlgebra(F,R) : AlgFr, SeqEnum -> AlgBas
Creates the basic algebra of a local algebra from the presentation of the algebra. Here F is a free algebra whose variable represent the nonidempotent generators and R is the sequence of relations among those variables.
TensorProduct(A, B) : AlgBas, AlgBas-> AlgBas
The tensor product of the basic algebras A and B.

Access Functions

NumberOfProjectives(B) : AlgBas -> RngIntElt
The number of nonisomorphic indecomposable projective modules in the basic algebra B.
B . i : AlgBas, RngIntElt -> AlgBasElt
The ith element in the standard basis for the underlying vector space of the algebra B.
BaseRing(B) : AlgBas -> Rng
CoefficientRing(B) : AlgBas -> Rng
Given an algebra B over a field k the function returns k.
VectorSpace(B) : AlgBas -> ModTupFld
KSpace(B) : AlgBas -> ModTupFld
The underlying k-vector space of the algebra B. The space is the direct sum of the underlying vector space of the indecomposable projective modules.
Dimension(B) : AlgBas -> RngIntElt
The dimension of the underlying vector space of the algebra B.
Basis(B) : AlgBas -> SeqEnum
A basis of the underlying vector space of the algebra B.
Generators(B) : AlgBas -> SeqEnum
The generators of the algebra B as a sequence of elements in the underlying vector space of the algebra B.
IdempotentGenerators(B) : AlgBas -> SeqEnum
The sequence of mutually orthogonal idempotent generators of the basic algebra B as elements in the underlying vector space of B.
IdempotentPositions(B) : AlgBas -> SeqEnum
The sequence N = [n1, ..., ns] such that B.n1, ..., B.ns are the mutually orthogonal idempotent generators of the algebra B.
NonIdempotentGenerators(B) : AlgBas -> SeqEnum
The sequence of nonidempotent generators of the basic algebra B as elements in the underlying vector space of the algebra B.
Random(B) : AlgBas -> AlgBasElt
A random element of the algebra B as an element of the underlying vector space of B.
NumberOfGenerators(B) : AlgBas -> RngIntElt
Ngens(B) : AlgBas -> RngIntElt
The number of generators (idempotent and nonidempotent) generators of the basic algebra B.
DimensionsOfProjectiveModules(B) : AlgBas -> SeqEnum
The sequence of the dimensions of the projective modules of the basic algebra B.
DimensionsOfInjectiveModules(B) : AlgBas -> SeqEnum
The sequence of the dimensions of the injective modules of the basic algebra B.

Elementary Operations

a + b : AlgBasElt, AlgBasElt -> AlgBasElt
The sum of the two elements a and b.
a * b : AlgBasElt, AlgBasElt -> AlgBasElt
The product of the two elements a and b.
a ^ n : AlgBasElt, RngIntElt -> AlgBasElt
The nth power of the element a.

Example AlgBas_BasicAlgebras (H88E1)

We create the basic algebra of the quiver with three nodes and three arrows over the field with 7 elements. The first arrow (cs a) goes from node 1 to node 2, the second (cs b) from node 2 to node 1, and (cs c) from node 2 to node 3. The arrows satisfy the relation that (cs a * cs b)3 = 0.

> ff := GF(7);
> FA<e1,e2,e3,a,b,c> := FreeAlgebra(ff,6);
> rrr := [a*b*a*b*a*b];
> D := BasicAlgebra(FA,rrr,3,[<1,2>,<2,1>,<2,3>]);
> D;
Basic algebra of dimension 21 over GF(7)
Number of projective modules: 3
Number of generators: 6

> DimensionsOfProjectiveModules(D);
[ 9, 11, 1 ]
> DimensionsOfInjectiveModules(D);
[ 6, 7, 8 ]

So we can see that the algebra is not self-injective.

Now we can check the nilpotence degree of the radical of cs D. The radical of cs{D} is generated by the nonidempotent generators.

> S := NonIdempotentGenerators(D);
> S;
[ (0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0), (0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 
0 0 0 0 0), (0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0) ]
> S2 := [x*y:x in S, y in S|x*y ne 0];
> #S2;
3
> S3 := [x*y:x in S2, y in S|x*y ne 0];
> #S3;
3
> S4 := [x*y:x in S3, y in S|x*y ne 0];
> #S4;
3
> S5 := [x*y:x in S4, y in S|x*y ne 0];
> #S5;
3
> S6 := [x*y:x in S5, y in S|x*y ne 0];
> #S6;
2
> S7 := [x*y:x in S6, y in S|x*y ne 0];
> #S7;
1
> S8 := [x*y:x in S7, y in S|x*y ne 0];
> #S8;
0

Example AlgBas_BasicAlgebras-2 (H88E2)

First we create the basic algebra for the symmetric group S3 over the field GF(3)

> FA<e1,e2,a,b> := FreeAlgebra(GF(3),4);
> MM:= [a*b*a, b*a*b];
> BS3 := BasicAlgebra(FA, MM, 2, [<1,2>,<2,1>]);
> BS3;
Basic algebra of dimension 6 over GF(3)
Number of projective modules: 2
Number of generators: 4
> DimensionsOfProjectiveModules(BS3);
[ 3, 3 ]
Next we create the basic algebra for the cyclic group of order 3.

> gg := CyclicGroup(3);
> BC3 := BasicAlgebra(gg,GF(3));
> BC3;
Basic algebra of dimension 3 over GF(3)
Number of projective modules: 1
Number of generators: 2

We create the basic algebra for the direct product C3 x S3.

> A := TensorProduct(BS3,BC3);
> A;
Basic algebra of dimension 18 over GF(3)
Number of projective modules: 2
Number of generators: 6
> DimensionsOfProjectiveModules(A);
[ 9, 9 ]

Example AlgBas_BasicAlgebras-3 (H88E3)

We create the basic algebra for A4 over a field with 2 elements. The group algebra has two nonisomorphic projective modules. We define the basic algebra by constructing the matrix algebra for the projective modules and the path trees and entering this data into the BasicAlgebra function.

Note that the matrices are sparse so we will define them by specifying the nonzero rows.

> ff := GF(2);
> MM6 := MatrixAlgebra(ff,6);
> e11 := MM6!0;
> e12 := MM6!0;
> VV6 := VectorSpace(GF(2),6);
> BB6 := Basis(VV6);
> e11[1]  := BB6[1];
> e11[3]  := BB6[3];
> e11[4]  := BB6[4];
> e11[6]  := BB6[6];
> e12[2]  := BB6[2];
> e12[5]  := BB6[5];
> a1 := MM6!0;
> b1 := MM6!0;
> c1 := MM6!0;
> d1 := MM6!0;
> a1[1] := BB6[2];
> b1[1] := BB6[3];
> c1[2] := BB6[4];
> a1[3] := BB6[5];
> b1[4] := BB6[6];
> c1[5] := BB6[6];
> A1 := sub< MM6 | [e11, e12, a1, b1, c1, d1] >;
> T1 := [ <1,1>, <1,3>, <1,4>, <2,5>, <3,3>, <4,4>];
> 
> VV5 := VectorSpace(ff,5);
> BB5 := Basis(VV5);
> MM5 := MatrixAlgebra(ff,5);
> e21 := MM5!0;
> e22 := MM5!0;
> e22[1]  := BB5[1];
> e22[3]  := BB5[3];
> e22[5]  := BB5[5];
> e21[2]  := BB5[2];
> e21[4]  := BB5[4];
> a2 := MM5!0;
> b2 := MM5!0;
> c2 := MM5!0;
> d2 := MM5!0;
> f2 := MM5!0;
> g2 := MM5!0;
> c2[1] := BB5[2];
> d2[1] := BB5[3];
> b2[2] := BB5[4];
> d2[3] := BB5[5];
> a2[4] := BB5[5];
> A2 := sub< MM5 | [e21, e22, a2, b2, c2, d2] >;
> T2 := [<1,2>, <1,5>, <1,6>, <2,4>, <3,6>];
> 
> C := BasicAlgebra( [<A1, T1>, <A2, T2>] );
> C;
Basic algebra of dimension 11 over GF(2)
Number of projective modules: 2
Number of generators: 6
> DimensionsOfProjectiveModules(C);
[ 6, 5 ]
> DimensionsOfInjectiveModules(C);
[ 6, 5 ]

 [Next][Prev] [Right] [Left] [Up] [Index] [Root]
                       

Version: V2.16 of Mon Nov 16 15:04:45 EST 2009

Valid HTML 4.01! Valid CSS!