On Sunday, May 1, 2022 at 7:32:01 PM UTC-4 Travis Scrimshaw wrote:
> Sorry, I don't know an easy way. I've always just defined them by hand >>> whenever needed. >>> However, I agree with you that a better way is needed. >>> >> >> I would love for there to be some standard way to define a group action >> on a set - preferably maintaining other algebraic properties of the set, >> such as addition! But I don't know if there is even close to a standard >> way to do this either. >> > > - There is a standard way to do this, but not a generic method/class for > it IIRC. You can do this by implementing an _act_on_() method on a wrapper > class. Yet, this requires some manual input. > - For cyclic actions, there is the DiscreteDynamicalSystem class > introduced in https://trac.sagemath.org/ticket/24128. > - There is also the Representation class in > modules/with_basis/representation.py if you want to want to extend the > action on the set to the module with a basis given by that set. > > Likely we will want to implement a class SetWithAction that automates a > collects the orbit_decomposition functions and similar together as methods > as a single global entry point. > > Hmm, maybe a tutorial is needed for this. I would imagine that a lot of people who aren't familiar with how to create a new wrapper class would be the ones who need this. Of course, the FiniteGroupAction suggestion sounds quite welcome, too, though really having both options would be best. -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/5300f5bd-7e75-41d5-980d-cf207ce2e40fn%40googlegroups.com.