Constructing irreducible polynomials recursively with a reverse composition method

Abstract We suggest a construction of the minimal polynomial $$m_{\beta ^k}$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:msub> <mml:mi>m</mml:mi> <mml:msup> <mml:mi>β</mml:mi> <mml:mi>k</mml:mi> </mml:msup> </mml:msub> </mml:math> of $$\beta ^k\in {\mathbb {F}}_{q^n}$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:msup> <mml:mi>β</mml:mi> <mml:mi>k</mml:mi> </mml:msup> <mml:mo>∈</mml:mo> <mml:msub> <mml:mi>F</mml:mi> <mml:msup> <mml:mi>q</mml:mi> <mml:mi>n</mml:mi> </mml:msup> </mml:msub> </mml:mrow> </mml:math> over $${\mathbb {F}}_q$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:msub> <mml:mi>F</mml:mi> <mml:mi>q</mml:mi> </mml:msub> </mml:math> from the minimal polynomial $$f= m_\beta $$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:mi>f</mml:mi> <mml:mo>=</mml:mo> <mml:msub> <mml:mi>m</mml:mi> <mml:mi>β</mml:mi> </mml:msub> </mml:mrow> </mml:math> for all positive integers k whose prime factors divide $$q-1$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:mi>q</mml:mi> <mml:mo>-</mml:mo> <mml:mn>1</mml:mn> </mml:mrow> </mml:math> . The computations of our construction are carried out in $${\mathbb {F}}_q$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:msub> <mml:mi>F</mml:mi> <mml:mi>q</mml:mi> </mml:msub> </mml:math> . The key observation leading to our construction is that for $$k \mid q-1$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:mi>k</mml:mi> <mml:mo>∣</mml:mo> <mml:mi>q</mml:mi> <mml:mo>-</mml:mo> <mml:mn>1</mml:mn> </mml:mrow> </mml:math> holds $$\begin{aligned} m_{\beta ^k}(X^k) = \prod _{j=1}^{\frac{k}{t}} \zeta _{k}^{-jn} f (\zeta _{k}^j X), \end{aligned}$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:mtable> <mml:mtr> <mml:mtd> <mml:mrow> <mml:msub> <mml:mi>m</mml:mi> <mml:msup> <mml:mi>β</mml:mi> <mml:mi>k</mml:mi> </mml:msup> </mml:msub> <mml:mrow> <mml:mo>(</mml:mo> <mml:msup> <mml:mi>X</mml:mi> <mml:mi>k</mml:mi> </mml:msup> <mml:mo>)</mml:mo> </mml:mrow> <mml:mo>=</mml:mo> <mml:munderover> <mml:mo>∏</mml:mo> <mml:mrow> <mml:mi>j</mml:mi> <mml:mo>=</mml:mo> <mml:mn>1</mml:mn> </mml:mrow> <mml:mfrac> <mml:mi>k</mml:mi> <mml:mi>t</mml:mi> </mml:mfrac> </mml:munderover> <mml:msubsup> <mml:mi>ζ</mml:mi> <mml:mrow> <mml:mi>k</mml:mi> </mml:mrow> <mml:mrow> <mml:mo>-</mml:mo> <mml:mi>j</mml:mi> <mml:mi>n</mml:mi> </mml:mrow> </mml:msubsup> <mml:mi>f</mml:mi> <mml:mrow> <mml:mo>(</mml:mo> <mml:msubsup> <mml:mi>ζ</mml:mi> <mml:mrow> <mml:mi>k</mml:mi> </mml:mrow> <mml:mi>j</mml:mi> </mml:msubsup> <mml:mi>X</mml:mi> <mml:mo>)</mml:mo> </mml:mrow> <mml:mo>,</mml:mo> </mml:mrow> </mml:mtd> </mml:mtr> </mml:mtable> </mml:mrow> </mml:math> where $$t= \max \{m\in {\mathbb {N}}: m \mid \gcd (n,k), f(X) = g (X^m), g \in {\mathbb {F}}_q[X]\}$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:mi>t</mml:mi> <mml:mo>=</mml:mo> <mml:mo>max</mml:mo> <mml:mo>{</mml:mo> <mml:mi>m</mml:mi> <mml:mo>∈</mml:mo> <mml:mi>N</mml:mi> <mml:mo>:</mml:mo> <mml:mi>m</mml:mi> <mml:mo>∣</mml:mo> <mml:mo>gcd</mml:mo> <mml:mrow> <mml:mo>(</mml:mo> <mml:mi>n</mml:mi> <mml:mo>,</mml:mo> <mml:mi>k</mml:mi> <mml:mo>)</mml:mo> </mml:mrow> <mml:mo>,</mml:mo> <mml:mi>f</mml:mi> <mml:mrow> <mml:mo>(</mml:mo> <mml:mi>X</mml:mi> <mml:mo>)</mml:mo> </mml:mrow> <mml:mo>=</mml:mo> <mml:mi>g</mml:mi> <mml:mrow> <mml:mo>(</mml:mo> <mml:msup> <mml:mi>X</mml:mi> <mml:mi>m</mml:mi> </mml:msup> <mml:mo>)</mml:mo> </mml:mrow> <mml:mo>,</mml:mo> <mml:mi>g</mml:mi> <mml:mo>∈</mml:mo> <mml:msub> <mml:mi>F</mml:mi> <mml:mi>q</mml:mi> </mml:msub> <mml:mrow> <mml:mo>[</mml:mo> <mml:mi>X</mml:mi> <mml:mo>]</mml:mo> </mml:mrow> <mml:mo>}</mml:mo> </mml:mrow> </mml:math> and $$\zeta _{k}$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:msub> <mml:mi>ζ</mml:mi> <mml:mi>k</mml:mi> </mml:msub> </mml:math> is a primitive k -th root of unity in $${\mathbb {F}}_q$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:msub> <mml:mi>F</mml:mi> <mml:mi>q</mml:mi> </mml:msub> </mml:math> . The construction allows to construct a large number of irreducible polynomials over $${\mathbb {F}}_q$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:msub> <mml:mi>F</mml:mi> <mml:mi>q</mml:mi> </mml:msub> </mml:math> of the same degree. Since different applications require different properties, this large number allows the selection of the candidates with the desired properties.