Representations
We provide a simple abstract type hierarchy for representation categories:
abstract type RepresentationCategory <:CategoryRepresentations of Finite groups
Let $G$ be a finite group. We consider the category of finite dimensional $k$-representations of $G$.
GroupRepresentationCategory <: RepresentationCategoryBuild it with the constructor
TensorCategories.representation_category — Methodrepresentation_category(F::Field, G::Group)Category of finite dimensonal group representations of $G$.
A group representation is defined by a group homomorphism from $G$ into a finite dimensional vector space $k^n$. These objects are of type
GroupRepresentationObject <: RepresentationObjectThey are constructed in one of two ways, either by images of generators or by a function
TensorCategories.Representation — MethodRepresentation(G::Group, pre_img::Vector, img::Vector)Group representation defined by the images of generators of G.
TensorCategories.Representation — MethodRepresentation(G::Group, m::Function)Group representation defined by m:G -> Mat_n.
where in both cases the images are required to be fitting MatrixElem objects.
Since group representation categories are tensor categories, we again have methods for the important operations
AbstractAlgebra.direct_sum — Methoddirect_sum(ρ::GroupRepresentation, τ::GroupRepresentation, morphisms::Bool = false)Return the direct sum of representations with the corresponding injections und projections.
AbstractAlgebra.direct_sum — Methoddirect_sum(f::GroupRepresentationMorphism, g::GroupRepresentationMorphism)Direct sum of morphisms of representations.
Base.one — Methodone(Rep::GroupRepresentationCategory)Return the trivial representation.
Base.parent — Methodparent(ρ::GroupRepresentation)Return the parent representation category of ρ.
Base.zero — Methodzero(Rep::GroupRepresentationCategory)Return the zero reprensentation.
Hecke.decompose — Methoddecompose(σ::GroupRepresentation)Decompose the representation into a direct sum of simple objects. Return a list of tuples with simple objects and multiplicities.
Hecke.id — Methodid(ρ::GroupRepresentation)Return the identity on ρ.
Hecke.is_semisimple — Methodis_semisimple(C::GroupRepresentationCategory)Return true if C is semisimple else false.
Hecke.tensor_product — Methodtensor_product(ρ::GroupRepresentation, τ::GroupRepresentation)Return the tensor product of representations.
Hecke.tensor_product — Methodtensor_product(f::GroupRepresentationMorphism, g::GroupRepresentationMorphism)Return the tensor product of morphisms of representations.
Oscar.morphism — Methodmorphism(ρ::GroupRepresentation, τ::GroupRepresentation, m::MatElem; check = true)Morphism between representations defined by $m$. If check == false equivariancy will not be checked.
TensorCategories.Hom — MethodHom(σ::GroupRepresentation, τ::GroupRepresentation)Return the hom-space of the representations as a vector space.
TensorCategories.Representation — MethodRepresentation(G::Group, m::Function)Group representation defined by m:G -> Mat_n.
TensorCategories.Representation — MethodRepresentation(G::Group, pre_img::Vector, img::Vector)Group representation defined by the images of generators of G.
TensorCategories.representation_category — Methodrepresentation_category(F::Field, G::Group)Category of finite dimensonal group representations of $G$.
TensorCategories.simples — Methodsimples(Rep::GroupRepresentationCategory)Return a list of the simples objects in Rep.