Re: [sage-devel] orbit decompositions

2022-05-05 Thread David Joyner
On Thu, May 5, 2022 at 7:59 AM 'Martin R' via sage-devel wrote: > > I guess you would have to read the code and make sure that you think it is > OK, possibly ask for clarifications or better examples, and then select > "positive review" on the trac ticket. > Will do. > On Thursday, 5 May 2022

Re: [sage-devel] orbit decompositions

2022-05-05 Thread 'Martin R' via sage-devel
I guess you would have to read the code and make sure that you think it is OK, possibly ask for clarifications or better examples, and then select "positive review" on the trac ticket. On Thursday, 5 May 2022 at 11:06:15 UTC+2 David Joyner wrote: > On Thu, May 5, 2022 at 3:51 AM 'Martin R' via

Re: [sage-devel] orbit decompositions

2022-05-05 Thread David Joyner
On Thu, May 5, 2022 at 3:51 AM 'Martin R' via sage-devel wrote: > > David, could you do the review? > I don't know git but, for my own amusement, I copy+pasted all the code in that module on your trac ticket into a sage file, then attached it to a sage session and ran some examples. I'd be happy

Re: [sage-devel] orbit decompositions

2022-05-05 Thread 'Martin R' via sage-devel
David, could you do the review? On Wednesday, 4 May 2022 at 14:26:49 UTC+2 Martin R wrote: > I am guessing that Travis' Representation class does the trick, but I > have to figure out how to use it. > On Wednesday, 4 May 2022 at 13:40:07 UTC+2 kcrisman wrote: > >> On Tuesday, May 3, 2022 at

Re: [sage-devel] orbit decompositions

2022-05-04 Thread 'Martin R' via sage-devel
I am guessing that Travis' Representation class does the trick, but I have to figure out how to use it. On Wednesday, 4 May 2022 at 13:40:07 UTC+2 kcrisman wrote: > On Tuesday, May 3, 2022 at 7:48:07 AM UTC-4 axio...@yahoo.de wrote: > >> Won't you be better off thinking of it as a

Re: [sage-devel] orbit decompositions

2022-05-04 Thread David Joyner
On Wed, May 4, 2022 at 5:02 AM 'Martin R' via sage-devel wrote: > > https://trac.sagemath.org/ticket/33784 is now ready for review. > Thank you! Here's another example, for those following this thread: sage: A = lambda g, x: g(x) sage: Gamma = graphs.ButterflyGraph() sage: G =

Re: [sage-devel] orbit decompositions

2022-05-04 Thread kcrisman
On Tuesday, May 3, 2022 at 7:48:07 AM UTC-4 axio...@yahoo.de wrote: > Won't you be better off thinking of it as a representation, then? > > Correct, but I don't know how to construct those on arbitrary vector spaces in Sage. That is to say, if I know the vector space, and I know the action,

Re: [sage-devel] orbit decompositions

2022-05-04 Thread 'Martin R' via sage-devel
https://trac.sagemath.org/ticket/33784 is now ready for review. I am still open for discussion, of course. In particular, we might want to discuss whether we should also provide a separate class which models a group action, and not only the homomorphic image of the acting group. Martin On

Re: [sage-devel] orbit decompositions

2022-05-03 Thread 'Martin R' via sage-devel
You just need to git Trac try the branch, there are examples in the docstring of PermutationGroup On Tuesday, 3 May 2022 at 15:27:06 UTC+2 David Joyner wrote: > On Tue, May 3, 2022 at 7:12 AM 'Martin R' via sage-devel > wrote: > > > > I implemented (well, the implementation is trivial) the

Re: [sage-devel] orbit decompositions

2022-05-03 Thread David Joyner
On Tue, May 3, 2022 at 7:12 AM 'Martin R' via sage-devel wrote: > > I implemented (well, the implementation is trivial) the following, and I'd > like feedback. I am not completely sure whether the interface for the second > variant, where the generators of the acting group are required, is

Re: [sage-devel] orbit decompositions

2022-05-03 Thread 'Martin R' via sage-devel
Won't you be better off thinking of it as a representation, then? What would you like sage to do for you when working with a group action on an infinite set? Martin On Tuesday, 3 May 2022 at 13:42:51 UTC+2 kcrisman wrote: > On Monday, May 2, 2022 at 11:24:44 AM UTC-4 axio...@yahoo.de wrote: >

Re: [sage-devel] orbit decompositions

2022-05-03 Thread kcrisman
On Monday, May 2, 2022 at 11:24:44 AM UTC-4 axio...@yahoo.de 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"

Re: [sage-devel] orbit decompositions

2022-05-02 Thread David Joyner
On Mon, May 2, 2022 at 11:24 AM 'Martin R' via sage-devel 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"

Re: [sage-devel] orbit decompositions

2022-05-02 Thread 'Martin R' via sage-devel
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))

Re: [sage-devel] orbit decompositions

2022-05-02 Thread kcrisman
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

Re: [sage-devel] orbit decompositions

2022-05-02 Thread David Joyner
1) This is okay with me, but by "set" I assume you don't mean "Set":-) For example, sage: A = lambda g, x: g*x sage: G = SL(2,5) sage: X = GF(5)^2 sage: a = GroupAction(A, X, G) sage: a.orbits() should return something reasonable. 2) Your new class should be consistent with the built in action of

Re: [sage-devel] orbit decompositions

2022-05-02 Thread 'Martin R' via sage-devel
Would you be happy with something like the following, as a unifying and easily accessible framework? Of course, I am thinking of providing also methods that convert it (back) into a representation, a combinatorial species, a permutation group. class FiniteGroupAction(SageObject): def

Re: [sage-devel] orbit decompositions

2022-05-01 Thread 'Travis Scrimshaw' via sage-devel
> > 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

Re: [sage-devel] orbit decompositions

2022-04-30 Thread kcrisman
On Thursday, April 28, 2022 at 11:26:12 AM UTC-4 David Joyner wrote: > On Thu, Apr 28, 2022 at 9:35 AM 'Martin R' via sage-devel > wrote: > > > > I don't know about OrbitDomains, how does it work / how do you use it? > > > > The documentation has an example: >

Re: [sage-devel] orbit decompositions

2022-04-28 Thread David Joyner
On Thu, Apr 28, 2022 at 9:35 AM 'Martin R' via sage-devel wrote: > > I don't know about OrbitDomains, how does it work / how do you use it? > The documentation has an example: https://www.gap-system.org/Manuals/doc/ref/chap41.html > Is there a standard (and easy) way to define an action (in

Re: [sage-devel] orbit decompositions

2022-04-28 Thread 'Martin R' via sage-devel
I don't know about OrbitDomains, how does it work / how do you use it? Is there a standard (and easy) way to define an action (in particular, a cyclic action) on a set in sage? On Thursday, 28 April 2022 at 15:27:03 UTC+2 David Joyner wrote: > On Thu, Apr 28, 2022 at 9:09 AM 'Martin R' via

Re: [sage-devel] orbit decompositions

2022-04-28 Thread David Joyner
On Thu, Apr 28, 2022 at 9:09 AM 'Martin R' via sage-devel wrote: > > I am very frequently using the function > > Signature: orbit_decomposition(L, cyc_act) -> 'list[list]' > Docstring: >Return the orbit decomposition of "L" by the action of "cyc_act". > >INPUT: > >* "L" -- list >

[sage-devel] orbit decompositions

2022-04-28 Thread 'Martin R' via sage-devel
I am very frequently using the function Signature: orbit_decomposition(L, cyc_act) -> 'list[list]' Docstring: Return the orbit decomposition of "L" by the action of "cyc_act". INPUT: * "L" -- list * "cyc_act" -- bijective function from "L" to "L" OUTPUT: * a list