Ramification index and inertia degree #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
Given P : ideal S
lying over p : ideal R
for the ring extension f : R →+* S
(assuming P
and p
are prime or maximal where needed),
the ramification index ideal.ramification_idx f p P
is the multiplicity of P
in map f p
,
and the inertia degree ideal.inertia_deg f p P
is the degree of the field extension
(S / P) : (R / p)
.
Main results #
The main theorem ideal.sum_ramification_inertia
states that for all coprime P
lying over p
,
Σ P, ramification_idx f p P * inertia_deg f p P
equals the degree of the field extension
Frac(S) : Frac(R)
.
Implementation notes #
Often the above theory is set up in the case where:
R
is the ring of integers of a number fieldK
,L
is a finite separable extension ofK
,S
is the integral closure ofR
inL
,p
andP
are maximal ideals,P
is an ideal lying overp
We will try to relax the above hypotheses as much as possible.
Notation #
In this file, e
stands for the ramification index and f
for the inertia degree of P
over p
,
leaving p
and P
implicit.
The ramification index of P
over p
is the largest exponent n
such that
p
is contained in P^n
.
In particular, if p
is not contained in P^n
, then the ramification index is 0.
If there is no largest such n
(e.g. because p = ⊥
), then ramification_idx
is
defined to be 0.
Equations
- ideal.ramification_idx f p P = has_Sup.Sup {n : ℕ | ideal.map f p ≤ P ^ n}
Instances for ideal.ramification_idx
The inertia degree of P : ideal S
lying over p : ideal R
is the degree of the
extension (S / P) : (R / p)
.
We do not assume P
lies over p
in the definition; we return 0
instead.
See inertia_deg_algebra_map
for the common case where f = algebra_map R S
and there is an algebra structure R / p → S / P
.
Equations
- ideal.inertia_deg f p P = dite (ideal.comap f P = p) (λ (hPp : ideal.comap f P = p), finite_dimensional.finrank (R ⧸ p) (S ⧸ P)) (λ (hPp : ¬ideal.comap f P = p), 0)
Let V
be a vector space over K = Frac(R)
, S / R
a ring extension
and V'
a module over S
. If b
, in the intersection V''
of V
and V'
,
is linear independent over S
in V'
, then it is linear independent over R
in V
.
The statement we prove is actually slightly more general:
- it suffices that the inclusion
algebra_map R S : R → S
is nontrivial - the function
f' : V'' → V'
doesn't need to be injective
If b
mod p
spans S/p
as R/p
-space, then b
itself spans Frac(S)
as K
-space.
Here,
p
is an ideal ofR
such thatR / p
is nontrivialK
is a field that has an embedding ofR
(in particular we can takeK = Frac(R)
)L
is a field extension ofK
S
is the integral closure ofR
inL
More precisely, we avoid quotients in this statement and instead require that b ∪ pS
spans S
.
If p
is a maximal ideal of R
, and S
is the integral closure of R
in L
,
then the dimension [S/pS : R/p]
is equal to [Frac(S) : Frac(R)]
.
R / p
has a canonical map to S / (P ^ e)
, where e
is the ramification index
of P
over p
.
If P
lies over p
, then R / p
has a canonical map to S / P
.
This can't be an instance since the map f : R → S
is generally not inferrable.
The inclusion (P^(i + 1) / P^e) ⊂ (P^i / P^e)
.
Equations
- ideal.pow_quot_succ_inclusion f p P i = {to_fun := λ (x : ↥(ideal.map (ideal.quotient.mk (P ^ ideal.ramification_idx f p P)) (P ^ (i + 1)))), ⟨↑x, _⟩, map_add' := _, map_smul' := _}
S ⧸ P
embeds into the quotient by P^(i+1) ⧸ P^e
as a subspace of P^i ⧸ P^e
.
See quotient_to_quotient_range_pow_quot_succ
for this as a linear map,
and quotient_range_pow_quot_succ_inclusion_equiv
for this as a linear equivalence.
Equations
- ideal.quotient_to_quotient_range_pow_quot_succ_aux f p P a_mem = quotient.map' (λ (x : S), ⟨⇑(ideal.quotient.mk (P ^ ideal.ramification_idx f p P)) (x * a), _⟩) _
S ⧸ P
embeds into the quotient by P^(i+1) ⧸ P^e
as a subspace of P^i ⧸ P^e
.
Equations
- ideal.quotient_to_quotient_range_pow_quot_succ f p P a_mem = {to_fun := ideal.quotient_to_quotient_range_pow_quot_succ_aux f p P a_mem, map_add' := _, map_smul' := _}
Quotienting P^i / P^e
by its subspace P^(i+1) ⧸ P^e
is
R ⧸ p
-linearly isomorphic to S ⧸ P
.
Equations
- ideal.quotient_range_pow_quot_succ_inclusion_equiv f p P hP hi = (λ (_x : ∃ (H : classical.some _ ∈ P ^ i), classical.some _ ∉ P ^ i.succ), (λ (_x_1 : classical.some _ ∉ P ^ i.succ), (linear_equiv.of_bijective (ideal.quotient_to_quotient_range_pow_quot_succ f p P _) _).symm) _) _
Since the inclusion (P^(i + 1) / P^e) ⊂ (P^i / P^e)
has a kernel isomorphic to P / S
,
[P^i / P^e : R / p] = [P^(i+1) / P^e : R / p] + [P / S : R / p]
If p
is a maximal ideal of R
, S
extends R
and P^e
lies over p
,
then the dimension [S/(P^e) : R/p]
is equal to e * [S/P : R/p]
.
If p
is a maximal ideal of R
, S
extends R
and P^e
lies over p
,
then the dimension [S/(P^e) : R/p]
, as a natural number, is equal to e * [S/P : R/p]
.
Properties of the factors of p.map (algebra_map R S)
#
Chinese remainder theorem for a ring of integers: if the prime ideal p : ideal R
factors in S
as ∏ i, P i ^ e i
, then S ⧸ I
factors as Π i, R ⧸ (P i ^ e i)
.
Equations
Chinese remainder theorem for a ring of integers: if the prime ideal p : ideal R
factors in S
as ∏ i, P i ^ e i
,
then S ⧸ I
factors R ⧸ I
-linearly as Π i, R ⧸ (P i ^ e i)
.
Equations
- ideal.factors.pi_quotient_linear_equiv S p hp = {to_fun := (ideal.factors.pi_quotient_equiv p hp).to_fun, map_add' := _, map_smul' := _, inv_fun := (ideal.factors.pi_quotient_equiv p hp).inv_fun, left_inv := _, right_inv := _}
The fundamental identity of ramification index e
and inertia degree f
:
for P
ranging over the primes lying over p
, ∑ P, e P * f P = [Frac(S) : Frac(R)]
;
here S
is a finite R
-module (and thus Frac(S) : Frac(R)
is a finite extension) and p
is maximal.