(10/07/2021, 04:12 PM)sheldonison Wrote:(10/07/2021, 05:20 AM)JmsNxn Wrote: All of the numbers you've posted evaluate small, but non-zero; no matter the depth of iteration I invoke. There also seems to be no branch-cuts after your singularities...
AHHH I see much more clearly. I think you are running into a fallacy of the infinite though.
(to begin, that should be \( \tau(z) \approx -\log(1+\exp(-z)) \), though (I'm sure it's a typo on your part).)
... My diagnosis of the singularities is loss of accuracy in the sample points of beta... And furthermore, straight up artifacts.
James,
I'm trying to understand your concerns.
I understand Sheldon, but I feel you've mistaken coding to mathematics.
Quote:It is true that I was focused exclusively on the zeros of \( f(z)=\ln(\beta(z+1,1)=\beta(z,1)-\ln(1+\exp(-z)) \). At each of the points I listed, beta(z) and f(z) are both well defined and analytic and relatively easy to compute with pari.gp, and at each of these points f(z)=0, which leads to a singularity in \( \ln(f(z)) \) and seems to be a problem... Unlike tet(z), which has no zeros in the complex plane for \( \Im(z)<>0 \) f(z) does have zeros, and it has an infinite number of zeros.
This works perfectly Sheldon, and I agree with you entirely right now. It is your next statement that loses track of the recursive process.
Quote:Am I correct that one of your suggestions would be to instead look at the following function in the neighborhood of the zeros?
\( \lim_{m\to \infty}f^m(z)=\ln^{\circ m}(f(z+m)) \)
Yes.
By doing this, we already move your singularities to the left by 10, in my code.
What you've written as the central object is:
\(
\log f(z) = \beta(z-1) + \tau^2(z-1)\\
\)
Which has singularities. Remember each time you iterate this equation it shifts us to the left of the rightside of this equation.
What we want is to iterate the relation:
\(
\log f(z+1) = \beta(z) + \tau^2(z)\\
\)
Rather flatly, Sheldon. Any singularity in \( \log f(z) \) gets pushed to the left as we continue the iterations. Because:
\(
\beta(s) + \tau(s) = \lim_{n\to\infty} \log^{\circ n} f(s+n)\\
\)
If \( \log f(z_0) = 0 \) then this doesn't imply that \( \log^{\circ n} f(z_0+n) = \infty \). Actually it implies that \( F(z-n) = \log^{\circ n}f(z_0) \) is a singularity mess. But, performing the proper iterations \( \log f(z+1) \); we don't get these singularities, because we push forward consistently.
So yes, every \( \tau^n(s) \) has singularities; for all n, but they move to the left as we take \( n\to\infty \). Luckily, this happens very very fast. So at about \( n = 10 \) we're good for about \( -1 \le \Re(z) \le 4 \). And luckily, again, this produces about 100 digit precision that fast.
I've taken more time to look at your questions about the Taylor series converging; and I'm not much better off. But I will say this. If I code everything with \p 1000 and \ps 300, the Taylor series get significantly more accurate (but still less than desired). The trouble it seems; is that the Taylor series are very slow converging.
This can be explained rather simply by your test too. If,
\(
h(z) = \sum_{n=0}^{100} a_n z^n\\
\)
Where, \( a_n = \frac{d^n}{dz^n}|_{z=0} \text{tet}_1(z) \) (I'm using \( \text{tet}_\lambda \) for the \( 2\pi i/ \lambda \) periodic tetration); which are real valued.
It has a radius of convergence \( r=2 \), yes; but these terms oscilate negative and positive a tad chaotically. If we write,
\(
\exp(h(-0.5)) - h(0.5)\\
\)
We might not get enough cancellation in the oscillating taylor series of \( h(-0.5) \). Actually; we have much better luck running,
\(
\exp(h(-0.1)) - h(0.9)\\
\)
Which will be much more accurate (about 1E-11 for \p 100 and \ps 35 versus 1E-5 for the first test). The trouble seems to be, once we add an oscillation (a negative argument), the Taylor series like to converge very very slow. I suspect, most definitely, this is happening because of the essential singularities along the lines \( |\Im(z)| = \pi \). We diverge brutally here, not just singularity wise, but along the entire line. This is the worst kind of singularity. Even at \( Im(z) = 2 \) we can expect the beginning of an extreme divergence.
So, in essence, \( h(-0.5) \) is less accurate than \( h(0.9) \). Pushing forward is more accurate than pulling back. Again, this is perfectly possible. It is not a contradiction, or a falsehood--it's just a god damned annoying inconvenience when calculating this.
My second point will be if we take \( \Re(z) \le -100 \); Taylor series are working absolutely fantastically. We need to take about n=115 iterations at this point, rather than n=10, but Taylor series converge to your desire. You can make them 1E-100 with your initial test, like it's nothing. This is because we're near the fixed point \( L \) (the fixed point of \( \exp \) with minimal positive imaginary part).
I've only been half successful though at applying \( \exp^{100} \) to get us back to \( -1 \le \Re(z) \le 4 \) accurately. We lose Taylor series data pretty fast. So this will only work for about \ps 20; and as I said before; this is not enough to sus out a picture of the tetration.
But, as the math will tell you. If we are holomorphic for \( \Re(z) \le -1E1000 \) and \( 0 < \Im(z) < \pi \); we are certainly holomorphic in the whole strip as we push forward. But, we aren't guaranteed as well behaved Taylor series--especially in Pari.
To conclude, I respect your arguments. But I'm still not convinced. My code is rather awful, and I'll be the first to admit it. But to code this better is really really hard. We don't get a nice Schroder function taylor series that's well behaved, and a nice theta mapping as a well behaved fourier series. We have to use recursion (at least at the moment), and it's volatile. Very fucking volatile. To get accurate readouts we need very large values of beta, and this diverges as fast as tetration; which means we are opening ourselves up to insane inaccuracies.

