1. Consider the code of size 4 (4 codewords) and of length 10 with codewords listed below.
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 1 1 1
1 1 1 1 1 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1
a) Is this code a linear code? b) What is the minimum distance of the code and how many errors can the code correct? c) What is the union bound on the decoded error probability of this code when the channel is a binary symmetric channel with crossover probability p?
(The channel is also memoryless; that is any bit is in error independent of the all other bits being in error or not). d) Find a decoding rule that requires for any particular received vector y = (y1, y2, . . . , y10) two computations of the Hamming distance between two vectors of length 5 to determine which codeword was sent. (The decoding rule must be such that if the number of errors is less than the correct answer to part (b) the decoding rule will be able to correct these errors).
2. (a) The Hamming code has the following parity check matrix
If the received vector is r = (0,1,0,1,1,1,1) find the most likely transmitted codeword (over a binary symmetric channel with error probability less than 1/2). What is the error correcting capability of the code.
(b) For the linear code with generator matrix shown below find the minimum distance of the code, the error correcting capability of the code and the code rate. Find a upper bound on the probability of a codeword decoding error on a binary symmetric channel.
3. Code 4 in the lecture notes (on line version) contains 32 codewords of length 15 with minimum distance 7.
(a) Simulate a communication system with this code on an additive white Gaussian noise channel. Count (at least) 100 errors and plot the error probability for signal-to-noise ratios (Eb/N0) from 0 to 6dB in steps of (no more than) 0.5dB.
(b) Determine the union bound on the performance and also plot (on the same plot as part
(a)) the union bound.
(c) Simulate the performance of a hard decision decoder that always decodes to the closest codeword. Plot the codeword error probability (on the same plot as (a) and (b)).
(d) Plot the union bound to the performance of a hard decision decoder (of part (c)).
(e) Simulate the performance of a bounded distance decoder that only corrects 0,1,2 or 3 errors. Determine the probability of choosing the wrong codeword and the probability that the received vector is not within distance 3 of any codeword (this is called a decoding failure).
(f) For a bounded distance decoder and a hard decision channel, i.e. a BSC, analyze (provide a formula) for the probability the decoder does not output the correct codeword.