Actions as functors and as categories #
From a multiplicative action M ↻ X, we can construct a functor from M to the category of
types, mapping the single object of M to X and an element m : M
to map X → X
given by
multiplication by m
.
This functor induces a category structure on X -- a special case of the category of elements.
A morphism x ⟶ y
in this category is simply a scalar m : M
such that m • x = y
. In the case
where M is a group, this category is a groupoid -- the action groupoid.
A multiplicative action M ↻ X viewed as a functor mapping the single object of M to X
and an element m : M
to the map X → X
given by multiplication by m
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A multiplicative action M ↻ X induces a category structure on X, where a morphism from x to y is a scalar taking x to y. Due to implementation details, the object type of this category is not equal to X, but is in bijection with X.
Equations
- CategoryTheory.ActionCategory M X = (CategoryTheory.actionAsFunctor M X).Elements
Instances For
Equations
- CategoryTheory.instCategoryActionCategory M X = id inferInstance
The projection from the action category to the monoid, mapping a morphism to its label.
Equations
Instances For
The canonical map ActionCategory M X → X
. It is given by fun x => x.snd
, but
has a more explicit type.
Equations
- x.back = x.snd
Instances For
An object of the action category given by M ↻ X corresponds to an element of X.
Equations
- CategoryTheory.ActionCategory.objEquiv M X = { toFun := fun (x : X) => ⟨(), x⟩, invFun := fun (x : CategoryTheory.ActionCategory M X) => x.back, left_inv := ⋯, right_inv := ⋯ }
Instances For
Equations
- CategoryTheory.ActionCategory.instInhabited M X = { default := let_fun this := default; ⟨(), this⟩ }
The stabilizer of a point is isomorphic to the endomorphism monoid at the corresponding point. In fact they are definitionally equivalent.
Equations
Instances For
Equations
- CategoryTheory.ActionCategory.instGroupoid = CategoryTheory.groupoidOfElements (CategoryTheory.actionAsFunctor G X)
Any subgroup of G
is a vertex group in its action groupoid.
Equations
Instances For
Any morphism in the action groupoid is given by some pair.
Equations
- CategoryTheory.ActionCategory.cases hyp f = cast ⋯ (hyp b.back ↑f)
Instances For
Given G
acting on X
, a functor from the corresponding action groupoid to a group H
can be curried to a group homomorphism G →* (X → H) ⋊ G
.
Equations
- CategoryTheory.ActionCategory.curry F = { toFun := fun (g : G) => { left := fun (b : X) => F.map (CategoryTheory.ActionCategory.homOfPair b g), right := g }, map_one' := ⋯, map_mul' := ⋯ }
Instances For
Given G
acting on X
, a group homomorphism φ : G →* (X → H) ⋊ G
can be uncurried to
a functor from the action groupoid to H
, provided that φ g = (_, g)
for all g
.
Equations
- One or more equations did not get rendered due to their size.