The third and final exam will cover maximum likelihood and nearest neighbor decoding. It includes the study of maximal,
optimal and perfect codes. We discussed also sphere-packing and sphere covering bounds and the relevance of these bounds for
perfect and optimal codes. Also the estimation of the probability of correct decoding. And the transmission rate and
error-correcting rate and the statement of the noisy coding theorem. We also studied linear codes and their properties. We
discussed general notions of vector space, subspace, linear dependence and independence, solving simultaneous linear
equations with coefficients in a field, weight of a linear code, error-correcting in a linear code, determination of
distance, generator and parity check matrices for a code, syndrome decoding. The very last topic will either be a discussion
of Hamming codes or obtaining the left standard form of a generator matrix.