On Mon, May 2, 2022 at 11:24 AM 'Martin R' via sage-devel <sage-devel@googlegroups.com> wrote: > > I am actually not sure anymore, which methods or functionality this class > should provide. > > Would it possibly be better to enhance PermutationGroup with an additional > optional "from_action" and "from_cyclic_action" argument? Eg.: > > PermutationGroup(domain = X, cyclic_action = lambda x: f(x)) > > PermutationGroup(domain = X, group_action = (G, lambda g, x: f(g, x))) >
I like this idea! > Martin > On Monday, 2 May 2022 at 14:20:57 UTC+2 kcrisman wrote: >> >> 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/694a16d8-b59d-43bc-8b68-033c704284abn%40googlegroups.com. -- 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/CAEQuuAXOneCvUQ70XxfbMb4Jstek9OB-sfNpcVsgkNDXf6cdFg%40mail.gmail.com.