JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

Polynomial Rings, Gauss's Lemma, and Eisenstein

If R is a UFD then so is R[x] — the engine is Gauss's lemma, which says the product of primitive polynomials is primitive and lets factorization over Frac(R) descend to R. We prove it, derive that Z[x] is a UFD, and put Eisenstein's criterion to work proving irreducibility fast.

Primitive polynomials and Gauss's lemma

Let R be a UFD with fraction field K = Frac(R). The content of a nonzero polynomial f ∈ R[x] is the gcd of its coefficients, and f is primitive if its content is a unit — its coefficients share no common prime factor. Any f ∈ R[x] factors as f = c(f)·f₀ with f₀ primitive. The remarkable fact, Gauss's lemma, is that primitivity is preserved by multiplication.

Gauss's Lemma:  if f, g ∈ R[x] are primitive, so is fg.

Proof (by contradiction). Suppose fg is NOT primitive. Then some prime
p ∈ R divides every coefficient of fg, i.e. fg ≡ 0 in (R/p)[x].
Since p is prime, R/p is a domain, so (R/p)[x] is a domain too.
Reducing mod p: (f mod p)(g mod p) = 0 in (R/p)[x].
A domain has no zero divisors ⇒ f ≡ 0 or g ≡ 0 mod p.
But then p divides all coefficients of f (or of g),
contradicting that f (or g) is primitive.        ∎

Corollary (content is multiplicative):  c(fg) = c(f)·c(g)  up to units.
The whole proof is "reduce mod p and use that (R/p)[x] is a domain."

The payoff is a descent principle: a primitive polynomial of positive degree is irreducible in R[x] if and only if it is irreducible in K[x]. So factoring over the field K and factoring over the ring R agree for primitive polynomials. Combined with the fact that K[x] is a Euclidean domain (hence a UFD), this gives the theorem that R UFD ⇒ R[x] UFD. By induction, R[x₁,…,xₙ] is a UFD, and in particular Z[x] and k[x₁,…,xₙ] are UFDs.

Eisenstein's criterion

Eisenstein's criterion is the workhorse for proving polynomials irreducible. Let f = aₙxⁿ + … + a₁x + a₀ in R[x] over a UFD R, and suppose a prime p of R satisfies: p does not divide aₙ; p divides every other coefficient a₀,…,aₙ₋₁; and p² does not divide a₀. Then f is irreducible over K = Frac(R). The reason it works is a content argument mod p: any nontrivial factorization, reduced mod p, would force xⁿ to split, which the p² condition forbids.

Example 1.  f(x) = x⁴ + 10x³ + 15x² + 5x + 20  over Q.
  Try p = 5:  5 ∤ 1 (lead),  5 | 10,15,5,20 (rest),  25 ∤ 20.
  Eisenstein at 5 ⇒ f is irreducible over Q.

Example 2 (shift trick).  The p-th cyclotomic polynomial, p prime,
  Φ_p(x) = x^(p−1) + … + x + 1 = (x^p − 1)/(x − 1).
  Eisenstein does not apply directly, so substitute x → x+1:
  Φ_p(x+1) = ((x+1)^p − 1)/x = x^(p−1) + C(p,1) x^(p−2) + … + C(p,p−1).
  Every binomial coefficient C(p,k) for 0<k<p is divisible by p,
  the constant term is C(p,p−1) = p (not divisible by p²),
  leading coeff 1. Eisenstein at p ⇒ Φ_p(x+1) irreducible ⇒ Φ_p irreducible.
The change of variable x → x+1 rescues the cyclotomic case — a standard trick.

Other irreducibility tools

  1. Reduction mod p: if f ∈ Z[x] is monic and f mod p is irreducible in F_p[x] for some prime p, then f is irreducible over Q. (The converse is false — some irreducibles reduce to reducible mod every p.)
  2. Rational root test: a candidate root a/b of a primitive polynomial must have a | a₀ and b | aₙ — quick way to rule out degree-2 and degree-3 factorizations.
  3. Degree bookkeeping: a polynomial of degree 2 or 3 over a field is irreducible iff it has no root; for degree ≥ 4 you must also exclude factorizations into two quadratics.