Igor Schein on Wed, 9 May 2001 20:28:48 -0400


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

curious zeta() behavior


Hi, 

? default(realprecision,9);z=solve(x=-18.065,-18.064,zeta(zeta(x))-x);while(1,t=zeta(z);if(abs(t-z)<10^-precision(.),return(1),z=t))
1
? default(realprecision,19);z=solve(x=-18.065,-18.064,zeta(zeta(x))-x);while(1,t=zeta(z);if(abs(t-z)<10^-precision(.),return(1),z=t))
1
? default(realprecision,28);z=solve(x=-18.065,-18.064,zeta(zeta(x))-x);while(1,t=zeta(z);if(abs(t-z)<10^-precision(.),return(1),z=t))
  ***   argument equal to one in zeta.
? default(realprecision,38);z=solve(x=-18.065,-18.064,zeta(zeta(x))-x);while(1,t=zeta(z);if(abs(t-z)<10^-precision(.),return(1),z=t))
1
? default(realprecision,48);z=solve(x=-18.065,-18.064,zeta(zeta(x))-x);while(1,t=zeta(z);if(abs(t-z)<10^-precision(.),return(1),z=t))
1

Now the background.  Points x=~-18.0643 and y=~0.946 are *exceptional* 
points when you consider Julia set of zeta function.  So if pari had
infinite precision arithmetic, while loop above would never terminate,
because zeta(x)=y and zeta(y)=x.  However, with finite precision, the
iterations will either converge or diverge.  So what I found curious
is that default precision is the only one where iterations diverge,
and only on 32bit platform.  On 64bit platform the iterations always
converge regardless of precision.

Any comment?

Thanks

Igor