Past exam of the mathematics course of the University of Cambridge 2002 iii Paper 30 3 Solution Created 2026-10-03 Updated 2026-10-14
Use with . The given primitive polynomial over a finite field makes have order . For a binary cyclic code, squaring a zero preserves the zero condition: for . Thus the binary cyclotomic cosets modulo an odd integer governing the four specified zeros areThe two displayed orbits are disjoint, each has size five, and together contain . Therefore specifying and already forces all four consecutive defining zeros of a cyclic code.
The minimal polynomial of an algebraic element of is . For , the orbit size shows that its algebraic minimal polynomial has degree five. The candidate vanishes there, sinceFor example, the five-bit representations of these terms are , whose sum is zero in . As is a monic polynomial of degree five and annihilates , it is precisely its algebraic minimal polynomial; no assumption that the provided polynomial list is exhaustive is necessary.
The narrow-sense primitive BCH code isBoth algebraic minimal polynomials divide each such , and they are coprime polynomials. Their product is a divisor of . Hence the generator polynomial is their product. Direct multiplication with field characteristic two givesThe designed distance is five, because vanishes at the four consecutive powers .
Here is an explicit BCH bound proof for these zeros. If a nonzero codeword had support of a vector of size , with distinct positions and nonzero coefficients , put . Evaluating at the first defining powers givesThe coefficient matrix has determinant , a nonzero Vandermonde determinant because the are distinct and nonzero. It therefore forces every , a contradiction. Thus the minimum Hamming distance is at least five.
For the matching upper bound, multiplication gives the actual codewordwhich has Hamming weight five and degree below . HenceThis proves the actual distance without needing the optional theorem. Its numerical hypothesis is also satisfied: with and the error parameter , , whereas .
Now calculate the root-evaluation syndrome for a cyclic code from the received polynomial. Reduction modulo gives , so . Substitution followed by the same reduction gives , whose five-bit representation is . ThusThe single-error test from two binary BCH syndromes identifies coordinate , since a one-bit error has syndromes . Flip that coordinate to obtainBoth defining evaluations vanish: and . More directly,so it is certainly a codeword of . It is at Hamming distance one from . Since the minimum Hamming distance is five, no other codeword can be within two errors of : such a word would be at distance at most three from , contradicting the proved distance. Thus this is the unique bounded-distance decoding under the linear code's two-error guarantee.
The decoded polynomial printed in the original PDF is incorrect. It instead adds to , giving a polynomial . Its defining evaluations areTherefore it is not a codeword, and the request to verify that it belongs to is a false premise. The field table and the printed syndromes agree with correction at ; the correction at does not. The boxed corrected polynomial resolves this source error and supplies the intended decoding and membership proof.
Past exam of the mathematics course of the University of Cambridge 2005 iii Paper 87 1 Solution Created 2026-10-03 Updated 2026-10-14
Work over the finite field , and write for row of the PDF's matrix. The first row has Hamming weight eleven; all other rows have Hamming weight seven. To check their intersections economically, index the last eleven columns modulo eleven. The last eleven rows, after deleting the first column, are the successive cyclic shifts of the set . Direct calculation givesThe intersection sizes for equal those for . Thus two different rows among meet in four positions, including their shared first coordinate, whereas meets each of these rows in six positions. All these intersection sizes are even numbers, while each row weight is an odd number. Consequently . The first row and column agree, and the entry of the last eleven-by-eleven block depends only on the sum of its row and column indices modulo eleven, because successive rows are left shifts. Thus is a symmetric matrix, so .
The generator matrix has rank twelve, andHence its linear code lies in its dual code . Both have dimension twelve, so : it is a self-dual code. Moreover , and is an invertible matrix, so this is another generator matrix for the same code. In the column parity-check matrix convention of the question,The matrix has rank twelve, so its nullspace condition characterizes exactly.
To prove the minimum Hamming distance, first observe that the rows of have Hamming weights twelve and eight. For binary vectors,Every partial sum of generator rows is orthogonal to every further generator row, by . Its intersection with that row therefore contains an even number of positions. Induction using this identity proves that every codeword has weight divisible by four: is a doubly even code.
The systematic-matrix proof of extended Golay distance now excludes weight four. Write a codeword as and put . If its total weight were four, . For , the right half is a row of and has weight seven or eleven. For , the right half is the sum of two distinct rows; the intersection counts above give weight or . For , the right half would be a unit vector, but then would be a row of , of weight seven or eleven. For , the right half would vanish, contradicting invertibility of . Thus no nonzero word has weight four. Every nonzero weight is consequently at least eight, and any generator row other than the first attains eight. Since the minimum Hamming distance of a linear code is its least nonzero weight,
Define the length- binary Golay code as the punctured code obtained by deleting the first coordinate of this extended binary Golay code. This puncturing is injective on , because a nonzero word in its kernel would have weight one. Thus , and deleting one coordinate gives . The sum of the first two generator rows has weight eight and first coordinate one, so its puncture has weight seven. Therefore . In fact any coordinate can be punctured: every left coordinate except the first occurs in a weight-eight generator row, the first occurs in the sum just used, and every right coordinate occurs in at least one of the weight-eight generator rows.
The radius-three Hamming balls around the words of are disjoint, since two centers in intersecting balls would have Hamming distance at most six. Each ball containswords. Their combined size is , the size of the entire binary Hamming space. Hence
For decoding in , write the received word as , where is the unknown error in its two halves. Its syndrome isLet denote the length-twelve unit vector. For bounded-distance decoding, the three-error syndrome decoding of extended Golay code is the following finite search, returning the first successful candidate error:
Every returned candidate has total Hamming weight at most three and the required syndrome. Conversely, an error of total weight at most three has a half of weight zero or one. The tests exhaust respectively , , , and , so they find every such error. Two distinct successful candidates would differ by a nonzero codeword of weight at most six, contradicting . Thus the result is unique, and the decoded word is . The condition still allows the first test when the weight is exactly three; for larger syndrome weight begin with the second test. A large syndrome weight alone does not imply more than three errors.
The decoder corrects every error of weight at most three; failure means that the received word is outside all radius-three decoding balls. Unlike its puncture, is not a perfect code: its radius-three balls cover only words. Without the three-error assumption, a successful test identifies a nearby codeword but need not identify the transmitted word.
For an arbitrary received word, a complete minimum-distance decoding fallback is to enumerate and minimize . Every error with the observed syndrome has exactly the form , so a minimizer gives a nearest codeword . Report all minimizers if there is a tie. This also decodes outside the guaranteed radius in the nearest-word sense, while making no unsupported claim that the transmitted word is determined. Thus a syndrome of weight at least three alone is insufficient for guaranteed recovery; either the three-error hypothesis or a choice among nearest words is needed.
Past exam of the mathematics course of the University of Cambridge 2005 iii Paper 87 3 Solution Created 2026-10-03 Updated 2026-10-14
For distinct evaluation points and , the Reed-Solomon code isThis is a linear code of dimension : evaluation is linear, and a nonzero polynomial of degree less than cannot vanish at all distinct points. The assertion of cyclicity concerns the primitive, unextended construction: set and , where generates the multiplicative group of a finite field . Arbitrary evaluation sets or arbitrary coordinate orders need not make a Reed-Solomon code a cyclic code.
For this ordered full-length construction, shifting the evaluation vector to the right gives . This is the evaluation vector of , whose degree is still less than , so it is a cyclic code. Its generator polynomial follows from the finite geometric seriesHere the scalar is nonzero in . Write and . For ,since . Thus every word is divisible by . This monic divisor of generates a cyclic code of dimension , equal to the evaluation code by inclusion and dimension. Hence
It is useful to allow a starting exponent for the consecutive zeros of a cyclic code. Define the primitive cyclic Reed-Solomon codeAll exponents are understood modulo . The same geometric-sum calculation shows thatIndeed evaluating its word polynomial at , , gives sums with exponents between one and . This is a generalized Reed-Solomon code, with nonzero coordinate multipliers ; is the unweighted evaluation code. Directly, a right shift corresponds to replacing by , so these offset codes are also cyclic codes.
A maximum distance separable code, or MDS code, is a linear code attaining the Singleton bound, with . To see the bound, deleting any coordinates is injective on a code of minimum Hamming distance , since two words with the same puncture would differ in at most positions. Therefore and . For a nonzero Reed-Solomon evaluation word, the polynomial has at most distinct polynomial roots, so at least coordinates are nonzero. Nonzero coordinate multipliers do not change these zero positions. This proves for both Reed-Solomon codes and generalized Reed-Solomon codes. Equality can also be exhibited: choose any evaluation points and take their linear factors as ; it vanishes exactly at those points and has weight . Thus
The duality of primitive cyclic Reed-Solomon codes is especially transparent in the evaluation form. Assume first . A vector of has coordinates , ; a vector of has coordinates , . Their standard dot product isEvery monomial in has exponent at least one and at most , and every such power sum vanishes. Thus . Both sides have dimension , givingIn particular has generator . This agrees with the general dual of a cyclic code rule: invert the roots belonging to the complementary factor . The dual is a Reed-Solomon code in the consecutive-zero convention. With the strictly unweighted evaluation definition, its coordinates instead have the form , so it is a generalized Reed-Solomon code; it need not equal the unweighted code of dimension on the same points. This convention distinction is essential. The case is the full word space and its dual is the zero code, obtained by taking .
For code encoding, use the finite-field discrete Fourier transform and its inverse:For a message , put for , and set all other transform coordinates to zero. The inverse discrete Fourier transform returnsThe zero transform coordinates are precisely the root checks defining . This gives non-systematic encoding by evaluation. For systematic polynomial encoding of a cyclic code with a message polynomial of degree less than , put and calculate the remainder of upon division by . Then is divisible by , and the last coefficients are the message coefficients. Both methods use the same generator polynomial and the same ordered powers of .
For bounded-distance decoding, let , put , and assume at most symbol errors. The following description uses the Reed-Solomon key equation and fixes the transform and locator conventions explicitly.
- Compute the syndromes for . The corresponding codeword transform values vanish. An error of value at coordinate contributes , where , so .
- Form . Use the Berlekamp-Massey algorithm, or the polynomial extended Euclidean algorithm applied to and , to solve with , , and . Choose the minimal-degree locator; zero syndrome gives , . The error locator polynomial is , and is the error evaluator polynomial.
- Perform a Chien search: test for . Its distinct zeros identify the erroneous coordinates. A mismatch between the degree and the number of distinct permitted roots is a decoding failure.
- Recover each error value by the Forney algorithm, with the present syndrome offset:
- Set , all other error coordinates to zero, and output . Verify that all root checks vanish and that the correction has weight at most . Recover the message from the unconstrained transform coordinates by , or from the last coefficients if systematic encoding was used.
The denominator in the Forney algorithm is nonzero for distinct locations. The minimum-distance error-detection and correction guarantee gives unique recovery because . If the required locator or a valid correction cannot be found, declare decoding failure. Beyond errors, a received word may lie near a different codeword, so successful root checks alone do not certify recovery of the originally transmitted message. The guaranteed correction radius is symbol errors.