On Thu, Nov 20, 2014 at 7:41 AM, Bill Page <bill.p...@newsynthesis.org> wrote:
> On 20 November 2014 01:54, Ondřej Čertík <ondrej.cer...@gmail.com> wrote:
>>
>> What you posted looks good. But we need to test it for arg(z), re(z),
>> im(z) and any other non-analytic function that we can find.
>>
>
> (1) -> re(x)==(conjugate(x)+x)/2
>                                                                    Type:
> Void
> (2) -> im(x)==%i*(conjugate(x)-x)/2
>                                                                    Type:
> Void
> (3) -> arg(x)==log(x/abs(x))/%i
>                                                                    Type:
> Void
> (4) -> re %i
>    Compiling function re with type Complex(Integer) -> Fraction(Complex
>       (Integer))
>
>    (4)  0
>                                              Type:
> Fraction(Complex(Integer))
> (5) -> im %i
>    Compiling function im with type Complex(Integer) -> Fraction(Complex
>       (Integer))
>
>    (5)  1
>                                              Type:
> Fraction(Complex(Integer))
> (6) -> arg %i
>    Compiling function arg with type Complex(Integer) -> Expression(
>       Complex(Integer))
>
>    (6)  - %i log(%i)
>                                            Type:
> Expression(Complex(Integer))
> (7) -> complexNumeric %
>
>    (7)  1.5707963267_948966192
>                                                          Type:
> Complex(Float)
> (8) -> D(re(x),x)
>    Compiling function re with type Variable(x) -> Expression(Integer)
>
>    (8)  1
>                                                     Type:
> Expression(Integer)
> (9) -> D(im(x),x)
>    Compiling function im with type Variable(x) -> Expression(Complex(
>       Integer))
>
>    (9)  0
>                                            Type:
> Expression(Complex(Integer))
> (10) -> D(arg(x),x)
>    Compiling function arg with type Variable(x) -> Expression(Complex(
>       Integer))
>
>              _             2       2
>          %i xx - 2%i abs(x)  + %i x
>    (10)  ---------------------------
>                            2
>                   2x abs(x)
>                                            Type:
> Expression(Complex(Integer))
>
>
> I had a thought. I suppose that all non-analytic (nonholomorphic) functions
> of interest can be written in terms of conjugate and some analytic
> functions, e.g.
>
>   abs(x)=sqrt(x*conjugate(x))
>
> so perhaps all we really need is to know how to differentiate conjugate
> properly?

I haven't thought of that, but I think you are right. It's definitely
true for abs(x), arg(x), re(x), im(x) and conjugate(x). Other
non-analytic functions are combinations of those. The only other way
to create some non-analytic functions is to define their real and
complex parts using "x" and "y", e.g.

f(x+iy) = (x^2+y^2) + i*(2*x*y)

You can imagine arbitrary complicated expressions. But then you just
substitute z, conjugate(z) for x, y.

So I think that for most things that people would use a CAS for, this is true.

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