The SIAM 100-digit challenge

Problem 2: photon bouncing off circular mirrors;align:left

In January 2002 SIAM News publshed a short article of Nick Trefethen which proposed ten problems. They were each related to the computation of a certain quantity using computers. The challenge was to obtain at least 10 digit precision for each one of them. Thus the SIAM 100 digit challenge was born.

Each problem has its own challenges and is not solvable by hitting it directly with a piece of software. Still, using some smart thinking and some high precision software like Pari-GP can get you 10 digits in no time for some of these problems. Using more refined stuff can give amazing results

Despite the difficulty of the tasks at hand, it turns out that quite a few people managed to give all results with the desired precision. Moreover, following the contest, a book was written, containing solutions and details concerning each one of the problems with validation of the results up to 10000 digits for some of the problem (yes, ten thousand digits, that's possible...).

The book and details about programs, implementations and more, can be bought at SIAM or found online here. I will not be able to bring anything new to the picture. I just present the problems below and, since most of the high accuracy results were produced in Mathematica or Pari GP, I'll present some Matlab codes which can give you more than machine precision. In order to do that, I use the Advanpix multiprecision toolbox. The fact that Matlab can also give you hundreds of digits of precision comes from the combination of the details in the book and the work of Pavel Holoborodko, the one behind Advanpix.

Below I present you the problems and the Matlab codes which solve them (you need Advanpix for them to work; machine precision codes are present in the book). I leave out the details regarding the algorithms and the implementations, as they can easily be found in the book. By the way, if you are interested in gaining a few digits of precision for a current computation, read the book. You'll surely find something useful for this purpose.

... the art of confidently asserting the correctness up to a certain accuracy of a computed number, without being able to prove the assertion, but still being right, is not mathematics. But it is science. (quoted from the book - p. 232)

Problem 1. What is $\displaystyle \lim_{\varepsilon\to 0}\int_\varepsilon^1 x^{-1}\cos(x^{-1}\log x)dx $?
Code: siam1.m
Run: siam1(100) to get 100 digits of the result
Problem 2. A photon moving at speed $1$ in the $x-y$ plane starts at time $t = 0$ at $(x, y) = (1/2, 1/10)$ heading due east. Around every integer lattice point $(i, j)$ in the plane, a circular mirror of radius $1/3$ has been erected. How far from $(0, 0)$ is the photon at $t = 10$?
Code: siam2.m (the figure above is obtained using this code)
Run: siam2(10,100) to get 100 digits of the result
Problem 3. The infinite matrix $A$ with entries $a_{11} = 1$, $a_{12} = 1/2$, $a_{21} = 1/3$, $a_{13} = 1/4, a_{22} = 1/5, a_{31} = 1/6$, and so on, is a bounded operator on $\ell^2$. What is $\|A\|$?
Code: siam3.m
Run: siam3(200,50) to get 40 digits of the result
This one converges slow. All other results are known up to 10000 digits, while for this one, "only" 273 digits are known...
Problem 4. What is the global minimum of the function $$e^{\sin(50x)}+\sin(60e^y)+\sin(70\sin x)+\sin(\sin(80y))$$ $$-\sin(10(x+y))+(x^2+y^2)/4 \ \ ?$$
Code: siam4.m
Run: siam4(500) to get 500 digits of the result.
You need MinFunc in the Matlab path (see the Software section to get MinFunc)
Problem 5. Let $f(z)=1/\Gamma(z)$, where $\Gamma(z)$ is the gamma function, and let $p(z)$ be the cubic polynomial that best approximates $f(z)$ on the unit disk in the supremum norm $\|\cdot \|$. What is $\|f-p\|_{\infty}$?

The others will come later...


Last update: May 2017