Question: Apparent bug regarding sum of floors

I have encountered a behavior of Maple that I find hard to explain and I am hoping for help. The command

sum(floor((exp(Pi)-Pi)*n)/3^n,n=0..infinity);

was meant to be an example of "High-precision fraud" as in the 1992 paper of Borwein and Borwein, and indeed it gives 29/2 to within 531 digits. But I am unable to make Maple see this; indeed I get with evalf(%,1000)

14.50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

I find it hard to guess why Maple gets this wrong, actually. The point of the example is that floor((exp(Pi)-Pi)*n)=20*n-1 for many n, but Maple has no problems finding the first failure at n=1112. It must hence be trying something more advanced than just adding up all summands until the tail sum is small enough to satisfy the precision? I guess an alternative approach would indeed be possible since what is being "floored" is relatively simple, but then that seems to be buggy?

Would be very grateful for any assistance!

Best,

Soren Eilers

 

 

 

Please Wait...