ModuleH1GeneratorRank.lean
Nyll.ProCGroups.ProP.H1GeneratorRank
16 declarations indexed from sourceView source ↗ Module documentation
Generator rank as continuous H¹ dimension
This file identifies continuous trivial-coefficient degree-one classes with the linear dual of the power--commutator quotient. For a finitely generated pro-p group the quotient is finite, so continuity is automatic and P06 gives the generator-rank formula.
Declarations
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
Source context 6 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
Source context 7 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
Source context 8 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
Source context 9 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
Source context 10 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
ClassFieldTower.ProP.continuousPowerCommutatorDual
DocumentationThe continuous part of the algebraic dual of the power--commutator quotient.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.quotientH1ToContinuousDual
DocumentationTurn a quotient degree-one class into its underlying continuous linear functional.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.quotientH1OfContinuousDual
DocumentationEquip a continuous linear functional with its continuous additive-hom structure.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.quotientH1ContinuousDualLinearEquiv
DocumentationQuotient degree-one classes are exactly the continuous linear dual.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.continuousH1PowerCommutatorDualEquiv
DocumentationContinuous H¹ is the continuous dual of the elementary quotient.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.continuousPowerCommutatorDual_eq_top
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.continuousH1PowerCommutatorFullDualLinearEquiv
DocumentationFor a discrete elementary quotient, continuous H¹ is the full algebraic dual.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
ClassFieldTower.ProP.finrank_continuousH1_eq_finrank_powerCommutatorQuotient
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
Source context 13 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
section Profinite
variable [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
[Fact p.Prime]
ClassFieldTower.ProP.topologicalGeneratorRank_eq_finrank_continuousH1
DocumentationFor a finitely generated pro-p group, generator rank equals the dimension of continuous trivial-coefficient degree-one cohomology.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped Topology IsMulCommutative
namespace ClassFieldTower.ProP
universe u
variable {p : ℕ} {G : Type u}
variable [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
local instance : TopologicalSpace (ZMod p) := ⊥
local instance : DiscreteTopology (ZMod p) := discreteTopology_bot _
local instance : (closedPowerCommutator p G).Normal :=
closedPowerCommutator_normal p G
local instance : IsMulCommutative (powerCommutatorQuotient p G) :=
powerCommutatorQuotient_isMulCommutative p G
local instance : Module (ZMod p) (Additive (powerCommutatorQuotient p G)) :=
AddCommGroup.zmodModule fun x => by
change (Additive.toMul x) ^ p = 1
exact powerCommutatorQuotient_pow_eq_one p G (Additive.toMul x)
local instance : Module (ZMod p) (ContinuousH1ZMod (p := p) (G := G)) :=
continuousH1ZModModule
section Profinite
variable [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
[Fact p.Prime]
local instance : IsClosed (closedPowerCommutator p G : Set G) :=
isClosed_closedPowerCommutator p G