HOME

TheInfoList



OR:

In
coding theory Coding theory is the study of the properties of codes and their respective fitness for specific applications. Codes are used for data compression, cryptography, error detection and correction, data transmission and data storage. Codes are stud ...
, the Forney algorithm (or Forney's algorithm) calculates the error values at known error locations. It is used as one of the steps in decoding
BCH code In coding theory, the Bose–Chaudhuri–Hocquenghem codes (BCH codes) form a class of cyclic error-correcting codes that are constructed using polynomials over a finite field (also called ''Galois field''). BCH codes were invented in 1959 ...
s and Reed–Solomon codes (a subclass of BCH codes). George David Forney Jr. developed the algorithm.


Procedure

:''Need to introduce terminology and the setup...'' Code words look like polynomials. By design, the generator polynomial has consecutive roots αc, α''c''+1, ..., α''c''+''d''−2. Syndromes Error location polynomial :\Lambda(x) = \prod_^\nu (1- x \, X_i) = 1 + \sum_^\nu \lambda_i \, x^i The zeros of Λ(''x'') are ''X''1−1, ..., ''X''''ν''−1. The zeros are the reciprocals of the error locations X_j = \alpha^. Once the error locations are known, the next step is to determine the error values at those locations. The error values are then used to correct the received values at those locations to recover the original codeword. In the more general case, the error weights can be determined by solving the linear system :s_0 = e_1 \alpha^ + e_2 \alpha^ + \cdots \, :s_1 = e_1 \alpha^ + e_2 \alpha^ + \cdots \, : \cdots \, However, there is a more efficient method known as the Forney algorithm, which is based on
Lagrange interpolation In numerical analysis, the Lagrange interpolating polynomial is the unique polynomial of lowest degree that interpolates a given set of data. Given a data set of coordinate pairs (x_j, y_j) with 0 \leq j \leq k, the x_j are called ''nodes'' an ...
. First calculate the error evaluator polynomial :\Omega(x) = S(x)\,\Lambda(x) \pmod \, Where is the partial syndrome polynomial: :S(x) = s_0 x^0 + s_1 x^1 + s_2 x^2 + \cdots + s_ x^. Then evaluate the error values: :e_j = - \frac \, The value is often called the "first consecutive root" or "fcr". Some codes select , so the expression simplifies to: :e_j = - \frac


Formal derivative

Λ'(''x'') is the
formal derivative In mathematics, the formal derivative is an operation on elements of a polynomial ring or a ring of formal power series that mimics the form of the derivative from calculus. Though they appear similar, the algebraic advantage of a formal derivati ...
of the error locator polynomial Λ(''x''): :\Lambda'(x) = \sum_^ i \, \cdot \, \lambda_i \, x^ In the above expression, note that ''i'' is an integer, and λ''i'' would be an element of the finite field. The operator · represents ordinary multiplication (repeated addition in the finite field) and not the finite field's multiplication operator.


Derivation

Lagrange interpolation In numerical analysis, the Lagrange interpolating polynomial is the unique polynomial of lowest degree that interpolates a given set of data. Given a data set of coordinate pairs (x_j, y_j) with 0 \leq j \leq k, the x_j are called ''nodes'' an ...
gives a derivation of the Forney algorithm.


Erasures

Define the erasure locator polynomial :\Gamma(x) = \prod (1- x \, \alpha^) Where the erasure locations are given by ''ji''. Apply the procedure described above, substituting Γ for Λ. If both errors and erasures are present, use the error-and-erasure locator polynomial :\Psi(x) = \Lambda(x) \, \Gamma(x)


See also

*
BCH code In coding theory, the Bose–Chaudhuri–Hocquenghem codes (BCH codes) form a class of cyclic error-correcting codes that are constructed using polynomials over a finite field (also called ''Galois field''). BCH codes were invented in 1959 ...
*
Reed–Solomon error correction Reed–Solomon codes are a group of error-correcting codes that were introduced by Irving S. Reed and Gustave Solomon in 1960. They have many applications, the most prominent of which include consumer technologies such as MiniDiscs, CDs, DVDs, B ...


References

* * * W. Wesley Peterson's book {{DEFAULTSORT:Forney algorithm Error detection and correction Coding theory