Module

Padic.lean

Nyll.ValuedFieldTheory.Valuation.Completion.Padic
11 declarations indexed from sourceView source ↗

The p-adic completion used in the global cyclotomic argument

the completion construction constructs localizations using the absolute-value completion v.Completion, whereas the local Kronecker--Weber local cyclotomic theorem is stated over mathlib's concrete field ℚ_[p]. For the rational p-adic absolute value these are canonically isomorphic. This file packages that comparison without adding any hypothesis to the global theorem.

Declarations

AlgebraicNumberTheory.Valuations.padicAbsoluteValue_isNontrivial

The rational p-adic absolute value is nontrivial.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValue_isNontrivial :
    (Rat.AbsoluteValue.padic p).IsNontrivial
AlgebraicNumberTheory.Valuations.padicAbsoluteValueBaseMap

The dense isometric embedding of rational numbers, equipped with their p-adic absolute value, into the concrete field ℚ_[p].

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
def padicAbsoluteValueBaseMap :
    WithAbs (Rat.AbsoluteValue.padic p) →+* ℚ_[p]
AlgebraicNumberTheory.Valuations.padicAbsoluteValueBaseMap_norm

The dense rational embedding preserves the p-adic norm.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValueBaseMap_norm
    (x : WithAbs (Rat.AbsoluteValue.padic p)) :
    ‖padicAbsoluteValueBaseMap p x‖ = ‖x‖
AlgebraicNumberTheory.Valuations.padicAbsoluteValueBaseMap_isometry

The preceding rational embedding is an isometry.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValueBaseMap_isometry :
    Isometry (padicAbsoluteValueBaseMap p)
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionRingHom

The canonical ring homomorphism from the absolute-value completion of ℚ at p to the concrete p-adic field.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
def padicAbsoluteValueCompletionRingHom :
    (Rat.AbsoluteValue.padic p).Completion →+* ℚ_[p]
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionRingHom_coe

On the dense rational subring, the completed map agrees with the original p-adic embedding.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValueCompletionRingHom_coe
    (x : WithAbs (Rat.AbsoluteValue.padic p)) :
    padicAbsoluteValueCompletionRingHom p
        (x : (Rat.AbsoluteValue.padic p).Completion) =
      padicAbsoluteValueBaseMap p x
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionRingHom_isometry

The completed map remains an isometry.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValueCompletionRingHom_isometry :
    Isometry (padicAbsoluteValueCompletionRingHom p)
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionRingHom_surjective

The completed map is surjective because its closed range contains the dense copy of ℚ in ℚ_[p].

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValueCompletionRingHom_surjective :
    Function.Surjective (padicAbsoluteValueCompletionRingHom p)
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionRingEquiv

The absolute-value completion of ℚ at p is the concrete p-adic field.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
def padicAbsoluteValueCompletionRingEquiv :
    (Rat.AbsoluteValue.padic p).Completion ≃+* ℚ_[p]
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionAlgEquiv

The same comparison as a ℚ-algebra equivalence, in the form needed to transport the global cyclotomic local extension to the local cyclotomic theorem.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
def padicAbsoluteValueCompletionAlgEquiv :
    (Rat.AbsoluteValue.padic p).Completion ≃ₐ[ℚ] ℚ_[p] where
  __ := padicAbsoluteValueCompletionRingEquiv p
  commutes' q := by
    change padicAbsoluteValueCompletionRingHom p
        (((WithAbs.equiv (Rat.AbsoluteValue.padic p)).symm q :
          WithAbs (Rat.AbsoluteValue.padic p)) :
            (Rat.AbsoluteValue.padic p).Completion) = (q : ℚ_[p])
    rw [padicAbsoluteValueCompletionRingHom_coe]
    rfl
AlgebraicNumberTheory.Valuations.padicAbsoluteValueCompletionAlgEquiv_coe

On the dense rational subring, the completion algebra equivalence agrees with the original p-adic embedding.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace AlgebraicNumberTheory.Valuations
variable (p : ℕ) [Fact p.Prime]
theorem padicAbsoluteValueCompletionAlgEquiv_coe
    (x : WithAbs (Rat.AbsoluteValue.padic p)) :
    padicAbsoluteValueCompletionAlgEquiv p
        (x : (Rat.AbsoluteValue.padic p).Completion) =
      padicAbsoluteValueBaseMap p x