Documentation

Mathlib.NumberTheory.NumberField.Discriminant.Basic

Number field discriminant #

This file defines the discriminant of a number field.

Main result #

Tags #

number field, discriminant

theorem NumberField.exists_ne_zero_mem_ideal_of_norm_le_mul_sqrt_discr (K : Type u_1) [Field K] [NumberField K] (I : (FractionalIdeal (nonZeroDivisors (RingOfIntegers K)) K)ˣ) :
aI, a 0 |(Algebra.norm ) a| (FractionalIdeal.absNorm I) * (4 / Real.pi) ^ InfinitePlace.nrComplexPlaces K * (Module.finrank K).factorial / (Module.finrank K) ^ Module.finrank K * |(discr K)|
theorem NumberField.abs_discr_ge {K : Type u_1} [Field K] [NumberField K] (h : 1 < Module.finrank K) :
4 / 9 * (3 * Real.pi / 4) ^ Module.finrank K |discr K|
theorem NumberField.abs_discr_gt_two {K : Type u_1} [Field K] [NumberField K] (h : 1 < Module.finrank K) :
2 < |discr K|

Hermite-Minkowski Theorem. A nontrivial number field has discriminant greater than 2.

Hermite Theorem #

This section is devoted to the proof of Hermite theorem.

Let N be an integer . We prove that the set S of finite extensions K of (in some fixed extension A of ) such that |discr K| ≤ N is finite by proving, using finite_of_finite_generating_set, that there exists a finite set T ⊆ A such that ∀ K ∈ S, ∃ x ∈ T, K = ℚ⟮x⟯ .

To find the set T, we construct a finite set T₀ of polynomials in ℤ[X] containing, for each K ∈ S, the minimal polynomial of a primitive element of K. The set T is then the union of roots in A of the polynomials in T₀. More precisely, the set T₀ is the set of all polynomials in ℤ[X] of degrees and coefficients bounded by some explicit constants depending only on N.

Indeed, we prove that, for any field K in S, its degree is bounded, see rank_le_rankOfDiscrBdd, and also its Minkowski bound, see minkowskiBound_lt_boundOfDiscBdd. Thus it follows from mixedEmbedding.exists_primitive_element_lt_of_isComplex and mixedEmbedding.exists_primitive_element_lt_of_isReal that there exists an algebraic integer x of K such that K = ℚ(x) and the conjugates of x are all bounded by some quantity depending only on N.

Since the primitive element x is constructed differently depending on whether K has a infinite real place or not, the theorem is proved in two parts.

theorem NumberField.hermiteTheorem.finite_of_finite_generating_set (A : Type u_2) [Field A] [CharZero A] {p : IntermediateField AProp} (S : Set { F : IntermediateField A // p F }) {T : Set A} (hT : T.Finite) (h : FS, xT, F = x) :
S.Finite
@[reducible, inline]

An upper bound on the degree of a number field K with |discr K| ≤ N, see rank_le_rankOfDiscrBdd.

Equations
Instances For
    @[reducible, inline]

    An upper bound on the Minkowski bound of a number field K with |discr K| ≤ N; see minkowskiBound_lt_boundOfDiscBdd.

    Equations
    Instances For

      If |discr K| ≤ N then the degree of K is at most rankOfDiscrBdd.

      If |discr K| ≤ N then the Minkowski bound of K is less than boundOfDiscrBdd.

      theorem NumberField.hermiteTheorem.natDegree_le_rankOfDiscrBdd {K : Type u_1} [Field K] [NumberField K] {N : } (hK : |discr K| N) (a : RingOfIntegers K) (h : a = ) :
      (minpoly a).natDegree rankOfDiscrBdd N
      theorem NumberField.hermiteTheorem.finite_of_discr_bdd_of_isReal (A : Type u_2) [Field A] [CharZero A] (N : ) :
      {K : { F : IntermediateField A // FiniteDimensional F } | {w : InfinitePlace K | w.IsReal}.Nonempty |discr K| N}.Finite
      theorem NumberField.hermiteTheorem.finite_of_discr_bdd_of_isComplex (A : Type u_2) [Field A] [CharZero A] (N : ) :
      {K : { F : IntermediateField A // FiniteDimensional F } | {w : InfinitePlace K | w.IsComplex}.Nonempty |discr K| N}.Finite
      theorem NumberField.finite_of_discr_bdd (A : Type u_2) [Field A] [CharZero A] (N : ) :
      {K : { F : IntermediateField A // FiniteDimensional F } | |discr K| N}.Finite

      Hermite Theorem. Let N be an integer. There are only finitely many number fields (in some fixed extension of ) of discriminant bounded by N.