On Fri, Nov 14, 2014 at 12:14 AM, Ondřej Čertík <ondrej.cer...@gmail.com> wrote:
> 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

Sorry, a bug in gmail sent the message....

along "x" you 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|

but along "y" you get:

|z|' = \partial |z| / \partial i*y = d |z| / d z - d |z| / d
 conjugate(z) = conjugate(z) / (2*|z|) - z / (2*|z|) = i*Im(z) / |z|

So I get something completely different. So which direction should be preferred
in the CAS convention and why?

Ondrej

>
>>
>>>> ...
>>>> 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