Richard Wesley Hamming (February 11, 1915 – January 7, 1998) was an American mathematician whose work had many implications for computer engineering and telecommunications. His contributions include the Hamming code (which makes use of a Hamming matrix), the Hamming window, Hamming numbers, sphere-packing (or Hamming bound), Hamming graph concepts, and the Hamming distance.
Richard Hamming | |
---|---|
Born | Richard Wesley Hamming February 11, 1915 Chicago, Illinois, U.S. |
Died | January 7, 1998 Monterey, California, U.S. | (aged 82)
Alma mater | University of Chicago (B.S. 1937) University of Nebraska (M.A. 1939) University of Illinois at Urbana–Champaign (Ph.D. 1942) |
Known for | |
Awards | Turing Award (1968) IEEE Emanuel R. Piore Award (1979) Harold Pender Award (1981) IEEE Hamming Medal (1988) |
Scientific career | |
Fields | Mathematics |
Institutions |
|
Thesis | Some Problems in the Boundary Value Theory of Linear Differential Equations (1942) |
Doctoral advisor | Waldemar Trjitzinsky |
Born in Chicago, Hamming attended University of Chicago, University of Nebraska and the University of Illinois at Urbana–Champaign, where he wrote his doctoral thesis in mathematics under the supervision of Waldemar Trjitzinsky (1901–1973). In April 1945, he joined the Manhattan Project at the Los Alamos Laboratory, where he programmed the IBM calculating machines that computed the solution to equations provided by the project's physicists. He left to join the Bell Telephone Laboratories in 1946. Over the next fifteen years, he was involved in nearly all of the laboratories' most prominent achievements. For his work, he received the Turing Award in 1968, being its third recipient.[1]
After retiring from the Bell Labs in 1976, Hamming took a position at the Naval Postgraduate School in Monterey, California, where he worked as an adjunct professor and senior lecturer in computer science, and devoted himself to teaching and writing books. He delivered his last lecture in December 1997, just a few weeks before he died from a heart attack on January 7, 1998.
Early life
editHamming was born in Chicago, Illinois, on February 11, 1915,[2] the son of Richard J. Hamming, a credit manager, and Mabel G. Redfield.[3] His father was Dutch, and his mother was a Mayflower descendant.[4] He grew up in Chicago, where he attended Crane Technical High School and Crane Junior College.[3]
Hamming initially wanted to study engineering, but money was scarce during the Great Depression, and the only scholarship offer he received came from the University of Chicago, which had no engineering school. Instead, he became a science student, majoring in mathematics,[5] and received his Bachelor of Science degree in 1937.[2] He later considered this a fortunate turn of events. "As an engineer," he said, "I would have been the guy going down manholes instead of having the excitement of frontier research work."[2]
He went on to earn a Master of Arts degree from the University of Nebraska in 1939, and then entered the University of Illinois at Urbana–Champaign, where he wrote his doctoral thesis on Some Problems in the Boundary Value Theory of Linear Differential Equations under the supervision of Waldemar Trjitzinsky.[5] His thesis was an extension of Trjitzinsky's work in that area. He looked at Green's function and further developed Jacob Tamarkin's methods for obtaining characteristic solutions.[6] While he was a graduate student, he discovered and read George Boole's The Laws of Thought.[7]
The University of Illinois at Urbana–Champaign awarded Hamming his Doctor of Philosophy in 1942, and he became an instructor in mathematics there. He married Wanda Little, a fellow student, on September 5, 1942,[5] immediately after she was awarded her own Master of Arts in English literature. They would remain married until his death, and had no children.[3] In 1944, he became an assistant professor at the J.B. Speed Scientific School at the University of Louisville in Louisville, Kentucky.[5]
Manhattan Project
editWith World War II still ongoing, Hamming left Louisville in April 1945 to work on the Manhattan Project at the Los Alamos Laboratory, in Hans Bethe's division, programming the IBM calculating machines that computed the solution to equations provided by the project's physicists. His wife Wanda soon followed, taking a job at Los Alamos as a human computer, working for Bethe and Edward Teller.[5] Hamming later recalled that:
Shortly before the first field test (you realize that no small scale experiment can be done—either you have a critical mass or you do not), a man asked me to check some arithmetic he had done, and I agreed, thinking to fob it off on some subordinate. When I asked what it was, he said, "It is the probability that the test bomb will ignite the whole atmosphere." I decided I would check it myself! The next day when he came for the answers I remarked to him, "The arithmetic was apparently correct but I do not know about the formulas for the capture cross sections for oxygen and nitrogen—after all, there could be no experiments at the needed energy levels." He replied, like a physicist talking to a mathematician, that he wanted me to check the arithmetic not the physics, and left. I said to myself, "What have you done, Hamming, you are involved in risking all of life that is known in the Universe, and you do not know much of an essential part?" I was pacing up and down the corridor when a friend asked me what was bothering me. I told him. His reply was, "Never mind, Hamming, no one will ever blame you."[7]
Hamming remained at Los Alamos until 1946, when he accepted a post at the Bell Telephone Laboratories (BTL). For the trip to New Jersey, he bought Klaus Fuchs's old car. When he later sold it just weeks before Fuchs was unmasked as a spy, the FBI regarded the timing as suspicious enough to interrogate Hamming.[3] Although Hamming described his role at Los Alamos as being that of a "computer janitor",[8] he saw computer simulations of experiments that would have been impossible to perform in a laboratory. "And when I had time to think about it," he later recalled, "I realized that it meant that science was going to be changed".[2]
Bell Laboratories
editAt the Bell Labs Hamming shared an office for a time with Claude Shannon. The Mathematical Research Department also included John Tukey and Los Alamos veterans Donald Ling and Brockway McMillan. Shannon, Ling, McMillan and Hamming came to call themselves the Young Turks.[5] "We were first-class troublemakers," Hamming later recalled. "We did unconventional things in unconventional ways and still got valuable results. Thus management had to tolerate us and let us alone a lot of the time."[2]
Although Hamming had been hired to work on elasticity theory, he still spent much of his time with the calculating machines.[8] Before he went home on one Friday in 1947, he set the machines to perform a long and complex series of calculations over the weekend, only to find when he arrived on Monday morning that an error had occurred early in the process and the calculation had errored off.[9] Digital machines manipulated information as sequences of zeroes and ones, units of information that Tukey would christen "bits".[10] If a single bit in a sequence was wrong, then the whole sequence would be. To detect this, a parity bit was used to verify the correctness of each sequence. "If the computer can tell when an error has occurred," Hamming reasoned, "surely there is a way of telling where the error is so that the computer can correct the error itself."[9]
Hamming set himself the task of solving this problem,[3] which he realised would have an enormous range of applications. Each bit can only be a zero or a one, so if you know which bit is wrong, then it can be corrected. In a landmark paper published in 1950, he introduced a concept of the number of positions in which two code words differ, and therefore how many changes are required to transform one code word into another, which is today known as the Hamming distance.[11] Hamming thereby created a family of mathematical error-correcting codes, which are called Hamming codes. This not only solved an important problem in telecommunications and computer science, it opened up a whole new field of study.[11][12]
The Hamming bound, also known as the sphere-packing or volume bound is a limit on the parameters of an arbitrary block code. It is from an interpretation in terms of sphere packing in the Hamming distance into the space of all possible words. It gives an important limitation on the efficiency with which any error-correcting code can utilize the space in which its code words are embedded. A code which attains the Hamming bound is said to be a perfect code. Hamming codes are perfect codes.[13][14]
Returning to differential equations, Hamming studied means of numerically integrating them. A popular approach at the time was Milne's Method, attributed to Arthur Milne.[15] This had the drawback of being unstable, so that under certain conditions the result could be swamped by roundoff noise. Hamming developed an improved version, the Hamming predictor-corrector. This was in use for many years, but has since been superseded by the Adams method.[16] He did extensive research into digital filters, devising a new filter, the Hamming window, and eventually writing an entire book on the subject, Digital Filters (1977).[17]
During the 1950s, he programmed one of the earliest computers, the IBM 650, and with Ruth A. Weiss developed the L2 programming language, one of the earliest computer languages, in 1956. It was widely used within the Bell Labs, and also by external users, who knew it as Bell 2. It was superseded by Fortran when the Bell Labs' IBM 650 were replaced by the IBM 704 in 1957.[18]
In A Discipline of Programming (1976), Edsger Dijkstra attributed to Hamming the problem of efficiently finding regular numbers.[19] The problem became known as "Hamming's problem", and the regular numbers are often referred to as Hamming numbers in Computer Science, although he did not discover them.[20]
Throughout his time at Bell Labs, Hamming avoided management responsibilities. He was promoted to management positions several times, but always managed to make these only temporary. "I knew in a sense that by avoiding management," he later recalled, "I was not doing my duty by the organization. That is one of my biggest failures."[2]
Later life
editHamming served as president of the Association for Computing Machinery from 1958 to 1960.[8] In 1960, he predicted that one day half of the Bell Labs budget would be spent on computing. None of his colleagues thought that it would ever be so high, but his forecast actually proved to be too low.[21] His philosophy on scientific computing appeared as the motto of his Numerical Methods for Scientists and Engineers (1962):
The purpose of computing is insight, not numbers.[22]
In later life, Hamming became interested in teaching. Between 1960 and 1976, when he left Bell Labs, he held visiting or adjunct professorships at Stanford University, Stevens Institute of Technology, the City College of New York, the University of California at Irvine and Princeton University.[23] As a Young Turk, Hamming had resented older scientists who had used up space and resources that would have been put to much better use by the young Turks. Looking at a commemorative poster of the Bell Labs' valued achievements, he noted that he had worked on or been associated with nearly all of those listed in the first half of his career at Bell Labs, but none in the second. He therefore resolved to retire in 1976, after thirty years.[2]
In 1976 he moved to the Naval Postgraduate School in Monterey, California, where he worked as an adjunct professor and senior lecturer in computer science.[3] He gave up research, and concentrated on teaching and writing books.[5] He noted that:
The way mathematics is currently taught it is exceedingly dull. In the calculus book we are currently using on my campus, I found no single problem whose answer I felt the student would care about! The problems in the text have the dignity of solving a crossword puzzle – hard to be sure, but the result is of no significance in life.[5]
Hamming attempted to rectify the situation with a new text, Methods of Mathematics Applied to Calculus, Probability, and Statistics (1985).[5] In 1993, he remarked that "when I left BTL, I knew that that was the end of my scientific career. When I retire from here, in another sense, it's really the end."[2] And so it proved. He became Professor Emeritus in June 1997,[24] and delivered his last lecture in December 1997, just a few weeks before his death from a heart attack on January 7, 1998.[8] He was survived by his wife Wanda.[24]
Hamming's final recorded lecture series[25] is maintained by Naval Postgraduate School along with ongoing work[26] that preserves his insights and extends his legacy.
Awards and professional recognition
edit- Turing Award, Association for Computing Machinery, 1968.[27]
- IEEE Emanuel R. Piore Award – [28]
1979 "For introduction of error correcting codes, pioneering work in operating systems and programming languages, and the advancement of numerical computation." - Member of the National Academy of Engineering, 1980.[29]
- Harold Pender Award, University of Pennsylvania, 1981.[30]
- IEEE Richard W. Hamming Medal, 1988.[31]
- Fellow of the Association for Computing Machinery, 1994.[32]
- Basic Research Award, Eduard Rhein Foundation, 1996.[33]
The IEEE Richard W. Hamming Medal, named after him, is an award given annually by the Institute of Electrical and Electronics Engineers (IEEE), for "exceptional contributions to information sciences, systems and technology", and he was the first recipient of this medal.[34] The reverse side of the medal depicts a Hamming parity check matrix for a Hamming error-correcting code.[8]
Bibliography
edit- Hamming, Richard W. (1962). Numerical Methods for Scientists and Engineers. New York: McGraw-Hill.; second edition 1973
- — (1968). Calculus and the Computer Revolution. Boston: Houghton-Mifflin.
- — (1971). Introduction To Applied Numerical Analysis. New York: McGraw-Hill. ISBN 9780070258891.; Hemisphere Pub. Corp reprint 1989; Dover reprint 2012
- — (1972). Computers and Society. New York: McGraw-Hill.
- — (1977). Digital Filters. Englewood Cliffs, New Jersey: Prentice Hall. ISBN 978-0-13-212571-0.; second edition 1983; third edition 1989.
- — (1980). The Unreasonable Effectiveness of Mathematics. Washington, D.C.: The American Mathematical Monthly.
- — (1980). Coding and Information Theory. Englewood Cliffs, New Jersey: Prentice Hall. ISBN 978-0-13-139139-0.; second edition 1986.
- — (1985). Methods of Mathematics Applied to Calculus, Probability, and Statistics. Englewood Cliffs, New Jersey: Prentice Hall. ISBN 978-0-13-578899-8.
- — (1991). The Art of Probability for Scientists and Engineers. Redwood City, California: Addison-Wesley. ISBN 978-0-201-51058-4.
- — (1997). The Art of Doing Science and Engineering: Learning to Learn. Australia: Gordon and Breach. ISBN 978-90-5699-500-3.
Lectures
edit- 1991 - You and Your Research. Lecture sponsored by the Dept. of Electrical and Computer engineering, University of California, San Diego. Electrical and Computer Engineering Distinguished Lecture Series. Digital Object Made Available by Special Collections & Archives, UC San Diego.
Notes
edit- ^ "A.M. Turing Award, Richard W. Hamming". Association for Computing Machinery. Retrieved August 1, 2022.
- ^ a b c d e f g h "Computer Pioneers – Richard Wesley Hamming". IEEE Computer Society. Archived from the original on September 3, 2014. Retrieved August 30, 2014.
- ^ a b c d e f Carnes 2005, pp. 220–221.
- ^ H. Loomis, Herschel; S. Potter, David (2002). "Richard W. Hamming". Memorial Tributes: Volume 10. National Academies Press. doi:10.17226/10403. ISBN 978-0-309-08457-4.
- ^ a b c d e f g h i "Richard W. Hamming – A.M. Turing Award Winner". Association for Computing Machinery. Retrieved August 30, 2014.
- ^ "Hamming biography". University of St Andrews. Retrieved August 30, 2014.
- ^ a b Hamming 1998, p. 643.
- ^ a b c d e Morgan 1998, p. 972.
- ^ a b "Richard W. Hamming Additional Materials". Association for Computing Machinery. Retrieved August 30, 2014.
- ^ Shannon 1948, p. 379.
- ^ a b Morgan 1998, pp. 973–975.
- ^ Hamming 1950, pp. 147–160.
- ^ Ling & Xing 2004, pp. 82–88.
- ^ Pless 1982, pp. 21–24.
- ^ Weisstein, Eric W. "Milne's Method". MathWorld. Retrieved September 2, 2014.
- ^ Morgan 1998, p. 975.
- ^ Morgan 1998, p. 976–977.
- ^ Holbrook, Bernard D.; Brown, W. Stanley. "Computing Science Technical Report No. 99 – A History of Computing Research at Bell Laboratories (1937–1975)". Bell Labs. Archived from the original on September 2, 2014. Retrieved September 2, 2014.
- ^ Dijkstra 1976, pp. 129–134.
- ^ "Hamming Problem". Cunningham & Cunningham, Inc. Retrieved September 2, 2014.
- ^ Morgan 1998, p. 977.
- ^ Hamming 1962, pp. vii, 276, 395.
- ^ Carnes 2005, p. 220–221; Tveito, Bruaset & Lysne 2009, p. 59.
- ^ a b Fisher, Lawrence (January 11, 1998). "Richard Hamming, 82, Dies; Pioneer in Digital Technology". The New York Times. Retrieved August 30, 2014.
- ^ "Learning to Learn: The Art of Doing Science and Engineering lecture videos". Naval Postgraduate School, YouTube. Retrieved July 31, 2022.
- ^ "Hamming Resources at NPS". Naval Postgraduate School. Retrieved July 31, 2022.
- ^ "A. M. Turing Award". Association for Computing Machinery. Archived from the original on December 12, 2009. Retrieved February 5, 2011.
- ^ "IEEE Emanuel R. Piore Award Recipients" (PDF). IEEE. Archived from the original (PDF) on November 24, 2010. Retrieved March 20, 2021.
- ^ "NAE Members Directory – Dr. Richard W. Hamming". National Academy of Engineering. Retrieved February 5, 2011.
- ^ "The Harold Pender Award". School of Engineering and Applied Science, University of Pennsylvania. Archived from the original on February 22, 2012. Retrieved February 5, 2011.
- ^ "IEEE Richard W. Hamming Medal Recipients" (PDF). IEEE. Archived from the original (PDF) on June 20, 2010. Retrieved February 5, 2011.
- ^ "ACM Fellows – H". Association for Computing Machinery. Archived from the original on January 24, 2011. Retrieved February 5, 2011.
- ^ "Award Winners (chronological)". Eduard Rhein Foundation. Archived from the original on July 18, 2011. Retrieved February 5, 2011.
- ^ "IEEE Richard W. Hamming Medal". IEEE. Archived from the original on April 7, 2010. Retrieved February 5, 2011.
References
edit- Carnes, Mark C. (2005). American National Biography. Supplement 2. New York: Oxford University Press. ISBN 978-0-19-522202-9.
- Dijkstra, Edsger W. (1976). A Discipline of Programming. Englewood Cliffs, New Jersey: Prentice-Hall. ISBN 978-0-13-215871-8. Retrieved September 2, 2014.
- Hamming, Richard W. (1950). "Error detecting and error correcting codes" (PDF). Bell System Technical Journal. 29 (2): 147–160. doi:10.1002/j.1538-7305.1950.tb00463.x. MR 0035935. S2CID 61141773. Archived from the original (PDF) on May 25, 2006.
- Hamming, Richard (1962). Numerical Methods for Scientists and Engineers. New York: McGraw-Hill. ISBN 978-0-486-65241-2.
- Hamming, Richard (1980). "The Unreasonable Effectiveness of Mathematics". American Mathematical Monthly. 87 (2): 81–90. doi:10.2307/2321982. hdl:10945/55827. JSTOR 2321982. Archived from the original on February 3, 2007. Retrieved September 12, 2006.
- Hamming, Richard (August–September 1998). "Mathematics on a Distant Planet" (PDF). American Mathematical Monthly. 105 (7): 640–650. doi:10.2307/2589247. JSTOR 2589247.
- Ling, San; Xing, Chaoping (2004). Coding Theory: a First Course. Cambridge: Cambridge University Press. ISBN 978-0-521-82191-9.
- Morgan, Samuel P. (September 1998). "Richard Wesley Hamming (1915–1998)" (PDF). Notices of the AMS. 45 (8): 972–977. ISSN 0002-9920. Archived (PDF) from the original on February 15, 2004. Retrieved August 30, 2014.
- Pless, Vera (1982). Introduction to the Theory of Error-Correcting Codes. New York: Wiley. ISBN 978-0-471-08684-0.
- Shannon, Claude (July 1948). "A Mathematical Theory of Communication" (PDF). The Bell System Technical Journal. 27 (3): 379–423, 623–656. doi:10.1002/j.1538-7305.1948.tb01338.x. hdl:11858/00-001M-0000-002C-4314-2. Archived from the original (PDF) on March 28, 2015. Retrieved September 2, 2014.
- Tveito, Aslak; Bruaset, Are Magnus; Lysne, Olav (2009). Simula Research Laboratory: By Thinking Constantly about it. New York: Springer Science & Business Media. p. 59. ISBN 978-3-642-01156-6.