Fermat's Last Theorem in Lean 4

← all definition modules

Definitions/Def_NumberField_IsSplitPrime.lean

definition module

Completely split degree-one primes of a number field extension

Fix number fields K and M with M a Galois extension of K. For an ideal \mathfrak{l} of the ring of integers \mathcal{O}_K, the predicate NumberField.IsSplitPrime K M 𝔩 is the conjunction of three conditions. First, \mathfrak{l} is a maximal ideal of \mathcal{O}_K. Second, the absolute norm \operatorname{absNorm} \mathfrak{l}, i.e. the cardinality of \mathcal{O}_K/\mathfrak{l} as a natural number, is a prime number; together with maximality this says exactly that \mathfrak{l} is a prime of K of residue degree one over \mathbb{Q}, with residue field \mathbb{F}_\ell for \ell = \operatorname{absNorm} \mathfrak{l}. Third, the number of primes of \mathcal{O}_M lying over \mathfrak{l}, measured as the Nat.card of Mathlib's set 𝔩.primesOver (π“ž M) of maximal ideals of \mathcal{O}_M above \mathfrak{l}, equals \operatorname{finrank}_K M = [M:K].

The third clause is thus phrased as a counting condition on the fibre of \operatorname{Spec} \mathcal{O}_M \to \operatorname{Spec} \mathcal{O}_K over \mathfrak{l}, not as the assertion that all ramification indices and residue degrees equal one; in the Galois situation the two are equivalent, since efg = [M:K] forces e = f = 1 precisely when g = [M:K]. So IsSplitPrime K M 𝔩 holds exactly for those degree-one primes of K which split completely in M; its negation, imposed alongside the first two clauses, singles out the degree-one primes of K that are not completely split in M.

Relation to Mathlib

The ingredients β€” Ideal.IsMaximal, Ideal.absNorm and Ideal.primesOver β€” are Mathlib's; the packaged predicate combining "degree one over \mathbb{Q}" with "completely split in M" is this development's own.

Where it is used

The predicate organises the prime-density input to the class-field-theory-free treatment of a vanishing statement for a certain extension group: one bounds the Dirichlet density of the completely split degree-one primes by 1/[M:K], and shows that the remaining (non-split) degree-one primes generate the class group of K.

References

  1. J. Neukirch, Algebraic Number Theory, Grundlehren der mathematischen Wissenschaften 322, Springer, 1999, Ch. I Β§8 and Ch. VII Β§13
  2. H. Darmon, F. Diamond and R. Taylor, Fermat's Last Theorem, in: Current Developments in Mathematics 1995, International Press, 1995, 1–154

References are suggested automatically and have not been individually verified.

English text generated automatically from the Lean source; the Lean statement is authoritative.

Source file: Definitions/Def_NumberField_IsSplitPrime.lean

Declarations

Source

import Mathlib.NumberTheory.NumberField.ClassNumber β†—
import Mathlib.NumberTheory.RamificationInertia.Galois β†—

set_option autoImplicit false

namespace NumberField

open scoped NumberField nonZeroDivisors

variable (K M : Type*) [Field K] [NumberField K] [Field M] [NumberField M]
  [Algebra K M] [IsGalois K M]

def IsSplitPrime (𝔩 : Ideal (π“ž K)) : Prop :=
  𝔩.IsMaximal ∧ (Ideal.absNorm 𝔩).Prime ∧
    Nat.card (𝔩.primesOver (π“ž M)) = Module.finrank K M

end NumberField

Statements phrased using this module (2)