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.

Reply via email to