Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Richard Hamming
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Bell Laboratories == [[File:Hamming.jpg|thumb|upright=1.1|A two-dimensional visualisation of the [[Hamming distance]]. The color of each [[pixel]] indicates the [[Hamming distance]] between the [[binary representation]]s of its ''x'' and ''y'' coordinates, [[Modulo operation|modulo]] 16, in the 16-color system.]] At 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 (Bell Labs)|Young Turks]].<ref name="ACM" /> "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."<ref name="IEEE" /> Although Hamming had been hired to work on [[elasticity theory]], he still spent much of his time with the calculating machines.{{sfn|Morgan|1998|p=972}} 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.<ref name="Additional Materials" /> Digital machines manipulated information as sequences of zeroes and ones, units of information that Tukey would christen "[[bit]]s".{{sfn|Shannon|1948|p=379}} 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."<ref name="Additional Materials">{{cite web |title=Richard W. Hamming Additional Materials |url=http://amturing.acm.org/info/hamming_1000652.cfm |publisher=[[Association for Computing Machinery]] |access-date=August 30, 2014}}</ref> Hamming set himself the task of solving this problem,{{sfn|Carnes|2005|pp=220β221}} 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 (communication)|code word]] into another, which is today known as the [[Hamming distance]].{{sfn|Morgan|1998|pp=973β975}} Hamming thereby created a family of mathematical [[error-correcting code]]s, which are called [[Hamming code]]s. This not only solved an important problem in telecommunications and computer science, it opened up a whole new field of study.{{sfn|Morgan|1998|pp=973β975}}{{sfn|Hamming|1950|pp=147β160}} 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 (mathematics)|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.{{sfn|Ling|Xing|2004|pp=82β88}}{{sfn|Pless|1982|pp=21β24}} Returning to [[differential equation]]s, Hamming studied means of numerically integrating them. A popular approach at the time was Milne's Method, attributed to [[Edward Arthur Milne|Arthur Milne]].<ref>{{cite web |last=Weisstein |first=Eric W. |title=Milne's Method |publisher=MathWorld |url=http://mathworld.wolfram.com/MilnesMethod.html |access-date=September 2, 2014}}</ref> 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 [[Linear multistep method|Adams method]].{{sfn|Morgan|1998|p=975}} He did extensive research into digital [[Filter (signal processing)|filters]], devising a new filter, the [[Hamming window]], and eventually writing an entire book on the subject, ''Digital Filters'' (1977).{{sfn|Morgan|1998|p=976β977}} During the 1950s, he programmed one of the earliest computers, the [[IBM 650]], and with [[Ruth A. Weiss]] developed the [[L2 (programming language)|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.<ref>{{cite web |url=http://cm.bell-labs.com/cm/cs/cstr/99.html |archive-url=https://archive.today/20140902215751/http://cm.bell-labs.com/cm/cs/cstr/99.html |url-status=dead |archive-date=September 2, 2014 |title=Computing Science Technical Report No. 99 β A History of Computing Research at Bell Laboratories (1937β1975) |first1=Bernard D. |last1=Holbrook |first2=W. Stanley |last2=Brown |publisher=[[Bell Labs]] |access-date=September 2, 2014}}</ref> In ''A Discipline of Programming'' (1976), [[Edsger Dijkstra]] attributed to Hamming the problem of efficiently finding [[regular numbers]].{{sfn|Dijkstra|1976|pp=129β134}} 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.<ref>{{cite web |url=http://c2.com/cgi/wiki?HammingProblem |title=Hamming Problem |publisher=Cunningham & Cunningham, Inc. |access-date=September 2, 2014}}</ref> 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."<ref name="IEEE" />
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Richard Hamming
(section)
Add topic