Eisenstein polynomials #
Given an ideal π of a commutative semiring R, we say that a polynomial f : R[X] is
Eisenstein at π if f.leadingCoeff β π, β n, n < f.natDegree β f.coeff n β π and
f.coeff 0 β π ^ 2. In this file we gather miscellaneous results about Eisenstein polynomials.
Main definitions #
Polynomial.IsEisensteinAt f π: the property of being Eisenstein atπ.
Main results #
Polynomial.IsEisensteinAt.irreducible: if a primitivefsatisfiesf.IsEisensteinAt π, whereπ.IsPrime, thenfis irreducible.
Implementation details #
We also define a notion IsWeaklyEisensteinAt requiring only that
β n < f.natDegree β f.coeff n β π. This makes certain results slightly more general and it is
useful since it is sometimes better behaved (for example it is stable under Polynomial.map).
- mem : β {n : β}, n < Polynomial.natDegree f β Polynomial.coeff f n β π
Given an ideal π of a commutative semiring R, we say that a polynomial f : R[X]
is weakly Eisenstein at π if β n, n < f.natDegree β f.coeff n β π.
Instances For
- leading : Β¬Polynomial.leadingCoeff f β π
- mem : β {n : β}, n < Polynomial.natDegree f β Polynomial.coeff f n β π
- not_mem : Β¬Polynomial.coeff f 0 β π ^ 2
Given an ideal π of a commutative semiring R, we say that a polynomial f : R[X]
is Eisenstein at π if f.leadingCoeff β π, β n, n < f.natDegree β f.coeff n β π and
f.coeff 0 β π ^ 2.
Instances For
If a primitive f satisfies f.IsEisensteinAt π, where π.IsPrime,
then f is irreducible.