Skip to main content
Engineering LibreTexts

3.2: Polynomial Reduction and the Chinese Remainder Theorem

Residue reduction of one polynomial modulo another is defined similarly to residue reduction for integers. A polynomial \(F(s)\) has a residue polynomial \(R(s)\) modulo \(P(s)\) if, for a given \(F(s)\) and \(P(s)\), a \(Q(s)\) and \(R(s)\) exist such that:

\[F(s)=Q(s)P(s)+R(s)\]

with

\[degree{R(s)}<degree{P(s)}\]

The notation that will be used is:

\[R(s)=((F(s)))_{P(s)}\]

For example,

\[(s+1)=((s^{4}+s^{3}-s-1))_{(s^{2}-1)}\]

The concepts of factoring a polynomial and of primeness are an extension of these ideas for integers. For a given allowed set of coefficients (values of \(x(n)\)), any polynomial has a unique factored representation:

\[F(s)=\prod_{i=1}^{M}F_{i}(s)^{k_{i}}\]

where the \(F_i(s)\) are relatively prime. This is analogous to the fundamental theorem of arithmetic.

There is a very useful operation that is an extension of the integer Chinese Remainder Theorem (CRT) which says that if the modulus polynomial can be factored into relatively prime factors:

\[P(s)=P_{1}(s)P_{2}(s)\]

then there exist two polynomials, \(K_1(s)\) and \(K_2(s)\), such that any polynomial \(F(s)\) can be recovered from its residues by:

\[F(s)=K_{1}(s)F_{1}(s)+K_{2}(s)F_{2}(s)\: mod\: P(s)\]

where \(F_1\) and \(F_2\) are the residues given by:

\[F_{1}(s)=((F(s)))_{P_{1}(s)}\]

and

\[F_{2}(s)=((F(s)))_{P_{2}(s)}\]

if the order of \(F(s)\) is less than \(P(s)\). This generalizes to any number of relatively prime factors of \(P(s)\) and can be viewed as a means of representing \(F(s)\) by several lower degree polynomials, \(F_i(s)\).

This decomposition of \(F(s)\) into lower degree polynomials is the process used to break a DFT or convolution into several simple problems which are solved and then recombined using the CRT of the above equation. This is another form of the “divide and conquer" or “organize and share" approach similar to the index mappings in Multidimensional Index Mapping.

One useful property of the CRT is for convolution. If cyclic convolution of \(x(n)\) and \(x(n)\) is expressed in terms of polynomials by:

\[Y(s)=H(s)X(s)\: mod\: P(s)\]

where

\[P(s)=s^{N}-1\]

and if \(P(s)\) is factored into two relatively prime factors

\[P=P_{1}P_{2}\]

using residue reduction of \(H(s)\) and \(X(s)\) modulo \(P_1\) and \(P_2\), the lower degree residue polynomials can be multiplied and the results recombined with the CRT. This is done by:

\[Y(s)=((K_{1}H_{1}X_{1}+K_{2}H_{2}X_{2}))_{P}\]

where

\[H_{1}=((H))_{P_{1}},\; \; X_{1}=((X))_{P_{1}},\; \; H_{2}=((H))_{P_{2}},\; \; X_{2}=((X))_{P_{2}},\]

and \(K_1\) and \(K_2\) are the CRT coefficient polynomials from the above equation. This allows two shorter convolutions to replace one longer one.

Another property of residue reduction that is useful in DFT calculation is polynomial evaluation. To evaluate \(F(s)\) at \(s=x\), \(F(s)\) is reduced modulo \(s=x\).

\[F(x)=((F(s)))_{s-x}\]

This is easily seen from the definition in the equation.

\[F(S)=Q(s)(s-x)+R(s)\]

Evaluating \(s=x\), gives \(R(s)=F(x)\) which is a constant. For the DFT this becomes:

\[C(k)=((X(s)))_{s-W^{k}}\]

Contributor

  • ContribEEBurrus