# `irreducible`

Test irreducibility of a polynomial

MuPAD® notebooks will be removed in a future release. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.

## Syntax

```irreducible(`p`)
```

## Description

`irreducible(p)` tests if the polynomial `p` is irreducible.

A polynomial is irreducible over the field k if p is nonconstant and is not a product of two nonconstant polynomials in .

`irreducible` returns `TRUE` if the polynomial is irreducible over the field implied by its coefficients. Otherwise, `FALSE` is returned. See the function `factor` for details on the coefficient field that is assumed implicitly.

The polynomial may be either a (multivariate) polynomial over the rationals, a (multivariate) polynomial over a field (such as the residue class ring `IntMod(n)` with a prime number `n`) or a univariate polynomial over an algebraic extension (see `Dom::AlgebraicExtension`).

Internally, a polynomial expression is converted to a polynomial of type `DOM_POLY` before irreducibility is tested.

## Examples

### Example 1

With the following call, we test if the polynomial expression x2 - 2 is irreducible. Implicitly, the coefficient field is assumed to consist of the rational numbers:

`irreducible(x^2 - 2)`
` `
`factor(x^2 - 2)`
` `

Since x2 - 2 factors over a field extension of the rationals containing the radical , the following irreducibility test is negative:

`irreducible(sqrt(2)*(x^2 - 2))`
` `
`factor(sqrt(2)*(x^2 - 2))`
` `

The following calls use polynomials of type `DOM_POLY`. The coefficient field is given explicitly by the polynomials:

`irreducible(poly(6*x^3 + 4*x^2 + 2*x - 4, IntMod(13)))`
` `
`factor(poly(6*x^3 + 4*x^2 + 2*x - 4, IntMod(13)))`
` `
`irreducible(poly(3*x^2 + 5*x + 2, IntMod(13)))`
` `
`factor(poly(3*x^2 + 5*x + 2, IntMod(13)))`
` `

## Parameters

 `p`

`p`