# Roots of polynomials over a non-prime finite field in a given extension

I am trying to find the roots of a primitive polynomial over a non-prime finite field, in a desired extension. Here is an example of what I'm trying to do:

First, I define my non-prime finite field (GF(4)), and a primitive polynomial f.

```
sage: F.<a>=GF(4)
sage: K.<x>=F[]
sage: F
Finite Field in a of size 2^2
sage: K
Univariate Polynomial Ring in x over Finite Field in a of size 2^2
sage: f=x^4 + (a + 1)*x^3 + a*x^2 + a
sage: f.is_primitive()
True
```

Now, I define an extension field G where f has its roots

```
sage: G=f.root_field('b')
sage: G
Univariate Quotient Polynomial Ring in b over Finite Field in a of size 2^2 with modulus x^4 + (a + 1)*x^3 + a*x^2 + a
```

I assume that b is a root of f, by definition (correct me if I'm wrong). Now, I take a new primitive polynomial h.

```
sage: h=x^4 + x^3 + (a + 1)*x^2 + a
sage: h.is_primitive()
True
```

But when I try to find the roots of h in G, I get nothing.

```
sage: h.roots(ring=G)
[]
```

Could somebody tell me how I could get the roots of h in G with respect to b?

Are you sure h has some roots in G ?

@tmonteil Yes, it's of degree 4 over F4, so it has a root in F_{4^4} from finite field theory