12.3.5. Oak Ridge and Unitary Matrices

Wallace Givens and Alston Householder developed the Givens rotation transform and the Householder reflection transform during the 1950s at Oak Ridge National Laboratory [1] (ORNL) in Oak Ridge, Tennessee. The set of technologies that researchers at ORNL study include mathematics and computing. Alston Householder became the head of a new department called the Mathematics Panel in 1948. Householder attended the unveiling of the Mark I at Harvard and became convinced that Oak Ridge needed a large computing facility. After receiving bids from several vendors, ORNL purchased a copy of the Institute for Advanced Study (IAS) machine that John von Neumann designed. They gave their computer the name ORACLE, which was an acronym for Oak Ridge Automatic Computer and Logical Engine. It was built at Argonne National Laboratory and installed at ORNL in February 1954 [MERTZ70].

What ORNL had in ORACLE, and IBM machines that later replaced it, was a machine that required a staff of engineers to maintain and operate it. The facilities for input/output and programming were limited. The Annual Progress Reports of the Mathematics Panel [2] for the 1950s and 1960s document the progression of developing a library of essential programming functions, including mathematical functions. They wrote ORACLE’s early programs in assembly language. The programming capabilities improved considerably after they developed a compiler for the ALGOL programming language.

The Mathematics Panel worked on and wrote computer programs to solve problems in several branches of mathematics. Householder himself and a few other researchers, including Wallace Givens, had a strong interest in linear algebra and numerical analysis. Their highest priorities included unitary matrices, algorithms for orthogonal matrix factoring, and the eigenvalue problem.

12.3.5.1. The Origin of the Givens Rotation Transformation

Since geometric rotation matrices were known to be orthogonal, the strategy of using multiplication with a unitary matrix to change a matrix element to zero using rotation about another matrix element as described in Givens Rotation Matrices appears to have been a fairly obvious starting point for Alston Householder and Wallace Givens. Jacobi successfully used similar rotations more than one hundred years earlier to find the eigenvalues of the simplest matrix type (real and symmetric). Householder reports in his 1953 text [HOUSEHOLDER53] that Givens wrote about the construction of the rotation transformations in an ORNL internal memorandum in 1951. It is unknown to what extent Householder was involved in Givens’ work. He would have certainly been an advisor since Givens then reported to Householder.

Beyond just developing the unitary transformation, Given developed programs to apply it to numerical analysis problems. He authored an ORNL Technical Report in March of 1954 on using unitary rotations to calculate the eigenvalues of symmetric matrices [GIVENS54]. Then, he reported in the December 1954 Semiannual Progress Report for the Mathematics Panel that he could also find the eigenvectors of symmetric matrices [ORNL54]. In the Semiannual Progress Report of June 1956, he reported using unitary rotations to find the inverse of a matrix. However, he also reported only partial success in finding the eigenvalues of non-symmetric matrices [ORNL56].

After leaving ORNL for a faculty position at Wayne State University, Givens published a paper describing difficulties associated with the eigenvalue problem for non-symmetric matrices [GIVENS57]. This report does not go into the same level of detail about the algorithms he used as the technical report he wrote at ORNL. He presented a paper at a conference in late 1957 that was later published as a full JACM journal article in 1958 giving more details about unitary rotations and their application to the eigenvalue problem [GIVENS58]. This is the most frequently cited article for Givens rotation transformations.

12.3.5.2. The Origin of the Householder Reflection Transformation

Owing likely to the humility of Dr. Householder, reflection transformations were introduced with minimal publicity. The paper in which they were introduced [HOUSEHOLDER58] is only slightly over three pages long, and the only suggested application is for QR factoring to solve systems of equations or to calculate the inverse of a matrix. The given reason for developing the unnamed transform is to provide an alternative to Givens rotators for some applications. He points out that n(n-1)/2 rotators, each with a computationally expensive square root, are required for a n{\times}n QR factorization. The Householder transform only needs n - 1 transforms to accomplish the same task. Householder transforms are also faster on integer processors because they do not require square root calculations. He also briefly described the transformation in his 1964 book on numerical analysis [HOUSEHOLDER64].

It is now widely accepted that the Householder reflector is perhaps the most useful tool available in numerical analysis [DUBRULLE00]. The Givens rotator certainly has applications, but the Householder transform provides the foundation for orthogonal matrix factoring. Householder mentioned applying it to the QR decomposition, but it now has a role in every orthogonal matrix factorization.

Householder does not refer to the transform as a reflection matrix. Others gave it that name. The general equation for a reflection was known, but Householder adjusted the application. A reflection problem is often viewed from the perspective of finding the reflection of a vector relative to a fixed hyperplane, such as a mirror [HIGHAM02]. In the Householder transform equation, we know what the vector is and the target of where it should reflect. The location of the reflective hyperplane is found in the form of its normal vector (\bm{u} in equation (12.2)). Then the reflector matrix is found from \bm{u}.

Householder also does not say how he developed the reflection equation. Turnbull and Aitken wrote about the need and existence of such a transformation some 25 years previously [TURNBULL32]. Turnbull and Aitken referred to it as a type of rotation, which it is, but we already have Givens rotators, so we don’t use that moniker. Anyone with knowledge of linear algebra would naturally think about using projection equations to find the reflector matrix after examining figure Fig. 12.3. However, he does not mention vector projections in his publications.