Max Alekseyev on Wed, 12 Jun 2024 23:52:12 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Game: find the series


Hi Kurt,

Using series reversion is simpler, indeed. However, truncate() is not needed here - polcoef() works well directly on a power series.

Regards,
Max

On Tue, Jun 11, 2024 at 7:37 AM Kurt Foster <drsardonicus@earthlink.net> wrote:
On Jun 8, 2024, at 11:41 AM, Max Alekseyev wrote:

> Raising to the power x, we have S = (1+S)^x.
> Letting x -> 0, we conclude that S = 1 + x*T for some power series 
> x. Taking logarithm, we then have
> log(1 + x*T) = x*log(2 + x*T) = x*log(2) + x*log(1+x*T/2)
> That is, we have the power series identity
> x*log(2) + Sum_{k>=1} (-1)^(k-1) * x^k * T^k * (x - 2^k) / k / 2^k = 
> 0.
<snip>
Nice analysis!

> %3 = [L, 1/2*L^2 + 1/2*L, 1/6*L^3 + 5/8*L^2 + 1/4*L, 1/24*L^4 + 
> 3/8*L^3 + 9/16*L^2 + 1/8*L, 1/120*L^5 + 9/64*L^4 + 17/32*L^3 + 
> 7/16*L^2 + 1/16*L, 1/720*L^6 + 7/192*L^5 + 55/192*L^4 + 115/192*L^3 
> + 5/16*L^2 + 1/32*L]


Here is a slight variation of the implementation, with c = log(2) and 
S = 1 + z.  Pari-GP has a built-in series reversion routine 
serreverse().  I truncated to a polynomial to extract the coefficients.

? xinS=log(1+z)/(c+log(1+z/2));
? Sinx=serreverse(xinS);
? P=truncate(Sinx);
? for(i=1,6,print();print(i" "polcoeff(P,i,z)))

1 c

2 1/2*c^2 + 1/2*c

3 1/6*c^3 + 5/8*c^2 + 1/4*c

4 1/24*c^4 + 3/8*c^3 + 9/16*c^2 + 1/8*c

5 1/120*c^5 + 9/64*c^4 + 17/32*c^3 + 7/16*c^2 + 1/16*c

6 1/720*c^6 + 7/192*c^5 + 55/192*c^4 + 115/192*c^3 + 5/16*c^2 + 1/32*c
?