ESSAY: Ten digit algorithms

AM (8 august 2005) This message appeared in the "NA Digest newsletter":

"I have written an essay, presented as the Mitchell Lecture at the recent Dundee meeting, that advocates the production of Ten Digit Algorithms, defined by the conditions "Ten digits, five seconds, and just one page". The essay comes with 32 Matlab examples. I imagine these views may provoke some strong reactions among NA Digest readers. Would interested parties like to take a look at http://web.comlab.ox.ac.uk/oucl/work/nick.trefethen/tda.html and send me any comments? If the responses are interesting I may post a follow-up note later on. Nick Trefethen, Oxford University"

Both the essay and the associated examples present a nice challenge IMHO for anyone interested in numerical analysis and Tcl.

RS isn't quite sure - can the following script be considered the minimal compliant "algorithm"? :^)

set tcl_precision 10 after 5000

Lars H: No, because it will take slightly longer than five seconds to run. :-) Like the "one page", "five seconds" is an upper bound (whereas the "ten digits" is a lower bound). Also, and more importantly, the algorithms still have to be algorithms: *they must actually compute something*. Hence your program is perhaps rather the minimal *noncompliant* program for computing the empty string.

KBK We have a few of the classic ten-digit algorithms in Tcllib. ::math::calculus::Romberg fits on a page if the parameter checking is stripped (and the default precision to request, coincidentally, is ten digits). I suspect that Richard could reduce the code in Constrained minimisation in one dimension to a page, and that's another classic.