I think that without some extra information this is bound to be difficult. 
For the modules that I am working with at the moment I can do this and I am 
in the process of making this more explicit.

The modules that I am working with have the following features which make 
this tractable:

   - they are cyclic: G = zA for some z (they are all A-modules)
   - (more importantly) I have a presentation for the modules 
   - the presentation that I have is very "efficient" in the sense that if 
   I am looking for maps f:G->H then the dimension of the vector subspace of H 
   which can contain f(z) is quite small. This makes it tractable to look at 
   the kernel of the modules relations on this subspace to find a basis for 
   Hom_A(G,H).

Currently, I have code which computes a basis for Hom_A(G,H) and returns 
sage morphisms f:G->H which you can apply to either arbitrary elements of G 
or to the indexing set of the basis for G. Next I plan to have the the code 
automatically write compositions f*g in terms of the distinguished bases 
that I have for these hom-spaces.

As a special case, of course, I can compute End_A(G) an work with this. 
(Although for my examples this is only interesting in characteristic 2.)

Andrew

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/HeFrlWzYFXQJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.

Reply via email to