Definitions/Def_GroupCohomology_LevelSubgroup.lean
Level subgroups as preimages of Galois fixing subgroups
Fix a group G together with a homomorphism r \colon G \to (\overline{\mathbb Q} \simeq_{\mathrm{alg}[\mathbb Q]} \overline{\mathbb Q}) into the group of \mathbb Q-algebra automorphisms of a chosen algebraic closure of \mathbb Q, and let F be an intermediate field of \overline{\mathbb Q}/\mathbb Q. The object studied throughout is the subgroup r^{-1}(\mathrm{Gal}(\overline{\mathbb Q}/F)) \le G, written in Lean as the Subgroup.comap of Mathlib's IntermediateField.fixingSubgroup of F along r; it is the set of g \in G whose image r(g) fixes F pointwise.
Four facts about this subgroup are recorded. First, comap_fixingSubgroup_eq_ker: if F is normal over \mathbb Q, then r^{-1}(\mathrm{Gal}(\overline{\mathbb Q}/F)) is exactly the kernel of the composite of r with the restriction homomorphism \mathrm{Aut}_{\mathbb Q}(\overline{\mathbb Q}) \to \mathrm{Aut}_{\mathbb Q}(F) given by AlgEquiv.restrictNormalHom, i.e. the kernel of G \to \mathrm{Gal}(F/\mathbb Q). Second and third, two consequences of this identification are registered as typeclass instances, so that they are available automatically wherever the subgroup occurs: for F normal over \mathbb Q the subgroup is normal in G (normal_comap_fixingSubgroup), and for F in addition finite-dimensional over \mathbb Q it has finite index (finiteIndex_comap_fixingSubgroup), the quotient embedding into the finite group \mathrm{Gal}(F/\mathbb Q). Fourth, comap_fixingSubgroup_antitone records the order reversal in F: if F \le F' then r^{-1}(\mathrm{Gal}(\overline{\mathbb Q}/F')) \le r^{-1}(\mathrm{Gal}(\overline{\mathbb Q}/F)), so the subgroups shrink as the field grows. No topology on G or on the Galois group enters; the fixing subgroups are taken as abstract subgroups and r as an abstract homomorphism.
Relation to Mathlib
All the ingredients — IntermediateField.fixingSubgroup, Subgroup.comap, AlgEquiv.restrictNormalHom and the description of its kernel — are Mathlib's; what is added here is the identification of the pullback with a kernel for an arbitrary homomorphism r into \mathrm{Aut}_{\mathbb Q}(\overline{\mathbb Q}), and the registration of normality and finiteness of index as instances so that they are found by typeclass inference.
Where it is used
These subgroups are the level subgroups U_F \le G attached to a Galois representation or Galois action r of G; the instances make statements about the finite quotients G/U_F, about invariants M^{U_F} and about inflation maps into continuous cohomology elaborate without extra hypotheses, for any level map r (the absolute Galois group itself, its subgroups, or decomposition groups at primes). They are used pervasively in the group-cohomological part of the argument.
References
- S. Lang, Algebra, revised third edition, Graduate Texts in Mathematics 211, Springer, 2002
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 29 lines
- 4 declarations
- used in the statements of 53 theorems and imported by 73 proofs
- imports 0 definition modules
Source file: Definitions/Def_GroupCohomology_LevelSubgroup.lean
Imports
- only Mathlib
Declarations
- theorem
groupCohomology.comap_fixingSubgroup_eq_ker - instance
groupCohomology.normal_comap_fixingSubgroup - instance
groupCohomology.finiteIndex_comap_fixingSubgroup - theorem
groupCohomology.comap_fixingSubgroup_antitone
Source
import Mathlib set_option autoImplicit false namespace groupCohomology variable {G : Type*} [Group G] (r : G →* (AlgebraicClosure ℚ ≃ₐ[ℚ] AlgebraicClosure ℚ)) theorem comap_fixingSubgroup_eq_ker (F : IntermediateField ℚ (AlgebraicClosure ℚ)) [Normal ℚ F] : F.fixingSubgroup.comap r = ((AlgEquiv.restrictNormalHom (F := ℚ) (K₁ := AlgebraicClosure ℚ) F).comp r).ker := by rw [← @IntermediateField.restrictNormalHom_ker ℚ (AlgebraicClosure ℚ) _ _ _ F ‹Normal ℚ F›, MonoidHom.comap_ker] rfl instance normal_comap_fixingSubgroup (F : IntermediateField ℚ (AlgebraicClosure ℚ)) [Normal ℚ F] : (F.fixingSubgroup.comap r).Normal := by rw [comap_fixingSubgroup_eq_ker]; exact MonoidHom.normal_ker _ instance finiteIndex_comap_fixingSubgroup (F : IntermediateField ℚ (AlgebraicClosure ℚ)) [FiniteDimensional ℚ F] [Normal ℚ F] : (F.fixingSubgroup.comap r).FiniteIndex := by rw [comap_fixingSubgroup_eq_ker]; exact Subgroup.finiteIndex_ker _ theorem comap_fixingSubgroup_antitone {F F' : IntermediateField ℚ (AlgebraicClosure ℚ)} (h : F ≤ F') : F'.fixingSubgroup.comap r ≤ F.fixingSubgroup.comap r := Subgroup.comap_mono (IntermediateField.fixingSubgroup_antitone h) end groupCohomology
Statements phrased using this module (53)
- Degree-one Shapiro lemma for continuous H¹
groupCohomology.nonempty_continuousH1_coind_linearEquiv_continuousH12 below · depth 14 - Dévissage of a non-simple smooth finite representation
Rep.exists_devissage_of_not_simple0 below · depth 15 - Coinduction preserves level-smoothness along a finite-index subgroup
Rep.exists_level_coind_apply_eq_self0 below · depth 15 - Degree-one Shapiro lifting of level-constant cocycles
groupCohomology.exists_coind_cocycles1_isLevelConstant1_eval_one_eq0 below · depth 15 - Local Euler–Poincaré identity from five named inputs
groupCohomology.euler_poincare_identity_of_hypotheses26 below · depth 17 - Degree-two Shapiro injectivity for level coboundaries
groupCohomology.coind_mem_levelCoboundaries2_of_eval_one_mem_levelCoboundaries20 below · depth 18 - Shapiro's lemma in degree two: surjectivity on level cocycles
groupCohomology.exists_coind_mem_levelCocycles2_eval_one_eq0 below · depth 18 - Continuous Shapiro isomorphism in degree two for open S
groupCohomology.nonempty_continuousH2_coind_linearEquiv_continuousH22 below · depth 18 - Capitulation of p-power-torsion ideal classes in a Galois S-level
NumberField.LevelArith.exists_le_isUnramifiedOutside_isGalois_forall_map_isPrincipal8 below · depth 21 - Cochain identities descend along inflation to a layer
NumberField.LevelArith.d_eq_zero_and_d_eq_pow_smul_of_level_presentation_sUnitsMaxRep0 below · depth 23 - Inflating a layer coboundary to a level-constant 2-cochain
NumberField.LevelArith.exists_isLevelConstant_d_two_three_eq_of_level_coboundary_sUnitsMaxRep0 below · depth 23 - Inflating a layer cochain to a larger layer
NumberField.LevelArith.exists_level_comp_eq_of_le_sUnitsMaxRep0 below · depth 23 - Presenting a level-constant cochain at a finite Galois level
NumberField.LevelArith.exists_level_eq_comp_of_isLevelConstant_sUnitsMaxRep5 below · depth 23 - Inflation kills p-power-torsion 3-cocycles of S-units
NumberField.LevelArith.exists_level_inhomogeneousCochains_d_two_three_eq_of_pow_smul480 below · depth 23 - Inflation kills p-primary S-unit classes with vanishing idèle image
NumberField.LevelArith.continuousH2SrInflation_H2pi_eq_zero_of_map_principalIdele_eq_zero_of_pow_smul_eq_zero162 below · depth 24 - Invariants of the maximal S-units are the S-units of F
NumberField.LevelArith.exists_addEquiv_quotientToInvariants_sUnitsMaxRep_sUnitsRep7 below · depth 24 - Conjugating an inflated level 2-cocycle by σ
NumberField.LevelArith.exists_cocyclesTwo_conj_transport_continuousH2SrInflation_eq4 below · depth 24 - Existence of a Sylow intermediate field for a finite layer
NumberField.LevelArith.exists_le_le_isPGroup_quotient_not_dvd_finrank1 below · depth 24 - Capitulation at a larger level of S-unit 2-cocycles
NumberField.LevelArith.exists_level_coboundary_of_isPGroup_of_map_diag_H2pi_eq_zero_sUnitsMaxRep143 below · depth 24 - Prime-to-p descent of degree-3 S-unit coboundaries
NumberField.LevelArith.exists_level_d_two_three_eq_of_restrict_coboundary_of_not_dvd3 below · depth 24 - Killing a degree-three S-unit cocycle at a deeper level
NumberField.LevelArith.exists_level_inhomogeneousCochains_d_two_three_eq_of_pow_smul_of_isPGroup479 below · depth 24 - Invariant maximal S-units as the S-units of F
NumberField.LevelArith.exists_monoidHom_levelGal_exists_hom_res_quotientToInvariants_sUnitsRep_bijective8 below · depth 24 - Restriction of degree-3 S-unit cochain data to a larger base
NumberField.LevelArith.exists_three_cochain_val_eq_of_le_sUnitsMaxRep1 below · depth 24 - Unramifiedness off S of the layer F_L over L
NumberField.LevelArith.ramificationIdx_eq_one_of_isUnramifiedOutside_of_under_not_mem_placesOverPrimesFinset6 below · depth 24 - Inflations of two S-level 2-cocycles with equal values agree
groupCohomology.continuousH2SrInflation_H2pi_eq_of_le0 below · depth 24 - Every S-ramified continuous H² class is an inflation
groupCohomology.exists_continuousH2SrInflation_eq3 below · depth 24 - Torsion classes in H²_S inflate from torsion at a finite level
groupCohomology.exists_continuousH2SrInflation_eq_of_nsmul_eq_zero6 below · depth 24 - Inflated p-primary class vanishes after prime-to-p restriction
NumberField.LevelArith.continuousH2SrInflation_H2pi_eq_zero_of_restrict_coboundary_of_not_dvd7 below · depth 25 - Trivial decomposition at infinity in a p-group layer
NumberField.LevelArith.eq_one_of_mem_infPlaceDecomp_of_isPGroup1 below · depth 25 - Restricting an S-unit 2-cocycle to a larger base field
NumberField.LevelArith.exists_cocyclesTwo_quotientToInvariants_sUnitsMaxRep_val_eq_of_le1 below · depth 25 - Vanishing of H³ of the S-idèle module of a level
NumberField.LevelArith.exists_inhomogeneousCochains_d_two_three_eq_sIdele158 below · depth 25 - Local coboundaries yield a coboundary in an adic completion
NumberField.LevelArith.exists_layer_coboundary_adicCompletion_of_forall_conj_primeLocal_coboundary9 below · depth 25 - Degree-3 S-unit cocycles split at a deeper p-level
NumberField.LevelArith.exists_level_d_two_three_eq_of_sIdele_coboundary_of_isPGroup478 below · depth 25 - Cocycles with equal inflated class differ by a coboundary at a deeper level
NumberField.LevelArith.exists_level_sub_eq_coboundary_of_continuousH2SrInflation_eq4 below · depth 25 - Transporting a degree-3 cochain to the S-units frame
NumberField.LevelArith.exists_three_cochain_sUnitsRep_val_eq_of_transport0 below · depth 25 - Local invariants unchanged on passing to a larger S-level
NumberField.LevelArith.hasLocalInv_of_hasLocalInv_of_le119 below · depth 25 - The layer F_L/L is Galois for F/ℚ finite normal
NumberField.LevelArith.isGalois_levelField0 below · depth 25 - Surjectivity and kernel of Γ_L → Gal(F/L)
NumberField.LevelArith.levelGal_surjective_and_ker0 below · depth 25 - Vanishing S-idèle class of a restricted layer 2-cocycle
NumberField.LevelArith.map_diag_H2pi_eq_zero_of_map_principalIdele_H2pi_eq_zero_of_le30 below · depth 25 - Inflated H²_S class vanishes iff cocycle bounds deeper
groupCohomology.continuousH2SrInflation_H2pi_eq_zero_iff3 below · depth 25 - Layer order p^k kills degree-3 cocycles at cochain level
NumberField.LevelArith.exists_card_eq_pow_and_d_two_three_eq_pow_smul_of_isPGroup1 below · depth 26 - Galois S-levels above a given level with p^k dividing decomposition orders
NumberField.LevelArith.exists_le_isUnramifiedOutside_isGalois_pow_dvd_natCard_decomp12 below · depth 26 - Depth splitting of a 3-cocycle of S-units
NumberField.LevelArith.exists_level_d_two_three_eq_of_sIdele_coboundary_of_smul_eq_of_dvd_natCard_decomp415 below · depth 26 - Sylow placement of a large decomposition group
NumberField.LevelArith.exists_mem_placesOverPrimesFinset_pow_dvd_natCard_decomp_above_of_isPGroup_of_not_dvd6 below · depth 26 - Torsion transfer of S-idèle cochains along a level tower
NumberField.LevelArith.exists_smul_eq_smul_add_d_add_diag_of_sIdele_coboundary_of_le43 below · depth 26 - Inflation of degree-3 cochain data to a larger layer
NumberField.LevelArith.exists_three_cochain_val_eq_of_le_level_sUnitsMaxRep0 below · depth 26 - Vanishing idèle class transfers from base L to L'
NumberField.LevelArith.map_principalIdele_H2pi_eq_zero_of_le2 below · depth 26 - Genuine base change preserves S-unit idèles and S-units
NumberField.AdeleRing.unitsMap_genuineBaseChange_mem_unitIdelesOutside_of_isScalarTower2 below · depth 27 - Capitulation step: idèlic 2-cochain gives deeper S-unit coboundary
NumberField.LevelArith.exists_level_sUnitsRep_val_d_eq_of_sIdele_coboundary_of_map_eq_add_d56 below · depth 27 - Un-transporting a degree-3 coboundary to the invariants frame
NumberField.LevelArith.exists_two_cochain_quotientToInvariants_sUnitsMaxRep_eq_d_of_transport0 below · depth 27 - Γ_L/U_F a p-group forces Gal(F_L/L) a p-group
NumberField.LevelArith.isPGroup_levelGal_of_isPGroup_quotient1 below · depth 27 - Genuine base change preserves S-idèles and S-units in level towers
NumberField.LevelArith.unitsMap_genuineBaseChange_mem_unitIdelesOutside_of_le2 below · depth 27 - A Galois S-level absorbing p-power idèle classes
NumberField.LevelArith.exists_le_unitsMap_genuineBaseChange_mem_sup_of_pow_mem14 below · depth 28