2
$\begingroup$

Given a commutative quiver algebra $A=KQ/I$ in the GAP-package QPA and two (right) $A$-modules M and N.

Question 1: Is it possible to calculate $Tor_A^i(M,N)=D(Ext_A^i(M,D(N))$ with QPA?

The problem here is that M and N are both right modules while the second argument in Tor has to be a left module. But since $A$ is commutative we have that left and right modules can be identified, but I do not know how to do this with QPA.

Question 2: How to get a left $A$-module for example ($D(M)$) as a right $A$-module in QPA when $A$ is commutative?

$\endgroup$
4
$\begingroup$

Let $M$ be a right $A$-module. Then $N = M_A$ is a left $A$-module via defining $$a\cdot m = ma$$ for all $a$ in $A$ and all $m$ in $M$. Furthermore $N$ is a right $A^{\operatorname{op}}$-module via defining $$n \circ a^{\operatorname{op}} = a\cdot n,$$ which is by definition $na$, where $a$ is in $A$ and $a^{\operatorname{op}}$ is $a$ viewed as an element in $A^{\operatorname{op}}$. Hence, if $M$ is a right $A$-module, then $M$ as a left $A$-module is given as a right $A^{\operatorname{op}}$-module where action of $A^{\operatorname{op}}$ is given by the same matrices as the original action. This can be done as follows in QPA:

gap> Q := Quiver( 1, [[ 1,1,"a"],[1,1,"b"]] );;
gap> KQ := PathAlgebra( Rationals, Q );;
gap> AssignGeneratorVariables( KQ );;
#I  Assigned the global variables [ v1, a, b ]
gap> rels := [ a^2, a*b - b*a, b^2 ];;
gap> A := KQ/rels;;
gap> Aop := OppositeAlgebra( A );
<Rationals[<quiver with 1 vertices and 2 arrows>]/<two-sided ideal in <Rationals[<quiver with 1 vertices and 2 arrows>]>,
  (3 generators)>>
gap> S := SimpleModules( A )[ 1 ];;
gap> M := DTr( S );
<[ 5 ]>
gap> mats := MatricesOfPathAlgebraModule( M );
[ [ [ 0, 0, 0, 0, 0 ], [ 1, 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, -1, 0 ], [ 1, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0 ] ] ]
gap> N := RightModuleOverPathAlgebra( Aop, mats );
<[ 5 ]>
gap> ext := ExtOverAlgebra(M,DualOfModule(N));
[ <<[ 7 ]> ---> <[ 12 ]>>, [ <<[ 7 ]> ---> <[ 5 ]>>, <<[ 7 ]> ---> <[ 5 ]>>, <<[ 7 ]> ---> <[ 5 ]>>, 
      <<[ 7 ]> ---> <[ 5 ]>>, <<[ 7 ]> ---> <[ 5 ]>>, <<[ 7 ]> ---> <[ 5 ]>> ], function( map ) ... end ]  

It is always confusing with identifications which seemingly are the identity, but I hope that this is correct.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.