This preview shows pages 1–2. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: Error Correcting Codes: Combinatorics, Algorithms and Applications (Fall 2007) Lecture 3: Error Correction and Distance August 31, 2007 Lecturer: Atri Rudra Scribe: Michael Pfetsch & Atri Rudra The following topics were discussed in the last lecture: • Shannon and Hamming noise models. • The C 3 ,rep repetition code can correct ≤ 1 errors and has a rate of R = 1 3 . • The C ⊕ parity code cannot correct even 1 error and has a rate of R = 4 5 . The last two points confirmed our intuition that one can correct more errors if the underlying code has more redundancy. In today’s lecture we will look a bit more closely at the parity code C ⊕ , which among other things will motivate another important parameter of codes called the distance . 1 A closer look at C ⊕ Last lecture we saw that C ⊕ cannot correct even 1 error. However, we will now see that C ⊕ can detect one error. Consider the following algorithm. Let y = ( y 1 , y 2 , y 3 , y 4 , y 5 ) be the received word– compute b = y 1 ⊕ y 2 ⊕ y 3 ⊕ y 4 ⊕ y 5 and declare an error if b = 1 . Note that when no error has occurred during transmission, y i = x i for 1 ≤ i ≤ 4 and y 5 = x 1 ⊕ x 2 ⊕ x 3 ⊕ x 4 , in which case b = 0 as required. If there is a single error then either y i = x i ⊕ 1 (for exactly one 1 ≤ i ≤ 4 ) or y 5 = x 1 ⊕ x 2 ⊕ x 3 ⊕ x 4 ⊕ 1 . It is easy to check that in this case b = 1 . In fact, one can extend this argument to to obtain the following result. Proposition 1.1. The parity code C ⊕ can detect an odd number of errors. Let us now revisit the example that showed that one cannot correct 1 error using C ⊕ . Consider the two codewords in C ⊕ , u = 00000 and v = 10001 (which are codewords corresponding to mes- sages 0000 and 1000 respectively). Now consider the two scenarios when u and v are transmitted and a single error occurs resulting in the received word r = 10000 in both cases. Now given the received word r and the fact that at most one error can occur, the decoder has no way of knowing whether the original transmitted codeword was u or v . Looking back at the example, it is clear that the decoder gets “confused” because the two codewords u and v do not differ in a lot of positions....
View Full Document
- Spring '10