On Thursday, 27 December 2012 20:59:45 UTC+1, Benjamin Jones wrote: > > On Thu, Dec 27, 2012 at 11:39 AM, Jernej Azarija > <azi.s...@gmail.com<javascript:>> > wrote: > > Hello! > > > > I apologize for posting this question here but somehow I am not allowed > to > > drop questions to sage-support. Moreover I do not feel confident enough > to > > post this thing as a bug on the trac wiki. > > > > Working with a large graph G on ~250 vertices I have noticed that > elements > > of the automorphism group of G permute ~50 vertices and that most > vertices > > are fixed by any automorphism. Hence most orbits of the automorphism > group > > contain just singletons. However sage simply discards all vertices that > are > > fixed by the automorphism . In my case this resulted in an "incomplete" > > orbit containing just 50 elements. An extreme case happens when one > deals > > with an asymmetric graph > > > > === > > sage: G = graphs.RandomRegular(7,50) > > sage: G.vertices() > > [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, > 20, > > 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, > 39, > > 40, 41, 42, 43, 44, 45, 46, 47, 48, 49] > > sage: G.automorphism_group().domain() > > {1} > > sage: G.automorphism_group().orbits() > > [[1]] > > === > > > > This of course is not the desired result since one assumes orbits > partition > > the group. > > > > Is this a bug or am I simply missing some parameter to resolve this > issue? > > > > I don't think this is a bug. >
Hello! Thanks for your reply! > > It looks to me like G.automorphism_group() is returning an abstract > permutation group. For a lot of random graphs this is going to be the > trivial group "Permutation Group with generators [()]" (a random graph > is likely to have no symmetry). The natural (non-empty) domain for the > action of such a group is a singleton set and there is of course only > one orbit there. Notice that G.automorphism_group().domain() returns > {1}, it's the domain of a permutation group on {1, ... , n}. > I am not sure this is consistent with the mathematical definition of the domain of a group acting on a set S. Even *if* I take this convention for granted, it becomes a mess if I try to obtain the orbits of a vertex-stabilizer. Being more concrete: sage: G = graphs.RandomRegular(7,50) sage: G.automorphism_group().stabilizer(1).orbits() [[1]] which is clearly not the desired output. > I guess what you want is the automorphism group along with it's action > on the set of vertices of the graph. > > > One simple thing you can do is call: > > sage: A = G.automorphism_group(orbits=True) > Yes. Is there a way to extend this answer to the case when I wish to obtain the orbit of a specific subgroup of the automorphism group? > > to get the abstract group back along with the set of orbits. Also, by > setting `translation=True` you can also get a dictionary back that > provides translation from vertices {0, 1, ..., n} to the domain set of > the permutation group (a subset of {1, ... , n+1}). > > -- > Benjamin Jones > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To post to this group, send email to sage-devel@googlegroups.com. To unsubscribe from this group, send email to sage-devel+unsubscr...@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel?hl=en.