Christian Reinsch, Roland Bulirsch, and the SVD
Christian Reinsch and Roland Bulirsch both passed away recently, Reinsch on October 8 and Bulirsch on September 21. Reinsch was 88 years old and Bulirsch was 89. Both of them were retired professors of numerical analysis at the Technical University of Munich. Both of them were friends of mine. But in almost all other ways, they were very different people.
Wilkinson and Reinsch
The Handbook for Automatic Computation, Volume II, Linear Algebra, is a research monograph published in 1971 by Springer-Verlag. This Handbook was edited by J. H. Wilkinson and Christian Reinsch and includes dozens of Algol procedures by 19 different authors for solving systems of simultaneous equations and computing matrix eigenvalues and singular values.
Wilkinson and colleagues at the National Physical Laboratory in Teddington, England wrote around half of the Algol procedures in the Handbook. Reinsch authored several procedures himself and reviewed and tested most, if not all, of the entire Handbook.
Translations into Fortran of many of the Algol codes produced the EISPACK subroutine library that led to the first MATLAB. I think it is fair to say that without the work of Jim Wilkinson and Christian Reinsch on the Handbook there might never have been a MATLAB.
Wilkinson versus Reinsch
I would have loved to listen in to discussions between Jim and Christian during the development of the Handbook. Here were two very talented, proud individuals working together at the detailed level required of scientific computer programing. It must have been exciting.
One small example: what subscripts do you use for the n-1 off-diagonal elements of the symmetric, tridiagonal matrix of order n produced in one procedure and passed to another? Is it e(1:n-1) or e(2:n)? (A "modern" e(0:n-2) is not a possibility.) The first statement of the Algol procedures for the QR algorithms is
for i := 2 step 1 until n do e[i-1] := e[i];
Was there some kind of disconnect between Teddington and Munich?
Reinsch Personal Life
Christian Reinsch was born in Chemnitz, Germany, in 1934. He spent most of his career at the Technical University Munich, where he was a close associate of Fritz Bauer.
Christian was an intensely private person. He never married and lived alone. He visited Argonne Laboratory in the 1970s, when we were working on EISPACK, and he attended a few Gatlinburg/Householder meetings. Other than that, he rarely travelled far from Munich.
This photo, taken by his colleague Christoph Zenger, is the only photo of Reinsch that I have ever seen. And, as far as I know, it will be the first photo of him available on the Internet.
Photo credit: Christoph Zenger
Gene Golub is known as Professor SVD because he did more than anyone else to develop the algorithms for computing the decomposition and for popularizing its applications. A 1965 paper by Golub and Velvel Kahan provides the first practical method for computing the SVD. The Golub/Kahan approach is based on the eigenvalues of the 2n-by-2n block matrix [0 A; A' 0] .
Peter Businger was a grad student at Stanford in the 1960's who worked with Golub on several projects. A 1967 Stanford technical report by Golub and Businger includes an Algol procedure, written by Businger, for computing the SVD that is based on bidiagonalizing A itself. Both Golub/Kahan and Golub/Businger suggest Sturm sequences and Givens rotations for ultimately computing the singular values.
At the same time, Christian Reinsch independently developed his own method for computing the SVD. His review work on the Handbook gave Reinsch access to the implicit tridiagonal QR techniques for matrix eigenvalues that Francis and Wilkinson were investigating. So, Reinsch adapted implicit QR with Wilkinson shifts to the singular value situation.
Both Gene Golub and Christian Reinsch offered SVD contributions for the Handbook . It turns out that, with exact arithmetic and the same shifts, Golub/Businger and Reinsch would produce the same results. But Golub and Businger never used Wilkinson shifts and Golub did not join the QR club until later. Fortunately, Fritz Bauer, editor in chief of the Handbook, brokered a joint authorship arrangement and the Golub-Reinsch algorithm for computing the SVD resulted.
Walter Gander has investigated the history of SVD algorithms. The slides for the talk he presented at a workshop in Lanzhou University are available at this link.
Stoer and Bulirsch
Einfuhrung in die Numerische Mathematik, Introduction to Numerical Analysis, is a classic textbook by Josef Stoer and Roland Bulirsch. The original German editions were published by Springer-Verlag in 1972 and 1976. The English translations were published in 1980 and 1993. A complete PDF of the second English edition is available at this link.
I think of Stoer & Bulirsch as one of the best theoretical textbooks in numerical analysis. It is comparable to Isaacson & Keller. There are theorems and proofs. There are algorithms, but no software. There are a few, but not many, numerical examples. There are many excellent exercises.
Bulirsch Personal Life
Roland Bulirsch was born in Liberec, in the former Czechoslovkia, in 1932. After visiting U. C. San Diego in the 1960's, he spent most of his career at the Technical University Munich. In contrast to Reinsch, Bulirsch was a very gregarious, public person. He adored his grand children and they adored him. The three-part photo collection assembled for his 80th birthday has hundreds of snapshots and portraits.
Roland was an avid body-builder. He had the broadest shoulders that I have ever seen -- and they were twice as broad as his waist. He had huge hands and huge biceps. One of my favorite stories about Roland explains the photo on his desk that was signed,
"Thanks for everything -- Arnie"
It turns out that Roland and a body-builder from Austria named Arnold Swartzenegger trained together in Munich in the 1960's. Roland and some friends from the gym took up a collection to help the ambitious young Arnie emigrate to America.
Here are a few photos from Roland's albums.
My last visit to T. U. Munich was in 2015. I gave my stump speech, The Evolution of MATLAB, in a big, new lecture hall named after Friedrich Bauer. Christian Reinsch was in the audience (skip to time stamp 13:59 in the video). He was over 70 years old at the time and had just finished his daily 50-kilometer bicycle ride.
After the talk, a few of us found our way to one of the famous Munich Biergarten. Christian came along but did not stay for dinner. He was not a beer drinker.
Roland Bulirsch was able to join us for dinner, however, and we managed to polish off a few of those one-liter German beer steins before closing down the place.
Get the MATLAB code
Published with MATLAB® R2022a