module Algebra.Group.Concrete.Abelian where
Concrete abelian groupsπ
A concrete abelian group is, unsurprisingly, a concrete group in which concatenation of loops at the base point is commutative.
module _ {β} (G : ConcreteGroup β) where is-concrete-abelian : Type β is-concrete-abelian = β (p q : pt G β‘ pt G) β p β q β‘ q β p
This is a property:
open ConcreteGroup G using (H-Level-B) is-concrete-abelian-is-prop : is-prop is-concrete-abelian is-concrete-abelian-is-prop = hlevel 1
As an easy consequence, in an abelian group we can fill any square that has equal opposite sides.
concrete-abelianβsquare : is-concrete-abelian β {x : β B G β} β (p q : x β‘ x) β Square p q q p concrete-abelianβsquare ab {x} = connectedβ-elim-prop {P = Ξ» x β (p q : x β‘ x) β Square p q q p} (G .has-is-connected) (hlevel 1) (Ξ» p q β commutesβsquare (ab p q)) x
Still unsurprisingly, the properties of being a concrete abelian group and being an abelian group are equivalent over the equivalence between concrete and abstract groups.
abelianβabelian : β {β} β is-concrete-abelian β[ ConcreteβAbstract {β} ] is-commutative-group abelianβabelian = prop-over-ext ConcreteβAbstract (Ξ» {G} β is-concrete-abelian-is-prop G) (Ξ» {G} β Group-on-is-abelian-is-prop (G .snd)) (Ξ» G G-ab β G-ab) (Ξ» G G-ab β β-comm _ G-ab)
For example, the circle is abelian, being the delooping of
SΒΉ-concrete-abelian : is-concrete-abelian SΒΉ-concrete SΒΉ-concrete-abelian = Equiv.from (abelianβabelian SΒΉ-concrete β€ ΟβSΒΉβ‘β€) (AbelianβGroup-on-abelian (β€-ab .snd))
First abelian group cohomologyπ
When is a concrete abelian group, something interesting happens: for any other concrete group the set of pointed maps (i.e. group homomorphisms from to turns out to be equivalent to the set truncation of the type of unpointed maps,
This is a special case of a theorem that relates this set truncation with the set of orbits of the action of the inner automorphism group of on the set of group homomorphisms We do not prove this here, but see (Bezem et al. 2023, theorem 5.12.2). In the special case that is abelian, its inner automorphism group is trivial, and we can avoid quotienting.
In even fancier language, it is also a computation of the first cohomology group of with coefficients in hence we adopt the notation
HΒΉ[_,_] : β {β β'} β ConcreteGroup β β ConcreteGroup β' β Type (β β β') HΒΉ[ G , H ] = β₯ (β B G β β β B H β) β₯β
First, note that there is always a natural map that just forgets the pointing path.
class : β {β β'} (G : ConcreteGroup β) (H : ConcreteGroup β') β (B G ββ B H) β HΒΉ[ G , H ] class G H (f , _) = inc f
Now assume is abelian; we will show that this map is injective and surjective, so that it is an equivalence of sets.
module _ {β β'} (G : ConcreteGroup β) (H : ConcreteGroup β') (H-ab : is-concrete-abelian H) where open ConcreteGroup H using (H-Level-B)
Surjectivity is the easy part: since is connected, every map is merely homotopic to a pointed map.
class-surjective : is-surjective (class G H) class-surjective = β₯-β₯β-elim (Ξ» _ β hlevel 2) Ξ» f β do ptf β H .has-is-connected (f (pt G)) inc ((f , ptf) , refl)
For injectivity, we restrict our attention to the case of two pointed maps whose underlying maps are definitionally equal. In other words, we prove that any two pointings of (say yield equal pointed maps.
In order to define our underlying homotopy, we proceed by induction: since is a pointed connected type, it suffices to give a path and to show that every loop respects this identification, in the sense of the following square:
Since our homotopy additionally has to be pointed, we know that we must have This is where the fact that is abelian comes in: the above square has equal opposite sides, so it automatically commutes.
class-injective : β f β (p q : f (pt G) β‘ pt H) β Path (B G ββ B H) (f , p) (f , q) class-injective f p q = Ξ£-pathp (funext E.elim) (transpose (symP (ββsquare'' E.elim-Ξ²-point))) where Ξ± : f (pt G) β‘ f (pt G) Ξ± = p β sym q coh : β (l : pt G β‘ pt G) β Square (ap f l) Ξ± Ξ± (ap f l) coh l = concrete-abelianβsquare H H-ab (ap f l) Ξ± module E = connectedβ-elim-set {P = Ξ» g β f g β‘ f g} (G .has-is-connected) (hlevel 2) Ξ± coh
By a quick path induction, we can conclude that class
is an equivalence between
sets.
class-is-equiv : is-equiv (class G H) class-is-equiv = injective-surjectiveβis-equiv! (inj _ _) class-surjective where inj : β f g β class G H f β‘ class G H g β f β‘ g inj (f , ptf) (g , ptg) fβ‘g = β₯-β₯-rec (ConcreteGroups-Hom-set G H _ _) (Ξ» fβ‘g β J (Ξ» g _ β β ptg β (f , ptf) β‘ (g , ptg)) (class-injective f ptf) fβ‘g ptg) (β₯-β₯β-path.to fβ‘g) first-concrete-abelian-group-cohomology : (B G ββ B H) β HΒΉ[ G , H ] first-concrete-abelian-group-cohomology = class G H , class-is-equiv
Translating this across our equivalence of categories gives a similar statement for abstract groups.
Deloop-hom-equiv : (Deloopβ G ββ Deloopβ H) β Hom (Groups β) G H Deloop-hom-equiv = ff+split-esoβhom-equiv ΟβF (Ξ» {G} {H} β ΟβF-is-ff {_} {G} {H}) ΟβF-is-split-eso G H .snd .snd first-abelian-group-cohomology : HΒΉ[ Concrete G , Concrete H ] β Hom (Groups β) G H first-abelian-group-cohomology = first-concrete-abelian-group-cohomology (Concrete G) (Concrete H) (Equiv.from (abelianβabelian (Concrete H) H (ConcreteβAbstract.Ξ΅ H)) H-ab) eβ»ΒΉ βe Deloop-hom-equiv
References
- Bezem, Marc, Ulrik Buchholtz, Pierre Cagne, BjΓΈrn Ian Dundas, and Daniel R. Grayson. 2023. βSymmetry.β https://github.com/UniMath/SymmetryBook.