1 | initial version |

Factorization is a process of writing a polynomial to be *equal* to some product of irreducible polynomials. The accent falls on the word *equal*. So we have to perform this operation / this process over an *exact ring*. Best, we take a field as ring of constants. Examples of exact fields are `QQ`

, `GF(p)`

, for a prime `p`

, and it is simple to factorize over such rings. For instance:

```
sage: R.<x,y,z> = QQ[]
sage: factor(x^3 + y^3 + z^3 - 3*x*y*z)
(x + y + z) * (x^2 - x*y + y^2 - x*z - y*z + z^2)
sage: R.<x,y,z> = PolynomialRing(GF(3))
sage: factor(x^3 + y^3 + z^3)
(x + y + z)^3
```

But:

```
sage:
sage: S.<x,y,z> = CC[]
sage: factor(x^3 + y^3 + z^3 - 3*x*y*z)
---------------------------------------------------------------------------
NotImplementedError Traceback (most recent call last)
```

since `CC`

is not an exact ring.

Please always insert an example, or share with us the own tries, the answers are then pointed, and targeting a similar situarion.

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.