Let be distinct elements of a finite field , with . The Reed-Solomon code consists of the evaluation vectorsEvaluation is an injective linear map: a nonzero polynomial of degree at most cannot vanish at all distinct points. Thus the dimension is . The same bound on polynomial roots shows that every nonzero codeword has Hamming weight at least . Conversely, choosing any evaluation points and taking their product of linear factors gives a polynomial whose evaluation vanishes at exactly those points. Its Hamming weight is . HenceFor completeness, deleting coordinates from a linear code of minimum Hamming distance is injective on codewords, since two words with the same retained coordinates would differ in fewer than positions. Therefore , giving the Singleton bound . The Reed-Solomon code attains this bound and is a maximum distance separable code. Multiplying individual coordinates by nonzero field elements changes neither the dimension nor the Hamming weight, so the same proof applies to a generalized Reed-Solomon code.
To specify the generator polynomials of a cyclic code unambiguously, use the primitive cyclic Reed-Solomon code convention. Put , choose a primitive element of a finite field , and setExponents are taken modulo . This generator polynomial is a monic polynomial of degree dividing , so the dimension is . It agrees with the evaluation formIndeed, at a defining exponent , a monomial contributes the finite geometric series . Its exponent lies between and , so the sum vanishes: but its th power is one. Every displayed evaluation vector therefore lies in the cyclic code, and both spaces have dimension , proving equality. The narrow-sense choice is the ordinary unweighted evaluation linear code on all nonzero field elements.
The duality of primitive cyclic Reed-Solomon codes now follows directly. A vector in has coordinates , while a vector in has coordinates , with . Their dot product is . Every appearing exponent is between and , so every such finite geometric series is zero. The two spaces are orthogonal and their dimensions sum to , givingThus the full cyclic family is closed under dual codes. The offset matters: the dual code of the narrow-sense linear code generally has offset zero, rather than one.
For arbitrary evaluation points, the precise statement is closure of generalized Reed-Solomon codes under duality. If , put and . Lagrange interpolation shows whenever : this sum is the coefficient of in the interpolation formula for . Taking with and proves orthogonality of and . Comparing dimensions gives equality with . An unweighted evaluation linear code at arbitrary points need not have an unweighted evaluation dual at the same points; the multiplier form and the cyclic offset formula resolve that convention issue.
For the length-, dimension- linear code, choose and as in the field table. Then andThe field characteristic is two, and the table gives . In the basis , the four roots are represented by . Their elementary symmetric functions areThe repeated terms in cancel because the field characteristic is two. There are no alternating minus signs in this characteristic, soFor example, the coefficient vectors in ascending order are , giving the required single powers of .
For the length-, dimension- linear code over , take the table's primitive element of a finite field and again . The four roots are . Expanding in givesThusThe coefficients are reduced modulo , including the constant term .
A suitable two-error-correcting Reed-Solomon code over is precisely the first linear code:Two distinct codewords cannot both be within Hamming distance two of a received word, because the triangle inequality would put them at distance at most four. Thus this linear code corrects any two symbol errors. Its generator polynomial has four consecutive defining zeros of a cyclic code, and its dimension and exact minimum Hamming distance have already been proved.
For a binary linear code , define the linear functional . This is the parity of the Hamming weight, so the even-weight subcode of a binary linear code isIf , then . Otherwise its image is all of , and rank-nullity theorem gives . The kernel of a linear map is a linear subspace, proving the required dichotomy including closure under addition.
Let be a full-rank generator matrix. Messages correspond bijectively to codewords . If the th column is nonzero, the coordinate is a nonzero linear functional. Choose with . Translation pairs the messages with coordinate zero and those with coordinate one, so exactly codewords contribute one at position . Summing over the columns proves the total weight of a full-support binary linear code formulaA zero column would contribute zero instead, explaining the hypothesis.
For the Hamming code, use a parity-check matrix whose columns are all nonzero vectors of , once each. Then and . The sum of all columns is zero: each coordinate occurs as one exactly times, which is even for . ConsequentlyUnder this column labelling, the support of a vector of a codeword is identified with a set of distinct nonzero columns whose sum is zero. No one-column or two-column support of a vector has this property, confirming .
We can count the low-weight coefficients of a binary Hamming code directly. For weight three, choose ordered distinct nonzero columns in ways. The third must be , which is nonzero and different from both. Every unordered support of a vector has orderings, so .
For weight four, the first two columns are again distinct and nonzero. The third must avoid , giving possibilities. The fourth is ; it is nonzero because , and cannot equal any of the first three because those are distinct. Conversely every ordered zero-sum four-tuple arises in this way. Dividing by gives .
For weight five, the first three columns must be linearly independent. If , the sum condition would force the fourth and fifth to coincide. Thus there are choices for the first three. Put . The fourth column must avoid all seven nonzero vectors of their linear span: would repeat a column; would force the fifth column to be zero; and would force the fifth column to be , respectively. Conversely, if avoids these seven vectors, is nonzero and distinct from . This gives choices for and determines . Dividing by yieldsAt , the last count is zero, as the argument also shows.
The dual code is the row space of , so its codewords are for . For nonzero , the linear functional takes value one on exactly half the vectors of , by the same translation-pairing argument used above. Removing the zero vector removes only a zero value, so the Hamming weight is still . Since has matrix rank , distinct give distinct codewords. This proves the constant weight of a binary simplex code and its full distribution:In particular, the ordinary weight enumerator of the binary simplex code is .
Apply the MacWilliams identity to this dual code, whose size is . For , the result isThe coefficient of in the second product is a value of the binary Kravchuk polynomialsThese bounds merely enforce and . Since , they agree with the bounds in the PDF. Therefore the requested formula isFor a further check on the low-weight counts, givesThus , , and . Substituting these into the boxed formula and using reproduces the three direct combinatorial counts above.
Finally, at the only possible term in the defining sum has , so , because is even. ConsequentlyThe unique length- binary word of weight is the all-ones word, exactly as proved by the parity-check matrix calculation.
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.
Articles by others on the same topic
There are currently no matching articles.