You do have some flexibility on how you want to implement actions. Some of 
this might be more complicated due to the classes you are inheriting from, 
including some older code. The easier (but can be more cumbersome and 
restrictive) way is to implement either _rmul_ / _lmul_ or _acted_upon_ 
(recommended). However, I do not know if that takes precedence over an 
explicitly defined action.

There's a few examples of implementations of actions scattered around Sage 
(such as in matrix/action.pyx) if that can help providing what you need 
too. As you may have surmised, there is some old code floating around that 
could use some cleanup and documentation.

On Saturday, November 25, 2017 at 3:42:03 AM UTC-6, Simon Brandhorst wrote:
>
> Dear sagers,
>
> I am implementing a matrix group action on a submodule of ZZ^n.
> element*matrix does work but the result lies in the ambient space and 
> instead I want the
> elements parent to be the invariant subspace we started with. 
>
> This can be done with sage.categories.action.Action
>
> However, that file was created in 2007, and it is almost not documented at 
> all.
> Is it the way to go anyways?
>
> Best
> Simon
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to