On Fri, 19 Jun 2020 at 10:24, Dima Pasechnik <dimp...@gmail.com> wrote: > > On Fri, Jun 19, 2020 at 10:14 AM John Cremona <john.crem...@gmail.com> wrote: > > > > On Fri, 19 Jun 2020 at 09:39, Dima Pasechnik <dimp...@gmail.com> wrote: > > > > > > > > > > > > On Fri, 19 Jun 2020, 09:05 John Cremona, <john.crem...@gmail.com> wrote: > > >> > > >> I would like to vote for exponentiation for a right group action. This > > >> is standard mathematical notation (as has already been said), at least > > >> in several fields that I know of. Using the shift operators looks too > > >> much like a computer-sciency solution to me. Sage has always tried to > > >> keep its notation close to what a mathematician (including students) > > >> would expect -- for example (almost the only one), re-purposing ^ to > > >> mean exponentiation rather than the python default. > > > > > > > > > I don't know how to reconcile this with group theory use of > > > exponentiation for the conjugation action(s). > > > > I had not thought of that. But if you want to write h^g for the > > conjugate of h by g and you want this to be a right action, so that > > g^(h1*h2) = (g^h1)^h2, then that is fine provided that "the conjugate > > of h by g" means g^(-1)*h*g. > > > > It's really the same issue. If instead you think of "the conjugate of > > h by g" as meaning g*h*g^(-1) the you have a left action and so the > > notation h^g is *not* appropriate! I would write that instead using > > left exponentiation, i.e. ${}^gh = ghg^{-1}$ in tex notation. > > My problem is that if a group acts on itself, conjugation actions (be > it h|->ghg^-1 or h|->g^-1 hg) > are vastly different from regular actions (left or right). > > How are you going to use '^' for both?
I was not: in fact I said "I would like to vote for exponentiation for a right group action". Only for right actions! For left actions we can use * (with the group element which is acting on the left of the *), though that could be confusing if the group was acting on itself on the left not by the left regular action (e.g. by conjugation). Let's face it, a group can have many different left or right actions on the same set so whatever symbol we choose, somewhere we'll have to specify which action we mean. In a mathematical text you just give the definition and that's it. Here too then the action intended must be defined somewhere, deducible from the types/parents of the objects concerned. In the context of the original post we have a finite set {1,2,...,n} and the symmetric group acting on it. And also some vector space and matrices acting: either on the left, on column vectors, or on the right, on row vectors. For these, Sage uses * for both and (as you know of course) does not distinguish between row and column vectors except by context: sage: v2 = vector([1,2]) sage: v2 (1, 2) sage: v3 = vector([1,2,3]) sage: v3 (1, 2, 3) sage: m23 = matrix([[11,12,13],[21,22,23]]) sage: m23 [11 12 13] [21 22 23] sage: v2*m23 (53, 56, 59) sage: m23*v3 (74, 134) (while of course v3*m23 and m23*v2 raise errors). This is all good. If we were to allow ^ for right action of a matrix on a (row) vector that would probably be OK but we certainly should not take away the ability to use * as well for the same thing (as in m23*v3) or many loud objections would be raised. By the way, I think it may be true that the preparser changes every ^ into ** so if we did introduce ^ for a right group action for use from the command line it would have to be implemented as **; for .py files I hope we could actually implement ^ to be used as itself. > > > > > > Are you now reconciled, Dima? > > > > John > > > > > > > >> > > >> All students learning permutations get confused about the order of > > >> multiplcation and just need to learn that there are two conventions and > > >> you *have to* know which is being used when you read something since > > >> otherwise half of what you read will not make sense. > > >> > > >> When I was a student I had two tutors who I handed work in to each week. > > >> One was (is) a group theorist > > >> (https://en.wikipedia.org/wiki/Peter_M._Neumann) for whom we had to > > >> write xf for the result of applying function f to object x, so fg meant > > >> "do f then g". The other was/is an analyst who only allowed f(x) and > > >> the other convention. I had to keep both happy (and get the right > > >> answers) so I leant fast. > > >> > > >> John > > >> > > >> -- > > >> 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/a0d38f53-cbf0-4667-9ba1-ab6a3b0c48dbo%40googlegroups.com. > > > > > > -- > > > You received this message because you are subscribed to a topic in the > > > Google Groups "sage-devel" group. > > > To unsubscribe from this topic, visit > > > https://groups.google.com/d/topic/sage-devel/f-wvE2S2LrA/unsubscribe. > > > To unsubscribe from this group and all its topics, 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/CAAWYfq2pFjZs8HxRSGGveH5Z%3D_AtkbCEstUG91Si0De5s%3D7f%2Bg%40mail.gmail.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/CAD0p0K7wp5kaJ6KjFj7Tr5qNZuVkon3DM%2BSL%2B7c%3DDMo7tthP1w%40mail.gmail.com. > > -- > You received this message because you are subscribed to a topic in the Google > Groups "sage-devel" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/sage-devel/f-wvE2S2LrA/unsubscribe. > To unsubscribe from this group and all its topics, 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/CAAWYfq1jUGEMB8GQLBDmxPTi9S0--bOzXO%3DpnBag-s1xdSNctw%40mail.gmail.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/CAD0p0K7XeM5Q-aWy1GE3oRkU8tfhYKu-_%2BSMOD4w_Kb5Sh%2BJqA%40mail.gmail.com.