Past exam of the mathematics course of the University of Cambridge 2017 ii Paper 3 3G Solution Created 2026-09-24 Updated 2026-10-05
Identify a binary word with its coefficient polynomial in . A cyclic code is exactly an ideal of : closure under multiplication by is closure under cyclic shift. Its inverse image in the principal ideal domain has a unique monic generator polynomial of a cyclic code dividing . PutThe cubics have no root in , hence are irreducible polynomials. The eight monic divisors yield all binary cyclic codes of length seven. A code generated by has basis and dimension , with the zero code treated separately.
For the dual of a cyclic code, let . Orthogonality of coefficient vectors to all cyclic shifts gives the generator . Here . Thus the complete pairing, with the respective dimensions, isThese are respectively the whole-space/zero, even-weight/repetition, and two Hamming code/binary simplex code pairs. The reciprocal formula follows because the product of a word polynomial and the reversed polynomial of an orthogonal word has zero coefficients in all cyclic positions; the resulting inclusion has the correct complementary dimension, hence is equality.
Past exam of the mathematics course of the University of Cambridge 2019 ii Paper 2 3G Solution Created 2026-09-24 Updated 2026-10-03
Let and let be the parity-check matrix whose columns are the distinct nonzero vectors of the finite field vector space . The binary Hamming code isA perfect code has Hamming balls of radius about its codewords partitioning the whole ambient space, where is its minimum Hamming distance of a linear code.
No column of is zero and no two columns agree, so has no word of Hamming weight one or two. Three suitable columns sum to zero, so . For any received word , its syndrome is either zero or is the unique column of equal to that syndrome. In the first case ; in the second,so is at Hamming distance one from a codeword. Uniqueness follows from . Thus the radius-one balls partition , and the code is perfect.
For , the dual code is the binary simplex code of length seven. Every nonzero dual word evaluates a nonzero linear functional on the seven nonzero vectors of , and exactly four of those evaluations are one. Hence every nonzero word of has weight