he third position of the block sequence, and correction is made by adding to the bit (equivalently, by switching its polarity, or by adding E to Z). Thus any single- error occurrence (whether in payload or in parity bit fields) can be readily identified and corrected. What happens if there is more than one error in the received block? Consider the case of double errors in our (n, k) = (7,4 4) example. The possibilities of a single bit error correspond to seven different error patterns. For double errors, the number of possibilities is C2 = 7!/[2!(7 - 2)!] = 21, corresponding to 21 different error patterns. Since the syndrome is only three bits, it can only take 23 - 1 = 7 configurations. Thus, the syndrome is no longer associated with a unique error pattern. Here, the seven syndrome configurations correspond to 7 + 21 = 28 error patterns of either one- or two- bit errors. It is an easy exercise to determine the actual number of error patterns associated with each syndrome. For instance, the results show that S = (0, 0, 0), S = (0, 0, 1), S = (0, 1, 1) and S = (1, 0, 1) are associated with one, two, three and four patterns of two-bit errors, respectively. Thus, syndrome decoding can only detect the presence of errors, but cannot locate them with 100% accuracy, since they are associated with more than one error pattern. It is clear that with Hamming codes having greater numbers of parity bits, this imperfect correction improves in effectiveness, as the mapping E S becomes Error correction less redundant. The approach is, however, costly in bandwidth use, and error correction is, as we have announced, not "absolutely" efficient. This situation illustrates the fact that in most cases, syndrome decoding cannot determine the exact error pattern E, but only the one that is most likely to correspond to the syndrome, E0. The Hamming distance between E and E0 is minimized but is nonzero. Therefore, the substitution Z Z represents a best-choice correction rather than an exact corrective operation. This is referred to as max