Coherent sheaves on Finite Sets
Coherent sheaves on a finite set $X$ are characterized by the stalks of the the elements $x \in X$. I.e. a coherent sheaf on $X$ is a collection of vector spaces $V_x$ for each $x\in X$. More generally for a group $G$ and a G-set $X$ we can define consider $G$-equivariant sheaves on $X$. In this case a sheaf is specified by representations of the stabilizers of representatives for the orbits.
Equivariant Coherent Sheaves
We provide the datatype
CoherentSheafObject <: ObjectThe category of equivariant coherent sheaves has type
CohSheaves <: MultiTensorCategoryand can be constructed via
TensorCategories.coherent_sheaves — Functioncoherent_sheaves(X::GSet,F::Field)The category of $G$-equivariant coherent sheafes on $X$.
coherent_sheaves(X, F::Field)The category of coherent sheafes on $X$.
Morphisms are given by morphisms of representations of the stalks and are of type
CohSheafMorphism{T,G} <: MorphismAbstractAlgebra.compose — Methodcompose(f::CohSheafMorphism, g::CohSheafMorphism)Return the composition g∘f.
AbstractAlgebra.direct_sum — Methoddirect_sum(f::CohSheafMorphism, g::CohSheafMorphism)Return the direct sum of morphisms of sheaves.
AbstractAlgebra.direct_sum — Methoddirect_sum(X::CohSheafObject, Y::CohSheafObject)Return the direct sum of sheaves. Return also the inclusion and projection.
AbstractAlgebra.is_isomorphic — Methodis_isomorphic(X::CohSheafObject, Y::CohSheafObject)Check whether $X$and $Y$ are isomorphic and the isomorphism if possible.
AbstractAlgebra.kernel — Methodkernel(f::CohSheafMorphism)Return a tuple (K,k) where K is the kernel object and k is the inclusion.
Base.inv — Methodinv(f::CohSheafMorphism)Retrn the inverse morphism of f.
Base.one — Methodone(C::CohSheaves)Return the one object in $C$.
Base.zero — Methodzero(C::CohSheaves)Return the zero sheaf on the $G$-set.
Hecke.cokernel — Methodcokernel(f::CohSheafMorphism)Return a tuple (C,c) where C is the kernel object and c is the projection.
Hecke.decompose — Methoddecompose(X::CohSheafObject)Decompose $X$ into a direct sum of simple objects with multiplicity.
Hecke.dual — Methoddual(X::CohSheafObject)Return the dual object of X.
Hecke.id — Methodid(X::CohSheafObject)Return the identity on X.
Hecke.is_semisimple — Methodis_semisimple(C::CohSheaves)Return whether $C$is semisimple.
Hecke.tensor_product — Methodtensor_product(f::CohSheafMorphism, g::CohSheafMorphism)Return the tensor product of morphisms of equivariant coherent sheaves.
Hecke.tensor_product — Methodtensor_product(X::CohSheafObject, Y::CohSheafObject)Return the tensor product of equivariant coherent sheaves.
TensorCategories.Hom — MethodHom(X::CohSheafObject, Y::CohSheafObject)Return Hom($X,Y$) as a vector space.
TensorCategories.Pullback — MethodPullback(C::CohSheaves, D::CohSheaves, f::Function)Return the pullback functor C → D defined by the G-set map f::X → Y.
TensorCategories.Pushforward — MethodPushforward(C::CohSheaves, D::CohSheaves, f::Function)Return the push forward functor C → D defined by the G-set map f::X → Y.
TensorCategories.associator — Methodassociator(X::CohSheafObject, Y::CohSheafObject, Z::CohSheafObject)Return the associator isomorphism (X⊗Y)⊗Z → X⊗(Y⊗Z).
TensorCategories.braiding — Methodbraiding(X::cohSheaf, Y::CohSheafObject)Return the braiding isomoephism X⊗Y → Y⊗X.
TensorCategories.coev — Methodcoev(X::CohSheafObject)Return the coevaluation morphism 1 → X⊗X∗.
TensorCategories.coherent_sheaves — Methodcoherent_sheaves(X, F::Field)The category of coherent sheafes on $X$.
TensorCategories.coherent_sheaves — Methodcoherent_sheaves(X::GSet,F::Field)The category of $G$-equivariant coherent sheafes on $X$.
TensorCategories.ev — Methodev(X::CohSheafObject)Return the evaluation morphism X∗⊗X → 1.
TensorCategories.simples — Methodsimples(C::CohSheaves)Return the simple objects of $C$.
TensorCategories.spherical — Methodspherical(X::CohSheafObject)Return the spherical structure isomorphism X → X∗∗.
TensorCategories.stalks — Methodstalks(X::CohSheafObject)Return the stalks of $X$.
TensorCategories.zero_morphism — Methodzero_morphism(X::CohSheafObject, Y::CohSheafObject)Return the zero morphism 0:X → Y.
Convolution Category
The objects of this category are again $G$-equivariant coherent sheaves on a finite $G$-set $X\times X$. But we endow them with a different monoidal product.
Let $p_{ij}: X\times X\times X \to X \times X$ be the canonical projections. Then we define the monoidal product of two coherent sheaves $x$ and $y$
\[\begin{aligned} x\otimes y = p_{13}_\ast(p_{12}^\ast(x)\otimes' p_{23}^\ast(y)) \end{aligned}\]
where $\otimes'$is the monoidal product of $Coh(X\times X\times X)$. Similar for morphisms.
Objects in this category are of type
ConvolutionObject <: Objectwhile the convolution category is of type
ConvolutionCategory <: MultiTensorCategoryand can be constructed by
TensorCategories.convolution_category — Functionconvolution_category( K::Field, X::GSet)Return the category of equivariant coherent sheaves on $X$ with convolution product.
convolution_category(K::Field, X)Return the category of coherent sheaves on $X$ with convolution product.
Morphisms are just morphisms of coherent sheaves with the new tensor product.
ConvolutionMorphism <: MorphismAbstractAlgebra.direct_sum — Methoddirect_sum(f::ConvolutionMorphism, g::ConvolutionMorphism)Return the direct sum of morphisms of coherent sheaves (with convolution product).
AbstractAlgebra.direct_sum — Methoddirect_sum(X::ConvolutionObject, Y::ConvolutionObject, morphisms::Bool = false)documentation
AbstractAlgebra.is_isomorphic — Methodis_isomorphic(X::ConvolutionObject, Y::ConvolutionObject)Check whether $X$and $Y$are isomorphic. Return the isomorphism if true.
Base.one — Methodone(C::ConvolutionCategory)Return the one object in Conv($X$).
Base.zero — Methodzero(C::ConvolutionCategory)Return the zero object in Conv($X$).
Hecke.decompose — Methoddecompose(X::ConvolutionObject)Decompose $X$ into a direct sum of simple objects with multiplicities.
Hecke.is_semisimple — Methodis_semisimple(C::ConvolutionCategory)Check whether $C$ semisimple.
Hecke.tensor_product — Methodtensor_product(f::ConvolutionMorphism, g::ConvolutionMorphism)Return the convolution product of morphisms of coherent sheaves.
Hecke.tensor_product — Methodtensor_product(X::ConvolutionObject, Y::ConvolutionObject)Return the convolution product of coherent sheaves.
TensorCategories.Hom — MethodHom(X::ConvolutionObject, Y::ConvolutionObject)Return Hom($X,Y$) as a vector space.
TensorCategories.convolution_category — Methodconvolution_category(K::Field, X)Return the category of coherent sheaves on $X$ with convolution product.
TensorCategories.convolution_category — Methodconvolution_category( K::Field, X::GSet)Return the category of equivariant coherent sheaves on $X$ with convolution product.
TensorCategories.orbit_stabilizers — Methodorbit_stabilizers(C::ConvolutionCategory)Return the stabilizers of representatives of the orbits.
TensorCategories.simples — Methodsimples(C::ConvolutionCategory)Return a list of simple objects in Conv($X$).
TensorCategories.stalks — Methodstalks(X::ConvolutionObject)Return the stalks of the sheaf $X$.