1

Given a irreducible polynomial $f$ of degree $n$ over a finite field $\mathbb{F}_{p}$. How do I find any root $\alpha \in \mathbb{F}_{p^n}$ of $f$? Is there a better way than trying out every element of $\mathbb{F}_{p^n}$?

  • Are coefficients in $\mathbb F_p$ or in $\mathbb F_{p^n}$? – Cloudscape Mar 30 '17 at 11:30
  • 1
    The coeffecients are in $\mathbb{F}_p$ – Jannes Braet Mar 30 '17 at 11:38
  • 3
    How is the field $\Bbb{F}{p^n}$ given? How large are $p$ and $n$ in the case that interests you? An irreducible polynomial of degree $n$ over $\Bbb{F}_p$ has exactly $n$ roots in $\Bbb{F}{p^n}$. They form a single orbit under the action of the Galois group (iterates of Frobenius). – Jyrki Lahtonen Mar 30 '17 at 11:39
  • I have not worked too much with finite fields, but maybe something like a companion matrix over field elements could work? – mathreadler Mar 30 '17 at 11:39
  • 1
    If it has a root, it won't be irreducible in $\mathbb F_{p^n}$.

    Let $\alpha \in \mathbb F_{p^n}$ be a root of $f$, ie. $f(\alpha) = 0$. We carry out division with remainder, dividing $f$ by the polynomial $(x - \alpha)$:

    $$ f(x) = (x - \alpha)q(x) + \beta,~~~~~~~ \beta \in \mathbb F_{p^n} $$

    Inserting $x = \alpha$ in the above equation proves $\beta = 0$ and $f = (x - \alpha)q$, contradicting irreducibility.

    On the other hand, if the root is not in $\mathbb F_p$ and the coefficients of $f$ are in $\mathbb F_p$, then $f$ may be irreducible in $\mathbb F_p$.

    – Cloudscape Mar 30 '17 at 11:39
  • @Cloudscape: The OP spelled out that it is irreducible over $\Bbb{F}_p$ – Jyrki Lahtonen Mar 30 '17 at 11:41
  • @JyrkiLahtonen Yes but it could have been forgotten in the subscript. – Cloudscape Mar 30 '17 at 11:42
  • If the bigger field is given in some other way you can try factoring $f$ over that bigger field. The linear factors correspond to zeros. There are factoring algorithms. – Jyrki Lahtonen Mar 30 '17 at 11:42
  • @JyrkiLahtonen Yes, but factoring is doing a lot more than I need and thus will probably be even slower than just trying every value – Jannes Braet Mar 30 '17 at 12:25
  • Factoring is faster than trying every value. See e.g. here. – Jyrki Lahtonen Mar 30 '17 at 13:16

1 Answers1

2

There are several methods to find roots of (irreducible) polynomials over finite fields, which are better than just testing every element. For example, the article Finding roots of polynomials over finite fields explains the fast polynomial evaluation algorithm, with some examples of primitive polynomials over $GF(2)$.

Dietrich Burde
  • 130,978