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 natural isomorphism between the representations on k[G¹] and k[G] induced by left
multiplication in G.
Equations
- Rep.diagonalOneIsoLeftRegular k G = Action.mkIso (Finsupp.domLCongr (Equiv.funUnique (Fin 1) G)).toModuleIso ⋯
Instances For
When H = {1}, the G-representation on k[H] induced by an action of G on H is
isomorphic to the trivial representation on k.
Equations
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
An isomorphism of k-linear representations of G from k[Gⁿ⁺¹] to k[G] ⊗ₖ k[Gⁿ] (on
which G acts by ρ(g₁)(g₂ ⊗ x) = (g₁ * g₂) ⊗ x) sending (g₀, ..., gₙ) to
g₀ ⊗ (g₀⁻¹g₁, g₁⁻¹g₂, ..., gₙ₋₁⁻¹gₙ). The inverse sends g₀ ⊗ (g₁, ..., gₙ) to
(g₀, g₀g₁, ..., g₀g₁...gₙ).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Representation isomorphism k[Gⁿ⁺¹] ≅ (Gⁿ →₀ k[G]), where the righthand representation is
defined pointwise by the left regular representation on k[G]. The map sends
single (g₀, ..., gₙ) a ↦ single (g₀⁻¹g₁, ..., gₙ₋₁⁻¹gₙ) (single g₀ a).
Equations
- Rep.diagonalSuccIsoFree k G n = Rep.diagonalSuccIsoTensorTrivial k G n ≪≫ Rep.leftRegularTensorTrivialIsoFree k G (Fin n → G)
Instances For
Given a k-linear G-representation A, the set of representation morphisms
Hom(k[Gⁿ⁺¹], A) is k-linearly isomorphic to the set of functions Gⁿ → A.
Equations
- Rep.diagonalHomEquiv n A = (CategoryTheory.Linear.homCongr k (Rep.diagonalSuccIsoFree k G n) (CategoryTheory.Iso.refl A)).trans (Rep.freeLiftLEquiv (Fin n → G) A)
Instances For
Given a k-linear G-representation A, diagonalHomEquiv is a k-linear isomorphism of
the set of representation morphisms Hom(k[Gⁿ⁺¹], A) with Fun(Gⁿ, A). This lemma says that this
sends a morphism of representations f : k[Gⁿ⁺¹] ⟶ A to the function
(g₁, ..., gₙ) ↦ f(1, g₁, g₁g₂, ..., g₁g₂...gₙ).
Given a k-linear G-representation A, diagonalHomEquiv is a k-linear isomorphism of
the set of representation morphisms Hom(k[Gⁿ⁺¹], A) with Fun(Gⁿ, A). This lemma says that the
inverse map sends a function f : Gⁿ → A to the representation morphism sending
(g₀, ... gₙ) ↦ ρ(g₀)(f(g₀⁻¹g₁, g₁⁻¹g₂, ..., gₙ₋₁⁻¹gₙ)), where ρ is the representation attached
to A.
Auxiliary lemma for defining group cohomology, used to show that the isomorphism
diagonalHomEquiv commutes with the differentials in two complexes which compute
group cohomology.
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.