Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 15 The Minimum Distance of a Code (Section 4.4)

Similar presentations


Presentation on theme: "Lecture 15 The Minimum Distance of a Code (Section 4.4)"— Presentation transcript:

1 Lecture 15 The Minimum Distance of a Code (Section 4.4)
Theory of Information Lecture 13 Theory of Information Lecture 15 The Minimum Distance of a Code (Section 4.4)

2 u-Error-Detecting Codes
Definition A code C is called u-error-detecting if changing u symbols in any of its codewords does not yield another codeword in C. A code C is called exactly u-error-detecting if u is the largest such number, i.e., if the code is u-error detecting but not (u+1)-error-detecting. Examples: C = {000, 111} is exactly error-detecting C = {000000, , } is exactly error-detecting C = {1000, 0001} is exactly error-detecting Give examples of exactly single-error-detecting codes.

3 v-Error-Correcting Codes
Definition A code C is called v-error-correcting if nearest neighbor decoding can correct any v or fewer errors, without encountering a tie. A code C is called exactly v-error-correcting if v is the largest such number, i.e., if the code is v-error correcting but not (v+1)-error-correcting. Examples: C = {000, 111} is exactly error-correcting C = {000000, , } is exactly error-correcting C = {1000, 0001} is exactly error-correcting Give an example of an exactly 2-error-detecting code. Binary repetition code of length n, denoted Rep2(n), contains just two codewords: n 0’s and n 1’s. It is exactly error-detecting and exactly -error-correcting.

4 Telephone Numbers The set of all active US telephone numbers is a decimal (10-ary) block code of length 10. Its current size is about 115 million. Could it be made (at least) 1-error-correcting? I.e. is there a single-error-correcting decimal code of size 115,000,000? At this time, the maximum size n of a decimal single-error correcting code is not known. What is, however, known is that 82,644,620  n  100,000,000. Conclusion: the goal cannot be achieved for US, but can be achieved for a somewhat smaller country.

5 The Minimum Distance of a Code
Definition Let C be a code with at least two codewords. The minimum distance d(C) of C is the smallest Hamming distance between distinct codewords of C. Definition An (n,M,d)-code is a code of length n (#symbols in each codeword), size M (# codewords), and minimum distance d (smallest distance between codewords) Examples: C = {000, 010, 011} d(C) = C is a code C is exactly -error-detecting and exactly error-correcting C = {00011, 00101, 11101, 11000} d(C) = C is a code C={000000, , , } d(C)= C is a code Parameters

6 Three Theorems Theorem A code C is u-error-detecting if and only if
d(C) ≥ u + 1 Theorem A code C is v-error-correcting if and only if d(C) ≥ 2v + 1 Theorem A code C is exactly-v-error-correcting iff d(C) = 2v + 1 or d(C) =2v +2, i.e., v = (d(C) -1)/2.

7 Mixed Error Detection and Error Correction
Strategy (for v0): If a word x is received and the closest codeword c is at a distance v, and there is only one such codeword, then decode x as c. Otherwise declare an error. Definition A code C is simultaneously v-error-correcting and u-error-detecting if, whenever v errors are made, the above strategy will correct them and if, whenever at least v+1 but at most v+u errors are made, the above strategy simply reports an error. Theorem A code C is simultaneously v-error-correcting and u-error-detecting if and only if d(C)  2v+u+1.

8 Maximal Codes Definition An (n,M,d)-code is said to be maximal if it is not contained in any larger code with the same length and minimum distance, i.e. it is not a subset of any (n,M+1,d)-code. Are the following codes maximal? {0,1} {00,11} {001,111} {0000, 0011, 1111} {0000,0011,1100,1111} Theorem An (n,M,d)-code C is maximal iff, for all words x, there is a codeword cC such that d(x,c) < d. Is {001,111,100,010} maximal?

9 Pros and Cons for Maximizing Codes
Advantage: The code, after enlarging to a maximal one, will still remain (d-1)/2- error-correcting. Disadvantage: While the old code may be able to correct more than (d-1)/2 errors 0ccasionally, the new code will not be able to do so. Is C={00000,11100} maximal? Let C’ be any maximal code containing C If is sent but is received, can C correct it? can C’ correct it? why?

10 Theory of Information Lecture 13
Exercise 1 Consider the binary code C={11100,01001,10010,00111} Compute the minimum distance of C Using minimum distance decoding, decode the words 10000 01100 00100

11 Theory of Information Lecture 13
Exercise 3 Consider the code C consisting of all words in Z2n that have an even number of 1s. What is its length? size? minimum distance?

12 Theory of Information Lecture 13
Exercise 9 Does a binary (7,3,5)-code exist?

13 Theory of Information Lecture 13
Homework Exercises 2 and 8 of Section 4.4.


Download ppt "Lecture 15 The Minimum Distance of a Code (Section 4.4)"

Similar presentations


Ads by Google