Generic Methods
Many constructions for additive, abelian, linear or monoidal categories are entangled. Thus we provide a vast list of methods to compute objects or morphisms using other methods.
Keep in mind that the performance will usually be much better if the following methods are overwritten form custom types.
AbstractAlgebra.image
— Methodimage(f::Morphism)
Return the image $Im(f)$ of $f:X → Y$ together with a monomorphism $Im(f) ↪ Y$.
Hecke.central_primitive_idempotents
— Methodcentral_primitive_idempotents(H::AbstractHomSpace)
Compute the central primitive idempotents of an endomorphism space $H$.
Hecke.decompose
— Methoddecompose(X::Object)
Decompose an object $X$ in an abelian category.
Hecke.decompose
— Methoddecompose(X::Object, S::Vector{Object})
Decompose an object $X$ in a semisimple category into simple objects of $S$.
Hecke.is_simple
— Methodis_simple(X::Object)
Check whether $X$ is a simple object.
Nemo.eigenvalues
— Methodeigenvalues(f::Morphism)
Compute the eigenvalues of $f$. Return a dictonary with entries λ => ker(f - λid)
.
TensorCategories.endomorphism_ring
— Functionendomorphism_ring(X::Object)
Return the endomorphism ring of $X$ as a matrix algebra.
TensorCategories.express_in_basis
— Functionexpress_in_basis(f::Morphism)
Return a vector of coefficients expressing $f: X → Y$ in the basis o f $\mathrm{Hom}(X,Y)$.
TensorCategories.express_in_basis
— Methodexpress_in_basis(f::Morphism, B::Vector{Morphism})
Return a vector of coefficients expressing $f$in the basis $B$.
TensorCategories.horizontal_direct_sum
— Methodfunction horizontal_direct_sum(f::Morphism, g::Morphism)
Return the sum of $f:X → Z$, $g:Y → Z$ as ``f+g:X⊕Y → Z.
TensorCategories.is_epimorphism
— Methodis_epimorphism(f::Morphism)
Check wether $f$is epi.
TensorCategories.is_monomorphism
— Methodis_monomoprhism(f::Morphism)
Check whether $f$ mono.
TensorCategories.left_inverse
— Methodleft_inverse(f::Morphism)
Compute a morphism $g$ such that $g ∘ f = id$. Errors if $f$is not mono.
TensorCategories.right_inverse
— Methodright_inverse(f::Morphism)
Compute a morphism $g$ such that $f ∘ g = id$. Errors if $f$ is not epi.
TensorCategories.vertical_direct_sum
— Methodfunction vertical_direct_sum(f::Morphism, g::Morphism)
Return the sum of $f:X → Y$, $g:X → Z$ as ``f+g: X → Y⊕Z.
TensorCategories.zero_morphism
— Methodzero_morphism(X::Object, Y::Object)
Compute the zero morphism between $X$and $Y$.
TensorCategories.zero_morphism
— Methodzero_morphism(X::Object)
Compute the zero morphism on $X$.
Base.:^
— Method^(X::Object, n::Integer)
Return the n-fold product object X^n
.
Hecke.:⊗
— Method⊗(f::Morphism, g::Morphism)
Return the tensor product morphism of f
and g
.
Hecke.:⊗
— Method⊗(X::Object...)
Return the tensor product object.
TensorCategories.:×
— Method×(X::Object...)
Return the product Object and an array containing the projection morphisms.
TensorCategories.∐
— Method∐(X::Object...)
Return the coproduct Object and an array containing the injection morphisms.