Rep k G
is the category of k
-linear representations of G
. #
If V : Rep k G
, there is a coercion that allows you to treat V
as a type,
and this type comes equipped with a Module k V
instance.
Also V.ρ
gives the homomorphism G →* (V →ₗ[k] V)
.
Conversely, given a homomorphism ρ : G →* (V →ₗ[k] V)
,
you can construct the bundled representation as Rep.of ρ
.
We construct the categorical equivalence Rep k G ≌ ModuleCat (MonoidAlgebra k G)
.
We verify that Rep k G
is a k
-linear abelian symmetric monoidal category with all (co)limits.
Equations
Equations
Equations
Specialize the existing Action.ρ
, changing the type to Representation k G V
.
Equations
- V.ρ = V.V.endRingEquiv.toMonoidHom.comp V.ρ
Instances For
Lift an unbundled representation to Rep
.
Equations
- Rep.of ρ = { V := ModuleCat.of k V, ρ := (ModuleCat.of k V).endRingEquiv.symm.toMonoidHom.comp ρ }
Instances For
The trivial k
-linear G
-representation on a k
-module V.
Equations
- Rep.trivial k G V = Rep.of (Representation.trivial k G V)
Instances For
The functor equipping a module with the trivial representation.
Equations
- Rep.trivialFunctor k G = { obj := fun (V : ModuleCat k) => Rep.trivial k G ↑V, map := fun {X Y : ModuleCat k} (f : X ⟶ Y) => { hom := f, comm := ⋯ }, map_id := ⋯, map_comp := ⋯ }
Instances For
Given a normal subgroup S ≤ G
, a G
-representation ρ
which is trivial on S
factors
through G ⧸ S
.
Equations
- A.ofQuotient S = Rep.of (A.ρ.ofQuotient S)
Instances For
A G
-representation A
on which a normal subgroup S ≤ G
acts trivially induces a
G ⧸ S
-representation on A
, and composing this with the quotient map G → G ⧸ S
gives the
original representation by definition. Useful for typechecking.
Equations
- A.resOfQuotientIso S = CategoryTheory.Iso.refl ((Action.res (ModuleCat k) (QuotientGroup.mk' S)).obj (A.ofQuotient S))
Instances For
Given a k
-linear G
-representation (V, ρ)
, this is the representation defined by
restricting ρ
to a G
-invariant k
-submodule of V
.
Equations
- A.subrepresentation W le_comap = Rep.of (A.ρ.subrepresentation W le_comap)
Instances For
The natural inclusion of a subrepresentation into the ambient representation.
Instances For
Given a k
-linear G
-representation (V, ρ)
and a G
-invariant k
-submodule W ≤ V
, this
is the representation induced on V ⧸ W
by ρ
.
Instances For
The monoidal functor sending a type H
with a G
-action to the induced k
-linear
G
-representation on k[H].
Equations
- Rep.linearization k G = (ModuleCat.free k).mapAction G
Instances For
Equations
The linearization of a type X
on which G
acts trivially is the trivial G
-representation
on k[X]
.
Equations
- Rep.linearizationTrivialIso k G X = Action.mkIso (CategoryTheory.Iso.refl ((Rep.linearization k G).obj { V := X, ρ := 1 }).V) ⋯
Instances For
Given a G
-action on H
, this is k[H]
bundled with the natural representation
G →* End(k[H])
as a term of type Rep k G
.
Equations
- Rep.ofMulAction k G H = Rep.of (Representation.ofMulAction k G H)
Instances For
The k
-linear G
-representation on k[G]
, induced by left multiplication.
Equations
- Rep.leftRegular k G = Rep.ofMulAction k G G
Instances For
The k
-linear G
-representation on k[Gⁿ]
, induced by left multiplication.
Equations
- Rep.diagonal k G n = Rep.ofMulAction k G (Fin n → G)
Instances For
The linearization of a type H
with a G
-action is definitionally isomorphic to the
k
-linear G
-representation on k[H]
induced by the G
-action on H
.
Equations
- Rep.linearizationOfMulActionIso k G H = CategoryTheory.Iso.refl ((Rep.linearization k G).obj (Action.ofMulAction G H))
Instances For
Turns a k
-module A
with a compatible DistribMulAction
of a monoid G
into a
k
-linear G
-representation on A
.
Equations
- Rep.ofDistribMulAction k G A = Rep.of (Representation.ofDistribMulAction k G A)
Instances For
Turns a CommGroup
G
with a MulDistribMulAction
of a monoid M
into a
ℤ
-linear M
-representation on Additive G
.
Equations
Instances For
Given an R
-algebra S
, the ℤ
-linear representation associated to the natural action of
S ≃ₐ[R] S
on Sˣ
.
Equations
- Rep.ofAlgebraAutOnUnits R S = Rep.ofMulDistribMulAction (S ≃ₐ[R] S) Sˣ
Instances For
Given an element x : A
, there is a natural morphism of representations k[G] ⟶ A
sending
g ↦ A.ρ(g)(x).
Equations
- A.leftRegularHom x = { hom := ModuleCat.ofHom ((Finsupp.lift (↑A.V) k G) fun (g : G) => (A.ρ g) x), comm := ⋯ }
Instances For
Given a k
-linear G
-representation A
, there is a k
-linear isomorphism between
representation morphisms Hom(k[G], A)
and A
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given f : α → A
, the natural representation morphism (α →₀ k[G]) ⟶ A
sending
single a (single g r) ↦ r • A.ρ g (f a)
.
Equations
- A.freeLift f = { hom := ModuleCat.ofHom ((Finsupp.linearCombination k fun (x : α × G) => (A.ρ x.2) (f x.1)) ∘ₗ ↑(Finsupp.finsuppProdLEquiv k).symm), comm := ⋯ }
Instances For
The natural linear equivalence between functions α → A
and representation morphisms
(α →₀ k[G]) ⟶ A
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given representations A, B
and a type α
, this is the natural representation isomorphism
(α →₀ A) ⊗ B ≅ (A ⊗ B) →₀ α
sending single x a ⊗ₜ b ↦ single x (a ⊗ₜ b)
.
Equations
- A.finsuppTensorLeft B α = Action.mkIso (TensorProduct.finsuppLeft k (↑A.V) (↑B.V) α).toModuleIso ⋯
Instances For
Given representations A, B
and a type α
, this is the natural representation isomorphism
A ⊗ (α →₀ B) ≅ (A ⊗ B) →₀ α
sending a ⊗ₜ single x b ↦ single x (a ⊗ₜ b)
.
Equations
- A.finsuppTensorRight B α = Action.mkIso (TensorProduct.finsuppRight k (↑A.V) (↑B.V) α).toModuleIso ⋯
Instances For
The natural isomorphism sending single g r₁ ⊗ single a r₂ ↦ single a (single g r₁r₂)
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a k
-linear G
-representation (A, ρ₁)
, this is the 'internal Hom' functor sending
(B, ρ₂)
to the representation Homₖ(A, B)
that maps g : G
and f : A →ₗ[k] B
to
(ρ₂ g) ∘ₗ f ∘ₗ (ρ₁ g⁻¹)
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a k
-linear G
-representation A
, this is the Hom-set bijection in the adjunction
A ⊗ - ⊣ ihom(A, -)
. It sends f : A ⊗ B ⟶ C
to a Rep k G
morphism defined by currying the
k
-linear map underlying f
, giving a map A →ₗ[k] B →ₗ[k] C
, then flipping the arguments.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Porting note: if we generate this with @[simps]
the linter complains some types in the LHS
simplify.
Porting note: if we generate this with @[simps]
the linter complains some types in the LHS
simplify.
Equations
- One or more equations did not get rendered due to their size.
There is a k
-linear isomorphism between the sets of representation morphismsHom(A ⊗ B, C)
and Hom(B, Homₖ(A, C))
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
There is a k
-linear isomorphism between the sets of representation morphismsHom(A ⊗ B, C)
and Hom(A, Homₖ(B, C))
.
Equations
- Rep.MonoidalClosed.linearHomEquivComm A B C = (CategoryTheory.Linear.homCongr k (β_ A B) (CategoryTheory.Iso.refl C)).trans (Rep.MonoidalClosed.linearHomEquiv B A C)
Instances For
Tautological isomorphism to help Lean in typechecking.
Equations
- ρ.repOfTprodIso τ = CategoryTheory.Iso.refl (Rep.of (ρ.tprod τ))
Instances For
Auxiliary lemma for toModuleMonoidAlgebra
.
Auxiliary definition for toModuleMonoidAlgebra
.
Equations
- Rep.toModuleMonoidAlgebraMap f = ModuleCat.ofHom (let __src := ModuleCat.Hom.hom f.hom; { toAddHom := __src.toAddHom, map_smul' := ⋯ })
Instances For
Functorially convert a representation of G
into a module over MonoidAlgebra k G
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Functorially convert a module over MonoidAlgebra k G
into a representation of G
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Auxiliary definition for equivalenceModuleMonoidAlgebra
.
Equations
- Rep.counitIsoAddEquiv = id ((Representation.ofModule ↑M).asModuleEquiv.toAddEquiv.trans (RestrictScalars.addEquiv k (MonoidAlgebra k G) ↑M))
Instances For
Auxiliary definition for equivalenceModuleMonoidAlgebra
.
Equations
- Rep.unitIsoAddEquiv = id (V.ρ.asModuleEquiv.symm.toAddEquiv.trans (RestrictScalars.addEquiv k (MonoidAlgebra k G) V.ρ.asModule).symm)
Instances For
Auxiliary definition for equivalenceModuleMonoidAlgebra
.
Equations
- Rep.counitIso M = (let __src := Rep.counitIsoAddEquiv; { toFun := __src.toFun, map_add' := ⋯, map_smul' := ⋯, invFun := __src.invFun, left_inv := ⋯, right_inv := ⋯ }).toModuleIso
Instances For
Auxiliary definition for equivalenceModuleMonoidAlgebra
.
Equations
- One or more equations did not get rendered due to their size.