1 | initial version |

Your friend here is the `list`

method, which will give you the coefficients of `f`

as a polynomial in `xbar`

.

Then you will be able to take its discriminant.

Let us illustrate this step by step.

To begin with, for reference, here is the Sage version used below.

```
sage: version()
'SageMath version 7.2, Release Date: 2016-05-15'
```

Let us set some values for `n`

and `r`

so that the code works and others can try it out.

```
sage: n = 13
sage: r = 7
```

Now define `Zn`

, `R`

, `F`

, `y`

, `f`

as you did.

```
sage: Zn = Zmod(n)
sage: R = PolynomialRing(Zn, 'x')
sage: F = R.quotient(x**r-1)
sage: y = F(x+1)
sage: f = F(y**n)
```

We get:

```
sage: f
xbar^6 + 1
```

Get the coefficients:

```
sage: f.list()
[1, 0, 0, 0, 0, 0, 1]
```

Define the ring of polynomials over `ZZ`

:

```
sage: Zx = PolynomialRing(ZZ, 'x')
```

The polynomial corresponding to `f`

:

```
sage: ff = Zx(f.list())
sage: ff
x^6 + 1
```

The discriminant of this polynomial:

```
sage: ff.discriminant()
-46656
```

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.