Module

UnramifiedLocalIntegerUnitsH2.lean

Nyll.SawinTotallyRealTowers.UnramifiedProPRelationRank.Local.UnramifiedLocalIntegerUnitsH2
3 declarations indexed from sourceView source ↗

Integer-unit H² in an actual unramified local extension

The canonical unramified Frobenius and the existing unit-norm theorem identify degree-two cohomology of the actual integer-unit representation with a zero Tate norm quotient. In particular every two-cocycle has an integer-unit primitive, including in residue characteristic dividing the extension degree.

Declarations

Source context 15 commands

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

open CategoryTheory
open scoped ValuativeRel
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Cohomology
open LocalClassFieldTheory LocalFieldTheory LocalFieldTheory.IsNonarchimedeanLocalField
open CyclicCohomology.ProfiniteCohomology.Herbrand
variable (K L : Type) [Field K] [Field L] [Algebra K L]
variable [FiniteDimensional K L] [IsGalois K L]
variable [ValuativeRel K] [TopologicalSpace K] [IsNonarchimedeanLocalField K]
variable [ValuativeRel L] [UniformSpace L] [IsUniformAddGroup L]
variable [IsNonarchimedeanLocalField L]
variable [Valuation.HasExtension (ValuativeRel.valuation K) (ValuativeRel.valuation L)]
variable [IsIntegralClosure 𝒪[L] 𝒪[K] L] [Module.Finite 𝒪[K] 𝒪[L]]
variable [IsUnramifiedValuedExtension K L]

-- Fix the canonical integer-unit action once for both endpoints.
instance : MulDistribMulAction Gal(L / K) 𝒪[L]ˣ
ClassFieldTower.Martinet.Shafarevich.unramifiedLocalIntegerUnitsH2_subsingleton

The actual integer-unit representation of a finite unramified local extension has zero degree-two cohomology.

Source context 16 commands

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

open CategoryTheory
open scoped ValuativeRel
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Cohomology
open LocalClassFieldTheory LocalFieldTheory LocalFieldTheory.IsNonarchimedeanLocalField
open CyclicCohomology.ProfiniteCohomology.Herbrand
variable (K L : Type) [Field K] [Field L] [Algebra K L]
variable [FiniteDimensional K L] [IsGalois K L]
variable [ValuativeRel K] [TopologicalSpace K] [IsNonarchimedeanLocalField K]
variable [ValuativeRel L] [UniformSpace L] [IsUniformAddGroup L]
variable [IsNonarchimedeanLocalField L]
variable [Valuation.HasExtension (ValuativeRel.valuation K) (ValuativeRel.valuation L)]
variable [IsIntegralClosure 𝒪[L] 𝒪[K] L] [Module.Finite 𝒪[K] 𝒪[L]]
variable [IsUnramifiedValuedExtension K L]

-- Fix the canonical integer-unit action once for both endpoints.
local instance : MulDistribMulAction Gal(L / K) 𝒪[L]ˣ :=
  galoisGroupIntegerUnitsMulDistribMulActionOfIsIntegralClosure K L
theorem unramifiedLocalIntegerUnitsH2_subsingleton :
    Subsingleton (groupCohomology (Rep.ofMulDistribMulAction Gal(L / K) 𝒪[L]ˣ) 2)
ClassFieldTower.Martinet.Shafarevich.unramifiedLocalIntegerUnitsTwoCocycle_isCoboundary

Every actual integer-unit two-cocycle in an unramified local extension has an integer-unit one-cochain primitive.

Source context 16 commands

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

open CategoryTheory
open scoped ValuativeRel
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Cohomology
open LocalClassFieldTheory LocalFieldTheory LocalFieldTheory.IsNonarchimedeanLocalField
open CyclicCohomology.ProfiniteCohomology.Herbrand
variable (K L : Type) [Field K] [Field L] [Algebra K L]
variable [FiniteDimensional K L] [IsGalois K L]
variable [ValuativeRel K] [TopologicalSpace K] [IsNonarchimedeanLocalField K]
variable [ValuativeRel L] [UniformSpace L] [IsUniformAddGroup L]
variable [IsNonarchimedeanLocalField L]
variable [Valuation.HasExtension (ValuativeRel.valuation K) (ValuativeRel.valuation L)]
variable [IsIntegralClosure 𝒪[L] 𝒪[K] L] [Module.Finite 𝒪[K] 𝒪[L]]
variable [IsUnramifiedValuedExtension K L]

-- Fix the canonical integer-unit action once for both endpoints.
local instance : MulDistribMulAction Gal(L / K) 𝒪[L]ˣ :=
  galoisGroupIntegerUnitsMulDistribMulActionOfIsIntegralClosure K L
theorem unramifiedLocalIntegerUnitsTwoCocycle_isCoboundary :
    ∀ c : groupCohomology.cocycles₂ (Rep.ofMulDistribMulAction Gal(L / K) 𝒪[L]ˣ),
      ∃ b : Gal(L / K) → Additive 𝒪[L]ˣ,
        (groupCohomology.d₁₂ (Rep.ofMulDistribMulAction Gal(L / K) 𝒪[L]ˣ)).hom b = c.1