Hamming - 48 Chapter 4 Hamming Codes In the late 1940’s...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 48 Chapter 4 Hamming Codes In the late 1940’s Claude Shannon was developing information theory and cod- ing as a mathematical model for communication. At the same time, Richard Hamming, a colleague of Shannon’s at Bell Laboratories, found a need for error correction in his work on computers. Parity checking was already being used to detect errors in the calculations of the relay-based computers of the day, and Hamming realized that a more sophisticated pattern of parity checking al- lowed the correction of single errors along with the detection of double errors. The codes that Hamming devised, the single-error-correcting binary Hamming codes and their single-error-correcting, double-error-detecting extended versions marked the beginning of coding theory. These codes remain important to this day, for theoretical and practical reasons as well as historical. 4.1 Basics Denote by L 3 the check matrix that we have been using to describe the [7 , 4] Hamming code: L 3 = 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 It has among its columns each nonzero triple from F 3 2 exactly once. From this and Lemma 3.1.12, we were able to prove that the [7 , 4] Hamming code has minimum distance 3. This suggests a general method for building binary Hamming codes. For any r , construct a binary r × 2 r- 1 matrix H such that each nonzero binary r-tuple occurs exactly once as a column of H . Any code with such a check matrix H is a binary Hamming code of redundancy binary Hamming code r , denoted Ham r (2). Thus the [7 , 4] code is a Hamming code Ham 3 (2). Each binary Hamming code has minimum weight and distance 3, since as before there are no columns and no pair of identical columns. That is, no pair of columns is linearly dependent, while any two columns sum to a third column, giving a triple of linearly dependent columns. Lemma 3.1.12 again applies. 49 50 CHAPTER 4. HAMMING CODES As defined, any code that is equivalent to a binary Hamming code is itself a Hamming code, since any permutation of coordinate positions corresponds to a permutation of the columns of the associated check matrix. The new check matrix is still a census of the nonzero r-tuples. Different codes and check matrices may be selected to suit different purposes. Examples. The following are check matrices for two [15 , 11] binary Hamming codes Ham 4 (2): 2 6 6 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 7 7 5 2 6 6 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 7 7 5 The first is the check matrix for a code which has a generator matrix in standard form (see page 35 and Problem 4.1.9 below). The second matrix checks a code which has no generator in standard form, since, for instance, (000000000001111) is a codeword....
View Full Document

{[ snackBarMessage ]}

Page1 / 14

Hamming - 48 Chapter 4 Hamming Codes In the late 1940’s...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online