Chien search

Chien search

In abstract algebra, the Chien search, named after R. T. Chien, is a fast algorithm for determining roots of polynomials defined over a finite field. The most typical use of the Chien search is in finding the roots of error-locator polynomials encountered in decoding Reed-Solomon codes and BCH codes.

Algorithm

We denote the polynomial (over the finite field GF(q)) whose roots we wish to determine as:

\ \Lambda(x) = \lambda_0 + \lambda_1 x + \lambda_2 x^2 + \cdots + \lambda_t x^t

Conceptually, we may evaluate Λ(β) for each non-zero β in GF(q). Those resulting in 0 are roots of the polynomial.

The Chien search is based on two observations:

  • Each non-zero β may be expressed as \alpha^{i_\beta} for some iβ, where α is a primitive element of GF(q). Thus the powers αi for 0 \leq i < (q-1) cover the entire field (excluding the zero element).
  • The following relationship exists:

\begin{array}{lllllllllll}
 \Lambda(\alpha^i) &=& \lambda_0 &+& \lambda_1 (\alpha^i) &+& \lambda_2 (\alpha^i)^2 &+& \cdots &+& \lambda_t (\alpha^i)^t  \\
                   &\triangleq& \gamma_{0,i} &+& \gamma_{1,i} &+& \gamma_{2,i} &+& \cdots &+& \gamma_{t,i}
\end{array}

\begin{array}{lllllllllll}
 \Lambda(\alpha^{i+1}) &=& \lambda_0 &+& \lambda_1 (\alpha^{i+1}) &+& \lambda_2 (\alpha^{i+1})^2 &+& \cdots &+& \lambda_t (\alpha^{i+1})^t  \\
                       &=& \lambda_0 &+& \lambda_1 (\alpha^i)\,\alpha &+& \lambda_2 (\alpha^i)^2\,\alpha^2 &+& \cdots &+& \lambda_t (\alpha^i)^t\,\alpha^t  \\
                       &=& \gamma_{0,i} &+& \gamma_{1,i}\,\alpha &+& \gamma_{2,i}\,\alpha^2 &+& \cdots &+& \gamma_{t,i}\,\alpha^t \\
                   &\triangleq& \gamma_{0,i+1} &+& \gamma_{1,i+1} &+& \gamma_{2,i+1} &+& \cdots &+& \gamma_{t,i+1}
\end{array}

In other words, we may define each Λ(αi) as the sum of a set of terms \{\gamma_{j,i} | 0\leq j \leq t\}, from which the next set of coefficients may be derived thus:

\ \gamma_{j,i+1} = \gamma_{j,i}\,\alpha^j

In this way, we may start at i = 0 with γj,0 = λj, and iterate through each value of i up to (q − 1). If at any stage the resultant summation is zero, i.e.

\ \sum_{j=0}^t \gamma_{j,i} = 0,

then Λ(αi) = 0 also, so αi is a root. In this way, we check every element in the field.

When implemented in hardware, this approach significantly reduces the complexity, as all multiplications consist of one variable and one constant, rather than two variables as in the brute-force approach.

References


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Chien Français Blanc et Noir — French White and Black Hound Country of origin France Traits Classification and standards FCI Group 6:Scenthounds. Section 1.1:Large sized scenthounds #220 …   Wikipedia

  • Chien Français Tricolore — French Tricolour Hound Country of origin France Traits Classification and standards FCI Group 6:Scenthounds. Section 1.1:Large sized scenthounds #316 …   Wikipedia

  • Chien Français Blanc et Orange — French White and Orange Hound Country of origin France Traits Classification and standards FCI Group 6:Scenthounds. Section 1.1:Large sized scenthounds #316 …   Wikipedia

  • Chien de guerre — Demande de traduction Dogs in warfare → Ch …   Wikipédia en Français

  • La Mission de Chien Noël — (À la recherche du Chien Noël au Québec ; The Search for Santa Paws) est un film américano canadien sorti en 2010 directement en vidéo. Ce film est un spin off de Les Copains fêtent Noël : La Légende de Chien Noël. Sommaire 1 Synopsis 2… …   Wikipédia en Français

  • Cabot (chien) — Cette page a été supprimée. Le journal des suppressions et des déplacements est affiché ci dessous pour référence. 21 novembre 2011 à 10:17 Azurfrog (discuter | contributions) a supprimé « Cabot (chien) » ‎ (Travail inédit : Le contenu était «… …   Wikipédia en Français

  • Dingo (chien sauvage) — Pour les articles homonymes, voir Dingo. Canis lupus dingo …   Wikipédia en Français

  • BCH code — In coding theory the BCH codes form a class of parameterised error correcting codes which have been the subject of much academic attention in the last fifty years. BCH codes were invented in 1959 by Hocquenghem, and independently in 1960 by Bose… …   Wikipedia

  • Reed–Solomon error correction — Reed Solomon error correction is an error correcting code that works by oversampling a polynomial constructed from the data. The polynomial is evaluated at several points, and these values are sent or recorded. Sampling the polynomial more often… …   Wikipedia

  • List of mathematics articles (C) — NOTOC C C closed subgroup C minimal theory C normal subgroup C number C semiring C space C symmetry C* algebra C0 semigroup CA group Cabal (set theory) Cabibbo Kobayashi Maskawa matrix Cabinet projection Cable knot Cabri Geometry Cabtaxi number… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”