James Gregory’s series for π

is not so fast. It converges very slowly and so does not provide an efficient way to compute π. After summing half a million terms, we only get five correct decimal places. We can verify this with the following `bc`

code.

s = 0 scale = 50 for(k = 1; k <= 500000; k++) s += (-1)^(k-1)/(2*k-1) 4*s

which returns

3.14159__0__…

which differs from π in the sixth decimal place. So does that mean there’s nothing interesting about Gregory’s formula? Not so fast!

When anyone speaks of a number of correct decimals, they almost always mean the number of consecutive correct digits following the decimal point. But **for this post only** I’ll take the term **literally** to mean the number of decimals that match the decimals in the correct answer.

The number of correct decimals (in this non-standard use of the term) in the series above is not so bad. Here’s the result, with the digits that differ from those of π underlined:

3.14159__0__6535897932__40__4626433832__6__9502884197__2__…

So even though the sixth decimal value is wrong, the next 10 after that are correct, and then after a couple errors we get another string of correct digits.

In [1] the authors explain what makes this example tick, and show how to create similar sequences. For example, we see a similar pattern whenever the limit of the sum is half of a power of 10, but not so much for other limits. For example, let’s increase 500,000 to 600,000. We get

3.14159__0986923126572953384124016__

which is completely wrong after the sixth digit. So even though the result is slightly more accurate, it has fewer correct decimals.

## Related posts

[1] Jonathan Borwein, Peter Borwein, Karl Dilcher. Pi, Euler Numbers, and Asymptotic Expansions. American Mathematical Monthly. vol 96, p. 681–687.

.