Coding Theory: Linear Error-Correcting Codes Coding Theory Basic Definitions Error Detection and Correction Finite Fields Anna Dovzhik
Total Page:16
File Type:pdf, Size:1020Kb
Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Outline Coding Theory: Linear Error-Correcting Codes Coding Theory Basic Definitions Error Detection and Correction Finite Fields Anna Dovzhik Linear Codes Hamming Codes Finite Fields Revisited BCH Codes April 23, 2014 Reed-Solomon Codes Conclusion Coding Theory: Linear Error- Correcting 1 Coding Theory Codes Basic Definitions Anna Dovzhik Error Detection and Correction Outline Coding Theory 2 Finite Fields Basic Definitions Error Detection and Correction 3 Finite Fields Linear Codes Linear Codes Hamming Codes Hamming Codes Finite Fields Finite Fields Revisited Revisited BCH Codes BCH Codes Reed-Solomon Codes Reed-Solomon Codes Conclusion 4 Conclusion Definition A q-ary word w = w1w2w3 ::: wn is a vector where wi 2 A. Definition A q-ary block code is a set C over an alphabet A, where each element, or codeword, is a q-ary word of length n. Basic Definitions Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Definition If A = a ; a ;:::; a , then A is a code alphabet of size q. Outline 1 2 q Coding Theory Basic Definitions Error Detection and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Definition A q-ary block code is a set C over an alphabet A, where each element, or codeword, is a q-ary word of length n. Basic Definitions Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Definition If A = a ; a ;:::; a , then A is a code alphabet of size q. Outline 1 2 q Coding Theory Basic Definitions Error Detection Definition and Correction Finite Fields A q-ary word w = w1w2w3 ::: wn is a vector where wi 2 A. Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Basic Definitions Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Definition If A = a ; a ;:::; a , then A is a code alphabet of size q. Outline 1 2 q Coding Theory Basic Definitions Error Detection Definition and Correction Finite Fields A q-ary word w = w1w2w3 ::: wn is a vector where wi 2 A. Linear Codes Hamming Codes Finite Fields Definition Revisited BCH Codes A q-ary block code is a set C over an alphabet A, where each Reed-Solomon Codes element, or codeword, is a q-ary word of length n. Conclusion Definition For a code C, the minimum distance is denoted d(C) = minfd(w1w2): w1; w2 2 C; w1 6= w2g: Definition For a codeword w, the Hamming weight of w, or wt(w), is the number of nonzero places in w. That is, wt(w) = d(w; 0). Basic Definitions Coding Theory: Linear Error- Correcting Definition Codes Anna Dovzhik For two codewords, w1; w2, over the same alphabet, the Hamming distance, denoted d(w1; w2), is the number of places Outline where the two vectors differ. Coding Theory Basic Definitions Error Detection and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Definition For a codeword w, the Hamming weight of w, or wt(w), is the number of nonzero places in w. That is, wt(w) = d(w; 0). Basic Definitions Coding Theory: Linear Error- Correcting Definition Codes Anna Dovzhik For two codewords, w1; w2, over the same alphabet, the Hamming distance, denoted d(w1; w2), is the number of places Outline where the two vectors differ. Coding Theory Basic Definitions Error Detection and Correction Definition Finite Fields For a code C, the minimum distance is denoted Linear Codes Hamming Codes d(C) = minfd(w1w2): w1; w2 2 C; w1 6= w2g: Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Basic Definitions Coding Theory: Linear Error- Correcting Definition Codes Anna Dovzhik For two codewords, w1; w2, over the same alphabet, the Hamming distance, denoted d(w1; w2), is the number of places Outline where the two vectors differ. Coding Theory Basic Definitions Error Detection and Correction Definition Finite Fields For a code C, the minimum distance is denoted Linear Codes Hamming Codes d(C) = minfd(w1w2): w1; w2 2 C; w1 6= w2g: Finite Fields Revisited BCH Codes Reed-Solomon Codes Definition Conclusion For a codeword w, the Hamming weight of w, or wt(w), is the number of nonzero places in w. That is, wt(w) = d(w; 0). Example • A binary (3,4,2)-code • A = F2 = f0; 1g • C = f000; 011; 110; 101g The main coding theory problem: optimizing one parameter when others are given. Example Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Notation:A q-ary (n; M; d)-code Outline Coding Theory Basic Definitions Error Detection and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion The main coding theory problem: optimizing one parameter when others are given. Example Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Notation:A q-ary (n; M; d)-code Outline Example Coding Theory Basic Definitions • A binary (3,4,2)-code Error Detection and Correction • A = F2 = f0; 1g Finite Fields Linear Codes • C = f000; 011; 110; 101g Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Example Coding Theory: Linear Error- Correcting Codes Anna Dovzhik Notation:A q-ary (n; M; d)-code Outline Example Coding Theory Basic Definitions • A binary (3,4,2)-code Error Detection and Correction • A = F2 = f0; 1g Finite Fields Linear Codes • C = f000; 011; 110; 101g Hamming Codes Finite Fields Revisited The main coding theory problem: optimizing one parameter BCH Codes Reed-Solomon Codes when others are given. Conclusion Example Binary (3,3,1)-code C = f001; 101; 110g • e1 = 010 can be detected ! for all x 2 C, x + e1 62 C • e2 = 100 cannot be detected ! 001 + 100 = 101 2 C Errors Coding Theory: Linear Error- Correcting Codes Anna Dovzhik • vector received is not a codeword Outline • x is sent, but y is received ! e = x + y Coding Theory • To detect e, x + e cannot be a codeword Basic Definitions Error Detection and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Errors Coding Theory: Linear Error- Correcting Codes Anna Dovzhik • vector received is not a codeword Outline • x is sent, but y is received ! e = x + y Coding Theory • To detect e, x + e cannot be a codeword Basic Definitions Error Detection and Correction Finite Fields Example Linear Codes Binary (3,3,1)-code C = f001; 101; 110g Hamming Codes Finite Fields Revisited • e = 010 can be detected ! for all x 2 C, x + e 62 C BCH Codes 1 1 Reed-Solomon Codes • e2 = 100 cannot be detected ! 001 + 100 = 101 2 C Conclusion Theorem A code is u-error-detecting if and only if d(C) ≥ u + 1. Proof. (() Any error pattern of weight at most u will alter a codeword into a non-codeword. ()) Suppose that for x; y 2 C; d(x; y) ≤ u. Let e = x + y, wt(e) ≤ u, and x + e = x + x + y = y, which is a codeword. Therefore, e cannot be detected. ())(() Error Detection Coding Theory: Linear Error- Definition Correcting Codes A code is u-error-detecting if when a codeword incurs Anna Dovzhik between one to u errors, the resulting word is not a codeword. Outline Coding Theory Basic Definitions Error Detection and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Proof. (() Any error pattern of weight at most u will alter a codeword into a non-codeword. ()) Suppose that for x; y 2 C; d(x; y) ≤ u. Let e = x + y, wt(e) ≤ u, and x + e = x + x + y = y, which is a codeword. Therefore, e cannot be detected. ())(() Error Detection Coding Theory: Linear Error- Definition Correcting Codes A code is u-error-detecting if when a codeword incurs Anna Dovzhik between one to u errors, the resulting word is not a codeword. Outline Coding Theory Theorem Basic Definitions Error Detection A code is u-error-detecting if and only if d(C) ≥ u + 1. and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Error Detection Coding Theory: Linear Error- Definition Correcting Codes A code is u-error-detecting if when a codeword incurs Anna Dovzhik between one to u errors, the resulting word is not a codeword. Outline Coding Theory Theorem Basic Definitions Error Detection A code is u-error-detecting if and only if d(C) ≥ u + 1. and Correction Finite Fields Linear Codes Proof. Hamming Codes Finite Fields (() Any error pattern of weight at most u will alter a Revisited BCH Codes codeword into a non-codeword. Reed-Solomon Codes ()) Suppose that for x; y 2 C; d(x; y) ≤ u. Let e = x + y, Conclusion wt(e) ≤ u, and x + e = x + x + y = y, which is a codeword. Therefore, e cannot be detected. ())(() Definition A code is v-error-correcting if v or fewer errors can be corrected by decoding a transmitted word based on minimum distance. Theorem A code is v-error-correcting if and only if d(C) ≥ 2v + 1. That d−1 is, if C has a distance d, it corrects 2 errors. Error Correction Coding Theory: Linear Error- Correcting Codes • e + x is closer to x than any other codeword Anna Dovzhik • evaluate minimum distances Outline Coding Theory Basic Definitions Error Detection and Correction Finite Fields Linear Codes Hamming Codes Finite Fields Revisited BCH Codes Reed-Solomon Codes Conclusion Theorem A code is v-error-correcting if and only if d(C) ≥ 2v + 1. That d−1 is, if C has a distance d, it corrects 2 errors.