Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Road testing Ansus' continuum product formula
#1
Hi.

On the thread

http://math.eretrandre.org/tetrationforu...273&page=3

the following integral+continuum product iterative formula was mentioned for tetration to base e:



So I put together a Pari/GP code to road-test it numerically, to see if maybe it would converge on something. I use the formula



to convert the product to a sum (which also has the nice effect of changing the x+1 to x), and then the Faulhaber's formula (expressed using Bernoulli polynomials/coefficients) is used to do the continuous sum on a set of Taylor coefficients. The Bell polynomials can be used to compute the exponential exp of the series.

When I run the code, I notice something strange. For a small number of terms in the test array (I think around 15), it seems to converge and give like 4-5 digits of accuracy. For a larger number (say 28 or more), however, it starts converging but then it blows up.... Not sure if this is a problem with the code, or what... That's what I want to find out. As ultimately I'd like to be able to explore the general formula for other bases, including the really intriguing case of ...

Code:
/* Continuous sum transformation. */
bernoulli(n) = if(n==0, 1, (-1)^(n+1) * n * zeta(1 - n));
contsumcoef(series, k) = if(k==0, 0, k!*sum(n=1,matsize(series)[2], series[n]/(n!)*binomial(n, k)*bernoulli(n-k)));
sumoperator(series) = { local(v=series); for(i=1,matsize(series)[2],v[i] = contsumcoef(series, i-1)); return(v); }
tsum(series, x) = sum(k=0,matsize(series)[2]-1,series[k+1]/k! * x^k);

/* Compute exponential of a Taylor series. */
bellcomplete(coefs) = {
            local(n=matsize(coefs)[2]);
            local(M=matrix(n,n));
            for(i=1,n,\
                for(j=1,n,\
                    M[i, j] = 0;
                    if(j-i+1 > 0, M[i, j] = binomial(n-i, j-i)*coefs[j-i+1]);
                    if(j-i+1 == 0, M[i, j] = -1);
                );
            );
            return(matdet(M));
}

expoperator(series) = {
           local(v = series);
           for(i=1,matsize(series)[2]-1,
               v[i+1] = bellcomplete(vector(i,n,series[n+1])));
           v[1] = 1;
           return(v*exp(series[1]));
}

/* Compute integral of a Taylor series at lower bound a. */
intoperator(series, a) = {
           local(v = series);
           for(i=1,matsize(series)[2]-1,
               v[i+1] = series[i]);
           v[1] = -sum(i=2,matsize(series)[2],v[i]*(a^(i-1))/((i-1)!));
           return(v);
}

/* Tetration iteration */
tetiter(f0, series) = f0*intoperator(expoperator(sumoperator(series)), -1);

To use the code, run tetiter several times over a vector containing coefficients for an initial guess (all zeroes will work), and then use tsum to evaluate it at a given x-value. f0 should be set equal to a numerical value for the derivative at 0 (see the original thread for the value I used).
Reply


Messages In This Thread
Road testing Ansus' continuum product formula - by mike3 - 09/13/2009, 10:55 AM
the summation problem, references - by bo198214 - 09/21/2009, 02:29 PM
RE: the summation problem, references - by mike3 - 09/21/2009, 08:06 PM
RE: the summation problem, references - by mike3 - 09/22/2009, 05:27 AM
RE: the summation problem, references - by mike3 - 09/22/2009, 05:30 AM

Possibly Related Threads...
Thread Author Replies Views Last Post
  fixed point formula sheldonison 6 11,335 05/23/2015, 04:32 AM
Last Post: mike3
  Numerical algorithm for Fourier continuum sum tetration theory mike3 12 20,440 09/18/2010, 04:12 AM
Last Post: mike3



Users browsing this thread: 1 Guest(s)