Module

IdealPowerRadicalModule.lean

Nyll.SawinTotallyRealTowers.UnramifiedProPRelationRank.Radical.IdealPowerRadicalModule
7 declarations indexed from sourceView source ↗

The ideal-power radical as a finite ZMod p-module

For a prime p, the empty-support ideal-power radical quotient has exponent dividing p. This file packages its additive presentation as the canonical ZMod p-module, proves finite-dimensionality, and records the resulting cardinality formulas. The module structure remains explicit and is not installed as a global instance.

Declarations

ClassFieldTower.Martinet.Shafarevich.idealPowerRadicalModPModule

The canonical ZMod p-module structure on the additive presentation of the empty-support ideal-power radical quotient.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
def idealPowerRadicalModPModule :
    Module (ZMod p)
      (Additive (IdealNthPowerRadicalQuotient F
        (p.toPNat (Fact.out : p.Prime).pos)))
ClassFieldTower.Martinet.Shafarevich.idealPowerRadicalModP

The empty-support ideal-power radical as a ZMod p-module object.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
def idealPowerRadicalModP : ModuleCat (ZMod p)
ClassFieldTower.Martinet.Shafarevich.idealPowerRadicalModP_finiteDimensional

The ideal-power radical module is finite-dimensional.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
theorem idealPowerRadicalModP_finiteDimensional :
    FiniteDimensional (ZMod p) (idealPowerRadicalModP F p)
ClassFieldTower.Martinet.Shafarevich.card_idealPowerRadicalModP_eq_pow_finrank

The cardinality of the radical module is p to its dimension.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
theorem card_idealPowerRadicalModP_eq_pow_finrank :
    Nat.card (idealPowerRadicalModP F p) =
      p ^ Module.finrank (ZMod p) (idealPowerRadicalModP F p)
ClassFieldTower.Martinet.Shafarevich.card_idealPowerRadicalModP

The exact unit--radical--class sequence computes the cardinality of the radical module.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
theorem card_idealPowerRadicalModP :
    Nat.card (idealPowerRadicalModP F p) =
      p ^ (NumberField.InfinitePlace.nrRealPlaces F +
          NumberField.InfinitePlace.nrComplexPlaces F - 1 +
            (if (primitiveRoots p F).Nonempty then 1 else 0)) *
        Nat.card (PClassGroup F p) := by
  change Nat.card
      (IdealNthPowerRadicalQuotient F
        (p.toPNat (Fact.out : p.Prime).pos)) = _
  exact card_idealPthPowerRadicalQuotient F p Fact.out
ClassFieldTower.Martinet.Shafarevich.pow_finrank_idealPowerRadicalModP

Equivalently, the arithmetic radical cardinality is p to the module dimension.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
theorem pow_finrank_idealPowerRadicalModP :
    p ^ Module.finrank (ZMod p) (idealPowerRadicalModP F p) =
      p ^ (NumberField.InfinitePlace.nrRealPlaces F +
          NumberField.InfinitePlace.nrComplexPlaces F - 1 +
            (if (primitiveRoots p F).Nonempty then 1 else 0)) *
        Nat.card (PClassGroup F p) := by
  rw [← card_idealPowerRadicalModP_eq_pow_finrank F p]
  exact card_idealPowerRadicalModP F p
ClassFieldTower.Martinet.Shafarevich.idealPowerRadicalModPDual_finiteDimensional

The linear dual of the ideal-power radical module is finite-dimensional.

Source context 7 commands

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

open scoped NumberField
noncomputable section
namespace ClassFieldTower.Martinet.Shafarevich
open ClassFieldTower.Martinet
open KummerTheory
variable (F : Type*) [Field F] [NumberField F]
variable (p : ℕ) [Fact p.Prime]
theorem idealPowerRadicalModPDual_finiteDimensional :
    FiniteDimensional (ZMod p)
      (Module.Dual (ZMod p) (idealPowerRadicalModP F p))