Goto Chapter: Top 1 2 3 4 5 Ind

### 2 Semisimple Categories

#### 2.1 Introduction

Let $$k$$ be a field and $$I$$ be a totally ordered set. We denote the matrix category of $$k$$ by $$k\mathrm{-vec}$$ (see the package $$\texttt{LinearAlgebraForCAP}$$). The semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$ associated to $$k$$ and $$I$$ is defined as the full subcategory of the product category $$\prod_{i \in I} k\mathrm{-vec}$$ generated by those $$I$$-indexed tuples having only finitely many non-zero entries. By $$\chi^i$$, we denote the object which is $$1$$ at entry $$i$$ and $$0$$ otherwise. Thus, an arbitrary object in $$\bigoplus_{i \in I} k\mathrm{-vec}$$ can be written as $$\oplus_{i \in I}a_i \chi^i$$ for non-negative numbers $$a_i$$ for which only finitely many are non-zero.

#### 2.2 Constructors

##### 2.2-1 SemisimpleCategory
 ‣ SemisimpleCategory( k, m, u, s, b, L ) ( operation )

Returns: a category

The arguments are:

• a homalg field $$k$$,

• a membership function $$m$$ sending any GAP object to a boolean,

• a GAP object $$u$$,

• a string $$s$$ containing a filename in the folder "/gap/AssociatorsDatabase/" of this package,

• a boolean $$b$$,

• a list $$L$$ containing 4 entries, where the first 3 are filters and the last one is a string.

The output is a CAP category modelling $$\bigoplus_{i \in I} k\mathrm{-vec}$$, where $$I$$ is the set defined by the membership function $$m$$. Note that objects in $$I$$ are expected to be equipped with operations enlisted in the chapter "Irreducible Objects". Furthermore, this CAP category is a rigid symmetric closed monoidal Abelian category. Its tensor product is defined by the data of the file $$s$$, where the boolean $$b$$ is true if the associator stored in $$s$$ was computed for all triples, and false otherwise (cf. chapter "Associators"). Its braiding and duality comes from the additional structure required for $$I$$. Its tensor unit is modelled by $$u$$. The three filters of the $$L$$ are filters for the resulting category, its objects, and its morphisms. $$L_4$$ is the name of the resulting category.

##### 2.2-2 SemisimpleCategory
 ‣ SemisimpleCategory( k, m, u, s, b ) ( operation )

Returns: a category

The arguments are:

• a homalg field $$k$$,

• a membership function $$m$$ sending any GAP object to a boolean,

• a GAP object $$u$$,

• a string $$s$$ containing a filename in the folder "/gap/AssociatorsDatabase/" of this package,

• a boolean $$b$$.

This function calls SemisimpleCategory on the six arguments [ k, m, u, s, b, [ IsObject, IsObject, IsObject, automatically generated name ] ]

##### 2.2-3 SemisimpleCategoryMorphism
 ‣ SemisimpleCategoryMorphism( s, L, r ) ( operation )

Returns: a morphism

The arguments are an object $$s$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$, a list of pairs $$L = [ [ \phi_1, i_1 ], \dots [ \phi_l, i_l ] ]$$ where $$\phi_j$$ are morphisms in the Matrix Category $$k\mathrm{-vec}$$ and $$i_j \in I$$, and another object $$r$$ in the same semisimple category. The output is a morphism in $$\bigoplus_{i \in I} k\mathrm{-vec}$$ from $$s$$ to $$r$$ whose $$i$$-th component is given by $$\phi_i$$. For this morphism to be well defined, there has to be an $$\phi_i$$ for every $$i$$ in the support of $$s$$ and $$r$$.

##### 2.2-4 SemisimpleCategoryMorphismSparse
 ‣ SemisimpleCategoryMorphismSparse( s, L, r ) ( operation )

Returns: a morphism

The arguments are an object $$s$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$, a list of pairs $$L = [ [ \phi_1, i_1 ], \dots [ \phi_l, i_l ] ]$$ where $$\phi_j$$ are morphisms in the Matrix Category $$k\mathrm{-vec}$$ and $$i_j \in I$$, and another object $$r$$ in the same semisimple category. The output is a morphism in $$\bigoplus_{i \in I} k\mathrm{-vec}$$ from $$s$$ to $$r$$ whose $$i_j$$-th component is given by $$\phi_{i_j}$$ for $$j = 1, \dots l$$, and by the zero morphism otherwise.

##### 2.2-5 ComponentInclusionMorphism
 ‣ ComponentInclusionMorphism( v, j ) ( operation )

Returns: a morphism

The arguments are an object $$v = \oplus_{i \in I} a_i \chi^{i}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$, and an object $$j \in I$$. The output is the canonical inclusion $$a_j \chi^j \hookrightarrow \oplus_{i \in I} a_i \chi^{i}$$ in $$\bigoplus_{i \in I} k\mathrm{-vec}$$.

##### 2.2-6 ComponentProjectionMorphism
 ‣ ComponentProjectionMorphism( v, j ) ( operation )

Returns: a morphism

The arguments are an object $$v = \oplus_{i \in I} a_i \chi^{i}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$, and an object $$j \in I$$. The output is the canonical projection $$\oplus_{i \in I} a_i \chi^{i} \twoheadrightarrow a_j \chi^j$$ in $$\bigoplus_{i \in I} k\mathrm{-vec}$$.

##### 2.2-7 SemisimpleCategoryObject
 ‣ SemisimpleCategoryObject( L, C ) ( operation )

Returns: an object

The arguments are a list $$L$$ and a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The list $$L$$ contains pairs $$L = [ [ a_1, i_1 ], \dots, [ a_l, i_l ] ]$$ of non-negative integers $$a_j$$ and objects $$i_j \in I$$. The output is the object in $$C$$ given by $$\oplus_{j=1}^l a_j \chi^{i_j}$$.

##### 2.2-8 SemisimpleCategoryObjectConstructorWithFlatList
 ‣ SemisimpleCategoryObjectConstructorWithFlatList( L, C ) ( operation )

Returns: an object

The arguments are a list $$L$$ and a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The list $$L$$ contains an even number of elements $$L = [ a_1, i_1, \dots, a_l, i_l ]$$ of non-negative integers $$a_j$$ and objects $$i_j \in I$$. The output is the object in $$C$$ given by $$\oplus_{j=1}^l a_j \chi^{i_j}$$.

#### 2.3 Attributes

##### 2.3-1 MembershipFunctionForSemisimpleCategory
 ‣ MembershipFunctionForSemisimpleCategory( C ) ( attribute )

Returns: a function

The argument is a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The output is its underlying membership function $$m$$ for $$I$$.

##### 2.3-2 UnderlyingCategoryForSemisimpleCategory
 ‣ UnderlyingCategoryForSemisimpleCategory( C ) ( attribute )

Returns: a category

The argument is a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The output is its underlying category $$k\mathrm{-vec}$$.

##### 2.3-3 UnderlyingFieldForHomalgForSemisimpleCategory
 ‣ UnderlyingFieldForHomalgForSemisimpleCategory( C ) ( attribute )

Returns: a homalg field

The argument is a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The output is its underlying field $$k$$.

##### 2.3-4 GivenObjectFilterForSemisimpleCategory
 ‣ GivenObjectFilterForSemisimpleCategory( C ) ( attribute )

Returns: a filter

The argument is a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The output is its object filter which could be specified in the constructor of $$C$$.

##### 2.3-5 GivenMorphismFilterForSemisimpleCategory
 ‣ GivenMorphismFilterForSemisimpleCategory( C ) ( attribute )

Returns: a filter

The argument is a semisimple category $$C = \bigoplus_{i \in I} k\mathrm{-vec}$$. The output is its morphism filter which could be specified in the constructor of $$C$$.

##### 2.3-6 SemisimpleCategoryMorphismList
 ‣ SemisimpleCategoryMorphismList( alpha ) ( attribute )

Returns: a list

The argument is a morphism $$\alpha = ( \alpha_i )_{i \in I}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is the list of pairs $$[ [ \alpha_{i_1}, i_1 ], \dots, [ \alpha_{i_l}, i_l ] ]$$ where $$i_j$$ ranges through the support of the source and range of $$\alpha$$.

##### 2.3-7 UnderlyingFieldForHomalg
 ‣ UnderlyingFieldForHomalg( alpha ) ( attribute )

Returns: a homalg field

The argument is a morphism $$\alpha = ( \alpha_i )_{i \in I}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is the homalg field $$k$$.

##### 2.3-8 SemisimpleCategoryObjectList
 ‣ SemisimpleCategoryObjectList( v ) ( attribute )

Returns: a list

The argument is an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category. The output is the list $$[ [ a_1, i_1 ], \dots [ a_l, i_l ] ]$$.

##### 2.3-9 SemisimpleCategoryObjectListWithActualObjects
 ‣ SemisimpleCategoryObjectListWithActualObjects( v ) ( attribute )

Returns: a list

The argument is an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category. The output is the list $$[ [ a_1, \chi^{i_1} ], \dots [ a_l, \chi^{i_l} ] ]$$.

##### 2.3-10 Support
 ‣ Support( v ) ( attribute )

Returns: a list

The argument is an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category. The output is the list $$[ i_1, \dots, i_l ]$$.

##### 2.3-11 UnderlyingFieldForHomalg
 ‣ UnderlyingFieldForHomalg( v ) ( attribute )

Returns: a homalg field

The argument is an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is the homalg field $$k$$.

##### 2.3-12 Dimension
 ‣ Dimension( v ) ( attribute )

Returns: an integer

The argument is an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is the integer $$\sum_{j=1}^l a_j \cdot \mathrm{dim}( i_j )$$. This functions works under the assumption that there is a notion of dimension on the objects in $$I$$.

#### 2.4 Operations

##### 2.4-1 Component
 ‣ Component( alpha, i ) ( operation )

Returns: a vector space morphism

The argument is a morphism $$\alpha = ( \alpha_i )_{i \in I}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$ and an object $$i \in I$$. The output is $$\alpha_i$$.

##### 2.4-2 NormalizeSemisimpleCategoryObjectList
 ‣ NormalizeSemisimpleCategoryObjectList( L ) ( operation )

Returns: a list

The argument is a list $$L = [ [ a_1, i_1 ], \dots, [ a_l, i_l ] ]$$ of non-negative integers $$a_j$$ and objects $$i_j \in I$$, where $$I$$ correspond to irreducible objects in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is again a list of pairs consisting of integers an elements in $$I$$, but with the following normalization:

• Each $$a_j$$ is positive,

• $$i_j$$ is strictly less than $$i_{j+1}$$.

##### 2.4-3 Multiplicity
 ‣ Multiplicity( v, i ) ( operation )

Returns: an integer

The arguments are an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$, and an element $$i \in I$$. The output is the integer $$a_i$$.

##### 2.4-4 Component
 ‣ Component( v, i ) ( operation )

Returns: a vector space object

The arguments are an object $$v = \oplus_{j=1}^l a_j \chi^{i_j}$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$, and an element $$i \in I$$. The output is the $$k$$-vector space object $$k^{a_i}$$ in Cap's Matrix Category.

##### 2.4-5 TestPentagonIdentity
 ‣ TestPentagonIdentity( v_1, v_2, v_3, v_4 ) ( operation )

Returns: a boolean

This is a debug operation. The arguments are 4 objects $$v_1, v_2, v_3, v_4$$ in a category. The output is true if the pentagon identity holds for those 4 objects, false otherwise.

 ‣ TestPentagonIdentityForAllQuadruplesInList( L ) ( operation )

Returns: a boolean

This is a debug operation. The argument is a list $$L$$ consisting of quadruples of objects in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is true if the pentagon identity holds for all those quadruples, false otherwise.

##### 2.4-7 TestBraidingCompatability
 ‣ TestBraidingCompatability( v_1, v_2, v_3 ) ( operation )

Returns: a boolean

This is a debug operation. The arguments are 3 objects $$v_1, v_2, v_3$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is true if the braiding compatabilities with the associator hold, false otherwise.

##### 2.4-8 TestBraidingCompatabilityForAllTriplesInList
 ‣ TestBraidingCompatabilityForAllTriplesInList( L ) ( operation )

Returns: a boolean

This is a debug operation. The argument is a list $$L$$ consisting of triples of objects in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is true if the braiding compatabilities with the associator hold for all those triples false otherwise.

##### 2.4-9 TestZigZagIdentitiesForDual
 ‣ TestZigZagIdentitiesForDual( v ) ( operation )

Returns: a boolean

This is a debug operation. The argument is an object $$v$$ in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is true if the zig zag identity for duals hold, false otherwise.

##### 2.4-10 TestZigZagIdentitiesForDualForAllObjectsInList
 ‣ TestZigZagIdentitiesForDualForAllObjectsInList( L ) ( operation )

Returns: a boolean

This is a debug operation. The argument is a list $$L$$ consisting of objects in a semisimple category $$\bigoplus_{i \in I} k\mathrm{-vec}$$. The output is true if the zig zag identity for duals hold for all those objects, false otherwise.

#### 2.5 GAP Categories

##### 2.5-1 IsSemisimpleCategoryMorphism
 ‣ IsSemisimpleCategoryMorphism( object ) ( filter )

Returns: true or false

The GAP category of morphisms in a semisimple category.

##### 2.5-2 IsSemisimpleCategoryObject
 ‣ IsSemisimpleCategoryObject( object ) ( filter )

Returns: true or false

The GAP category of objects in a semisimple category.

Goto Chapter: Top 1 2 3 4 5 Ind

generated by GAPDoc2HTML