[GiNaC-list] series((x+x^2)^2,x,0) is broken

Richard B. Kreckel kreckel at in.terlu.de
Mon Jun 26 18:16:19 CEST 2023


Hello,

On 6/26/23 11:52, Vladimir V. Kisil wrote:
>>>>>> On Mon, 26 Jun 2023 10:26:55 +0200, "Richard B. Kreckel" <kreckel at in.terlu.de> said:
>      RK> Now, I may be missing something: Isn't
>      RK> Order(x^k*sin(1/x))==Order(x^k) at x==0?  And isn't
>      RK> Order(x^-1)==Order(x)^-1 not finite either but still fine in a
>      RK> Laurent series?
> 
>      I think a lot of confusion is coming because our function Order is
>    not clearly defined. First of all, if we speak on Order(x^4) do we mean
>    the asymptotic behaviour for x→0 or x→∞? For simple cases like
>    series(sin(x),x==0,4) = x-1/6*x^3+Order(x^4)
>    both orders are the same, but this is not true in general. Ginsh
>    answer
>    series(sin(x)+x^10,x==0,4) = 1*x+(-1/6)*x^3+Order(x^4)
>    suggests that we are speaking for  x→0  only.

We are speaking about small x, not large.
As when we say that e^x is 1+x+O(x^2).

>    Next, either GiNaC::Order() is only meaningful in the context of series
>    expansions of analytic functions or it is a sort of big-O concept? For
>    the latter take f(x) =  x^k * ( sin(1/x) +1) +x^m  with k > m.
>    Then for x→0  we have  f(x) =  O(x^k) but 1/f(x) = O(x^{-m}).

It is intended to be meaningful in the context of dimensional 
regularization in practical QFT use, i.e. Laurent series expansions.

>    Finally, if we only consider power expansion of analytic functions
>    then having a zero of an integer order n for f(x) at some point
>    implies that 1/f(x) has a pole of the same order n there. But I am not
>    sure that it will be safe to translate this into some properties of
>    GiNaC::Order().  Currently we have:
> 
>> series(x^(100),x==0,4);
> Order(x^4)
>> series(x^(-100),x==0,4);
> 1*x^(-100)

Which makes sense if we interpret series() as "compute the terms of 
orders smaller than the x^N term, don't bother about higher orders, but 
tell so me if you think there are any", no?

>    The root of the issue is that things like Order() are not about
>    identities, they are merely about inequalities—which are not
>    implemented very much in GiNaC presently..

Well, Vitaly had me convinced that Order(x)^k -> Order(x^k) is useful 
and safe for integer k > 0. Is it?

All my best,
   -richy.
-- 
Richard B. Kreckel
<https://in.terlu.de/~kreckel/>



More information about the GiNaC-list mailing list