On Thu, Nov 13, 2014 at 6:56 PM, Bill Page <bill.p...@newsynthesis.org> wrote: > Sorry, I hit send before I was quite ready. To continue ... > > On 13 November 2014 19:24, Ondřej Čertík <ondrej.cer...@gmail.com> wrote: >> On Thu, Nov 13, 2014 at 2:00 PM, Ondřej Čertík <ondrej.cer...@gmail.com> >> wrote: >> ... >> For example, for |z| we get: >> >> |z|' = \partial |z| / \partial x = d |z| / d z + d |z| / d >> conjugate(z) = conjugate(z) / (2*|z|) + z / (2*|z|) = Re(z) / |z| >> >> Using our definition, this holds for any complex "z". Then, if "z" >> is real, we get: >> >> |z|' = z / |z| >> >> Which is exactly the usual real derivative. Bill, is this what you >> had in mind? That a CAS could return the derivative of abs(z) >> as Re(z) / abs(z) ? >> > > Yes, exactly. I think a question might arise whether we should treat > conjugate or Re as elementary.
Ok, thanks for the confirmation. There is an issue though --- since |z| is not analytic, the derivatives depend on the direction. So along "x" you get > >>> ... >>> What are the cons of this approach? >>> > > First, care needs to be taken to properly extend the chain rule to > include the conjugate Wirtinger derivative where necessary. > > Second, in principle problems can arise when defining a test for > constant functions. For example this is necessary as part of > rewriting expressions in terms of the smallest number of elementary > functions (normalize) as a kind of zero test for expressions in > FriCAS/Axiom. Usually we assume that > > df(x)/dx = 0 > > is necessary and sufficient for f to be a constant function. But > requiring that the total derivative > > d f / d z + d f / d conjugate(z) = 0 > > is not what we mean by constant. In fact it seems to be an open > question whether Richardson's theorem can be extended to include > conjugate as an elementary function in such a way that the zero test > is still computable. This is the last point of discussion on the > FriCAS email list. > > Bill. > > -- > 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 post to this group, send email to sage-devel@googlegroups.com. > Visit this group at http://groups.google.com/group/sage-devel. > For more options, visit https://groups.google.com/d/optout. -- 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 post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.