gap-packages / qpa

GAP package for quivers and path algebras
https://folk.ntnu.no/oyvinso/QPA/
GNU General Public License v2.0
30 stars 13 forks source link

disconnected quivers and IndecInjectiveModules #54

Closed mantepse closed 1 year ago

mantepse commented 3 years ago

I wonder whether it would make sense to provide IndecInjectiveModules (and probably some other methods) also for disconnected quivers. For example, I get (system paths lightly edited)

gap> P := PosetAlgebra(GF(3), Poset([1,2,3],[]));
<GF(3)[<quiver with 3 vertices and 0 arrows>]>
gap> IndecInjectiveModules(P);
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `RightModuleOverPathAlgebra' on 2 arguments at gap/lib/methsel2.g:250 called from
RightModuleOverPathAlgebra( A_op, mats ) at gap/pkg/qpa-version-1.29/lib/functors.gi:49 called from
DualOfModule( x ) at gap/pkg/qpa-version-1.29/lib/modulespecial.gi:152 called from
func( C[i] ) at gap/lib/coll.gi:665 called from
List( P_op, function ( x )
      return DualOfModule( x );
  end ) at gap/pkg/qpa-version-1.29/lib/modulespecial.gi:152 called from
<function "unknown">( <arguments> )

In fact, also the quiver with a single vertex seems problematic:

gap> P := PosetAlgebra(GF(3), Poset([1,2,3],[]));
<GF(3)[<quiver with 3 vertices and 0 arrows>]>
gap> IndecInjectiveModules(P);
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `RightModuleOverPathAlgebra' on 2 arguments at /home/martin/sage-develop/local/share/gap/lib/methsel2.g:250 called from
RightModuleOverPathAlgebra( A_op, mats ) at /home/martin/sage-develop/local/share/gap/pkg/qpa-version-1.29/lib/functors.gi:49 called from
DualOfModule( x ) at /home/martin/sage-develop/local/share/gap/pkg/qpa-version-1.29/lib/modulespecial.gi:152 called from
func( C[i] ) at /home/martin/sage-develop/local/share/gap/lib/coll.gi:665 called from
List( P_op, function ( x )
      return DualOfModule( x );
  end ) at /home/martin/sage-develop/local/share/gap/pkg/qpa-version-1.29/lib/modulespecial.gi:152 called from
<function "unknown">( <arguments> )
 called from read-eval loop at *stdin*:3
type 'quit;' to quit to outer loop
sunnyquiver commented 3 years ago

I am sorry for the late reply to this issue.

Yes, definitely, QPA should be able to deal with isolated vertices. This is a design flaw. However, we are also developing QPA version 2, and there it is possible to deal with quivers with isolated vertices.

gap> Q := RightQuiver( "A1", 2, [] );
A1(2)[]
gap> B := PathAlgebra( GF(3), Q );   
GF(3) * A1
gap> IndecProjRightModules(B);       
[ <1,0>, <0,1> ]

See https://github.com/sunnyquiver/QPA2 for further information on and source code for QPA2.

The QPA-team.

sunnyquiver commented 1 year ago

This is now hopefully fixed via the pull request #85.

gap> P := PosetAlgebra(GF(3), Poset([1,2,3],[]));
<GF(3)[<quiver with 3 vertices and 0 arrows>]> gap> IndecInjectiveModules(P); [ <[ 1, 0, 0 ]>, <[ 0, 1, 0 ]>, <[ 0, 0, 1 ]> ]