The -rank of the principal units of is at most
ProvedLeopoldt.rank_oneUnits_le_ramificationIdx_mul_inertiaDegLet be a prime, a number field and a prime of above , with completion . Write and for the ramification index and the inertia degree of over , so that . The principal units form a -module under -adic exponentiation (OneUnits.instModule of Definitions.Def_OneUnits). The statement asserts
where the rank is Mathlib's Module.rank, the supremum of the cardinalities of -linearly independent families.
This is the local input of the bound (Leopoldt.rank_oneUnits_le_finrank), which follows from it by the fundamental identity . The expected proof is the classical one: the -adic logarithm maps -linearly into with torsion kernel, and has -rank . Neither the -adic logarithm nor the -algebra structure on is in Mathlib yet, so both would have to be built; an alternative avoiding the logarithm is the filtration by higher unit groups, whose graded pieces are finite of order and on which the -th power map acts as a shift by .
import Definitions.Def_PrimesOverNorm open NumberField IsDedekindDomain
namespace Leopoldt
theorem rank_oneUnits_le_ramificationIdx_mul_inertiaDeg (p : ℕ) [Fact p.Prime]
(F : Type*) [Field F] [NumberField F] (v : PrimesOver p F) :
Module.rank ℤ_[p] (Additive (oneUnits (v.1.adicCompletion F)))
≤ (v.1.asIdeal.ramificationIdx ℤ * v.1.asIdeal.inertiaDeg ℤ : ℕ) := by sorry
end Leopoldt