1 | initial version |

First define `k`

to be the field GF(2^5):

```
sage: k.<a> = FiniteField(2^5); k
Finite Field in a of size 2^5
```

Alternatively :

```
sage: k = GF(2^5, 'a')
```

Then define the polynomial ring `k[x]`

:

```
sage: R.<x> = PolynomialRing(k)
```

Alternatively:

```
sage: S = k[x]
```

Then, do your computation in R:

```
sage: P = R(x^6)
sage: P.mod(x^5+x^2+1)
x^3 + x
```

2 | No.2 Revision |

First define `k`

to be the field GF(2^5):

```
sage: k.<a> = FiniteField(2^5); k
Finite Field in a of size 2^5
```

Alternatively :

```
sage: k = GF(2^5, 'a')
```

Then define the polynomial ring `k[x]`

:

```
sage: R.<x> = PolynomialRing(k)
```

Alternatively:

`sage: `~~S ~~R = k[x]

Then, do your computation in R:

```
sage: P = R(x^6)
sage: P.mod(x^5+x^2+1)
x^3 + x
```

3 | No.3 Revision |

First define `k`

to be the field ~~GF(2^5):~~GF(2^5), whose generator is named `a`

:

```
sage: k.<a> = FiniteField(2^5); k
Finite Field in a of size 2^5
```

Alternatively :

```
sage: k = GF(2^5, 'a')
```

Then define the polynomial ring `k[x]`

:

```
sage: R.<x> = PolynomialRing(k)
```

Alternatively:

```
sage: R = k[x]
```

Then, do your computation in R:

```
sage: P = R(x^6)
sage: P.mod(x^5+x^2+1)
x^3 + x
```

4 | No.4 Revision |

First define `k`

to be the field GF(2^5), whose generator is named `a`

:

```
sage: k.<a> = FiniteField(2^5); k
Finite Field in a of size 2^5
```

Alternatively :

```
sage: k = GF(2^5, 'a')
```

Then define the polynomial ring `k[x]`

:

```
sage: R.<x> = PolynomialRing(k)
```

Alternatively:

`sage: R = `~~k[x]
~~k['x']

Then, do your computation in R:

```
sage: P = R(x^6)
sage: P.mod(x^5+x^2+1)
x^3 + x
```

5 | No.5 Revision |

~~First ~~First, define `k`

to be the field GF(2^5), whose generator is named `a`

:

```
sage: k.<a> = FiniteField(2^5); k
Finite Field in a of size 2^5
```

Alternatively :

`sage: k = GF(2^5, `~~'a')
~~'a'); k
Finite Field in a of size 2^5

~~Then ~~Then, define the polynomial ring `k[x]`

:

`sage: R.<x> = `~~PolynomialRing(k)
~~PolynomialRing(k); R
Univariate Polynomial Ring in x over Finite Field in a of size 2^5

Alternatively:

`sage: R = `~~k['x']
~~k['x'] ; R
Univariate Polynomial Ring in x over Finite Field in a of size 2^5

Then, do your computation in R:

```
sage: P = R(x^6)
sage: P.mod(x^5+x^2+1)
x^3 + x
```

6 | No.6 Revision |

First, define `k`

to be the field GF(2^5), whose generator is named `a`

:

```
sage: k.<a> = FiniteField(2^5); k
Finite Field in a of size 2^5
```

Alternatively :

```
sage: k = GF(2^5, 'a'); k
Finite Field in a of size 2^5
```

Then, define the polynomial ring `k[x]`

:

```
sage: R.<x> = PolynomialRing(k); R
Univariate Polynomial Ring in x over Finite Field in a of size 2^5
```

Alternatively:

`sage: R = `~~k['x'] ; ~~k['x']; R
Univariate Polynomial Ring in x over Finite Field in a of size 2^5

Then, do your computation in R:

```
sage: P = R(x^6)
sage: P.mod(x^5+x^2+1)
x^3 + x
```

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.