Paper 1, Section II, I

Coding and Cryptography | Part II, 2020

(a) What does it mean to say that a binary code has length nn, size MM and minimum distance d?

Let A(n,d)A(n, d) be the largest value of MM for which there exists a binary [n,M,d][n, M, d]-code.

(i) Show that A(n,1)=2nA(n, 1)=2^{n}.

(ii) Suppose that n,d>1n, d>1. Show that if a binary [n,M,d][n, M, d]-code exists, then a binary [n1,M,d1][n-1, M, d-1]-code exists. Deduce that A(n,d)A(n1,d1)A(n, d) \leqslant A(n-1, d-1).

(iii) Suppose that n,d1n, d \geqslant 1. Show that A(n,d)2nd+1A(n, d) \leqslant 2^{n-d+1}.

(b) (i) For integers MM and NN with 0NM0 \leqslant N \leqslant M, show that

N(MN){M2/4, if M is even ,(M21)/4, if M is odd N(M-N) \leqslant\left\{\begin{array}{cl} M^{2} / 4, & \text { if } M \text { is even }, \\ \left(M^{2}-1\right) / 4, & \text { if } M \text { is odd } \end{array}\right.

For the remainder of this question, suppose that CC is a binary [n,M,d][n, M, d]-code. For codewords x=(x1xn),y=(y1yn)Cx=\left(x_{1} \ldots x_{n}\right), y=\left(y_{1} \ldots y_{n}\right) \in C of length nn, we define x+yx+y to be the word ((x1+y1)(xn+yn))\left(\left(x_{1}+y_{1}\right) \ldots\left(x_{n}+y_{n}\right)\right) with addition modulo 2.2 .

(ii) Explain why the Hamming distance d(x,y)d(x, y) is the number of 1 s in x+yx+y.

(iii) Now we construct an (M2)×n\left(\begin{array}{c}M \\ 2\end{array}\right) \times n array AA whose rows are all the words x+yx+y for pairs of distinct codewords x,yx, y. Show that the number of 1 s1 \mathrm{~s} in AA is at most

{nM2/4, if M is even n(M21)/4, if M is odd \begin{cases}n M^{2} / 4, & \text { if } M \text { is even } \\ n\left(M^{2}-1\right) / 4, & \text { if } M \text { is odd }\end{cases}

Show also that the number of 1 s1 \mathrm{~s} in AA is at least d(M2)d\left(\begin{array}{c}M \\ 2\end{array}\right).

(iv) Using the inequalities derived in part(b) (iii), deduce that if dd is even and n<2dn<2 d then

A(n,d)2d2dnA(n, d) \leqslant 2\left\lfloor\frac{d}{2 d-n}\right\rfloor

Typos? Please submit corrections to this page on GitHub.