Definitions/Def_GroupCohomology_TateCohomology.lean
Tate cohomology of a finite group in all degrees
Throughout, k is a commutative ring, G a finite group, and representations are k-linear. For a representation \rho of G on V with norm N_G=\sum_{g\in G}\rho(g), the module records that \rho(g)\circ N_G=N_G=N_G\circ\rho(g), so that N_G lands in the invariants V^G and factors through the coinvariants V_G=V/I_GV; Representation.normToInvariants is the corestriction V\to V^G of N_G and Representation.normBar is the induced map \bar N_G\colon V_G\to V^G. The two degrees at the junction of cohomology and homology are then defined as k-modules: tateH0 is V^G/\operatorname{im}\bar N_G = V^G/N_GV, and tateHneg1 is \ker\bar N_G, i.e. \{v\in V: N_Gv=0\}/I_GV realised as a submodule of V_G. For objects A of Rep k G these are written A.tateH0, A.tateHneg1.
For a morphism \varphi\colon A\to B of representations, the maps induced on invariants and coinvariants (through Mathlib's invariants and coinvariants functors) commute with the norm, so \bar N_G is natural; from this one gets k-linear maps tateH0Map \varphi and tateHneg1Map \varphi, together with the identities for the identity morphism and for a composite \varphi followed by \psi (these are stated as equalities of linear maps rather than packaged as a functor).
Finally Rep.tateCohomology assembles a \mathbb{Z}-graded family of k-modules attached to A, by cases on the integer: in degree n+1\ge 1 it is the group cohomology H^{n+1}(G,A), in degree 0 and -1 the two modules above, and in degree -(n+2) the group homology H_{n+1}(G,A). The four unfolding lemmas state exactly these four values.
Relation to Mathlib
Built directly on Mathlib's Representation.norm, invariants, Coinvariants, Rep.invariantsFunctor/coinvariantsFunctor, groupCohomology and groupHomology; Mathlib has no Tate (modified) cohomology, and these carriers, induced maps and the \mathbb{Z}-graded family are the project's own.
Where it is used
This module fixes the vocabulary in which Tate cohomology of finite groups is stated in the Galois-cohomological parts of the development, for a general finite group rather than only a cyclic one; the comparison with the two-periodic complexes and with the elementwise description \ker(\sigma-1)/N, \ker N/(\sigma-1) in the cyclic case is made elsewhere.
References
- J.-P. Serre, Local Fields, Graduate Texts in Mathematics 67, Springer, 1979, Chapters VIII–IX
- J. W. S. Cassels and A. Fröhlich (eds.), Algebraic Number Theory, Academic Press, 1967, Chapter IV
- J. Neukirch, A. Schmidt and K. Wingberg, Cohomology of Number Fields, Grundlehren der mathematischen Wissenschaften 323, Springer, 2000, Chapter I, §2
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 155 lines
- 32 declarations
- used in the statements of 125 theorems and imported by 136 proofs
- imports 0 definition modules
Source file: Definitions/Def_GroupCohomology_TateCohomology.lean
Imports
- only Mathlib
Declarations
- lemma
Representation.self_comp_norm' - lemma
Representation.norm_comp_self' - lemma
Representation.norm_apply_mem_invariants - def
Representation.normToInvariants - lemma
Representation.coe_normToInvariants_apply - lemma
Representation.normToInvariants_comp_self - def
Representation.normBar - lemma
Representation.normBar_mk - abbrev
Representation.tateH0 - abbrev
Representation.tateHneg1 - abbrev
Rep.tateH0 - abbrev
Rep.tateHneg1 - abbrev
Rep.invariantsMap - lemma
Rep.coe_invariantsMap_apply - abbrev
Rep.coinvariantsMap - lemma
Rep.coinvariantsMap_mk - lemma
Rep.hom_norm_apply - lemma
Rep.normBar_comp_coinvariantsMap - lemma
Rep.range_normBar_le_comap_invariantsMap - def
Rep.tateH0Map - lemma
Rep.tateH0Map_mk - def
Rep.tateHneg1Map - lemma
Rep.coe_tateHneg1Map_apply - lemma
Rep.tateH0Map_id - lemma
Rep.tateH0Map_comp - lemma
Rep.tateHneg1Map_id - lemma
Rep.tateHneg1Map_comp - def
Rep.tateCohomology - lemma
Rep.tateCohomology_ofNat_succ - lemma
Rep.tateCohomology_zero - lemma
Rep.tateCohomology_neg_one - lemma
Rep.tateCohomology_negSucc_succ
Source
import Mathlib set_option autoImplicit false universe u v w open CategoryTheory namespace Representation variable {k G V : Type*} [CommRing k] [Group G] [Fintype G] [AddCommGroup V] [Module k V] (ρ : Representation k G V) lemma self_comp_norm' (g : G) : ρ g ∘ₗ ρ.norm = ρ.norm := by ext v simp only [norm, LinearMap.coe_comp, Function.comp_apply, LinearMap.sum_apply, map_sum] exact Fintype.sum_equiv (Equiv.mulLeft g) _ _ fun h => by simp only [Equiv.coe_mulLeft, map_mul, Module.End.mul_apply] lemma norm_comp_self' (g : G) : ρ.norm ∘ₗ ρ g = ρ.norm := by ext v simp only [norm, LinearMap.coe_comp, Function.comp_apply, LinearMap.sum_apply] exact Fintype.sum_equiv (Equiv.mulRight g) _ _ fun h => by simp only [Equiv.coe_mulRight, map_mul, Module.End.mul_apply] lemma norm_apply_mem_invariants (v : V) : ρ.norm v ∈ ρ.invariants := (mem_invariants ρ _).2 fun g => by rw [← LinearMap.comp_apply, self_comp_norm'] noncomputable def normToInvariants : V →ₗ[k] ρ.invariants := LinearMap.codRestrict ρ.invariants ρ.norm (norm_apply_mem_invariants ρ) @[simp] lemma coe_normToInvariants_apply (v : V) : (ρ.normToInvariants v : V) = ρ.norm v := rfl lemma normToInvariants_comp_self (g : G) : ρ.normToInvariants ∘ₗ ρ g = ρ.normToInvariants := by refine LinearMap.ext fun v => Subtype.ext ?_ change ρ.norm (ρ g v) = ρ.norm v rw [← LinearMap.comp_apply, norm_comp_self'] noncomputable def normBar : ρ.Coinvariants →ₗ[k] ρ.invariants := Coinvariants.lift ρ ρ.normToInvariants (normToInvariants_comp_self ρ) @[simp] lemma normBar_mk (v : V) : ρ.normBar (Coinvariants.mk ρ v) = ρ.normToInvariants v := rfl abbrev tateH0 : Type _ := ρ.invariants ⧸ LinearMap.range ρ.normBar abbrev tateHneg1 : Type _ := LinearMap.ker ρ.normBar end Representation namespace Rep section lowDegrees variable {k : Type u} {G : Type v} [CommRing k] [Group G] [Fintype G] abbrev tateH0 (A : Rep.{w} k G) : Type w := A.ρ.tateH0 abbrev tateHneg1 (A : Rep.{w} k G) : Type w := A.ρ.tateHneg1 section maps variable {A B C : Rep.{w} k G} (φ : A ⟶ B) (ψ : B ⟶ C) noncomputable abbrev invariantsMap : A.ρ.invariants →ₗ[k] B.ρ.invariants := ((Rep.invariantsFunctor k G).map φ).hom omit [Fintype G] in @[simp] lemma coe_invariantsMap_apply (a : A.ρ.invariants) : (invariantsMap φ a : B) = φ.hom a := rfl noncomputable abbrev coinvariantsMap : A.ρ.Coinvariants →ₗ[k] B.ρ.Coinvariants := ((Rep.coinvariantsFunctor k G).map φ).hom omit [Fintype G] in lemma coinvariantsMap_mk (a : A) : coinvariantsMap φ (Representation.Coinvariants.mk A.ρ a) = Representation.Coinvariants.mk B.ρ (φ.hom a) := rfl lemma hom_norm_apply (a : A) : φ.hom (A.ρ.norm a) = B.ρ.norm (φ.hom a) := by simp only [Representation.norm, LinearMap.coe_sum, Finset.sum_apply, map_sum] exact Finset.sum_congr rfl fun g _ => Rep.hom_comm_apply φ g a lemma normBar_comp_coinvariantsMap : B.ρ.normBar ∘ₗ coinvariantsMap φ = invariantsMap φ ∘ₗ A.ρ.normBar := by refine Submodule.linearMap_qext _ (LinearMap.ext fun a => Subtype.ext ?_) change B.ρ.norm (φ.hom a) = φ.hom (A.ρ.norm a) exact (hom_norm_apply φ a).symm lemma range_normBar_le_comap_invariantsMap : LinearMap.range A.ρ.normBar ≤ (LinearMap.range B.ρ.normBar).comap (invariantsMap φ) := by rintro x ⟨y, rfl⟩ exact ⟨coinvariantsMap φ y, by rw [← LinearMap.comp_apply, normBar_comp_coinvariantsMap, LinearMap.comp_apply]⟩ noncomputable def tateH0Map : A.tateH0 →ₗ[k] B.tateH0 := Submodule.mapQ _ _ (invariantsMap φ) (range_normBar_le_comap_invariantsMap φ) @[simp] lemma tateH0Map_mk (a : A.ρ.invariants) : tateH0Map φ (Submodule.Quotient.mk a) = Submodule.Quotient.mk (invariantsMap φ a) := rfl noncomputable def tateHneg1Map : A.tateHneg1 →ₗ[k] B.tateHneg1 := (coinvariantsMap φ ∘ₗ (LinearMap.ker A.ρ.normBar).subtype).codRestrict _ (fun x => by rw [LinearMap.mem_ker, LinearMap.comp_apply, ← LinearMap.comp_apply (f := B.ρ.normBar), normBar_comp_coinvariantsMap, LinearMap.comp_apply, Submodule.subtype_apply, x.2, map_zero]) @[simp] lemma coe_tateHneg1Map_apply (x : A.tateHneg1) : (tateHneg1Map φ x : B.ρ.Coinvariants) = coinvariantsMap φ x := rfl lemma tateH0Map_id : tateH0Map (𝟙 A) = LinearMap.id := by refine Submodule.linearMap_qext _ (LinearMap.ext fun a => ?_) change Submodule.Quotient.mk (invariantsMap (𝟙 A) a) = Submodule.Quotient.mk a congr 1 lemma tateH0Map_comp : tateH0Map (φ ≫ ψ) = tateH0Map ψ ∘ₗ tateH0Map φ := by refine Submodule.linearMap_qext _ (LinearMap.ext fun a => ?_) change Submodule.Quotient.mk (invariantsMap (φ ≫ ψ) a) = Submodule.Quotient.mk (invariantsMap ψ (invariantsMap φ a)) congr 1 lemma tateHneg1Map_id : tateHneg1Map (𝟙 A) = LinearMap.id := by refine LinearMap.ext fun x => Subtype.ext ?_ obtain ⟨a, ha⟩ := Submodule.Quotient.mk_surjective _ (x : A.ρ.Coinvariants) simp only [LinearMap.id_apply, coe_tateHneg1Map_apply] rw [← ha] rfl lemma tateHneg1Map_comp : tateHneg1Map (φ ≫ ψ) = tateHneg1Map ψ ∘ₗ tateHneg1Map φ := by refine LinearMap.ext fun x => Subtype.ext ?_ obtain ⟨a, ha⟩ := Submodule.Quotient.mk_surjective _ (x : A.ρ.Coinvariants) simp only [LinearMap.comp_apply, coe_tateHneg1Map_apply] rw [← ha] rfl end maps end lowDegrees section graded variable {k G : Type u} [CommRing k] [Group G] [Fintype G] noncomputable def tateCohomology (A : Rep.{u} k G) : ℤ → ModuleCat.{u} k | (Int.ofNat (n + 1)) => groupCohomology A (n + 1) | (Int.ofNat 0) => ModuleCat.of k A.tateH0 | (Int.negSucc 0) => ModuleCat.of k A.tateHneg1 | (Int.negSucc (n + 1)) => groupHomology A (n + 1) lemma tateCohomology_ofNat_succ (A : Rep.{u} k G) (n : ℕ) : A.tateCohomology (n + 1 : ℕ) = groupCohomology A (n + 1) := rfl lemma tateCohomology_zero (A : Rep.{u} k G) : A.tateCohomology 0 = ModuleCat.of k A.tateH0 := rfl lemma tateCohomology_neg_one (A : Rep.{u} k G) : A.tateCohomology (-1) = ModuleCat.of k A.tateHneg1 := rfl lemma tateCohomology_negSucc_succ (A : Rep.{u} k G) (n : ℕ) : A.tateCohomology (Int.negSucc (n + 1)) = groupHomology A (n + 1) := rfl end graded end Rep
Statements phrased using this module (125)
- The order of G annihilates Tate cohomology in all degrees
Rep.card_smul_eq_zero_of_tateCohomology19 below · depth 19 - ℤ-freeness of the relation module carrier
Rep.moduleFree_relationCarrier0 below · depth 19 - Exactness of the canonical free presentation over ℤ
Rep.relationSeqInt_shortExact0 below · depth 19 - Vanishing of Tate cohomology of the unit idèles outside T
M4aHerbrand.subsingleton_tateCohomology_unitIdelesTrivialOn_of_ramificationIdx_eq_one63 below · depth 20 - Tate groups of the archimedean idèle module
NumberField.ArchIdele.card_tateH0_obj_eq_prod_and_subsingleton_tateHneg19 below · depth 20 - Tate groups of the finite S-idèle module
NumberField.FiniteSIdele.card_tateH0_obj_eq_prod_and_subsingleton_tateHneg124 below · depth 20 - Cup product with a degree-zero class on the right
Rep.IsTateCupProduct.cup_mk_right_eq_tateMap31 below · depth 20 - Tate–Nakayama surjectivity via a Tate-acyclic presentation
Rep.IsTateCupProduct.exists_tateNakayamaPairing_right_eq_of_shortExact102 below · depth 20 - The order of G annihilates Tate ̂ H⁰
Rep.card_smul_eq_zero_of_tateH00 below · depth 20 - Existence of a cup product on Tate cohomology
Rep.exists_isTateCupProduct43 below · depth 20 - Tate acyclicity of Hom(ℤ[G]^{(B)},C)
Rep.isZero_tateCohomology_ihom_free5 below · depth 20 - Restriction of a free representation is Tate-acyclic
Rep.isZero_tateCohomology_res_free10 below · depth 20 - Finite generation of the relation module over ℤ
Rep.moduleFinite_relationCarrier0 below · depth 20 - Tate ̂ H⁰ and ̂ H⁻¹ of a cyclic group on an additive model
Rep.natCard_kerModRange_eq_natCard_tate_of_addEquiv0 below · depth 20 - Dimension shifting for Tate cohomology
Rep.nonempty_tateCohomology_dimShiftUpObj_iso14 below · depth 20 - Dimension shifting down for Tate cohomology
Rep.nonempty_tateCohomology_iso_dimShiftDownObj12 below · depth 20 - Restriction to the top subgroup is bijective on cohomology
groupCohomology.bijective_map_top_subtype0 below · depth 20 - Order of Tate ̂ H⁰ of a product representation
GroupCohomology.RepPi.natCard_tateH0_obj_eq_prod_of_subsingleton1 below · depth 21 - Factorwise vanishing of ̂ H⁻¹ passes to products
GroupCohomology.RepPi.subsingleton_tateHneg1_obj1 below · depth 21 - Tate cohomology of the units at an infinite place
NumberField.InfPlaceDecomp.card_tateH0_units_eq_card_and_subsingleton_tateHneg12 below · depth 21 - Tate cohomology of local units in cyclic degrees 0 and -1
NumberField.PlaceDecomp.card_tateH0_units_eq_card_and_subsingleton_tateHneg114 below · depth 21 - Tate cohomology of local units vanishes at unramified places
NumberField.PlaceDecomp.subsingleton_tateCohomology_integerUnits_of_ramificationIdx_eq_one14 below · depth 21 - Vanishing Tate cohomology of local units at unramified places
NumberField.PlaceDecomp.subsingleton_tate_integerUnits_of_unramified8 below · depth 21 - Tate–Nakayama pairing: surjectivity in the right variable
Rep.IsTateCupProduct.exists_tateNakayamaPairing_right_eq101 below · depth 21 - Dimension shifting: δⁿ is bijective for the sequence 0→ A''→ Ind A→ A→ 0
Rep.bijective_tateDelta_dimShiftDown12 below · depth 21 - Dimension shifting: δ is bijective for 0→ A→ Ind Res A→ A'→ 0
Rep.bijective_tateDelta_dimShiftUp12 below · depth 21 - Bijectivity of the Tate connecting map when the middle term vanishes
Rep.bijective_tateDelta_of_isZero8 below · depth 21 - Exactness of the dimension-shift-down functor on short exact sequences
Rep.dimShiftDownSC_shortExact2 below · depth 21 - The dimension-shifting-down sequence is short exact
Rep.dimShiftDown_shortExact1 below · depth 21 - The dimension-shift sequence 0 → A → Ind₁^G A → A_* → 0 is short exact
Rep.dimShiftUp_shortExact3 below · depth 21 - Induction from the trivial subgroup preserves short exactness
Rep.indBotSC_shortExact1 below · depth 21 - The unit A → Ind_{mathbf 1}^GResA admits a k-linear retraction
Rep.indBotr_indBotIota2 below · depth 21 - Tate cohomology of a free k[G]-module tensored with any representation vanishes
Rep.isZero_tateCohomology_free_tensor5 below · depth 21 - Tate-acyclicity of Hom_k(Ind₁^G M, W)
Rep.isZero_tateCohomology_ihom_indBot_trivial4 below · depth 21 - Tate cohomology of a module induced from the trivial subgroup vanishes
Rep.isZero_tateCohomology_indBot2 below · depth 21 - Vanishing of Tate cohomology of Ind₁^GRes₁ A ⊗ B
Rep.isZero_tateCohomology_indBot_tensor5 below · depth 21 - Vanishing of Tate cohomology passes to retracts
Rep.isZero_tateCohomology_of_retract2 below · depth 21 - Nakayama–Tate: cohomological triviality from vanishing on p-subgroups
Rep.isZero_tateCohomology_res_of_forall_isPGroup33 below · depth 21 - Tate cohomology of A ⊗ Ind₁^G B vanishes
Rep.isZero_tateCohomology_tensor_indBot6 below · depth 21 - Tate cohomology is invariant under isomorphism of representations
Rep.nonempty_tateCohomology_iso_of_iso0 below · depth 21 - Tate dimension shifting along a Tate-acyclic extension
Rep.nonempty_tateCohomology_iso_of_shortExact_of_isZero6 below · depth 21 - Shapiro's lemma in Tate degree 0 for subgroups
Rep.nonempty_tateH0_coind_linearEquiv0 below · depth 21 - Shapiro's lemma in Tate degree -1 for coinduction
Rep.nonempty_tateHneg1_coind_linearEquiv0 below · depth 21 - Dimension shift down preserves A⊗- short exactness
Rep.shortExact_dimShiftDownSC_map_tensorLeft2 below · depth 21 - Dimension shift down preserves ⊗ B-short exactness
Rep.shortExact_dimShiftDownSC_map_tensorRight2 below · depth 21 - Tensoring preserves short exactness of the Ind_{bot} shift
Rep.shortExact_indBotSC_map_tensorLeft1 below · depth 21 - Tensoring the dimension-shift induction preserves short exactness
Rep.shortExact_indBotSC_map_tensorRight1 below · depth 21 - Left tensoring by the dimension-shift subobject preserves short exactness
Rep.shortExact_map_tensorLeft_dimShiftDownObj2 below · depth 21 - Induction from the trivial subgroup preserves tensor-exactness
Rep.shortExact_map_tensorLeft_indBot0 below · depth 21 - Dimension-shift subobject preserves tensored short exactness
Rep.shortExact_map_tensorRight_dimShiftDownObj2 below · depth 21 - Right tensoring with Ind₁^GRes₁ B preserves short exactness
Rep.shortExact_map_tensorRight_indBot0 below · depth 21 - Anticommutativity of Tate connecting maps in a 3× 3 diagram
Rep.tateDelta_comp_tateDelta_eq_neg0 below · depth 21 - Anticommutation of Tate connecting maps in a 3× 3 diagram
Rep.tateDelta_comp_tateDelta_eq_neg_of_hom0 below · depth 21 - Naturality of the Tate connecting maps in all degrees
Rep.tateDelta_naturality0 below · depth 21 - Finiteness of Hⁿ⁺¹(G,L) for finite G and L finitely generated
groupCohomology.finite_groupCohomology_succ_of_moduleFinite_int20 below · depth 21 - Tate ̂ H⁰ of a product of representations
GroupCohomology.RepPi.nonempty_tateH0_obj_linearEquiv0 below · depth 22 - ̂ H⁻¹ of a product of representations splits
GroupCohomology.RepPi.nonempty_tateHneg1_obj_linearEquiv0 below · depth 22 - Tate's theorem in cup-product form with free coefficients
Rep.IsTateCupProduct.bijective_cup_of_h1_h279 below · depth 22 - Associativity of the Tate cup product in all degrees
Rep.IsTateCupProduct.cup_assoc33 below · depth 22 - Graded commutativity of the Tate cup product
Rep.IsTateCupProduct.cup_comm33 below · depth 22 - Right surjectivity of the integral Tate duality pairing
Rep.IsTateCupProduct.exists_cupEv_dual_right_eq55 below · depth 22 - Right non-degeneracy of Tate–Nakayama pairing after δ
Rep.IsTateCupProduct.tateNakayamaPairing_right_eq_zero_of_shortExact95 below · depth 22 - Exactness of H₁(B)→ H₁(C)→ ̂ H⁻¹(A) at H₁(C)
Rep.exact_map_tateDeltaNeg20 below · depth 22 - Exactness of ̂ H⁰(C) → H¹(A) → H¹(B)
Rep.exact_tateDelta0_map0 below · depth 22 - Exactness at ̂ H⁰(A) of the Tate sequence
Rep.exact_tateDeltaNeg1_tateH0Map0 below · depth 22 - Exactness at ̂ H⁻¹ of the Tate sequence
Rep.exact_tateDeltaNeg2_tateHneg1Map0 below · depth 22 - Exactness of the Tate long exact sequence at ̂ Hⁿ⁺¹(X₁)
Rep.exact_tateDelta_tateMap3 below · depth 22 - Exactness of Tate ̂ H⁰ at the third term
Rep.exact_tateH0Map_tateDelta00 below · depth 22 - Exactness of the Tate sequence at ̂ H⁻¹ of the quotient
Rep.exact_tateHneg1Map_tateDeltaNeg10 below · depth 22 - Exactness of the Tate sequence at ̂ Hⁿ(X₃)
Rep.exact_tateMap_tateDelta3 below · depth 22 - The unit A → Ind₁^GRes₁^G A as a sum over G
Rep.indBotIota_apply0 below · depth 22 - Induced map on Ind_{{1}}^G generators
Rep.indBotMap_indBotMk0 below · depth 22 - The augmentation Ind₁^G Res A → A admits a k-linear section
Rep.indBotPi_indBotSigma0 below · depth 22 - Action on Ind₁^G Res₁^G A on elementary tensors
Rep.indBot_rho_indBotMk0 below · depth 22 - Value of the retraction Ind₁^GRes A → A on generators
Rep.indBotr_indBotMk0 below · depth 22 - Sylow reduction for vanishing of Tate cohomology
Rep.isZero_tateCohomology_of_forall_sylow25 below · depth 22 - Vanishing of Tate cohomology of a p-group via consecutive degrees
Rep.isZero_tateCohomology_of_isPGroup_of_forall24 below · depth 22 - Two-periodicity of Tate cohomology of a cyclic group
Rep.nonempty_tateCohomology_iso_add_two2 below · depth 22 - Tate ̂ H⁰ and ̂ H⁻¹ of a cyclic group, elementwise
Rep.nonempty_tate_addEquiv_elementwise0 below · depth 22 - Tate ̂ H⁰ vanishes for modules induced from bot
Rep.subsingleton_tateH0_ind_bot0 below · depth 22 - Vanishing of ̂ H⁻¹ for modules induced from the trivial subgroup
Rep.subsingleton_tateHneg1_ind_bot0 below · depth 22 - Functoriality of Tate cohomology: compatibility with composition
Rep.tateMap_comp0 below · depth 22 - Tate cohomology: the identity map induces the identity
Rep.tateMap_id0 below · depth 22 - Integral Tate duality via cup product, p+q=0
Rep.IsTateCupProduct.bijective_cupEv_dual_left54 below · depth 23 - Right non-degeneracy of the integral Tate pairing
Rep.IsTateCupProduct.cupEv_dual_right_eq_zero47 below · depth 23 - Cup product with a degree-0 Tate class is an induced map
Rep.IsTateCupProduct.cup_mk_left_eq_tateMap31 below · depth 23 - Cup product of invariant classes in degree (0,0)
Rep.IsTateCupProduct.cup_mk_mk32 below · depth 23 - Injectivity of Tate duality pairing in all degrees
Rep.IsTateCupProduct.injective_cupEv_characterDual40 below · depth 23 - Right non-degeneracy of the Tate–Nakayama pairing
Rep.IsTateCupProduct.tateNakayamaPairing_right_eq_zero94 below · depth 23 - Finiteness of Tate cohomology for finitely generated ℤ[G]-coefficients
Rep.finite_tateCohomology_of_moduleFinite21 below · depth 23 - Vanishing of Tate cohomology when |G| acts bijectively
Rep.isZero_tateCohomology_of_bijective_card_nsmul23 below · depth 23 - Tate cohomology of the trivial group vanishes
Rep.isZero_tateCohomology_of_subsingleton0 below · depth 23 - Cohomological triviality of the splitting module in Tate's theorem
Rep.isZero_tateCohomology_res_splittingModule42 below · depth 23 - Tensoring with a free ℤ-module preserves cohomological triviality
Rep.isZero_tateCohomology_res_tensor_of_forall_isZero47 below · depth 23 - The Tate group ̂ H⁰(G,ℤ) has order |G|
Rep.natCard_tateCohomology_zero_trivial_int0 below · depth 23 - Dimension shifting up commutes with restriction (Tate cohomology)
Rep.nonempty_tateCohomology_res_dimShiftUpObj_iso_res18 below · depth 23 - Dimension shifting down, compatibly with restriction
Rep.nonempty_tateCohomology_res_iso_res_dimShiftDownObj16 below · depth 23 - Tate ̂ H⁰ as homology of the norm–(g-1) complex
Rep.nonempty_tateH0_linearEquiv_homology_normHomCompSub0 below · depth 23 - Tate ̂ H⁻¹ of a cyclic group as homology
Rep.nonempty_tateHneg1_linearEquiv_homology_subCompNormHom0 below · depth 23 - Fundamental class via two Tate connecting maps
Rep.tateDelta_splitting_tateDelta_aug_eq_map_H2pi0 below · depth 23 - Corestriction after restriction is multiplication by the index on ̂ H⁰
Rep.tateH0Cores_comp_tateH0Res0 below · depth 23 - Tate ̂ H⁰, ̂ H⁻¹ of a cyclic group on idèle classes
M4aHerbrand.nonempty_tate_addEquiv_ideleClass1 below · depth 24 - Right non-degeneracy of the Tate pairing against ℚ/ℤ
Rep.IsTateCupProduct.cupEv_characterDual_eq_zero40 below · depth 24 - Left non-degeneracy of the Tate pairing in degrees (-1,0)
Rep.IsTateCupProduct.injective_cupEv_negOne_characterDual33 below · depth 24 - Cohomologically trivial G-modules have projective dimension at most one
Rep.exists_shortExact_free_of_forall_isZero43 below · depth 24 - Tate-acyclicity of Hom(Ind₁^G A, W)
Rep.isZero_tateCohomology_ihom_indBot5 below · depth 24 - Restriction to a finite subgroup of Ind₁^G is Tate-acyclic
Rep.isZero_tateCohomology_res_indBot5 below · depth 24 - Tate degrees 0 and -1 match H² and H¹ for cyclic G
Rep.natCard_tateCohomology_zero_and_neg_one_of_isCyclic3 below · depth 24 - Augmentation sequence is the dimension-shift sequence of k
Rep.nonempty_augShortComplex_iso_dimShiftDown2 below · depth 24 - Additivity of the Tate cohomology maps in the morphism
Rep.tateMap_add0 below · depth 24 - Compatible pairings annihilate the sum of Tate connecting maps
Rep.tateMap_tateDelta_add_tateMap_tateDelta_eq_zero8 below · depth 24 - Right non-degeneracy of the Tate pairing in degrees (-1,0)
Rep.IsTateCupProduct.cupEv_characterDual_zero_eq_zero33 below · depth 25 - Cup product ̂ H⁻¹×̂ H⁰→̂ H⁻¹ on explicit classes
Rep.IsTateCupProduct.cup_neg_one_mk32 below · depth 25 - Cohomologically trivial ℤ-free representations are retracts of free ones
Rep.exists_retract_free_of_forall_isZero38 below · depth 25 - The map indBotπ sends [g⊗ a] to g⁻¹a
Rep.indBotPi_indBotMk0 below · depth 25 - Mackey: Res_S Ind₁^G A ≅ Ind₁^S(bigoplus_{G/S}A)
Rep.nonempty_res_indBot_iso0 below · depth 25 - Tate-acyclicity of Hom_ℤ(A,R) over a p-group
Rep.isZero_tateCohomology_ihom_of_isPGroup29 below · depth 26 - Exactness of Tate cohomology functors on a short exact sequence
Rep.exact_tateMap_tateMap2 below · depth 27 - Induced from the trivial subgroup when pV=0 and H₁ vanishes
Rep.nonempty_iso_indBot_trivial_of_isPGroup1 below · depth 27 - Tate's theorem: shifting Tate cohomology by two
Rep.nonempty_tateCohomology_trivial_iso_of_h1_h240 below · depth 27 - Exactness of ̂ H⁰ at the middle term
Rep.exact_tateH0Map_tateH0Map0 below · depth 28 - Exactness at the middle of Tate widehat H⁻¹
Rep.exact_tateHneg1Map_tateHneg1Map0 below · depth 28 - Splitting module: every H² class dies over the augmentation module
Rep.exists_shortExact_map_two_eq_zero2 below · depth 28 - Dimension-shift kernel of the trivial module is the augmentation ideal
Rep.exists_hom_dimShiftDownObj_trivial_leftRegular1 below · depth 29 - Counting homomorphisms into a cyclic group killing X
AddCommGroup.natCard_addMonoidHom_eq_of_isAddCyclic0 below · depth 34