Expansion of base-e pentation
#11
The analytic extension of Pentation wobbles.
pentation(-2)=-1
pentation(-1)=0
pentation(0)=1

Here, I'm graphing d/dx(pentation(x)), which wobbles in the neighborhood of z=-2..z=0, with two inflection points where the derivative has a local maxima, and a local minima. I calculated the Taylor series around -1 in the previous post, pentaylor(-1,1,0), which converges very nicely in the neighborhood of pent(-2)..pent(0), with approximately 21 digits of accuracy. Here, I am plotting the derivative of the paprx(x) Taylor series. So the pentation Taylor series apparently doesn't have the inherent beauty of the sexp Taylor series, for which all odd derivatives are positive for all real numbers>-2.
   

By the way, the wobble is quite a bit worst for smaller bases. Here is the graph for pentation base=1.7, from -6 to 6, where the wobble is visible without taking the first derivative. I think this has been pointed out before, but there is a lower limit base, for which pentation has a parabolic upper fixed point, in addition to the lower fixed point. That base is somewhere near B=1.6355. Again, the graph for pentation base 1.7 from -6 to 6.
- Sheldon
   

#12
I updated the pentation.gp code. The first thing the pentation code does is generate the sexp fixed point. The sexp fixed point gets very close to -2 as the base increases, and since there is a singularity at sexp(-2), that was breaking the previous code for bases>3. I decided to patch the slog function, and make a few other changes so that pentation at least works for bases<=10. It also works for all bases>=1.47, bases for which kneser.gp works.

This code includes all of the kneser.gp code, with the penation.gp code in one program, to make things simpler.

I also included the "sexpupfixed" routing, to iteratively generate the sexp base with a parabolic upper fixed point. The "sexpupfixed" routine requires about a dozen iterations of "init(B);loop" to get results accurate to 32 decimal digits, which takes about 15 minutes; I posted results for the value of the fixed point in this thread..
- Sheldon
Code:
\r pentation.gp
init(2);loop;  /* generate kneser.gp sexp series */
genpent;



Attached Files
.gp   pentation.gp (Size: 27.26 KB / Downloads: 809)
#13
(11/02/2010, 03:37 PM)sheldonison Wrote: I updated the pentation.gp code. The first thing the pentation code does is generate the sexp fixed point. The sexp fixed point gets very close to -2 as the base increases, and since there is a singularity at sexp(-2), that was breaking the previous code for bases>3. I decided to patch the slog function, and make a few other changes so that pentation at least works for bases<=10. It also works for all bases>=1.47, bases for which kneser.gp works.

This code includes all of the kneser.gp code, with the penation.gp code in one program, to make things simpler.

I also included the "sexpupfixed" routing, to iteratively generate the sexp base with a parabolic upper fixed point. The "sexpupfixed" routine requires about a dozen iterations of "init(B);loop" to get results accurate to 32 decimal digits, which takes about 15 minutes; I posted results for the value of the fixed point in this thread..
- Sheldon
Code:
\r pentation.gp
init(2);  /* generate kneser.gp sexp series */
genpent;

This is an update, with a fix for \( b=\exp(\pi/2) \), which was reported by Cherrina_Pixie in this thread. Its also includes a very new version of the core kneser.gp sexp code, which runs 5x-7x faster, mostly by generating a polynomial series for the Schroder and inverse Schroder functions for the superfunction and inverse superfunction routines. This eliminates many of the repeated iterations of log(log(log....) or exp(exp(exp))). The other thing I did was switch to using pari-gp built in polynomial handling. So that pentaylor, and sexptaylor, and slogtaylor all return pari-gp polynomials. Internal, the xtheta(x) and the xsexp(x) are stored as iteratively generated polynomials, as are the xsuperf, and xisuperf polynomails.

Because of the kneser.gp sexp(z) improvements included, the sexpupfixed example, that used to take a little over 15 minutes to generate the tetra-euler constant, now takes about 2 minutes and 15 seconds. The bigger improvement occurs on smaller bases.

Once I have a few more minor functions for bases<eta ported over, I will also put a new version of kneser.gp online.

Since there is some precision loss going from sexp(z) to pent(z), the new faster version of the code could be run in "\p 134" mode, to generate sexp(z) accurate to 67 decimal digits, and pent(z) accurate to 43 decimal digits, and would take or 53 seconds, for base e.
Code:
\r pentation.gp
\p 134
init; /* base e is the default */
loop; /* generate sexp(z) */
genpent;  /* generate pent(z) */
- Sheldon
fixed a typo with /p 134, in generating the superf/isuperf; the side effects might be rare

.gp   pentation.gp (Size: 41.29 KB / Downloads: 784)

Updated: This pentation.gp version has the kneser.gp version from the Sept 21st 2011 version of kneser.gp, with cosmetic and functional improvements.
#14
Thanks a lot for the new code.. I'm using it with \p 144 and here's what I got with the tetra-critical base:

Code:
pentation base        1.63532449671527639934534
pentation(-0.5)       0.540797083552851488750669
sexp fixed point      -1.64087257571659334856123
sexp slope at fixed   4.80600575430175169638439
pentation period      4.00236960853189042690462*I
pentation singularity -1.64567803532871618956816 + 2.00118480426594521345231*I
pentation precision, via sexp(pent(-0.5))-pent(0.5)
                      -1.07453771385838299166832 E-47

sexp base, sexp(upfixed)=upfixed 1.635324496715276399345344618306171081253245583805214921239933138
init;loop iterations required    5
upfixed, parabolic fixed point   3.088532271806717654482180782641118354591562305888618375366018821
sexp'(upfixed) base B            1.000000000000000000000000000000000000000000000000000000000000733
sexp(upfixed)-upfixed error      1.798819556079857201958540901921757666714851764784459372991669150 E-72

This took less than half hour, with the old code it could have taken several hours!

Base \( e \) needed only about three minutes, even at \p 144 =)


Possibly Related Threads…
Thread Author Replies Views Last Post
  complex base tetration program sheldonison 23 87,311 10/26/2016, 10:02 AM
Last Post: Gottfried
  Precision check on [pentation.gp] SOLVED Cherrina_Pixie 7 22,236 07/02/2011, 01:39 AM
Last Post: Cherrina_Pixie
  Convergence of matrix solution for base e jaydfox 6 17,756 12/18/2007, 12:14 AM
Last Post: jaydfox



Users browsing this thread: 1 Guest(s)