ollowing demonstration is inspired and adapted from S. Lin and D.J. Costello, Error Control Coding (Englewood Cliffs, NJ: Prentice-Hall, 1983). Error-correction capability of linear block codes Since both vectors X and Z belong to the code, their Hamming distance satisfies d(X, Z) > dmin, or using the left-hand side inequality in Eq. (J3): d(X,Z)dmin2+1 Combining Eqs. (J4), (J5), and (J6), we then obtain: 2t+1<dmin <d(X,Z) <e+d(Y,Z) d(Y, Z) > To interpret the last inequality, consider the two possible cases: (a) ext, and (b) e > t. In case (a), we obtain 2t -e>t, thus, d(Y,2 Z) > t. Since in this case and from Eq. (J5) we also have d(Y, X) e t a this means that the received vector Y is closer to the transmitted vector X than any other vector Z in the code. The principle of maximum likelihood decoding (see Chapter 11) ensures that the code will necessarily correct the received block Y to the transmitted block X. Using Eq. (J3), with e < t, we also have 2e+1<2t+1 <dding The last inequality in the above result, thus, establishes that the code is capable of correcting all error patterns E having up to L(dmin - 1)/2] errors. Consider next case (b), where e > t. I am going to show that the code is not capable of correcting all the corresponding possible error patterns, because there exists at least one case where the received vector Y is closer to an incorrect vector Z than to the transmitted vector X. To show this, let X and Y be the transmitted and received vectors, respectively, and assume that: (1) Z is another vector in the code C such that d(X, Z) = dmin; (2) E and E2 are two different error patterns satisfying the properties: (i) E1 E2 = X + Z, (ii) E and E2 do not have nonzero bits in the same positions. Defining w(U) as the Hamming weight of the block or vector U, the consequences of the above assumptions are summarized by: w(E1 + E2) = w(X+Z) w(E1 E2) = w(E1) + w(E2) w(E1) )+w(E2)=w(X+Z)=d(X,Z)=dmin = = = w(X+Z) = = dmin. Appendix J The first and second equalities in Eq. (J9) obviously stem from properties (i