  
  [1X1 [33X[0;0YMonoidal Categories[133X[101X
  
  
  [1X1.1 [33X[0;0YMonoidal Categories[133X[101X
  
  [33X[0;0YA [23X6[123X-tuple [23X( \mathbf{C}, \otimes, 1, \alpha, \lambda, \rho )[123X consisting of[133X
  
  [30X    [33X[0;6Ya category [23X\mathbf{C}[123X,[133X
  
  [30X    [33X[0;6Ya functor [23X\otimes: \mathbf{C} \times \mathbf{C} \rightarrow \mathbf{C}[123X
        compatible with the congruence of morphisms,[133X
  
  [30X    [33X[0;6Yan object [23X1 \in \mathbf{C}[123X,[133X
  
  [30X    [33X[0;6Ya natural isomorphism [23X\alpha_{a,b,c}: a \otimes (b \otimes c) \cong (a
        \otimes b) \otimes c[123X,[133X
  
  [30X    [33X[0;6Ya natural isomorphism [23X\lambda_{a}: 1 \otimes a \cong a[123X,[133X
  
  [30X    [33X[0;6Ya natural isomorphism [23X\rho_{a}: a \otimes 1 \cong a[123X,[133X
  
  [33X[0;0Yis called a [13Xmonoidal category[113X, if[133X
  
  [30X    [33X[0;6Yfor all objects [23Xa,b,c,d[123X, the pentagon identity holds:[133X
  
  [33X[0;0Y[23X(\alpha_{a,b,c} \otimes \mathrm{id}_d) \circ \alpha_{a,b \otimes c, d} \circ
  (  \mathrm{id}_a  \otimes  \alpha_{b,c,d}  ) \sim \alpha_{a \otimes b, c, d}
  \circ \alpha_{a,b,c \otimes d}[123X,[133X
  
  [30X    [33X[0;6Yfor all objects [23Xa,c[123X, the triangle identity holds:[133X
  
  [33X[0;0Y[23X(  \rho_a  \otimes  \mathrm{id}_c  ) \circ \alpha_{a,1,c} \sim \mathrm{id}_a
  \otimes \lambda_c[123X.[133X
  
  [33X[0;0YThe corresponding GAP property is given by [10XIsMonoidalCategory[110X.[133X
  
  [1X1.1-1 TensorProductOnMorphisms[101X
  
  [33X[1;0Y[29X[2XTensorProductOnMorphisms[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes b, a' \otimes b')[123X[133X
  
  [33X[0;0YThe  arguments  are  two  morphisms  [23X\alpha:  a  \rightarrow  a',  \beta:  b
  \rightarrow b'[123X. The output is the tensor product [23X\alpha \otimes \beta[123X.[133X
  
  [1X1.1-2 TensorProductOnMorphismsWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XTensorProductOnMorphismsWithGivenTensorProducts[102X( [3Xs[103X, [3Xalpha[103X, [3Xbeta[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes b, a' \otimes b')[123X[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  =  a  \otimes b[123X, two morphisms [23X\alpha: a
  \rightarrow  a',  \beta:  b \rightarrow b'[123X, and an object [23Xr = a' \otimes b'[123X.
  The output is the tensor product [23X\alpha \otimes \beta[123X.[133X
  
  [1X1.1-3 AssociatorRightToLeft[101X
  
  [33X[1;0Y[29X[2XAssociatorRightToLeft[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a \otimes (b \otimes c), (a \otimes b)
            \otimes c )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X.  The  output  is  the associator
  [23X\alpha_{a,(b,c)}:  a \otimes (b \otimes c) \rightarrow (a \otimes b) \otimes
  c[123X.[133X
  
  [1X1.1-4 AssociatorRightToLeftWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAssociatorRightToLeftWithGivenTensorProducts[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a \otimes (b \otimes c), (a \otimes b)
            \otimes c )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  = a \otimes (b \otimes c)[123X, three objects
  [23Xa,b,c[123X,  and  an  object  [23Xr  =  (a  \otimes  b)  \otimes c[123X. The output is the
  associator  [23X\alpha_{a,(b,c)}: a \otimes (b \otimes c) \rightarrow (a \otimes
  b) \otimes c[123X.[133X
  
  [1X1.1-5 AssociatorLeftToRight[101X
  
  [33X[1;0Y[29X[2XAssociatorLeftToRight[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( (a \otimes b) \otimes c \rightarrow a
            \otimes (b \otimes c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X.  The  output  is  the associator
  [23X\alpha_{(a,b),c}:  (a  \otimes b) \otimes c \rightarrow a \otimes (b \otimes
  c)[123X.[133X
  
  [1X1.1-6 AssociatorLeftToRightWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAssociatorLeftToRightWithGivenTensorProducts[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( (a \otimes b) \otimes c \rightarrow a
            \otimes (b \otimes c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  = (a \otimes b) \otimes c[123X, three objects
  [23Xa,b,c[123X,  and  an  object  [23Xr  =  a  \otimes  (b  \otimes c)[123X. The output is the
  associator  [23X\alpha_{(a,b),c}:  (a \otimes b) \otimes c \rightarrow a \otimes
  (b \otimes c)[123X.[133X
  
  [1X1.1-7 LeftUnitor[101X
  
  [33X[1;0Y[29X[2XLeftUnitor[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1 \otimes a, a)[123X[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X. The output is the left unitor [23X\lambda_a: 1
  \otimes a \rightarrow a[123X.[133X
  
  [1X1.1-8 LeftUnitorWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XLeftUnitorWithGivenTensorProduct[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1 \otimes a, a)[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xa[123X and an object [23Xs = 1 \otimes a[123X. The output is
  the left unitor [23X\lambda_a: 1 \otimes a \rightarrow a[123X.[133X
  
  [1X1.1-9 LeftUnitorInverse[101X
  
  [33X[1;0Y[29X[2XLeftUnitorInverse[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, 1 \otimes a)[123X[133X
  
  [33X[0;0YThe  argument  is  an object [23Xa[123X. The output is the inverse of the left unitor
  [23X\lambda_a^{-1}: a \rightarrow 1 \otimes a[123X.[133X
  
  [1X1.1-10 LeftUnitorInverseWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XLeftUnitorInverseWithGivenTensorProduct[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, 1 \otimes a)[123X[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X and an object [23Xr = 1 \otimes a[123X. The output is the
  inverse of the left unitor [23X\lambda_a^{-1}: a \rightarrow 1 \otimes a[123X.[133X
  
  [1X1.1-11 RightUnitor[101X
  
  [33X[1;0Y[29X[2XRightUnitor[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes 1, a)[123X[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output is the right unitor [23X\rho_a: a
  \otimes 1 \rightarrow a[123X.[133X
  
  [1X1.1-12 RightUnitorWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XRightUnitorWithGivenTensorProduct[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes 1, a)[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xa[123X and an object [23Xs = a \otimes 1[123X. The output is
  the right unitor [23X\rho_a: a \otimes 1 \rightarrow a[123X.[133X
  
  [1X1.1-13 RightUnitorInverse[101X
  
  [33X[1;0Y[29X[2XRightUnitorInverse[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, a \otimes 1)[123X[133X
  
  [33X[0;0YThe  argument  is an object [23Xa[123X. The output is the inverse of the right unitor
  [23X\rho_a^{-1}: a \rightarrow a \otimes 1[123X.[133X
  
  [1X1.1-14 RightUnitorInverseWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XRightUnitorInverseWithGivenTensorProduct[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, a \otimes 1)[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xa[123X and an object [23Xr = a \otimes 1[123X. The output is
  the inverse of the right unitor [23X\rho_a^{-1}: a \rightarrow a \otimes 1[123X.[133X
  
  [1X1.1-15 TensorProductOnObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductOnObjects[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,  b[123X. The output is the tensor product [23Xa
  \otimes b[123X.[133X
  
  [1X1.1-16 TensorUnit[101X
  
  [33X[1;0Y[29X[2XTensorUnit[102X( [3XC[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe  argument  is  a category [23X\mathbf{C}[123X. The output is the tensor unit [23X1[123X of
  [23X\mathbf{C}[123X.[133X
  
  
  [1X1.2 [33X[0;0YAdditive Monoidal Categories[133X[101X
  
  [1X1.2-1 LeftDistributivityExpanding[101X
  
  [33X[1;0Y[29X[2XLeftDistributivityExpanding[102X( [3Xa[103X, [3XL[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  a \otimes (b_1 \oplus \dots \oplus
            b_n), (a \otimes b_1) \oplus \dots \oplus (a \otimes b_n) )[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xa[123X and a list of objects [23XL = (b_1, \dots, b_n)[123X.
  The  output  is the left distributivity morphism [23Xa \otimes (b_1 \oplus \dots
  \oplus b_n) \rightarrow (a \otimes b_1) \oplus \dots \oplus (a \otimes b_n)[123X.[133X
  
  [1X1.2-2 LeftDistributivityExpandingWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftDistributivityExpandingWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3XL[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = a \otimes (b_1 \oplus \dots \oplus b_n)[123X, an
  object  [23Xa[123X,  a  list  of  objects [23XL = (b_1, \dots, b_n)[123X, and an object [23Xr = (a
  \otimes  b_1)  \oplus  \dots  \oplus (a \otimes b_n)[123X. The output is the left
  distributivity morphism [23Xs \rightarrow r[123X.[133X
  
  [1X1.2-3 LeftDistributivityFactoring[101X
  
  [33X[1;0Y[29X[2XLeftDistributivityFactoring[102X( [3Xa[103X, [3XL[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( (a \otimes b_1) \oplus \dots \oplus (a
            \otimes b_n), a \otimes (b_1 \oplus \dots \oplus b_n) )[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xa[123X and a list of objects [23XL = (b_1, \dots, b_n)[123X.
  The  output is the left distributivity morphism [23X(a \otimes b_1) \oplus \dots
  \oplus (a \otimes b_n) \rightarrow a \otimes (b_1 \oplus \dots \oplus b_n)[123X.[133X
  
  [1X1.2-4 LeftDistributivityFactoringWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftDistributivityFactoringWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3XL[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  = (a \otimes b_1) \oplus \dots \oplus (a
  \otimes  b_n)[123X,  an object [23Xa[123X, a list of objects [23XL = (b_1, \dots, b_n)[123X, and an
  object  [23Xr  = a \otimes (b_1 \oplus \dots \oplus b_n)[123X. The output is the left
  distributivity morphism [23Xs \rightarrow r[123X.[133X
  
  [1X1.2-5 RightDistributivityExpanding[101X
  
  [33X[1;0Y[29X[2XRightDistributivityExpanding[102X( [3XL[103X, [3Xa[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( (b_1 \oplus \dots \oplus b_n) \otimes
            a, (b_1 \otimes a) \oplus \dots \oplus (b_n \otimes a) )[123X[133X
  
  [33X[0;0YThe  arguments  are a list of objects [23XL = (b_1, \dots, b_n)[123X and an object [23Xa[123X.
  The  output  is  the  right distributivity morphism [23X(b_1 \oplus \dots \oplus
  b_n)  \otimes a \rightarrow (b_1 \otimes a) \oplus \dots \oplus (b_n \otimes
  a)[123X.[133X
  
  [1X1.2-6 RightDistributivityExpandingWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XRightDistributivityExpandingWithGivenObjects[102X( [3Xs[103X, [3XL[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = (b_1 \oplus \dots \oplus b_n) \otimes a[123X, a
  list  of  objects [23XL = (b_1, \dots, b_n)[123X, an object [23Xa[123X, and an object [23Xr = (b_1
  \otimes  a)  \oplus  \dots  \oplus  (b_n \otimes a)[123X. The output is the right
  distributivity morphism [23Xs \rightarrow r[123X.[133X
  
  [1X1.2-7 RightDistributivityFactoring[101X
  
  [33X[1;0Y[29X[2XRightDistributivityFactoring[102X( [3XL[103X, [3Xa[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}( (b_1 \otimes a) \oplus \dots \oplus
            (b_n \otimes a), (b_1 \oplus \dots \oplus b_n) \otimes a)[123X[133X
  
  [33X[0;0YThe  arguments  are a list of objects [23XL = (b_1, \dots, b_n)[123X and an object [23Xa[123X.
  The output is the right distributivity morphism [23X(b_1 \otimes a) \oplus \dots
  \oplus (b_n \otimes a) \rightarrow (b_1 \oplus \dots \oplus b_n) \otimes a [123X.[133X
  
  [1X1.2-8 RightDistributivityFactoringWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XRightDistributivityFactoringWithGivenObjects[102X( [3Xs[103X, [3XL[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments  are  an  object [23Xs = (b_1 \otimes a) \oplus \dots \oplus (b_n
  \otimes  a)[123X,  a  list  of objects [23XL = (b_1, \dots, b_n)[123X, an object [23Xa[123X, and an
  object  [23Xr = (b_1 \oplus \dots \oplus b_n) \otimes a[123X. The output is the right
  distributivity morphism [23Xs \rightarrow r[123X.[133X
  
  
  [1X1.3 [33X[0;0YBraided Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal category [23X\mathbf{C}[123X equipped with a natural isomorphism [23XB_{a,b}:
  a \otimes b \cong b \otimes a[123X is called a [13Xbraided monoidal category[113X if[133X
  
  [30X    [33X[0;6Y[23X\lambda_a \circ B_{a,1} \sim \rho_a[123X,[133X
  
  [30X    [33X[0;6Y[23X(B_{c,a}   \otimes  \mathrm{id}_b)  \circ  \alpha_{c,a,b}  \circ  B_{a
        \otimes   b,c}  \sim  \alpha_{a,c,b}  \circ  (  \mathrm{id}_a  \otimes
        B_{b,c}) \circ \alpha^{-1}_{a,b,c}[123X,[133X
  
  [30X    [33X[0;6Y[23X(  \mathrm{id}_b  \otimes  B_{c,a}  )  \circ \alpha^{-1}_{b,c,a} \circ
        B_{a,b  \otimes  c}  \sim  \alpha^{-1}_{b,a,c}  \circ (B_{a,b} \otimes
        \mathrm{id}_c) \circ \alpha_{a,b,c}[123X.[133X
  
  [33X[0;0YThe corresponding GAP property is given by [10XIsBraidedMonoidalCategory[110X.[133X
  
  [1X1.3-1 Braiding[101X
  
  [33X[1;0Y[29X[2XBraiding[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a \otimes b, b \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two objects [23Xa,b[123X. The output is the braiding [23X B_{a,b}: a
  \otimes b \rightarrow b \otimes a[123X.[133X
  
  [1X1.3-2 BraidingWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XBraidingWithGivenTensorProducts[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a \otimes b, b \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = a \otimes b[123X, two objects [23Xa,b[123X, and an object
  [23Xr  =  b  \otimes  a[123X.  The  output  is  the  braiding  [23X  B_{a,b}: a \otimes b
  \rightarrow b \otimes a[123X.[133X
  
  [1X1.3-3 BraidingInverse[101X
  
  [33X[1;0Y[29X[2XBraidingInverse[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b \otimes a, a \otimes b )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The output is the inverse braiding [23X
  B_{a,b}^{-1}: b \otimes a \rightarrow a \otimes b[123X.[133X
  
  [1X1.3-4 BraidingInverseWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XBraidingInverseWithGivenTensorProducts[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b \otimes a, a \otimes b )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = b \otimes a[123X, two objects [23Xa,b[123X, and an object
  [23Xr = a \otimes b[123X. The output is the inverse braiding [23X B_{a,b}^{-1}: b \otimes
  a \rightarrow a \otimes b[123X.[133X
  
  
  [1X1.4 [33X[0;0YSymmetric Monoidal Categories[133X[101X
  
  [33X[0;0YA braided monoidal category [23X\mathbf{C}[123X is called [13Xsymmetric monoidal category[113X
  if  [23XB_{a,b}^{-1}  \sim  B_{b,a}[123X.  The corresponding GAP property is given by
  [10XIsSymmetricMonoidalCategory[110X.[133X
  
  
  [1X1.5 [33X[0;0YLeft Closed Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal  category  [23X\mathbf{C}[123X  which  has  for each functor [23X- \otimes b:
  \mathbf{C}    \rightarrow   \mathbf{C}[123X   a   right   adjoint   (denoted   by
  [23X\mathrm{\underline{Hom}_\ell}(b,-)[123X)   is   called  a  [13Xleft  closed  monoidal
  category[113X.[133X
  
  [33X[0;0YIf  no operations involving left duals are installed manually, the left dual
  objects       will       be       derived      as      [23Xa^\vee      \coloneqq
  \mathrm{\underline{Hom}_\ell}(a,1)[123X.[133X
  
  [33X[0;0YThe corresponding GAP property is called [10XIsLeftClosedMonoidalCategory[110X.[133X
  
  [1X1.5-1 LeftInternalHomOnObjects[101X
  
  [33X[1;0Y[29X[2XLeftInternalHomOnObjects[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe  arguments  are  two  objects [23Xa,b[123X. The output is the internal hom object
  [23X\mathrm{\underline{Hom}_\ell}(a,b)[123X.[133X
  
  [1X1.5-2 LeftInternalHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XLeftInternalHomOnMorphisms[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}( \mathrm{\underline{Hom}_\ell}(a',b),
            \mathrm{\underline{Hom}_\ell}(a,b') )[123X[133X
  
  [33X[0;0YThe  arguments  are  two  morphisms  [23X\alpha:  a  \rightarrow  a',  \beta:  b
  \rightarrow    b'[123X.    The    output    is    the   internal   hom   morphism
  [23X\mathrm{\underline{Hom}_\ell}(\alpha,\beta):
  \mathrm{\underline{Hom}_\ell}(a',b)                              \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,b')[123X.[133X
  
  [1X1.5-3 LeftInternalHomOnMorphismsWithGivenLeftInternalHoms[101X
  
  [33X[1;0Y[29X[2XLeftInternalHomOnMorphismsWithGivenLeftInternalHoms[102X( [3Xs[103X, [3Xalpha[103X, [3Xbeta[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments  are  an  object [23Xs = \mathrm{\underline{Hom}_\ell}(a',b)[123X, two
  morphisms [23X\alpha: a \rightarrow a', \beta: b \rightarrow b'[123X, and an object [23Xr
  =  \mathrm{\underline{Hom}_\ell}(a,b')[123X.  The  output  is  the  internal  hom
  morphism                        [23X\mathrm{\underline{Hom}_\ell}(\alpha,\beta):
  \mathrm{\underline{Hom}_\ell}(a',b)                              \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,b')[123X.[133X
  
  [1X1.5-4 LeftClosedMonoidalEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalEvaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{Hom}_\ell}(a,b)
            \otimes a, b )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two objects [23Xa, b[123X. The output is the evaluation morphism
  [23X\mathrm{ev}_{a,b}:  \mathrm{\underline{Hom}_\ell}(a,b) \otimes a \rightarrow
  b[123X, i.e., the counit of the tensor hom adjunction.[133X
  
  [1X1.5-5 LeftClosedMonoidalEvaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalEvaluationMorphismWithGivenSource[102X( [3Xa[103X, [3Xb[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, b )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xs   =
  \mathrm{\underline{Hom}_\ell}(a,b)  \otimes  a[123X. The output is the evaluation
  morphism  [23X\mathrm{ev}_{a,b}:  \mathrm{\underline{Hom}_\ell}(a,b)  \otimes  a
  \rightarrow b[123X, i.e., the counit of the tensor hom adjunction.[133X
  
  [1X1.5-6 LeftClosedMonoidalCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalCoevaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( b, \mathrm{\underline{Hom}_\ell}(a, b
            \otimes a) )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X. The output is the coevaluation morphism
  [23X\mathrm{coev}_{a,b}:   b   \rightarrow   \mathrm{\underline{Hom}_\ell}(a,  b
  \otimes a)[123X, i.e., the unit of the tensor hom adjunction.[133X
  
  [1X1.5-7 LeftClosedMonoidalCoevaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalCoevaluationMorphismWithGivenRange[102X( [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xr   =
  \mathrm{\underline{Hom}_\ell}(a,   b   \otimes   a)[123X.   The   output  is  the
  coevaluation      morphism      [23X\mathrm{coev}_{a,b}:      b      \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,  b \otimes a)[123X, i.e., the unit of the tensor
  hom adjunction.[133X
  
  [1X1.5-8 TensorProductToLeftInternalHomAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToLeftInternalHomAdjunctMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( a, \mathrm{\underline{Hom}_\ell}(b,c)
            )[123X.[133X
  
  [33X[0;0YThe  arguments are two objects [23Xa,b[123X and a morphism [23Xf: a \otimes b \rightarrow
  c[123X.     The     output     is     a     morphism     [23Xg:     a     \rightarrow
  \mathrm{\underline{Hom}_\ell}(b,c)[123X  corresponding  to [23Xf[123X under the tensor hom
  adjunction.[133X
  
  [1X1.5-9 TensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XTensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X, [3Xi[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a, i )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X, a morphism [23Xf: a \otimes b \rightarrow c[123X
  and  an  object  [23Xi  =  \mathrm{\underline{Hom}_\ell}(b,c)[123X.  The  output is a
  morphism  [23Xg:  a \rightarrow \mathrm{\underline{Hom}_\ell}(b,c)[123X corresponding
  to [23Xf[123X under the tensor hom adjunction.[133X
  
  [1X1.5-10 LeftInternalHomToTensorProductAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XLeftInternalHomToTensorProductAdjunctMorphism[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes b, c)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xb,c[123X  and  a  morphism  [23Xg:  a  \rightarrow
  \mathrm{\underline{Hom}_\ell}(b,c)[123X.  The output is a morphism [23Xf: a \otimes b
  \rightarrow c[123X corresponding to [23Xg[123X under the tensor hom adjunction.[133X
  
  [1X1.5-11 LeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XLeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X, [3Xt[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(t, c)[123X.[133X
  
  [33X[0;0YThe   arguments   are   two   objects  [23Xb,c[123X,  a  morphism  [23Xg:  a  \rightarrow
  \mathrm{\underline{Hom}_\ell}(b,c)[123X and an object [23Xt = a \otimes b[123X. The output
  is  a  morphism  [23Xf:  a  \otimes b \rightarrow c[123X corresponding to [23Xg[123X under the
  tensor hom adjunction.[133X
  
  [1X1.5-12 LeftClosedMonoidalPreComposeMorphism[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalPreComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{Hom}_\ell}(a,b)
            \otimes                        \mathrm{\underline{Hom}_\ell}(b,c),
            \mathrm{\underline{Hom}_\ell}(a,c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X. The output is the precomposition
  morphism              [23X\mathrm{LeftClosedMonoidalPreComposeMorphism}_{a,b,c}:
  \mathrm{\underline{Hom}_\ell}(a,b)                                   \otimes
  \mathrm{\underline{Hom}_\ell}(b,c)                               \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,c)[123X.[133X
  
  [1X1.5-13 LeftClosedMonoidalPreComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalPreComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = \mathrm{\underline{Hom}_\ell}(a,b) \otimes
  \mathrm{\underline{Hom}_\ell}(b,c)[123X,  three  objects [23Xa,b,c[123X, and an object [23Xr =
  \mathrm{\underline{Hom}_\ell}(a,c)[123X.   The   output   is  the  precomposition
  morphism
  [23X\mathrm{LeftClosedMonoidalPreComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{Hom}_\ell}(a,b)                                   \otimes
  \mathrm{\underline{Hom}_\ell}(b,c)                               \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,c)[123X.[133X
  
  [1X1.5-14 LeftClosedMonoidalPostComposeMorphism[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalPostComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{Hom}_\ell}(b,c)
            \otimes                        \mathrm{\underline{Hom}_\ell}(a,b),
            \mathrm{\underline{Hom}_\ell}(a,c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects [23Xa,b,c[123X. The output is the postcomposition
  morphism             [23X\mathrm{LeftClosedMonoidalPostComposeMorphism}_{a,b,c}:
  \mathrm{\underline{Hom}_\ell}(b,c)                                   \otimes
  \mathrm{\underline{Hom}_\ell}(a,b)                               \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,c)[123X.[133X
  
  [1X1.5-15 LeftClosedMonoidalPostComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalPostComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = \mathrm{\underline{Hom}_\ell}(b,c) \otimes
  \mathrm{\underline{Hom}_\ell}(a,b)[123X,  three  objects [23Xa,b,c[123X, and an object [23Xr =
  \mathrm{\underline{Hom}_\ell}(a,c)[123X.   The   output  is  the  postcomposition
  morphism
  [23X\mathrm{LeftClosedMonoidalPostComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{Hom}_\ell}(b,c)                                   \otimes
  \mathrm{\underline{Hom}_\ell}(a,b)                               \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,c)[123X.[133X
  
  [1X1.5-16 LeftDualOnObjects[101X
  
  [33X[1;0Y[29X[2XLeftDualOnObjects[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X. The output is its dual object [23Xa^{\vee}[123X.[133X
  
  [1X1.5-17 LeftDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XLeftDualOnMorphisms[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b^{\vee}, a^{\vee} )[123X.[133X
  
  [33X[0;0YThe  argument  is a morphism [23X\alpha: a \rightarrow b[123X. The output is its dual
  morphism [23X\alpha^{\vee}: b^{\vee} \rightarrow a^{\vee}[123X.[133X
  
  [1X1.5-18 LeftDualOnMorphismsWithGivenLeftDuals[101X
  
  [33X[1;0Y[29X[2XLeftDualOnMorphismsWithGivenLeftDuals[102X( [3Xs[103X, [3Xalpha[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xs = b^{\vee}[123X, a morphism [23X\alpha: a \rightarrow b[123X,
  and  an  object [23Xr = a^{\vee}[123X. The output is the dual morphism [23X\alpha^{\vee}:
  b^{\vee} \rightarrow a^{\vee}[123X.[133X
  
  [1X1.5-19 LeftClosedMonoidalEvaluationForLeftDual[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalEvaluationForLeftDual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a^{\vee} \otimes a, 1 )[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is  the  evaluation morphism
  [23X\mathrm{ev}_{a}: a^{\vee} \otimes a \rightarrow 1[123X.[133X
  
  [1X1.5-20 LeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct[102X( [3Xs[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs = a^{\vee} \otimes a[123X, an object [23Xa[123X, and an
  object  [23Xr  =  1[123X.  The  output  is  the  evaluation morphism [23X\mathrm{ev}_{a}:
  a^{\vee} \otimes a \rightarrow 1[123X.[133X
  
  [1X1.5-21 MorphismToLeftBidual[101X
  
  [33X[1;0Y[29X[2XMorphismToLeftBidual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, (a^{\vee})^{\vee})[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X. The output is the morphism to the bidual [23Xa
  \rightarrow (a^{\vee})^{\vee}[123X.[133X
  
  [1X1.5-22 MorphismToLeftBidualWithGivenLeftBidual[101X
  
  [33X[1;0Y[29X[2XMorphismToLeftBidualWithGivenLeftBidual[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, r)[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xa[123X, and an object [23Xr = (a^{\vee})^{\vee}[123X. The
  output is the morphism to the bidual [23Xa \rightarrow (a^{\vee})^{\vee}[123X.[133X
  
  [1X1.5-23 TensorProductLeftInternalHomCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductLeftInternalHomCompatibilityMorphism[102X( [3Xlist[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}( \mathrm{\underline{Hom}_\ell}(a,a')
            \otimes                       \mathrm{\underline{Hom}_\ell}(b,b'),
            \mathrm{\underline{Hom}_\ell}(a \otimes b,a' \otimes b'))[123X.[133X
  
  [33X[0;0YThe  argument  is a list of four objects [23X[ a, a', b, b' ][123X. The output is the
  natural                                                             morphism
  [23X\mathrm{TensorProductLeftInternalHomCompatibilityMorphism}_{a,a',b,b'}:
  \mathrm{\underline{Hom}_\ell}(a,a')                                  \otimes
  \mathrm{\underline{Hom}_\ell}(b,b')                              \rightarrow
  \mathrm{\underline{Hom}_\ell}(a \otimes b,a' \otimes b')[123X.[133X
  
  [1X1.5-24 TensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xlist[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe arguments are a list of four objects [23X[ a, a', b, b' ][123X, and two objects [23Xs
  =                 \mathrm{\underline{Hom}_\ell}(a,a')                \otimes
  \mathrm{\underline{Hom}_\ell}(b,b')[123X  and [23Xr = \mathrm{\underline{Hom}_\ell}(a
  \otimes   b,a'   \otimes   b')[123X.   The   output   is   the  natural  morphism
  [23X\mathrm{TensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{Hom}_\ell}(a,a')                                  \otimes
  \mathrm{\underline{Hom}_\ell}(b,b')                              \rightarrow
  \mathrm{\underline{Hom}_\ell}(a \otimes b,a' \otimes b')[123X.[133X
  
  [1X1.5-25 TensorProductLeftDualityCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductLeftDualityCompatibilityMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( a^{\vee} \otimes b^{\vee}, (a \otimes
            b)^{\vee} )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{TensorProductLeftDualityCompatibilityMorphism}:   a^{\vee}   \otimes
  b^{\vee} \rightarrow (a \otimes b)^{\vee}[123X.[133X
  
  [1X1.5-26 TensorProductLeftDualityCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductLeftDualityCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = a^{\vee} \otimes b^{\vee}[123X, two objects [23Xa,b[123X,
  and  an  object [23Xr = (a \otimes b)^{\vee}[123X. The output is the natural morphism
  [23X\mathrm{TensorProductLeftDualityCompatibilityMorphismWithGivenObjects}_{a,b}:
  a^{\vee} \otimes b^{\vee} \rightarrow (a \otimes b)^{\vee}[123X.[133X
  
  [1X1.5-27 MorphismFromTensorProductToLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XMorphismFromTensorProductToLeftInternalHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya     morphism    in    [23X\mathrm{Hom}(    a^{\vee}    \otimes    b,
            \mathrm{\underline{Hom}_\ell}(a,b) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{MorphismFromTensorProductToLeftInternalHom}_{a,b}:  a^{\vee} \otimes
  b \rightarrow \mathrm{\underline{Hom}_\ell}(a,b)[123X.[133X
  
  [1X1.5-28 MorphismFromTensorProductToLeftInternalHomWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMorphismFromTensorProductToLeftInternalHomWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = a^{\vee} \otimes b[123X, two objects [23Xa,b[123X, and an
  object  [23Xr  =  \mathrm{\underline{Hom}_\ell}(a,b)[123X.  The output is the natural
  morphism
  [23X\mathrm{MorphismFromTensorProductToLeftInternalHomWithGivenObjects}_{a,b}:
  a^{\vee} \otimes b \rightarrow \mathrm{\underline{Hom}_\ell}(a,b)[123X.[133X
  
  [1X1.5-29 IsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya           morphism           in           [23X\mathrm{Hom}(a^{\vee},
            \mathrm{\underline{Hom}_\ell}(a,1))[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit}_{a}:
  a^{\vee} \rightarrow \mathrm{\underline{Hom}_\ell}(a,1)[123X.[133X
  
  [1X1.5-30 IsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism  in  [23X\mathrm{Hom}(\mathrm{\underline{Hom}_\ell}(a,1),
            a^{\vee})[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject}_{a}:
  \mathrm{\underline{Hom}_\ell}(a,1) \rightarrow a^{\vee}[123X.[133X
  
  [1X1.5-31 UniversalPropertyOfLeftDual[101X
  
  [33X[1;0Y[29X[2XUniversalPropertyOfLeftDual[102X( [3Xt[103X, [3Xa[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(t, a^{\vee})[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xt,a[123X,  and  a morphism [23X\alpha: t \otimes a
  \rightarrow  1[123X.  The  output is the morphism [23Xt \rightarrow a^{\vee}[123X given by
  the universal property of [23Xa^{\vee}[123X.[133X
  
  [1X1.5-32 LeftClosedMonoidalLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalLambdaIntroduction[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( 1, \mathrm{\underline{Hom}_\ell}(a,b)
            )[123X.[133X
  
  [33X[0;0YThe  argument  is  a  morphism  [23X\alpha:  a  \rightarrow b[123X. The output is the
  corresponding   morphism  [23X1  \rightarrow  \mathrm{\underline{Hom}_\ell}(a,b)[123X
  under the tensor hom adjunction.[133X
  
  [1X1.5-33 LeftClosedMonoidalLambdaElimination[101X
  
  [33X[1;0Y[29X[2XLeftClosedMonoidalLambdaElimination[102X( [3Xa[103X, [3Xb[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a,b)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X, and a morphism [23X\alpha: 1 \rightarrow
  \mathrm{\underline{Hom}_\ell}(a,b)[123X. The output is a morphism [23Xa \rightarrow b[123X
  corresponding to [23X\alpha[123X under the tensor hom adjunction.[133X
  
  [1X1.5-34 IsomorphismFromObjectToLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToLeftInternalHom[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, \mathrm{\underline{Hom}_\ell}(1,a))[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is the natural isomorphism [23Xa
  \rightarrow \mathrm{\underline{Hom}_\ell}(1,a)[123X.[133X
  
  [1X1.5-35 IsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, r)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xr    =
  \mathrm{\underline{Hom}_\ell}(1,a)[123X.  The output is the natural isomorphism [23Xa
  \rightarrow \mathrm{\underline{Hom}_\ell}(1,a)[123X.[133X
  
  [1X1.5-36 IsomorphismFromLeftInternalHomToObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftInternalHomToObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(\mathrm{\underline{Hom}_\ell}(1,a),a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is  the  natural isomorphism
  [23X\mathrm{\underline{Hom}_\ell}(1,a) \rightarrow a[123X.[133X
  
  [1X1.5-37 IsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s,a)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xs    =
  \mathrm{\underline{Hom}_\ell}(1,a)[123X.  The  output  is the natural isomorphism
  [23X\mathrm{\underline{Hom}_\ell}(1,a) \rightarrow a[123X.[133X
  
  
  [1X1.6 [33X[0;0YClosed Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal  category  [23X\mathbf{C}[123X  which  has  for each functor [23X- \otimes b:
  \mathbf{C}    \rightarrow   \mathbf{C}[123X   a   right   adjoint   (denoted   by
  [23X\mathrm{\underline{Hom}_\ell}(b,-)[123X) is called a [13Xclosed monoidal category[113X.[133X
  
  [33X[0;0YIf  no  operations  involving duals are installed manually, the dual objects
  will be derived as [23Xa^\vee \coloneqq \mathrm{\underline{Hom}_\ell}(a,1)[123X.[133X
  
  [33X[0;0YThe corresponding GAP property is called [10XIsClosedMonoidalCategory[110X.[133X
  
  [1X1.6-1 InternalHomOnObjects[101X
  
  [33X[1;0Y[29X[2XInternalHomOnObjects[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe  arguments  are  two  objects [23Xa,b[123X. The output is the internal hom object
  [23X\mathrm{\underline{Hom}}(a,b)[123X.[133X
  
  [1X1.6-2 InternalHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XInternalHomOnMorphisms[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(  \mathrm{\underline{Hom}}(a',b),
            \mathrm{\underline{Hom}}(a,b') )[123X[133X
  
  [33X[0;0YThe  arguments  are  two  morphisms  [23X\alpha:  a  \rightarrow  a',  \beta:  b
  \rightarrow    b'[123X.    The    output    is    the   internal   hom   morphism
  [23X\mathrm{\underline{Hom}}(\alpha,\beta):       \mathrm{\underline{Hom}}(a',b)
  \rightarrow \mathrm{\underline{Hom}}(a,b')[123X.[133X
  
  [1X1.6-3 InternalHomOnMorphismsWithGivenInternalHoms[101X
  
  [33X[1;0Y[29X[2XInternalHomOnMorphismsWithGivenInternalHoms[102X( [3Xs[103X, [3Xalpha[103X, [3Xbeta[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe   arguments  are  an  object  [23Xs  =  \mathrm{\underline{Hom}}(a',b)[123X,  two
  morphisms [23X\alpha: a \rightarrow a', \beta: b \rightarrow b'[123X, and an object [23Xr
  =  \mathrm{\underline{Hom}}(a,b')[123X.  The  output is the internal hom morphism
  [23X\mathrm{\underline{Hom}}(\alpha,\beta):       \mathrm{\underline{Hom}}(a',b)
  \rightarrow \mathrm{\underline{Hom}}(a,b')[123X.[133X
  
  [1X1.6-4 ClosedMonoidalRightEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalRightEvaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya         morphism         in        [23X\mathrm{Hom}(a        \otimes
            \mathrm{\underline{Hom}}(a,b), b )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,  b[123X. The output is the right evaluation
  morphism     [23X\mathrm{ev}_{a,b}:a    \otimes    \mathrm{\underline{Hom}}(a,b)
  \rightarrow b[123X, i.e., the counit of the tensor hom adjunction.[133X
  
  [1X1.6-5 ClosedMonoidalRightEvaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalRightEvaluationMorphismWithGivenSource[102X( [3Xa[103X, [3Xb[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, b )[123X.[133X
  
  [33X[0;0YThe   arguments   are   two  objects  [23Xa,b[123X  and  an  object  [23Xs  =  a  \otimes
  \mathrm{\underline{Hom}}(a,b)[123X.  The  output is the right evaluation morphism
  [23X\mathrm{ev}_{a,b}:  a  \otimes  \mathrm{\underline{Hom}}(a,b) \rightarrow b[123X,
  i.e., the counit of the tensor hom adjunction.[133X
  
  [1X1.6-6 ClosedMonoidalRightCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalRightCoevaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  b,  \mathrm{\underline{Hom}}(a,  a
            \otimes b) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X. The output is the right coevaluation
  morphism  [23X\mathrm{coev}_{a,b}:  b  \rightarrow \mathrm{\underline{Hom}}(a, a
  \otimes b)[123X, i.e., the unit of the tensor hom adjunction.[133X
  
  [1X1.6-7 ClosedMonoidalRightCoevaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalRightCoevaluationMorphismWithGivenRange[102X( [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xr   =
  \mathrm{\underline{Hom}}(a,   a   \otimes   b)[123X.  The  output  is  the  right
  coevaluation      morphism      [23X\mathrm{coev}_{a,b}:      b      \rightarrow
  \mathrm{\underline{Hom}}(a,  a  \otimes b)[123X, i.e., the unit of the tensor hom
  adjunction.[133X
  
  [1X1.6-8 TensorProductToInternalHomRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomRightAdjunctMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, \mathrm{\underline{Hom}}(a,c) )[123X.[133X
  
  [33X[0;0YThe  arguments are two objects [23Xa,b[123X and a morphism [23Xf: a \otimes b \rightarrow
  c[123X.  The  output is a morphism [23Xg: b \rightarrow \mathrm{\underline{Hom}}(a,c)[123X
  corresponding to [23Xf[123X under the tensor hom adjunction.[133X
  
  [1X1.6-9 TensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X, [3Xi[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, i )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X, a morphism [23Xf: a \otimes b \rightarrow c[123X
  and an object [23Xi = \mathrm{\underline{Hom}}(a,c)[123X. The output is a morphism [23Xg:
  b \rightarrow i[123X corresponding to [23Xf[123X under the tensor hom adjunction.[133X
  
  [1X1.6-10 TensorProductToInternalHomRightAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomRightAdjunctionIsomorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(   H(a   \otimes   b,   c),  H(b,
            \mathrm{\underline{Hom}}(a,c)) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X.  The  output  is the tri-natural
  isomorphism [23XH(a \otimes b, c) \to H(b, \mathrm{\underline{Hom}}(a,c))[123X in the
  range category of the homomorphism structure [23XH[123X.[133X
  
  [1X1.6-11 TensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are fives objects [23Xs,a,b,c,r[123X where [23Xs = H(a \otimes b, c)[123X and [23Xr
  =   H(b,  \mathrm{\underline{Hom}}(a,c))[123X.  The  output  is  the  tri-natural
  isomorphism [23Xs \to r[123X in the range category of the homomorphism structure [23XH[123X.[133X
  
  [1X1.6-12 InternalHomToTensorProductRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductRightAdjunctMorphism[102X( [3Xa[103X, [3Xc[103X, [3Xg[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes b, c)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,c[123X  and  a  morphism  [23Xg:  b  \rightarrow
  \mathrm{\underline{Hom}}(a,c)[123X.  The  output  is  a  morphism  [23Xf: a \otimes b
  \rightarrow c[123X corresponding to [23Xg[123X under the tensor hom adjunction.[133X
  
  [1X1.6-13 InternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[102X( [3Xa[103X, [3Xc[103X, [3Xg[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s, c)[123X.[133X
  
  [33X[0;0YThe   arguments   are   two   objects  [23Xa,c[123X,  a  morphism  [23Xg:  b  \rightarrow
  \mathrm{\underline{Hom}}(a,c)[123X and an object [23Xs = a \otimes b[123X. The output is a
  morphism  [23Xf:  s  \rightarrow  c[123X  corresponding  to  [23Xg[123X  under  the tensor hom
  adjunction.[133X
  
  [1X1.6-14 InternalHomToTensorProductRightAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductRightAdjunctionIsomorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}( H(b, \mathrm{\underline{Hom}}(a,c)),
            H(a \otimes b, c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X.  The  output  is the tri-natural
  isomorphism [23XH(b, \mathrm{\underline{Hom}}(a,c)) \to H(a \otimes b, c)[123X in the
  range category of the homomorphism structure [23XH[123X.[133X
  
  [1X1.6-15 InternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are   fives   objects   [23Xs,a,b,c,r[123X   where   [23Xs   =   H(b,
  \mathrm{\underline{Hom}}(a,c))[123X  and [23Xr = H(a \otimes b, c)[123X. The output is the
  tri-natural  isomorphism  [23Xs  \to r[123X in the range category of the homomorphism
  structure [23XH[123X.[133X
  
  [1X1.6-16 ClosedMonoidalLeftEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalLeftEvaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{Hom}}(a,b) \otimes
            a, b )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,  b[123X.  The output is the left evaluation
  morphism    [23X\mathrm{ev}_{a,b}:   \mathrm{\underline{Hom}}(a,b)   \otimes   a
  \rightarrow b[123X, i.e., the counit of the tensor hom adjunction.[133X
  
  [1X1.6-17 ClosedMonoidalLeftEvaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalLeftEvaluationMorphismWithGivenSource[102X( [3Xa[103X, [3Xb[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, b )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xs   =
  \mathrm{\underline{Hom}}(a,b)  \otimes  a[123X. The output is the left evaluation
  morphism    [23X\mathrm{ev}_{a,b}:   \mathrm{\underline{Hom}}(a,b)   \otimes   a
  \rightarrow b[123X, i.e., the counit of the tensor hom adjunction.[133X
  
  [1X1.6-18 ClosedMonoidalLeftCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalLeftCoevaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  b,  \mathrm{\underline{Hom}}(a,  b
            \otimes a) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The output is the left coevaluation
  morphism  [23X\mathrm{coev}_{a,b}:  b  \rightarrow \mathrm{\underline{Hom}}(a, b
  \otimes a)[123X, i.e., the unit of the tensor hom adjunction.[133X
  
  [1X1.6-19 ClosedMonoidalLeftCoevaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XClosedMonoidalLeftCoevaluationMorphismWithGivenRange[102X( [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xr   =
  \mathrm{\underline{Hom}}(a,   b   \otimes   a)[123X.   The  output  is  the  left
  coevaluation      morphism      [23X\mathrm{coev}_{a,b}:      b      \rightarrow
  \mathrm{\underline{Hom}}(a,  b  \otimes a)[123X, i.e., the unit of the tensor hom
  adjunction.[133X
  
  [1X1.6-20 TensorProductToInternalHomLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomLeftAdjunctMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a, \mathrm{\underline{Hom}}(b,c) )[123X.[133X
  
  [33X[0;0YThe  arguments are two objects [23Xa,b[123X and a morphism [23Xf: a \otimes b \rightarrow
  c[123X.  The  output is a morphism [23Xg: a \rightarrow \mathrm{\underline{Hom}}(b,c)[123X
  corresponding to [23Xf[123X under the tensor hom adjunction.[133X
  
  [1X1.6-21 TensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X, [3Xi[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a, i )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X, a morphism [23Xf: a \otimes b \rightarrow c[123X
  and an object [23Xi = \mathrm{\underline{Hom}}(b,c)[123X. The output is a morphism [23Xg:
  a \rightarrow i[123X corresponding to [23Xf[123X under the tensor hom adjunction.[133X
  
  [1X1.6-22 TensorProductToInternalHomLeftAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomLeftAdjunctionIsomorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(   H(a   \otimes   b,   c),  H(a,
            \mathrm{\underline{Hom}}(b,c)) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X.  The  output  is the tri-natural
  isomorphism [23XH(a \otimes b, c) \to H(a, \mathrm{\underline{Hom}}(b,c))[123X in the
  range category of the homomorphism structure [23XH[123X.[133X
  
  [1X1.6-23 TensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are fives objects [23Xs,a,b,c,r[123X where [23Xs = H(a \otimes b, c)[123X and [23Xr
  =   H(a,  \mathrm{\underline{Hom}}(b,c))[123X.  The  output  is  the  tri-natural
  isomorphism [23Xs \to r[123X in the range category of the homomorphism structure [23XH[123X.[133X
  
  [1X1.6-24 InternalHomToTensorProductLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductLeftAdjunctMorphism[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes b, c)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xb,c[123X  and  a  morphism  [23Xg:  a  \rightarrow
  \mathrm{\underline{Hom}}(b,c)[123X.  The  output  is  a  morphism  [23Xf: a \otimes b
  \rightarrow c[123X corresponding to [23Xg[123X under the tensor hom adjunction.[133X
  
  [1X1.6-25 InternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s, c)[123X.[133X
  
  [33X[0;0YThe   arguments   are   two   objects  [23Xb,c[123X,  a  morphism  [23Xg:  a  \rightarrow
  \mathrm{\underline{Hom}}(b,c)[123X and an object [23Xs = a \otimes b[123X. The output is a
  morphism  [23Xf:  s  \rightarrow  c[123X  corresponding  to  [23Xg[123X  under  the tensor hom
  adjunction.[133X
  
  [1X1.6-26 InternalHomToTensorProductLeftAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductLeftAdjunctionIsomorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}( H(a, \mathrm{\underline{Hom}}(b,c)),
            H(a \otimes b, c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X.  The  output  is the tri-natural
  isomorphism [23XH(a, \mathrm{\underline{Hom}}(b,c)) \to H(a \otimes b, c)[123X in the
  range category of the homomorphism structure [23XH[123X.[133X
  
  [1X1.6-27 InternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XInternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are   fives   objects   [23Xs,a,b,c,r[123X   where   [23Xs   =   H(a,
  \mathrm{\underline{Hom}}(b,c))[123X  and [23Xr = H(a \otimes b, c)[123X. The output is the
  tri-natural  isomorphism  [23Xs  \to r[123X in the range category of the homomorphism
  structure [23XH[123X.[133X
  
  [1X1.6-28 MonoidalPreComposeMorphism[101X
  
  [33X[1;0Y[29X[2XMonoidalPreComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{Hom}}(a,b) \otimes
            \mathrm{\underline{Hom}}(b,c), \mathrm{\underline{Hom}}(a,c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects  [23Xa,b,c[123X. The output is the precomposition
  morphism                        [23X\mathrm{MonoidalPreComposeMorphism}_{a,b,c}:
  \mathrm{\underline{Hom}}(a,b)      \otimes     \mathrm{\underline{Hom}}(b,c)
  \rightarrow \mathrm{\underline{Hom}}(a,c)[123X.[133X
  
  [1X1.6-29 MonoidalPreComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMonoidalPreComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  =  \mathrm{\underline{Hom}}(a,b) \otimes
  \mathrm{\underline{Hom}}(b,c)[123X,  three  objects  [23Xa,b,c[123X,  and  an  object  [23Xr =
  \mathrm{\underline{Hom}}(a,c)[123X.  The  output  is  the precomposition morphism
  [23X\mathrm{MonoidalPreComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{Hom}}(a,b)      \otimes     \mathrm{\underline{Hom}}(b,c)
  \rightarrow \mathrm{\underline{Hom}}(a,c)[123X.[133X
  
  [1X1.6-30 MonoidalPostComposeMorphism[101X
  
  [33X[1;0Y[29X[2XMonoidalPostComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{Hom}}(b,c) \otimes
            \mathrm{\underline{Hom}}(a,b), \mathrm{\underline{Hom}}(a,c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three  objects [23Xa,b,c[123X. The output is the postcomposition
  morphism                       [23X\mathrm{MonoidalPostComposeMorphism}_{a,b,c}:
  \mathrm{\underline{Hom}}(b,c)      \otimes     \mathrm{\underline{Hom}}(a,b)
  \rightarrow \mathrm{\underline{Hom}}(a,c)[123X.[133X
  
  [1X1.6-31 MonoidalPostComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMonoidalPostComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  =  \mathrm{\underline{Hom}}(b,c) \otimes
  \mathrm{\underline{Hom}}(a,b)[123X,  three  objects  [23Xa,b,c[123X,  and  an  object  [23Xr =
  \mathrm{\underline{Hom}}(a,c)[123X.  The  output  is the postcomposition morphism
  [23X\mathrm{MonoidalPostComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{Hom}}(b,c)      \otimes     \mathrm{\underline{Hom}}(a,b)
  \rightarrow \mathrm{\underline{Hom}}(a,c)[123X.[133X
  
  [1X1.6-32 DualOnObjects[101X
  
  [33X[1;0Y[29X[2XDualOnObjects[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X. The output is its dual object [23Xa^{\vee}[123X.[133X
  
  [1X1.6-33 DualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XDualOnMorphisms[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b^{\vee}, a^{\vee} )[123X.[133X
  
  [33X[0;0YThe  argument  is a morphism [23X\alpha: a \rightarrow b[123X. The output is its dual
  morphism [23X\alpha^{\vee}: b^{\vee} \rightarrow a^{\vee}[123X.[133X
  
  [1X1.6-34 DualOnMorphismsWithGivenDuals[101X
  
  [33X[1;0Y[29X[2XDualOnMorphismsWithGivenDuals[102X( [3Xs[103X, [3Xalpha[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xs = b^{\vee}[123X, a morphism [23X\alpha: a \rightarrow b[123X,
  and  an  object [23Xr = a^{\vee}[123X. The output is the dual morphism [23X\alpha^{\vee}:
  b^{\vee} \rightarrow a^{\vee}[123X.[133X
  
  [1X1.6-35 EvaluationForDual[101X
  
  [33X[1;0Y[29X[2XEvaluationForDual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a^{\vee} \otimes a, 1 )[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is  the  evaluation morphism
  [23X\mathrm{ev}_{a}: a^{\vee} \otimes a \rightarrow 1[123X.[133X
  
  [1X1.6-36 EvaluationForDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XEvaluationForDualWithGivenTensorProduct[102X( [3Xs[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs = a^{\vee} \otimes a[123X, an object [23Xa[123X, and an
  object  [23Xr  =  1[123X.  The  output  is  the  evaluation morphism [23X\mathrm{ev}_{a}:
  a^{\vee} \otimes a \rightarrow 1[123X.[133X
  
  [1X1.6-37 MorphismToBidual[101X
  
  [33X[1;0Y[29X[2XMorphismToBidual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, (a^{\vee})^{\vee})[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X. The output is the morphism to the bidual [23Xa
  \rightarrow (a^{\vee})^{\vee}[123X.[133X
  
  [1X1.6-38 MorphismToBidualWithGivenBidual[101X
  
  [33X[1;0Y[29X[2XMorphismToBidualWithGivenBidual[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, r)[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xa[123X, and an object [23Xr = (a^{\vee})^{\vee}[123X. The
  output is the morphism to the bidual [23Xa \rightarrow (a^{\vee})^{\vee}[123X.[133X
  
  [1X1.6-39 TensorProductInternalHomCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductInternalHomCompatibilityMorphism[102X( [3Xlist[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( \mathrm{\underline{Hom}}(a,a') \otimes
            \mathrm{\underline{Hom}}(b,b'), \mathrm{\underline{Hom}}(a \otimes
            b,a' \otimes b'))[123X.[133X
  
  [33X[0;0YThe  argument  is a list of four objects [23X[ a, a', b, b' ][123X. The output is the
  natural                                                             morphism
  [23X\mathrm{TensorProductInternalHomCompatibilityMorphism}_{a,a',b,b'}:
  \mathrm{\underline{Hom}}(a,a')     \otimes    \mathrm{\underline{Hom}}(b,b')
  \rightarrow \mathrm{\underline{Hom}}(a \otimes b,a' \otimes b')[123X.[133X
  
  [1X1.6-40 TensorProductInternalHomCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductInternalHomCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xlist[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe arguments are a list of four objects [23X[ a, a', b, b' ][123X, and two objects [23Xs
  =  \mathrm{\underline{Hom}}(a,a') \otimes \mathrm{\underline{Hom}}(b,b')[123X and
  [23Xr  =  \mathrm{\underline{Hom}}(a \otimes b,a' \otimes b')[123X. The output is the
  natural                                                             morphism
  [23X\mathrm{TensorProductInternalHomCompatibilityMorphismWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{Hom}}(a,a')     \otimes    \mathrm{\underline{Hom}}(b,b')
  \rightarrow \mathrm{\underline{Hom}}(a \otimes b,a' \otimes b')[123X.[133X
  
  [1X1.6-41 TensorProductDualityCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductDualityCompatibilityMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( a^{\vee} \otimes b^{\vee}, (a \otimes
            b)^{\vee} )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{TensorProductDualityCompatibilityMorphism}:     a^{\vee}     \otimes
  b^{\vee} \rightarrow (a \otimes b)^{\vee}[123X.[133X
  
  [1X1.6-42 TensorProductDualityCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductDualityCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = a^{\vee} \otimes b^{\vee}[123X, two objects [23Xa,b[123X,
  and  an  object [23Xr = (a \otimes b)^{\vee}[123X. The output is the natural morphism
  [23X\mathrm{TensorProductDualityCompatibilityMorphismWithGivenObjects}_{a,b}:
  a^{\vee} \otimes b^{\vee} \rightarrow (a \otimes b)^{\vee}[123X.[133X
  
  [1X1.6-43 MorphismFromTensorProductToInternalHom[101X
  
  [33X[1;0Y[29X[2XMorphismFromTensorProductToInternalHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya     morphism    in    [23X\mathrm{Hom}(    a^{\vee}    \otimes    b,
            \mathrm{\underline{Hom}}(a,b) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{MorphismFromTensorProductToInternalHom}_{a,b}:  a^{\vee}  \otimes  b
  \rightarrow \mathrm{\underline{Hom}}(a,b)[123X.[133X
  
  [1X1.6-44 MorphismFromTensorProductToInternalHomWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMorphismFromTensorProductToInternalHomWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = a^{\vee} \otimes b[123X, two objects [23Xa,b[123X, and an
  object [23Xr = \mathrm{\underline{Hom}}(a,b)[123X. The output is the natural morphism
  [23X\mathrm{MorphismFromTensorProductToInternalHomWithGivenObjects}_{a,b}:
  a^{\vee} \otimes b \rightarrow \mathrm{\underline{Hom}}(a,b)[123X.[133X
  
  [1X1.6-45 IsomorphismFromDualObjectToInternalHomIntoTensorUnit[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromDualObjectToInternalHomIntoTensorUnit[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya           morphism           in           [23X\mathrm{Hom}(a^{\vee},
            \mathrm{\underline{Hom}}(a,1))[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromDualObjectToInternalHomIntoTensorUnit}_{a}:  a^{\vee}
  \rightarrow \mathrm{\underline{Hom}}(a,1)[123X.[133X
  
  [1X1.6-46 IsomorphismFromInternalHomIntoTensorUnitToDualObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalHomIntoTensorUnitToDualObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya    morphism    in    [23X\mathrm{Hom}(\mathrm{\underline{Hom}}(a,1),
            a^{\vee})[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromInternalHomIntoTensorUnitToDualObject}_{a}:
  \mathrm{\underline{Hom}}(a,1) \rightarrow a^{\vee}[123X.[133X
  
  [1X1.6-47 UniversalPropertyOfDual[101X
  
  [33X[1;0Y[29X[2XUniversalPropertyOfDual[102X( [3Xt[103X, [3Xa[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(t, a^{\vee})[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xt,a[123X,  and  a morphism [23X\alpha: t \otimes a
  \rightarrow  1[123X.  The  output is the morphism [23Xt \rightarrow a^{\vee}[123X given by
  the universal property of [23Xa^{\vee}[123X.[133X
  
  [1X1.6-48 LambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XLambdaIntroduction[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( 1, \mathrm{\underline{Hom}}(a,b) )[123X.[133X
  
  [33X[0;0YThe  argument  is  a  morphism  [23X\alpha:  a  \rightarrow b[123X. The output is the
  corresponding morphism [23X1 \rightarrow \mathrm{\underline{Hom}}(a,b)[123X under the
  tensor hom adjunction.[133X
  
  [1X1.6-49 LambdaElimination[101X
  
  [33X[1;0Y[29X[2XLambdaElimination[102X( [3Xa[103X, [3Xb[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a,b)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X, and a morphism [23X\alpha: 1 \rightarrow
  \mathrm{\underline{Hom}}(a,b)[123X.  The  output  is  a  morphism [23Xa \rightarrow b[123X
  corresponding to [23X\alpha[123X under the tensor hom adjunction.[133X
  
  [1X1.6-50 IsomorphismFromObjectToInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToInternalHom[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, \mathrm{\underline{Hom}}(1,a))[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is the natural isomorphism [23Xa
  \rightarrow \mathrm{\underline{Hom}}(1,a)[123X.[133X
  
  [1X1.6-51 IsomorphismFromObjectToInternalHomWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToInternalHomWithGivenInternalHom[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, r)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xr    =
  \mathrm{\underline{Hom}}(1,a)[123X.  The  output  is  the  natural  isomorphism [23Xa
  \rightarrow \mathrm{\underline{Hom}}(1,a)[123X.[133X
  
  [1X1.6-52 IsomorphismFromInternalHomToObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalHomToObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(\mathrm{\underline{Hom}}(1,a),a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is  the  natural isomorphism
  [23X\mathrm{\underline{Hom}}(1,a) \rightarrow a[123X.[133X
  
  [1X1.6-53 IsomorphismFromInternalHomToObjectWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalHomToObjectWithGivenInternalHom[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s,a)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xs    =
  \mathrm{\underline{Hom}}(1,a)[123X.   The   output  is  the  natural  isomorphism
  [23X\mathrm{\underline{Hom}}(1,a) \rightarrow a[123X.[133X
  
  
  [1X1.7 [33X[0;0YLeft Coclosed Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal  category  [23X\mathbf{C}[123X  which  has  for each functor [23X- \otimes b:
  \mathbf{C}    \rightarrow    \mathbf{C}[123X   a   left   adjoint   (denoted   by
  [23X\mathrm{\underline{coHom}}(-,b)[123X)   is   called   a  [13Xleft  coclosed  monoidal
  category[113X.[133X
  
  [33X[0;0YIf  no  operations  involving  left coduals are installed manually, the left
  codual     objects     will     be     derived     as    [23Xa_\vee    \coloneqq
  \mathrm{\underline{coHom}}(1,a)[123X.[133X
  
  [33X[0;0YThe corresponding GAP property is called [10XIsLeftCoclosedMonoidalCategory[110X.[133X
  
  [1X1.7-1 LeftInternalCoHomOnObjects[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomOnObjects[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X. The output is the internal cohom object
  [23X\mathrm{\underline{coHom}_\ell}(a,b)[123X.[133X
  
  [1X1.7-2 LeftInternalCoHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomOnMorphisms[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}_\ell}(a,b'),
            \mathrm{\underline{coHom}_\ell}(a',b) )[123X[133X
  
  [33X[0;0YThe  arguments  are  two  morphisms  [23X\alpha:  a  \rightarrow  a',  \beta:  b
  \rightarrow    b'[123X.    The    output   is   the   internal   cohom   morphism
  [23X\mathrm{\underline{coHom}_\ell}(\alpha,\beta):
  \mathrm{\underline{coHom}_\ell}(a,b')                            \rightarrow
  \mathrm{\underline{coHom}_\ell}(a',b)[123X.[133X
  
  [1X1.7-3 LeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms[102X( [3Xs[103X, [3Xalpha[103X, [3Xbeta[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = \mathrm{\underline{coHom}_\ell}(a,b')[123X, two
  morphisms [23X\alpha: a \rightarrow a', \beta: b \rightarrow b'[123X, and an object [23Xr
  =  \mathrm{\underline{coHom}_\ell}(a',b)[123X.  The  output is the internal cohom
  morphism                      [23X\mathrm{\underline{coHom}_\ell}(\alpha,\beta):
  \mathrm{\underline{coHom}_\ell}(a,b')                            \rightarrow
  \mathrm{\underline{coHom}_\ell}(a',b)[123X.[133X
  
  [1X1.7-4 LeftCoclosedMonoidalEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalEvaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya          morphism          in          [23X\mathrm{Hom}(          b,
            \mathrm{\underline{coHom}_\ell}(b,a) \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two objects [23Xa, b[123X. The output is the coclosed evaluation
  morphism            [23X\mathrm{coclev}_{a,b}:           b           \rightarrow
  \mathrm{\underline{coHom}_\ell}(b,a)  \otimes a[123X, i.e., the unit of the cohom
  tensor adjunction.[133X
  
  [1X1.7-5 LeftCoclosedMonoidalEvaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalEvaluationMorphismWithGivenRange[102X( [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xr   =
  \mathrm{\underline{coHom}_\ell}(b,a)  \otimes  a[123X. The output is the coclosed
  evaluation      morphism      [23X\mathrm{coclev}_{a,b}:      b      \rightarrow
  \mathrm{\underline{coHom}_\ell}(b,a)  \otimes a[123X, i.e., the unit of the cohom
  tensor adjunction.[133X
  
  [1X1.7-6 LeftCoclosedMonoidalCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalCoevaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}_\ell}(b
            \otimes a, a), b )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X. The output is the coclosed coevaluation
  morphism  [23X\mathrm{coclcoev}_{a,b}: \mathrm{\underline{coHom}_\ell}(b \otimes
  a, a) \rightarrow b[123X, i.e., the counit of the cohom tensor adjunction.[133X
  
  [1X1.7-7 LeftCoclosedMonoidalCoevaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalCoevaluationMorphismWithGivenSource[102X( [3Xa[103X, [3Xb[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, b )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xs   =
  \mathrm{\underline{coHom}_\ell}(b  \otimes a, a)[123X. The output is the coclosed
  coevaluation                morphism                [23X\mathrm{coclcoev}_{a,b}:
  \mathrm{\underline{coHom}_\ell}(b  \otimes  a,  a)  \rightarrow b[123X, i.e., the
  unit of the cohom tensor adjunction.[133X
  
  [1X1.7-8 TensorProductToLeftInternalCoHomAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToLeftInternalCoHomAdjunctMorphism[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}_\ell}(a,c),
            b )[123X.[133X
  
  [33X[0;0YThe  arguments are two objects [23Xb,c[123X and a morphism [23Xg: a \rightarrow b \otimes
  c[123X.   The   output  is  a  morphism  [23Xf:  \mathrm{\underline{coHom}_\ell}(a,c)
  \rightarrow b[123X corresponding to [23Xg[123X under the cohom tensor adjunction.[133X
  
  [1X1.7-9 TensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XTensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X, [3Xi[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( i, b )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xb,c[123X, a morphism [23Xg: a \rightarrow b \otimes c[123X
  and  an  object  [23Xi  =  \mathrm{\underline{coHom}_\ell}(a,c)[123X. The output is a
  morphism [23Xf: \mathrm{\underline{coHom}_\ell}(a,c) \rightarrow b[123X corresponding
  to [23Xg[123X under the cohom tensor adjunction.[133X
  
  [1X1.7-10 LeftInternalCoHomToTensorProductAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomToTensorProductAdjunctMorphism[102X( [3Xa[103X, [3Xc[103X, [3Xf[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, b \otimes c)[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,c[123X    and    a   morphism   [23Xf:
  \mathrm{\underline{coHom}_\ell}(a,c) \rightarrow b[123X. The output is a morphism
  [23Xg:  a  \rightarrow  b  \otimes  c[123X  corresponding to [23Xf[123X under the cohom tensor
  adjunction.[133X
  
  [1X1.7-11 LeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct[102X( [3Xa[103X, [3Xc[103X, [3Xf[103X, [3Xt[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a, t )[123X.[133X
  
  [33X[0;0YThe     arguments     are     two     objects    [23Xa,c[123X,    a    morphism    [23Xf:
  \mathrm{\underline{coHom}_\ell}(a,c)  \rightarrow  b[123X  and  an  object  [23Xt = b
  \otimes  c[123X.  The  output  is  a  morphism  [23Xg:  a  \rightarrow  b  \otimes  c[123X
  corresponding to [23Xf[123X under the cohom tensor adjunction.[133X
  
  [1X1.7-12 LeftCoclosedMonoidalPreCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalPreCoComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}_\ell}(a,c),
            \mathrm{\underline{coHom}_\ell}(b,c)                       \otimes
            \mathrm{\underline{coHom}_\ell}(a,b) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three objects [23Xa,b,c[123X. The output is the precocomposition
  morphism          [23X\mathrm{LeftCoclosedMonoidalPreCoComposeMorphism}_{a,b,c}:
  \mathrm{\underline{coHom}_\ell}(a,c)                             \rightarrow
  \mathrm{\underline{coHom}_\ell}(b,c)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(a,b)[123X.[133X
  
  [1X1.7-13 LeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = \mathrm{\underline{coHom}_\ell}(a,c)[123X, three
  objects  [23Xa,b,c[123X,  and  an  object  [23Xr  =  \mathrm{\underline{coHom}_\ell}(a,b)
  \otimes    \mathrm{\underline{coHom}_\ell}(b,c)[123X.    The    output   is   the
  precocomposition                                                    morphism
  [23X\mathrm{LeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{coHom}_\ell}(a,c)                             \rightarrow
  \mathrm{\underline{coHom}_\ell}(b,c)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(a,b)[123X.[133X
  
  [1X1.7-14 LeftCoclosedMonoidalPostCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalPostCoComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}_\ell}(a,c),
            \mathrm{\underline{coHom}_\ell}(a,b)                       \otimes
            \mathrm{\underline{coHom}_\ell}(b,c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are three objects [23Xa,b,c[123X. The output is the postcocomposition
  morphism         [23X\mathrm{LeftCoclosedMonoidalPostCoComposeMorphism}_{a,b,c}:
  \mathrm{\underline{coHom}_\ell}(a,c)                             \rightarrow
  \mathrm{\underline{coHom}_\ell}(a,b)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(b,c)[123X.[133X
  
  [1X1.7-15 LeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = \mathrm{\underline{coHom}_\ell}(a,c)[123X, three
  objects  [23Xa,b,c[123X,  and  an  object  [23Xr  =  \mathrm{\underline{coHom}_\ell}(b,c)
  \otimes    \mathrm{\underline{coHom}_\ell}(a,b)[123X.    The    output   is   the
  postcocomposition                                                   morphism
  [23X\mathrm{LeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{coHom}_\ell}(a,c)                             \rightarrow
  \mathrm{\underline{coHom}_\ell}(a,b)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(b,c)[123X.[133X
  
  [1X1.7-16 LeftCoDualOnObjects[101X
  
  [33X[1;0Y[29X[2XLeftCoDualOnObjects[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X. The output is its codual object [23Xa_{\vee}[123X.[133X
  
  [1X1.7-17 LeftCoDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XLeftCoDualOnMorphisms[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b_{\vee}, a_{\vee} )[123X.[133X
  
  [33X[0;0YThe argument is a morphism [23X\alpha: a \rightarrow b[123X. The output is its codual
  morphism [23X\alpha_{\vee}: b_{\vee} \rightarrow a_{\vee}[123X.[133X
  
  [1X1.7-18 LeftCoDualOnMorphismsWithGivenLeftCoDuals[101X
  
  [33X[1;0Y[29X[2XLeftCoDualOnMorphismsWithGivenLeftCoDuals[102X( [3Xs[103X, [3Xalpha[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xs = b_{\vee}[123X, a morphism [23X\alpha: a \rightarrow b[123X,
  and  an  object [23Xr = a_{\vee}[123X. The output is the dual morphism [23X\alpha_{\vee}:
  b^{\vee} \rightarrow a^{\vee}[123X.[133X
  
  [1X1.7-19 LeftCoclosedMonoidalEvaluationForLeftCoDual[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalEvaluationForLeftCoDual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( 1, a_{\vee} \otimes a )[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xa[123X. The output is the coclosed evaluation morphism
  [23X\mathrm{coclev}_{a}: 1 \rightarrow a_{\vee} \otimes a[123X.[133X
  
  [1X1.7-20 LeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct[102X( [3Xs[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = 1[123X, an object [23Xa[123X, and an object [23Xr = a_{\vee}
  \otimes    a[123X.    The    output   is   the   coclosed   evaluation   morphism
  [23X\mathrm{coclev}_{a}: 1 \rightarrow a_{\vee} \otimes a[123X.[133X
  
  [1X1.7-21 MorphismFromLeftCoBidual[101X
  
  [33X[1;0Y[29X[2XMorphismFromLeftCoBidual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}((a_{\vee})_{\vee}, a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an object [23Xa[123X. The output is the morphism from the cobidual
  [23X(a_{\vee})_{\vee} \rightarrow a[123X.[133X
  
  [1X1.7-22 MorphismFromLeftCoBidualWithGivenLeftCoBidual[101X
  
  [33X[1;0Y[29X[2XMorphismFromLeftCoBidualWithGivenLeftCoBidual[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s, a)[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xa[123X, and an object [23Xs = (a_{\vee})_{\vee}[123X. The
  output is the morphism from the cobidual [23X(a_{\vee})_{\vee} \rightarrow a[123X.[133X
  
  [1X1.7-23 LeftInternalCoHomTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomTensorProductCompatibilityMorphism[102X( [3Xlist[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}_\ell}(a
            \otimes  a',  b  \otimes b'), \mathrm{\underline{coHom}_\ell}(a,b)
            \otimes \mathrm{\underline{coHom}_\ell}(a',b'))[123X.[133X
  
  [33X[0;0YThe  argument  is a list of four objects [23X[ a, a', b, b' ][123X. The output is the
  natural                                                             morphism
  [23X\mathrm{LeftInternalCoHomTensorProductCompatibilityMorphism}_{a,a',b,b'}:
  \mathrm{\underline{coHom}_\ell}(a  \otimes  a',  b  \otimes  b') \rightarrow
  \mathrm{\underline{coHom}_\ell}(a,b)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(a',b')[123X.[133X
  
  [1X1.7-24 LeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xlist[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe arguments are a list of four objects [23X[ a, a', b, b' ][123X, and two objects [23Xs
  =  \mathrm{\underline{coHom}_\ell}(a  \otimes  a',  b  \otimes  b')[123X  and [23Xr =
  \mathrm{\underline{coHom}_\ell}(a,b)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(a',b')[123X.  The  output is the natural morphism
  [23X\mathrm{LeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{coHom}_\ell}(a  \otimes  a',  b  \otimes  b') \rightarrow
  \mathrm{\underline{coHom}_\ell}(a,b)                                 \otimes
  \mathrm{\underline{coHom}_\ell}(a',b')[123X.[133X
  
  [1X1.7-25 LeftCoDualityTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XLeftCoDualityTensorProductCompatibilityMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( (a \otimes b)_{\vee}, a_{\vee} \otimes
            b_{\vee} )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{LeftCoDualityTensorProductCompatibilityMorphism}:     (a     \otimes
  b)_{\vee} \rightarrow a_{\vee} \otimes b_{\vee}[123X.[133X
  
  [1X1.7-26 LeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XLeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = (a \otimes b)_{\vee}[123X, two objects [23Xa,b[123X, and
  an  object [23Xr = a_{\vee} \otimes b_{\vee}[123X. The output is the natural morphism
  [23X\mathrm{LeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects}_{a,b}:
  (a \otimes b)_{\vee} \rightarrow a_{\vee} \otimes b_{\vee}[123X.[133X
  
  [1X1.7-27 MorphismFromLeftInternalCoHomToTensorProduct[101X
  
  [33X[1;0Y[29X[2XMorphismFromLeftInternalCoHomToTensorProduct[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}_\ell}(a,b),
            b_{\vee} \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{MorphismFromLeftInternalCoHomToTensorProduct}_{a,b}:
  \mathrm{\underline{coHom}_\ell}(a,b) \rightarrow b_{\vee} \otimes a[123X.[133X
  
  [1X1.7-28 MorphismFromLeftInternalCoHomToTensorProductWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMorphismFromLeftInternalCoHomToTensorProductWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an object [23Xs = \mathrm{\underline{coHom}_\ell}(a,b)[123X, two
  objects [23Xa,b[123X, and an object [23Xr = b_{\vee} \otimes a[123X. The output is the natural
  morphism
  [23X\mathrm{MorphismFromLeftInternalCoHomToTensorProductWithGivenObjects}_{a,b}:
  \mathrm{\underline{coHom}_\ell}(a,b) \rightarrow a \otimes b_{\vee}[123X.[133X
  
  [1X1.7-29 IsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya           morphism           in           [23X\mathrm{Hom}(a_{\vee},
            \mathrm{\underline{coHom}_\ell}(1,a))[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit}_{a}:
  a_{\vee} \rightarrow \mathrm{\underline{coHom}_\ell}(1,a)[123X.[133X
  
  [1X1.7-30 IsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}(\mathrm{\underline{coHom}_\ell}(1,a),
            a_{\vee})[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject}_{a}:
  \mathrm{\underline{coHom}_\ell}(1,a) \rightarrow a_{\vee}[123X.[133X
  
  [1X1.7-31 UniversalPropertyOfLeftCoDual[101X
  
  [33X[1;0Y[29X[2XUniversalPropertyOfLeftCoDual[102X( [3Xt[103X, [3Xa[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a_{\vee}, t)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two objects [23Xt,a[123X, and a morphism [23X\alpha: 1 \rightarrow t
  \otimes  a[123X.  The  output is the morphism [23Xa_{\vee} \rightarrow t[123X given by the
  universal property of [23Xa_{\vee}[123X.[133X
  
  [1X1.7-32 LeftCoclosedMonoidalLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalLambdaIntroduction[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}_\ell}(a,b),
            1 )[123X.[133X
  
  [33X[0;0YThe  argument  is  a  morphism  [23X\alpha:  a  \rightarrow b[123X. The output is the
  corresponding  morphism  [23X \mathrm{\underline{coHom}_\ell}(a,b) \rightarrow 1[123X
  under the cohom tensor adjunction.[133X
  
  [1X1.7-33 LeftCoclosedMonoidalLambdaElimination[101X
  
  [33X[1;0Y[29X[2XLeftCoclosedMonoidalLambdaElimination[102X( [3Xa[103X, [3Xb[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a,b)[123X.[133X
  
  [33X[0;0YThe    arguments   are   two   objects   [23Xa,b[123X,   and   a   morphism   [23X\alpha:
  \mathrm{\underline{coHom}_\ell}(a,b) \rightarrow 1[123X. The output is a morphism
  [23Xa \rightarrow b[123X corresponding to [23X\alpha[123X under the cohom tensor adjunction.[133X
  
  [1X1.7-34 IsomorphismFromObjectToLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToLeftInternalCoHom[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya              morphism             in             [23X\mathrm{Hom}(a,
            \mathrm{\underline{coHom}_\ell}(a,1))[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is the natural isomorphism [23Xa
  \rightarrow \mathrm{\underline{coHom}_\ell}(a,1)[123X.[133X
  
  [1X1.7-35 IsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, r)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xr    =
  \mathrm{\underline{coHom}_\ell}(a,1)[123X.  The output is the natural isomorphism
  [23Xa \rightarrow \mathrm{\underline{coHom}_\ell}(a,1)[123X.[133X
  
  [1X1.7-36 IsomorphismFromLeftInternalCoHomToObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftInternalCoHomToObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}(\mathrm{\underline{coHom}_\ell}(a,1),
            a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is  the  natural isomorphism
  [23X\mathrm{\underline{coHom}_\ell}(a,1) \rightarrow a[123X.[133X
  
  [1X1.7-37 IsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s, a)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xs    =
  \mathrm{\underline{coHom}_\ell}(a,1)[123X.  The output is the natural isomorphism
  [23X\mathrm{\underline{coHom}_\ell}(a,1) \rightarrow a[123X.[133X
  
  
  [1X1.8 [33X[0;0YCoclosed Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal  category  [23X\mathbf{C}[123X  which  has  for each functor [23X- \otimes b:
  \mathbf{C}    \rightarrow    \mathbf{C}[123X   a   left   adjoint   (denoted   by
  [23X\mathrm{\underline{coHom}}(-,b)[123X) is called a [13Xcoclosed monoidal category[113X.[133X
  
  [33X[0;0YIf  no  operations  involving  coduals  are  installed  manually, the codual
  objects will be derived as [23Xa_\vee \coloneqq \mathrm{\underline{coHom}}(1,a)[123X.[133X
  
  [33X[0;0YThe corresponding GAP property is called [10XIsCoclosedMonoidalCategory[110X.[133X
  
  [1X1.8-1 InternalCoHomOnObjects[101X
  
  [33X[1;0Y[29X[2XInternalCoHomOnObjects[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xa,b[123X. The output is the internal cohom object
  [23X\mathrm{\underline{coHom}}(a,b)[123X.[133X
  
  [1X1.8-2 InternalCoHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XInternalCoHomOnMorphisms[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,b'),
            \mathrm{\underline{coHom}}(a',b) )[123X[133X
  
  [33X[0;0YThe  arguments  are  two  morphisms  [23X\alpha:  a  \rightarrow  a',  \beta:  b
  \rightarrow    b'[123X.    The    output   is   the   internal   cohom   morphism
  [23X\mathrm{\underline{coHom}}(\alpha,\beta):   \mathrm{\underline{coHom}}(a,b')
  \rightarrow \mathrm{\underline{coHom}}(a',b)[123X.[133X
  
  [1X1.8-3 InternalCoHomOnMorphismsWithGivenInternalCoHoms[101X
  
  [33X[1;0Y[29X[2XInternalCoHomOnMorphismsWithGivenInternalCoHoms[102X( [3Xs[103X, [3Xalpha[103X, [3Xbeta[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  =  \mathrm{\underline{coHom}}(a,b')[123X, two
  morphisms [23X\alpha: a \rightarrow a', \beta: b \rightarrow b'[123X, and an object [23Xr
  =   \mathrm{\underline{coHom}}(a',b)[123X.  The  output  is  the  internal  cohom
  morphism                           [23X\mathrm{\underline{coHom}}(\alpha,\beta):
  \mathrm{\underline{coHom}}(a,b')                                 \rightarrow
  \mathrm{\underline{coHom}}(a',b)[123X.[133X
  
  [1X1.8-4 CoclosedMonoidalRightEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalRightEvaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya      morphism      in     [23X\mathrm{Hom}(     b,     a     \otimes
            \mathrm{\underline{coHom}}(b,a) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,  b[123X.  The  output is the coclosed right
  evaluation   morphism   [23X\mathrm{coclev}_{a,b}:   b   \rightarrow  a  \otimes
  \mathrm{\underline{coHom}}(b,a)[123X,   i.e.,   the  unit  of  the  cohom  tensor
  adjunction.[133X
  
  [1X1.8-5 CoclosedMonoidalRightEvaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalRightEvaluationMorphismWithGivenRange[102X( [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, r )[123X.[133X
  
  [33X[0;0YThe   arguments   are   two  objects  [23Xa,b[123X  and  an  object  [23Xr  =  a  \otimes
  \mathrm{\underline{coHom}}(b,a)[123X. The output is the coclosed right evaluation
  morphism      [23X\mathrm{coclev}_{a,b}:     b     \rightarrow     a     \otimes
  \mathrm{\underline{coHom}}(b,a)[123X,   i.e.,   the  unit  of  the  cohom  tensor
  adjunction.[133X
  
  [1X1.8-6 CoclosedMonoidalRightCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalRightCoevaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}( \mathrm{\underline{coHom}}(a \otimes
            b, a), b )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output  is  the coclosed right
  coevaluation  morphism [23X\mathrm{coclcoev}_{a,b}: \mathrm{\underline{coHom}}(a
  \otimes  b,  a)  \rightarrow  b[123X,  i.e.,  the  counit  of  the  cohom  tensor
  adjunction.[133X
  
  [1X1.8-7 CoclosedMonoidalRightCoevaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalRightCoevaluationMorphismWithGivenSource[102X( [3Xa[103X, [3Xb[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, b )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xs   =
  \mathrm{\underline{coHom}}(a \otimes b, a)[123X. The output is the coclosed right
  coevaluation  morphism [23X\mathrm{coclcoev}_{a,b}: \mathrm{\underline{coHom}}(a
  \otimes b, a) \rightarrow b[123X, i.e., the unit of the cohom tensor adjunction.[133X
  
  [1X1.8-8 TensorProductToInternalCoHomRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalCoHomRightAdjunctMorphism[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}}(a,b), c )[123X.[133X
  
  [33X[0;0YThe  arguments are two objects [23Xb,c[123X and a morphism [23Xg: a \rightarrow b \otimes
  c[123X. The output is a morphism [23Xf: \mathrm{\underline{coHom}}(a,b) \rightarrow c[123X
  corresponding to [23Xg[123X under the cohom tensor adjunction.[133X
  
  [1X1.8-9 TensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X, [3Xi[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( i, c )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xb,c[123X, a morphism [23Xg: a \rightarrow b \otimes c[123X
  and  an object [23Xi = \mathrm{\underline{coHom}}(a,b)[123X. The output is a morphism
  [23Xf:  \mathrm{\underline{coHom}}(a,b)  \rightarrow  c[123X corresponding to [23Xg[123X under
  the cohom tensor adjunction.[133X
  
  [1X1.8-10 InternalCoHomToTensorProductRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XInternalCoHomToTensorProductRightAdjunctMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, b \otimes c)[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X    and    a   morphism   [23Xf:
  \mathrm{\underline{coHom}}(a,b) \rightarrow c[123X. The output is a morphism [23Xg: a
  \rightarrow   b  \otimes  c[123X  corresponding  to  [23Xf[123X  under  the  cohom  tensor
  adjunction.[133X
  
  [1X1.8-11 InternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XInternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[102X( [3Xa[103X, [3Xb[103X, [3Xf[103X, [3Xt[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a, t )[123X.[133X
  
  [33X[0;0YThe     arguments     are     two     objects    [23Xa,b[123X,    a    morphism    [23Xf:
  \mathrm{\underline{coHom}}(a,b) \rightarrow c[123X and an object [23Xt = b \otimes c[123X.
  The  output  is  a  morphism [23Xg: a \rightarrow t[123X corresponding to [23Xf[123X under the
  cohom tensor adjunction.[133X
  
  [1X1.8-12 CoclosedMonoidalLeftEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalLeftEvaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  b, \mathrm{\underline{coHom}}(b,a)
            \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,  b[123X.  The  output  is the coclosed left
  evaluation      morphism      [23X\mathrm{coclev}_{a,b}:      b      \rightarrow
  \mathrm{\underline{coHom}}(b,a)  \otimes  a[123X,  i.e.,  the  unit  of the cohom
  tensor adjunction.[133X
  
  [1X1.8-13 CoclosedMonoidalLeftEvaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalLeftEvaluationMorphismWithGivenRange[102X( [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b, r )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xr   =
  \mathrm{\underline{coHom}}(b,a)  \otimes  a[123X. The output is the coclosed left
  evaluation      morphism      [23X\mathrm{coclev}_{a,b}:      b      \rightarrow
  \mathrm{\underline{coHom}}(b,a)  \otimes  a[123X,  i.e.,  the  unit  of the cohom
  tensor adjunction.[133X
  
  [1X1.8-14 CoclosedMonoidalLeftCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalLeftCoevaluationMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}( \mathrm{\underline{coHom}}(b \otimes
            a, a), b )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output  is  the  coclosed left
  coevaluation  morphism [23X\mathrm{coclcoev}_{a,b}: \mathrm{\underline{coHom}}(b
  \otimes  a,  a)  \rightarrow  b[123X,  i.e.,  the  counit  of  the  cohom  tensor
  adjunction.[133X
  
  [1X1.8-15 CoclosedMonoidalLeftCoevaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XCoclosedMonoidalLeftCoevaluationMorphismWithGivenSource[102X( [3Xa[103X, [3Xb[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, b )[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,b[123X   and   an   object   [23Xs   =
  \mathrm{\underline{coHom}}(b  \otimes a, a)[123X. The output is the coclosed left
  coevaluation  morphism [23X\mathrm{coclcoev}_{a,b}: \mathrm{\underline{coHom}}(b
  \otimes a, a) \rightarrow b[123X, i.e., the unit of the cohom tensor adjunction.[133X
  
  [1X1.8-16 TensorProductToInternalCoHomLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalCoHomLeftAdjunctMorphism[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}}(a,c), b )[123X.[133X
  
  [33X[0;0YThe  arguments are two objects [23Xb,c[123X and a morphism [23Xg: a \rightarrow b \otimes
  c[123X. The output is a morphism [23Xf: \mathrm{\underline{coHom}}(a,c) \rightarrow b[123X
  corresponding to [23Xg[123X under the cohom tensor adjunction.[133X
  
  [1X1.8-17 TensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XTensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom[102X( [3Xb[103X, [3Xc[103X, [3Xg[103X, [3Xi[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( i, b )[123X.[133X
  
  [33X[0;0YThe  arguments  are two objects [23Xb,c[123X, a morphism [23Xg: a \rightarrow b \otimes c[123X
  and  an object [23Xi = \mathrm{\underline{coHom}}(a,c)[123X. The output is a morphism
  [23Xf:  \mathrm{\underline{coHom}}(a,c)  \rightarrow  b[123X corresponding to [23Xg[123X under
  the cohom tensor adjunction.[133X
  
  [1X1.8-18 InternalCoHomToTensorProductLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XInternalCoHomToTensorProductLeftAdjunctMorphism[102X( [3Xa[103X, [3Xc[103X, [3Xf[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, b \otimes c)[123X.[133X
  
  [33X[0;0YThe    arguments    are    two    objects    [23Xa,c[123X    and    a   morphism   [23Xf:
  \mathrm{\underline{coHom}}(a,c) \rightarrow b[123X. The output is a morphism [23Xg: a
  \rightarrow   b  \otimes  c[123X  corresponding  to  [23Xf[123X  under  the  cohom  tensor
  adjunction.[133X
  
  [1X1.8-19 InternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XInternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[102X( [3Xa[103X, [3Xc[103X, [3Xf[103X, [3Xt[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( a, t )[123X.[133X
  
  [33X[0;0YThe     arguments     are     two     objects    [23Xa,c[123X,    a    morphism    [23Xf:
  \mathrm{\underline{coHom}}(a,c) \rightarrow b[123X and an object [23Xt = b \otimes c[123X.
  The  output  is  a  morphism [23Xg: a \rightarrow t[123X corresponding to [23Xf[123X under the
  cohom tensor adjunction.[133X
  
  [1X1.8-20 MonoidalPreCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XMonoidalPreCoComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,c),
            \mathrm{\underline{coHom}}(b,c)                            \otimes
            \mathrm{\underline{coHom}}(a,b) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  three objects [23Xa,b,c[123X. The output is the precocomposition
  morphism                      [23X\mathrm{MonoidalPreCoComposeMorphism}_{a,b,c}:
  \mathrm{\underline{coHom}}(a,c)  \rightarrow \mathrm{\underline{coHom}}(b,c)
  \otimes \mathrm{\underline{coHom}}(a,b)[123X.[133X
  
  [1X1.8-21 MonoidalPreCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMonoidalPreCoComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  = \mathrm{\underline{coHom}}(a,c)[123X, three
  objects  [23Xa,b,c[123X,  and  an  object [23Xr = \mathrm{\underline{coHom}}(a,b) \otimes
  \mathrm{\underline{coHom}}(b,c)[123X. The output is the precocomposition morphism
  [23X\mathrm{MonoidalPreCoComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{coHom}}(a,c)  \rightarrow \mathrm{\underline{coHom}}(b,c)
  \otimes \mathrm{\underline{coHom}}(a,b)[123X.[133X
  
  [1X1.8-22 MonoidalPostCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XMonoidalPostCoComposeMorphism[102X( [3Xa[103X, [3Xb[103X, [3Xc[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,c),
            \mathrm{\underline{coHom}}(a,b)                            \otimes
            \mathrm{\underline{coHom}}(b,c) )[123X.[133X
  
  [33X[0;0YThe  arguments  are three objects [23Xa,b,c[123X. The output is the postcocomposition
  morphism                     [23X\mathrm{MonoidalPostCoComposeMorphism}_{a,b,c}:
  \mathrm{\underline{coHom}}(a,c)  \rightarrow \mathrm{\underline{coHom}}(a,b)
  \otimes \mathrm{\underline{coHom}}(b,c)[123X.[133X
  
  [1X1.8-23 MonoidalPostCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMonoidalPostCoComposeMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xc[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs  = \mathrm{\underline{coHom}}(a,c)[123X, three
  objects  [23Xa,b,c[123X,  and  an  object [23Xr = \mathrm{\underline{coHom}}(b,c) \otimes
  \mathrm{\underline{coHom}}(a,b)[123X.   The   output   is  the  postcocomposition
  morphism     [23X\mathrm{MonoidalPostCoComposeMorphismWithGivenObjects}_{a,b,c}:
  \mathrm{\underline{coHom}}(a,c)  \rightarrow \mathrm{\underline{coHom}}(a,b)
  \otimes \mathrm{\underline{coHom}}(b,c)[123X.[133X
  
  [1X1.8-24 CoDualOnObjects[101X
  
  [33X[1;0Y[29X[2XCoDualOnObjects[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Yan object[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X. The output is its codual object [23Xa_{\vee}[123X.[133X
  
  [1X1.8-25 CoDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XCoDualOnMorphisms[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( b_{\vee}, a_{\vee} )[123X.[133X
  
  [33X[0;0YThe argument is a morphism [23X\alpha: a \rightarrow b[123X. The output is its codual
  morphism [23X\alpha_{\vee}: b_{\vee} \rightarrow a_{\vee}[123X.[133X
  
  [1X1.8-26 CoDualOnMorphismsWithGivenCoDuals[101X
  
  [33X[1;0Y[29X[2XCoDualOnMorphismsWithGivenCoDuals[102X( [3Xs[103X, [3Xalpha[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xs = b_{\vee}[123X, a morphism [23X\alpha: a \rightarrow b[123X,
  and  an  object [23Xr = a_{\vee}[123X. The output is the dual morphism [23X\alpha_{\vee}:
  b^{\vee} \rightarrow a^{\vee}[123X.[133X
  
  [1X1.8-27 CoclosedEvaluationForCoDual[101X
  
  [33X[1;0Y[29X[2XCoclosedEvaluationForCoDual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( 1, a_{\vee} \otimes a )[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xa[123X. The output is the coclosed evaluation morphism
  [23X\mathrm{coclev}_{a}: 1 \rightarrow a_{\vee} \otimes a[123X.[133X
  
  [1X1.8-28 CoclosedEvaluationForCoDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XCoclosedEvaluationForCoDualWithGivenTensorProduct[102X( [3Xs[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = 1[123X, an object [23Xa[123X, and an object [23Xr = a_{\vee}
  \otimes    a[123X.    The    output   is   the   coclosed   evaluation   morphism
  [23X\mathrm{coclev}_{a}: 1 \rightarrow a_{\vee} \otimes a[123X.[133X
  
  [1X1.8-29 MorphismFromCoBidual[101X
  
  [33X[1;0Y[29X[2XMorphismFromCoBidual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}((a_{\vee})_{\vee}, a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an object [23Xa[123X. The output is the morphism from the cobidual
  [23X(a_{\vee})_{\vee} \rightarrow a[123X.[133X
  
  [1X1.8-30 MorphismFromCoBidualWithGivenCoBidual[101X
  
  [33X[1;0Y[29X[2XMorphismFromCoBidualWithGivenCoBidual[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s, a)[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xa[123X, and an object [23Xs = (a_{\vee})_{\vee}[123X. The
  output is the morphism from the cobidual [23X(a_{\vee})_{\vee} \rightarrow a[123X.[133X
  
  [1X1.8-31 InternalCoHomTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XInternalCoHomTensorProductCompatibilityMorphism[102X( [3Xlist[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in [23X\mathrm{Hom}( \mathrm{\underline{coHom}}(a \otimes
            a',   b   \otimes   b'),  \mathrm{\underline{coHom}}(a,b)  \otimes
            \mathrm{\underline{coHom}}(a',b'))[123X.[133X
  
  [33X[0;0YThe  argument  is a list of four objects [23X[ a, a', b, b' ][123X. The output is the
  natural                                                             morphism
  [23X\mathrm{InternalCoHomTensorProductCompatibilityMorphism}_{a,a',b,b'}:
  \mathrm{\underline{coHom}}(a   \otimes   a',   b   \otimes  b')  \rightarrow
  \mathrm{\underline{coHom}}(a,b) \otimes \mathrm{\underline{coHom}}(a',b')[123X.[133X
  
  [1X1.8-32 InternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xlist[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe arguments are a list of four objects [23X[ a, a', b, b' ][123X, and two objects [23Xs
  =   \mathrm{\underline{coHom}}(a   \otimes   a',  b  \otimes  b')[123X  and  [23Xr  =
  \mathrm{\underline{coHom}}(a,b)  \otimes  \mathrm{\underline{coHom}}(a',b')[123X.
  The          output          is         the         natural         morphism
  [23X\mathrm{InternalCoHomTensorProductCompatibilityMorphismWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{coHom}}(a   \otimes   a',   b   \otimes  b')  \rightarrow
  \mathrm{\underline{coHom}}(a,b) \otimes \mathrm{\underline{coHom}}(a',b')[123X.[133X
  
  [1X1.8-33 CoDualityTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XCoDualityTensorProductCompatibilityMorphism[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( (a \otimes b)_{\vee}, a_{\vee} \otimes
            b_{\vee} )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{CoDualityTensorProductCompatibilityMorphism}:  (a  \otimes b)_{\vee}
  \rightarrow a_{\vee} \otimes b_{\vee}[123X.[133X
  
  [1X1.8-34 CoDualityTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XCoDualityTensorProductCompatibilityMorphismWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = (a \otimes b)_{\vee}[123X, two objects [23Xa,b[123X, and
  an  object [23Xr = a_{\vee} \otimes b_{\vee}[123X. The output is the natural morphism
  [23X\mathrm{CoDualityTensorProductCompatibilityMorphismWithGivenObjects}_{a,b}:
  (a \otimes b)_{\vee} \rightarrow a_{\vee} \otimes b_{\vee}[123X.[133X
  
  [1X1.8-35 MorphismFromInternalCoHomToTensorProduct[101X
  
  [33X[1;0Y[29X[2XMorphismFromInternalCoHomToTensorProduct[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,b),
            b_{\vee} \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{MorphismFromInternalCoHomToTensorProduct}_{a,b}:
  \mathrm{\underline{coHom}}(a,b) \rightarrow b_{\vee} \otimes a[123X.[133X
  
  [1X1.8-36 MorphismFromInternalCoHomToTensorProductWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMorphismFromInternalCoHomToTensorProductWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( s, r )[123X.[133X
  
  [33X[0;0YThe arguments are an object [23Xs = \mathrm{\underline{coHom}}(a,b)[123X, two objects
  [23Xa,b[123X,  and  an  object  [23Xr  =  b_{\vee}  \otimes  a[123X. The output is the natural
  morphism
  [23X\mathrm{MorphismFromInternalCoHomToTensorProductWithGivenObjects}_{a,b}:
  \mathrm{\underline{coHom}}(a,b) \rightarrow a \otimes b_{\vee}[123X.[133X
  
  [1X1.8-37 IsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya           morphism           in           [23X\mathrm{Hom}(a_{\vee},
            \mathrm{\underline{coHom}}(1,a))[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit}_{a}:
  a_{\vee} \rightarrow \mathrm{\underline{coHom}}(1,a)[123X.[133X
  
  [1X1.8-38 IsomorphismFromInternalCoHomFromTensorUnitToCoDualObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalCoHomFromTensorUnitToCoDualObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya    morphism   in   [23X\mathrm{Hom}(\mathrm{\underline{coHom}}(1,a),
            a_{\vee})[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.   The   output   is  the  isomorphism
  [23X\mathrm{IsomorphismFromInternalCoHomFromTensorUnitToCoDualObject}_{a}:
  \mathrm{\underline{coHom}}(1,a) \rightarrow a_{\vee}[123X.[133X
  
  [1X1.8-39 UniversalPropertyOfCoDual[101X
  
  [33X[1;0Y[29X[2XUniversalPropertyOfCoDual[102X( [3Xt[103X, [3Xa[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a_{\vee}, t)[123X.[133X
  
  [33X[0;0YThe  arguments  are  two objects [23Xt,a[123X, and a morphism [23X\alpha: 1 \rightarrow t
  \otimes  a[123X.  The  output is the morphism [23Xa_{\vee} \rightarrow t[123X given by the
  universal property of [23Xa_{\vee}[123X.[133X
  
  [1X1.8-40 CoLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XCoLambdaIntroduction[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}( \mathrm{\underline{coHom}}(a,b), 1 )[123X.[133X
  
  [33X[0;0YThe  argument  is  a  morphism  [23X\alpha:  a  \rightarrow b[123X. The output is the
  corresponding  morphism [23X \mathrm{\underline{coHom}}(a,b) \rightarrow 1[123X under
  the cohom tensor adjunction.[133X
  
  [1X1.8-41 CoLambdaElimination[101X
  
  [33X[1;0Y[29X[2XCoLambdaElimination[102X( [3Xa[103X, [3Xb[103X, [3Xalpha[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a,b)[123X.[133X
  
  [33X[0;0YThe    arguments   are   two   objects   [23Xa,b[123X,   and   a   morphism   [23X\alpha:
  \mathrm{\underline{coHom}}(a,b)  \rightarrow  1[123X.  The output is a morphism [23Xa
  \rightarrow b[123X corresponding to [23X\alpha[123X under the cohom tensor adjunction.[133X
  
  [1X1.8-42 IsomorphismFromObjectToInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToInternalCoHom[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, \mathrm{\underline{coHom}}(a,1))[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is the natural isomorphism [23Xa
  \rightarrow \mathrm{\underline{coHom}}(a,1)[123X.[133X
  
  [1X1.8-43 IsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, r)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xr    =
  \mathrm{\underline{coHom}}(a,1)[123X.  The  output  is  the natural isomorphism [23Xa
  \rightarrow \mathrm{\underline{coHom}}(a,1)[123X.[133X
  
  [1X1.8-44 IsomorphismFromInternalCoHomToObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalCoHomToObject[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(\mathrm{\underline{coHom}}(a,1), a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is  the  natural isomorphism
  [23X\mathrm{\underline{coHom}}(a,1) \rightarrow a[123X.[133X
  
  [1X1.8-45 IsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(s, a)[123X.[133X
  
  [33X[0;0YThe    argument    is    an    object    [23Xa[123X,    and    an    object    [23Xs    =
  \mathrm{\underline{coHom}}(a,1)[123X.  The  output  is  the  natural  isomorphism
  [23X\mathrm{\underline{coHom}}(a,1) \rightarrow a[123X.[133X
  
  
  [1X1.9 [33X[0;0YSymmetric Closed Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal  category  [23X\mathbf{C}[123X  which is symmetric and closed is called a
  [13Xsymmetric closed monoidal category[113X.[133X
  
  [33X[0;0YThe       corresponding       GAP       property       is      given      by
  [10XIsSymmetricClosedMonoidalCategory[110X.[133X
  
  
  [1X1.10 [33X[0;0YSymmetric Coclosed Monoidal Categories[133X[101X
  
  [33X[0;0YA  monoidal  category [23X\mathbf{C}[123X which is symmetric and coclosed is called a
  [13Xsymmetric coclosed monoidal category[113X.[133X
  
  [33X[0;0YThe       corresponding       GAP       property       is      given      by
  [10XIsSymmetricCoclosedMonoidalCategory[110X.[133X
  
  
  [1X1.11 [33X[0;0YRigid Symmetric Closed Monoidal Categories[133X[101X
  
  [33X[0;0YA symmetric closed monoidal category [23X\mathbf{C}[123X satisfying[133X
  
  [30X    [33X[0;6Ythe natural morphism[133X
  
  [33X[0;0Y[23X\mathrm{\underline{Hom}_\ell}(a,                 a')                 \otimes
  \mathrm{\underline{Hom}_\ell}(b,               b')               \rightarrow
  \mathrm{\underline{Hom}_\ell}(a \otimes b, a' \otimes b')[123X is an isomorphism,[133X
  
  [30X    [33X[0;6Ythe natural morphism[133X
  
  [33X[0;0Y[23Xa \rightarrow \mathrm{\underline{Hom}_\ell}(\mathrm{\underline{Hom}_\ell}(a,
  1),  1)[123X  is  an  isomorphism  is  called  a  [13Xrigid symmetric closed monoidal
  category[113X.[133X
  
  [33X[0;0YIf  no operations involving the closed structure are installed manually, the
  internal  hom  objects will be derived as [23X\mathrm{\underline{Hom}_\ell}(a,b)
  \coloneqq      a^\vee      \otimes      b[123X      and,      in      particular,
  [23X\mathrm{\underline{Hom}_\ell}(a,1) \coloneqq a^\vee \otimes 1[123X.[133X
  
  [33X[0;0YThe       corresponding       GAP       property       is      given      by
  [10XIsRigidSymmetricClosedMonoidalCategory[110X.[133X
  
  [1X1.11-1 IsomorphismFromTensorProductWithDualObjectToInternalHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromTensorProductWithDualObjectToInternalHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya     morphism    in    [23X\mathrm{Hom}(    a^{\vee}    \otimes    b,
            \mathrm{\underline{Hom}}(a,b) )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{IsomorphismFromTensorProductWithDualObjectToInternalHom}_{a,b}:
  a^{\vee} \otimes b \rightarrow \mathrm{\underline{Hom}}(a,b)[123X.[133X
  
  [1X1.11-2 IsomorphismFromInternalHomToTensorProductWithDualObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalHomToTensorProductWithDualObject[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(   \mathrm{\underline{Hom}}(a,b),
            a^{\vee} \otimes b )[123X.[133X
  
  [33X[0;0YThe   arguments   are  two  objects  [23Xa,b[123X.  The  output  is  the  inverse  of
  [23X\mathrm{IsomorphismFromTensorProductWithDualObjectToInternalHom}[123X,     namely
  [23X\mathrm{IsomorphismFromInternalHomToTensorProductWithDualObject}_{a,b}:
  \mathrm{\underline{Hom}}(a,b) \rightarrow a^{\vee} \otimes b[123X.[133X
  
  [1X1.11-3 MorphismFromInternalHomToTensorProduct[101X
  
  [33X[1;0Y[29X[2XMorphismFromInternalHomToTensorProduct[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(   \mathrm{\underline{Hom}}(a,b),
            a^{\vee} \otimes b )[123X.[133X
  
  [33X[0;0YThe   arguments   are  two  objects  [23Xa,b[123X.  The  output  is  the  inverse  of
  [23X\mathrm{MorphismFromTensorProductToInternalHomWithGivenObjects}[123X,      namely
  [23X\mathrm{MorphismFromInternalHomToTensorProductWithGivenObjects}_{a,b}:
  \mathrm{\underline{Hom}}(a,b) \rightarrow a^{\vee} \otimes b[123X.[133X
  
  [1X1.11-4 MorphismFromInternalHomToTensorProductWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMorphismFromInternalHomToTensorProductWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(   \mathrm{\underline{Hom}}(a,b),
            a^{\vee} \otimes b )[123X.[133X
  
  [33X[0;0YThe  arguments  are an object [23Xs = \mathrm{\underline{Hom}}(a,b)[123X, two objects
  [23Xa,b[123X,  and  an  object  [23Xr  = a^{\vee} \otimes b[123X. The output is the inverse of
  [23X\mathrm{MorphismFromTensorProductToInternalHomWithGivenObjects}[123X,      namely
  [23X\mathrm{MorphismFromInternalHomToTensorProductWithGivenObjects}_{a,b}:
  \mathrm{\underline{Hom}}(a,b) \rightarrow a^{\vee} \otimes b[123X.[133X
  
  [1X1.11-5 TensorProductInternalHomCompatibilityMorphismInverse[101X
  
  [33X[1;0Y[29X[2XTensorProductInternalHomCompatibilityMorphismInverse[102X( [3Xlist[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{Hom}}(a \otimes
            b,a'    \otimes    b'),   \mathrm{\underline{Hom}}(a,a')   \otimes
            \mathrm{\underline{Hom}}(b,b') )[123X.[133X
  
  [33X[0;0YThe  argument  is a list of four objects [23X[ a, a', b, b' ][123X. The output is the
  natural                                                             morphism
  [23X\mathrm{TensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{Hom}}(a    \otimes    b,a'    \otimes   b')   \rightarrow
  \mathrm{\underline{Hom}}(a,a') \otimes \mathrm{\underline{Hom}}(b,b')[123X.[133X
  
  [1X1.11-6 TensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XTensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects[102X( [3Xs[103X, [3Xlist[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya  morphism  in  [23X\mathrm{Hom}(  \mathrm{\underline{Hom}}(a \otimes
            b,a'    \otimes    b'),   \mathrm{\underline{Hom}}(a,a')   \otimes
            \mathrm{\underline{Hom}}(b,b') )[123X.[133X
  
  [33X[0;0YThe arguments are a list of four objects [23X[ a, a', b, b' ][123X, and two objects [23Xs
  =   \mathrm{\underline{Hom}}(a   \otimes   b,a'   \otimes   b')[123X   and   [23Xr  =
  \mathrm{\underline{Hom}}(a,a')  \otimes  \mathrm{\underline{Hom}}(b,b')[123X. The
  output             is             the            natural            morphism
  [23X\mathrm{TensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{Hom}}(a    \otimes    b,a'    \otimes   b')   \rightarrow
  \mathrm{\underline{Hom}}(a,a') \otimes \mathrm{\underline{Hom}}(b,b')[123X.[133X
  
  [1X1.11-7 CoevaluationForDual[101X
  
  [33X[1;0Y[29X[2XCoevaluationForDual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1,a \otimes a^{\vee})[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is the coevaluation morphism
  [23X\mathrm{coev}_{a}:1 \rightarrow a \otimes a^{\vee}[123X.[133X
  
  [1X1.11-8 CoevaluationForDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XCoevaluationForDualWithGivenTensorProduct[102X( [3Xs[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1,a \otimes a^{\vee})[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs = 1[123X, an object [23Xa[123X, and an object [23Xr = a \otimes
  a^{\vee}[123X.  The  output  is  the  coevaluation  morphism  [23X\mathrm{coev}_{a}:1
  \rightarrow a \otimes a^{\vee}[123X.[133X
  
  [1X1.11-9 TraceMap[101X
  
  [33X[1;0Y[29X[2XTraceMap[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1,1)[123X.[133X
  
  [33X[0;0YThe  argument  is an endomorphism [23X\alpha: a \rightarrow a[123X. The output is the
  trace morphism [23X\mathrm{trace}_{\alpha}: 1 \rightarrow 1[123X.[133X
  
  [1X1.11-10 RankMorphism[101X
  
  [33X[1;0Y[29X[2XRankMorphism[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1,1)[123X.[133X
  
  [33X[0;0YThe   argument   is   an   object   [23Xa[123X.  The  output  is  the  rank  morphism
  [23X\mathrm{rank}_a: 1 \rightarrow 1[123X.[133X
  
  [1X1.11-11 MorphismFromBidual[101X
  
  [33X[1;0Y[29X[2XMorphismFromBidual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}((a^{\vee})^{\vee},a)[123X.[133X
  
  [33X[0;0YThe  argument  is  an object [23Xa[123X. The output is the inverse of the morphism to
  the bidual [23X(a^{\vee})^{\vee} \rightarrow a[123X.[133X
  
  [1X1.11-12 MorphismFromBidualWithGivenBidual[101X
  
  [33X[1;0Y[29X[2XMorphismFromBidualWithGivenBidual[102X( [3Xa[103X, [3Xs[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}((a^{\vee})^{\vee},a)[123X.[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X, and an object [23Xs = (a^{\vee})^{\vee}[123X. The output
  is  the  inverse of the morphism to the bidual [23X(a^{\vee})^{\vee} \rightarrow
  a[123X.[133X
  
  
  [1X1.12 [33X[0;0YRigid Symmetric Coclosed Monoidal Categories[133X[101X
  
  [33X[0;0YA symmetric coclosed monoidal category [23X\mathbf{C}[123X satisfying[133X
  
  [30X    [33X[0;6Ythe natural morphism[133X
  
  [33X[0;0Y[23X\mathrm{\underline{coHom}}(a   \otimes   a',   b   \otimes  b')  \rightarrow
  \mathrm{\underline{coHom}}(a,  b) \otimes \mathrm{\underline{coHom}}(a', b')[123X
  is an isomorphism,[133X
  
  [30X    [33X[0;6Ythe natural morphism[133X
  
  [33X[0;0Y[23X\mathrm{\underline{coHom}}(1,  \mathrm{\underline{coHom}}(1, a)) \rightarrow
  a[123X is an isomorphism is called a [13Xrigid symmetric coclosed monoidal category[113X.[133X
  
  [33X[0;0YIf  no  operations  involving the coclosed structure are installed manually,
  the      internal      cohom      objects     will     be     derived     as
  [23X\mathrm{\underline{coHom}}(a,b)   \coloneqq   a   \otimes   b_\vee[123X  and,  in
  particular, [23X\mathrm{\underline{coHom}}(1,a) \coloneqq 1 \otimes a_\vee[123X.[133X
  
  [33X[0;0YThe       corresponding       GAP       property       is      given      by
  [10XIsRigidSymmetricCoclosedMonoidalCategory[110X.[133X
  
  [1X1.12-1 IsomorphismFromInternalCoHomToTensorProductWithCoDualObject[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromInternalCoHomToTensorProductWithCoDualObject[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in  [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,b),
            b_{\vee} \otimes a )[123X.[133X
  
  [33X[0;0YThe  arguments  are  two  objects  [23Xa,b[123X.  The  output is the natural morphism
  [23X\mathrm{IsomorphismFromInternalCoHomToTensorProductWithCoDualObjectWithGivenObjects}_{a,b}:
  \mathrm{\underline{coHom}}(a,b) \rightarrow b_{\vee} \otimes a[123X.[133X
  
  [1X1.12-2 IsomorphismFromTensorProductWithCoDualObjectToInternalCoHom[101X
  
  [33X[1;0Y[29X[2XIsomorphismFromTensorProductWithCoDualObjectToInternalCoHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya     morphism    in    [23X\mathrm{Hom}(    a_{\vee}    \otimes    b,
            \mathrm{\underline{coHom}}(b,a)[123X.[133X
  
  [33X[0;0YThe   arguments   are  two  objects  [23Xa,b[123X.  The  output  is  the  inverse  of
  [23X\mathrm{IsomorphismFromInternalCoHomToTensorProductWithCoDualObject}[123X, namely
  [23X\mathrm{IsomorphismFromTensorProductWithCoDualObjectToInternalCoHom}_{a,b}:
  a_{\vee} \otimes b \rightarrow \mathrm{\underline{coHom}}(b,a)[123X.[133X
  
  [1X1.12-3 MorphismFromTensorProductToInternalCoHom[101X
  
  [33X[1;0Y[29X[2XMorphismFromTensorProductToInternalCoHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya     morphism    in    [23X\mathrm{Hom}(    a_{\vee}    \otimes    b,
            \mathrm{\underline{coHom}}(b,a) )[123X.[133X
  
  [33X[0;0YThe   arguments   are  two  objects  [23Xa,b[123X.  The  output  is  the  inverse  of
  [23X\mathrm{MorphismFromInternalCoHomToTensorProductWithGivenObjects}[123X,    namely
  [23X\mathrm{MorphismFromTensorProductToInternalCoHomWithGivenObjects}_{a,b}:
  a_{\vee} \otimes b \rightarrow \mathrm{\underline{coHom}}(b,a)[123X.[133X
  
  [1X1.12-4 MorphismFromTensorProductToInternalCoHomWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XMorphismFromTensorProductToInternalCoHomWithGivenObjects[102X( [3Xs[103X, [3Xa[103X, [3Xb[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya     morphism    in    [23X\mathrm{Hom}(    a_{\vee}    \otimes    b,
            \mathrm{\underline{coHom}}(b,a)[123X.[133X
  
  [33X[0;0YThe  arguments are an object [23Xs_{\vee} = a \otimes b[123X, two objects [23Xa,b[123X, and an
  object  [23Xr  =  \mathrm{\underline{coHom}}(b,a)[123X.  The output is the inverse of
  [23X\mathrm{MorphismFromInternalCoHomToTensorProductWithGivenObjects}[123X,    namely
  [23X\mathrm{MorphismFromTensorProductToInternalCoHomWithGivenObjects}_{a,b}:
  a_{\vee} \otimes b \rightarrow \mathrm{\underline{coHom}}(b,a)[123X.[133X
  
  [1X1.12-5 InternalCoHomTensorProductCompatibilityMorphismInverse[101X
  
  [33X[1;0Y[29X[2XInternalCoHomTensorProductCompatibilityMorphismInverse[102X( [3Xlist[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,b)
            \otimes                         \mathrm{\underline{coHom}}(a',b'),
            \mathrm{\underline{coHom}}(a \otimes a', b \otimes b' )[123X.[133X
  
  [33X[0;0YThe  argument  is a list of four objects [23X[ a, a', b, b' ][123X. The output is the
  natural                                                             morphism
  [23X\mathrm{InternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{coHom}}(a,b)   \otimes  \mathrm{\underline{coHom}}(a',b')
  \rightarrow \mathrm{\underline{coHom}}(a \otimes a', b \otimes b')[123X.[133X
  
  [1X1.12-6 InternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XInternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects[102X( [3Xs[103X, [3Xlist[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya   morphism   in   [23X\mathrm{Hom}(  \mathrm{\underline{coHom}}(a,b)
            \otimes                         \mathrm{\underline{coHom}}(a',b'),
            \mathrm{\underline{coHom}}(a \otimes a', b \otimes b' )[123X.[133X
  
  [33X[0;0YThe arguments are a list of four objects [23X[ a, a', b, b' ][123X, and two objects [23Xs
  =  \mathrm{\underline{coHom}}(a,b) \otimes \mathrm{\underline{coHom}}(a',b')[123X
  and  [23Xr  = \mathrm{\underline{coHom}}(a \otimes a', b \otimes b')[123X. The output
  is                   the                   natural                  morphism
  [23X\mathrm{InternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects}_{a,a',b,b'}:
  \mathrm{\underline{coHom}}(a,b)   \otimes  \mathrm{\underline{coHom}}(a',b')
  \rightarrow \mathrm{\underline{coHom}}(a \otimes a', b \otimes b')[123X.[133X
  
  [1X1.12-7 CoclosedCoevaluationForCoDual[101X
  
  [33X[1;0Y[29X[2XCoclosedCoevaluationForCoDual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes a_{\vee}, 1)[123X.[133X
  
  [33X[0;0YThe  argument  is  an  object  [23Xa[123X.  The  output  is the coclosed coevaluation
  morphism [23X\mathrm{coclcoev}_{a}: a \otimes a_{\vee} \rightarrow 1[123X.[133X
  
  [1X1.12-8 CoclosedCoevaluationForCoDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XCoclosedCoevaluationForCoDualWithGivenTensorProduct[102X( [3Xs[103X, [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a \otimes a_{\vee}, 1)[123X.[133X
  
  [33X[0;0YThe  arguments  are  an  object  [23Xs = a \otimes a_{\vee}[123X, an object [23Xa[123X, and an
  object   [23Xr   =   1[123X.   The  output  is  the  coclosed  coevaluation  morphism
  [23X\mathrm{coclcoev}_{a}: a \otimes a_{\vee} \rightarrow 1[123X.[133X
  
  [1X1.12-9 CoTraceMap[101X
  
  [33X[1;0Y[29X[2XCoTraceMap[102X( [3Xalpha[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1,1)[123X.[133X
  
  [33X[0;0YThe  argument  is an endomorphism [23X\alpha: a \rightarrow a[123X. The output is the
  cotrace morphism [23X\mathrm{cotrace}_{\alpha}: 1 \rightarrow 1[123X.[133X
  
  [1X1.12-10 CoRankMorphism[101X
  
  [33X[1;0Y[29X[2XCoRankMorphism[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(1,1)[123X.[133X
  
  [33X[0;0YThe   argument   is   an  object  [23Xa[123X.  The  output  is  the  corank  morphism
  [23X\mathrm{corank}_a: 1 \rightarrow 1[123X.[133X
  
  [1X1.12-11 MorphismToCoBidual[101X
  
  [33X[1;0Y[29X[2XMorphismToCoBidual[102X( [3Xa[103X ) [32X attribute[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a, (a_{\vee})_{\vee})[123X.[133X
  
  [33X[0;0YThe  argument is an object [23Xa[123X. The output is the inverse of the morphism from
  the cobidual [23Xa \rightarrow (a_{\vee})_{\vee}[123X.[133X
  
  [1X1.12-12 MorphismToCoBidualWithGivenCoBidual[101X
  
  [33X[1;0Y[29X[2XMorphismToCoBidualWithGivenCoBidual[102X( [3Xa[103X, [3Xr[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya morphism in [23X\mathrm{Hom}(a,(a_{\vee})_{\vee})[123X.[133X
  
  [33X[0;0YThe argument is an object [23Xa[123X, and an object [23Xr = (a_{\vee})_{\vee}[123X. The output
  is   the   inverse   of   the  morphism  from  the  cobidual  [23Xa  \rightarrow
  (a_{\vee})_{\vee}[123X.[133X
  
  
  [1X1.13 [33X[0;0YConvenience Methods[133X[101X
  
  [1X1.13-1 InternalHom[101X
  
  [33X[1;0Y[29X[2XInternalHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya cell[133X
  
  [33X[0;0YThis is a convenience method. The arguments are two cells [23Xa,b[123X. The output is
  the internal hom cell. If [23Xa,b[123X are two CAP objects the output is the internal
  Hom  object  [23X\mathrm{\underline{Hom}}(a,b)[123X. If at least one of the arguments
  is  a  CAP morphism the output is a CAP morphism, namely the internal hom on
  morphisms, where any object is replaced by its identity morphism.[133X
  
  [1X1.13-2 InternalCoHom[101X
  
  [33X[1;0Y[29X[2XInternalCoHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya cell[133X
  
  [33X[0;0YThis is a convenience method. The arguments are two cells [23Xa,b[123X. The output is
  the  internal  cohom  cell.  If  [23Xa,b[123X  are  two CAP objects the output is the
  internal  cohom  object  [23X\mathrm{\underline{coHom}}(a,b)[123X. If at least one of
  the  arguments  is  a  CAP morphism the output is a CAP morphism, namely the
  internal  cohom  on  morphisms, where any object is replaced by its identity
  morphism.[133X
  
  [1X1.13-3 LeftInternalHom[101X
  
  [33X[1;0Y[29X[2XLeftInternalHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya cell[133X
  
  [33X[0;0YThis is a convenience method. The arguments are two cells [23Xa,b[123X. The output is
  the internal hom cell. If [23Xa,b[123X are two CAP objects the output is the internal
  Hom  object  [23X\mathrm{\underline{Hom}_\ell}(a,b)[123X.  If  at  least  one  of the
  arguments  is  a  CAP  morphism  the  output  is  a CAP morphism, namely the
  internal  hom  on  morphisms,  where  any object is replaced by its identity
  morphism.[133X
  
  [1X1.13-4 LeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XLeftInternalCoHom[102X( [3Xa[103X, [3Xb[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ya cell[133X
  
  [33X[0;0YThis is a convenience method. The arguments are two cells [23Xa,b[123X. The output is
  the  internal  cohom  cell.  If  [23Xa,b[123X  are  two CAP objects the output is the
  internal  cohom object [23X\mathrm{\underline{coHom}_\ell}(a,b)[123X. If at least one
  of  the arguments is a CAP morphism the output is a CAP morphism, namely the
  internal  cohom  on  morphisms, where any object is replaced by its identity
  morphism.[133X
  
  
  [1X1.14 [33X[0;0YAdd-methods[133X[101X
  
  [1X1.14-1 AddLeftDistributivityExpanding[101X
  
  [33X[1;0Y[29X[2XAddLeftDistributivityExpanding[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDistributivityExpanding[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftDistributivityExpanding[110X.  Optionally,  a  weight  (default:  100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( a, L )
  \mapsto \mathtt{LeftDistributivityExpanding}(a, L)[123X.[133X
  
  [1X1.14-2 AddLeftDistributivityExpandingWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftDistributivityExpandingWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDistributivityExpandingWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftDistributivityExpandingWithGivenObjects[110X.  Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:         (         s,        a,        L,        r        )        \mapsto
  \mathtt{LeftDistributivityExpandingWithGivenObjects}(s, a, L, r)[123X.[133X
  
  [1X1.14-3 AddLeftDistributivityFactoring[101X
  
  [33X[1;0Y[29X[2XAddLeftDistributivityFactoring[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDistributivityFactoring[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftDistributivityFactoring[110X.  Optionally,  a  weight  (default:  100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( a, L )
  \mapsto \mathtt{LeftDistributivityFactoring}(a, L)[123X.[133X
  
  [1X1.14-4 AddLeftDistributivityFactoringWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftDistributivityFactoringWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDistributivityFactoringWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftDistributivityFactoringWithGivenObjects[110X.  Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:         (         s,        a,        L,        r        )        \mapsto
  \mathtt{LeftDistributivityFactoringWithGivenObjects}(s, a, L, r)[123X.[133X
  
  [1X1.14-5 AddRightDistributivityExpanding[101X
  
  [33X[1;0Y[29X[2XAddRightDistributivityExpanding[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightDistributivityExpanding[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XRightDistributivityExpanding[110X.  Optionally,  a  weight  (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( L, a )
  \mapsto \mathtt{RightDistributivityExpanding}(L, a)[123X.[133X
  
  [1X1.14-6 AddRightDistributivityExpandingWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddRightDistributivityExpandingWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightDistributivityExpandingWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XRightDistributivityExpandingWithGivenObjects[110X. Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:         (         s,        L,        a,        r        )        \mapsto
  \mathtt{RightDistributivityExpandingWithGivenObjects}(s, L, a, r)[123X.[133X
  
  [1X1.14-7 AddRightDistributivityFactoring[101X
  
  [33X[1;0Y[29X[2XAddRightDistributivityFactoring[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightDistributivityFactoring[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XRightDistributivityFactoring[110X.  Optionally,  a  weight  (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( L, a )
  \mapsto \mathtt{RightDistributivityFactoring}(L, a)[123X.[133X
  
  [1X1.14-8 AddRightDistributivityFactoringWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddRightDistributivityFactoringWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightDistributivityFactoringWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XRightDistributivityFactoringWithGivenObjects[110X. Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:         (         s,        L,        a,        r        )        \mapsto
  \mathtt{RightDistributivityFactoringWithGivenObjects}(s, L, a, r)[123X.[133X
  
  [1X1.14-9 AddBraiding[101X
  
  [33X[1;0Y[29X[2XAddBraiding[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddBraiding[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for  the  basic  operation  [10XBraiding[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less  complex  = faster execution). [23XF: ( a, b ) \mapsto \mathtt{Braiding}(a,
  b)[123X.[133X
  
  [1X1.14-10 AddBraidingInverse[101X
  
  [33X[1;0Y[29X[2XAddBraidingInverse[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddBraidingInverse[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to the category for the basic operation [10XBraidingInverse[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster   execution).   [23XF:   (   a,   b   )   \mapsto
  \mathtt{BraidingInverse}(a, b)[123X.[133X
  
  [1X1.14-11 AddBraidingInverseWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAddBraidingInverseWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddBraidingInverseWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XBraidingInverseWithGivenTensorProducts[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( s, a, b, r ) \mapsto \mathtt{BraidingInverseWithGivenTensorProducts}(s,
  a, b, r)[123X.[133X
  
  [1X1.14-12 AddBraidingWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAddBraidingWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddBraidingWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XBraidingWithGivenTensorProducts[110X.  Optionally, a weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the function (lower weight = less complex = faster execution). [23XF: ( s, a, b,
  r ) \mapsto \mathtt{BraidingWithGivenTensorProducts}(s, a, b, r)[123X.[133X
  
  [1X1.14-13 AddClosedMonoidalLeftCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftCoevaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftCoevaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalLeftCoevaluationMorphism[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{ClosedMonoidalLeftCoevaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-14 AddClosedMonoidalLeftCoevaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftCoevaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftCoevaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalLeftCoevaluationMorphismWithGivenRange[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     r     )     \mapsto
  \mathtt{ClosedMonoidalLeftCoevaluationMorphismWithGivenRange}(a, b, r)[123X.[133X
  
  [1X1.14-15 AddClosedMonoidalLeftEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftEvaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftEvaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalLeftEvaluationMorphism[110X.  Optionally,  a  weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{ClosedMonoidalLeftEvaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-16 AddClosedMonoidalLeftEvaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftEvaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalLeftEvaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalLeftEvaluationMorphismWithGivenSource[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     s     )     \mapsto
  \mathtt{ClosedMonoidalLeftEvaluationMorphismWithGivenSource}(a, b, s)[123X.[133X
  
  [1X1.14-17 AddClosedMonoidalRightCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalRightCoevaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalRightCoevaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalRightCoevaluationMorphism[110X. Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{ClosedMonoidalRightCoevaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-18 AddClosedMonoidalRightCoevaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalRightCoevaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalRightCoevaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalRightCoevaluationMorphismWithGivenRange[110X.  Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     r     )     \mapsto
  \mathtt{ClosedMonoidalRightCoevaluationMorphismWithGivenRange}(a, b, r)[123X.[133X
  
  [1X1.14-19 AddClosedMonoidalRightEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalRightEvaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalRightEvaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalRightEvaluationMorphism[110X.  Optionally,  a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{ClosedMonoidalRightEvaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-20 AddClosedMonoidalRightEvaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XAddClosedMonoidalRightEvaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddClosedMonoidalRightEvaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XClosedMonoidalRightEvaluationMorphismWithGivenSource[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     s     )     \mapsto
  \mathtt{ClosedMonoidalRightEvaluationMorphismWithGivenSource}(a, b, s)[123X.[133X
  
  [1X1.14-21 AddDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddDualOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddDualOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to the category for the basic operation [10XDualOnMorphisms[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).   [23XF:   (   alpha   )   \mapsto
  \mathtt{DualOnMorphisms}(alpha)[123X.[133X
  
  [1X1.14-22 AddDualOnMorphismsWithGivenDuals[101X
  
  [33X[1;0Y[29X[2XAddDualOnMorphismsWithGivenDuals[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddDualOnMorphismsWithGivenDuals[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XDualOnMorphismsWithGivenDuals[110X.  Optionally,  a  weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight  =  less  complex = faster execution). [23XF: ( s,
  alpha, r ) \mapsto \mathtt{DualOnMorphismsWithGivenDuals}(s, alpha, r)[123X.[133X
  
  [1X1.14-23 AddDualOnObjects[101X
  
  [33X[1;0Y[29X[2XAddDualOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddDualOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category for the basic operation [10XDualOnObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{DualOnObjects}(a)[123X.[133X
  
  [1X1.14-24 AddEvaluationForDual[101X
  
  [33X[1;0Y[29X[2XAddEvaluationForDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddEvaluationForDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function [23XF[123X to the category for the basic operation [10XEvaluationForDual[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{EvaluationForDual}(a)[123X.[133X
  
  [1X1.14-25 AddEvaluationForDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddEvaluationForDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddEvaluationForDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XEvaluationForDualWithGivenTensorProduct[110X. Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  (  s, a, r ) \mapsto \mathtt{EvaluationForDualWithGivenTensorProduct}(s,
  a, r)[123X.[133X
  
  [1X1.14-26 AddInternalHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddInternalHomOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomOnMorphisms[110X. Optionally, a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower weight = less complex = faster execution). [23XF: ( alpha, beta
  ) \mapsto \mathtt{InternalHomOnMorphisms}(alpha, beta)[123X.[133X
  
  [1X1.14-27 AddInternalHomOnMorphismsWithGivenInternalHoms[101X
  
  [33X[1;0Y[29X[2XAddInternalHomOnMorphismsWithGivenInternalHoms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomOnMorphismsWithGivenInternalHoms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomOnMorphismsWithGivenInternalHoms[110X.  Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:        (        s,       alpha,       beta,       r       )       \mapsto
  \mathtt{InternalHomOnMorphismsWithGivenInternalHoms}(s, alpha, beta, r)[123X.[133X
  
  [1X1.14-28 AddInternalHomOnObjects[101X
  
  [33X[1;0Y[29X[2XAddInternalHomOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomOnObjects[110X.  Optionally,  a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  =  less  complex  = faster execution). [23XF: ( a, b )
  \mapsto \mathtt{InternalHomOnObjects}(a, b)[123X.[133X
  
  [1X1.14-29 AddInternalHomToTensorProductLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductLeftAdjunctMorphism[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     b,     c,     g     )     \mapsto
  \mathtt{InternalHomToTensorProductLeftAdjunctMorphism}(b, c, g)[123X.[133X
  
  [1X1.14-30 AddInternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  b,  c,  g,  s  )  \mapsto
  \mathtt{InternalHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct}(b,
  c, g, s)[123X.[133X
  
  [1X1.14-31 AddInternalHomToTensorProductLeftAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductLeftAdjunctionIsomorphism[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     c     )     \mapsto
  \mathtt{InternalHomToTensorProductLeftAdjunctionIsomorphism}(a, b, c)[123X.[133X
  
  [1X1.14-32 AddInternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex  =  faster  execution).  [23XF:  (  s,  a,  b,  c,  r  )  \mapsto
  \mathtt{InternalHomToTensorProductLeftAdjunctionIsomorphismWithGivenObjects}(s,
  a, b, c, r)[123X.[133X
  
  [1X1.14-33 AddInternalHomToTensorProductRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductRightAdjunctMorphism[110X.    Optionally,    a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     c,     g     )     \mapsto
  \mathtt{InternalHomToTensorProductRightAdjunctMorphism}(a, c, g)[123X.[133X
  
  [1X1.14-34 AddInternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  c,  g,  s  )  \mapsto
  \mathtt{InternalHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct}(a,
  c, g, s)[123X.[133X
  
  [1X1.14-35 AddInternalHomToTensorProductRightAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductRightAdjunctionIsomorphism[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     c     )     \mapsto
  \mathtt{InternalHomToTensorProductRightAdjunctionIsomorphism}(a, b, c)[123X.[133X
  
  [1X1.14-36 AddInternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex  =  faster  execution).  [23XF:  (  s,  a,  b,  c,  r  )  \mapsto
  \mathtt{InternalHomToTensorProductRightAdjunctionIsomorphismWithGivenObjects}(s,
  a, b, c, r)[123X.[133X
  
  [1X1.14-37 AddIsomorphismFromDualObjectToInternalHomIntoTensorUnit[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromDualObjectToInternalHomIntoTensorUnit[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromDualObjectToInternalHomIntoTensorUnit[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromDualObjectToInternalHomIntoTensorUnit[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:        (        a        )       \mapsto
  \mathtt{IsomorphismFromDualObjectToInternalHomIntoTensorUnit}(a)[123X.[133X
  
  [1X1.14-38 AddIsomorphismFromInternalHomIntoTensorUnitToDualObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomIntoTensorUnitToDualObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomIntoTensorUnitToDualObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalHomIntoTensorUnitToDualObject[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:        (        a        )       \mapsto
  \mathtt{IsomorphismFromInternalHomIntoTensorUnitToDualObject}(a)[123X.[133X
  
  [1X1.14-39 AddIsomorphismFromInternalHomToObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomToObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomToObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalHomToObject[110X.  Optionally, a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of  the  function (lower weight = less complex = faster execution). [23XF: ( a )
  \mapsto \mathtt{IsomorphismFromInternalHomToObject}(a)[123X.[133X
  
  [1X1.14-40 AddIsomorphismFromInternalHomToObjectWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomToObjectWithGivenInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomToObjectWithGivenInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalHomToObjectWithGivenInternalHom[110X. Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      s      )      \mapsto
  \mathtt{IsomorphismFromInternalHomToObjectWithGivenInternalHom}(a, s)[123X.[133X
  
  [1X1.14-41 AddIsomorphismFromObjectToInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToInternalHom[110X.  Optionally, a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of  the  function (lower weight = less complex = faster execution). [23XF: ( a )
  \mapsto \mathtt{IsomorphismFromObjectToInternalHom}(a)[123X.[133X
  
  [1X1.14-42 AddIsomorphismFromObjectToInternalHomWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalHomWithGivenInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalHomWithGivenInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToInternalHomWithGivenInternalHom[110X. Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      r      )      \mapsto
  \mathtt{IsomorphismFromObjectToInternalHomWithGivenInternalHom}(a, r)[123X.[133X
  
  [1X1.14-43 AddLambdaElimination[101X
  
  [33X[1;0Y[29X[2XAddLambdaElimination[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLambdaElimination[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function [23XF[123X to the category for the basic operation [10XLambdaElimination[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  b,  alpha  )  \mapsto
  \mathtt{LambdaElimination}(a, b, alpha)[123X.[133X
  
  [1X1.14-44 AddLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XAddLambdaIntroduction[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLambdaIntroduction[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given function [23XF[123X to the category for the basic operation [10XLambdaIntroduction[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).   [23XF:   (   alpha   )   \mapsto
  \mathtt{LambdaIntroduction}(alpha)[123X.[133X
  
  [1X1.14-45 AddMonoidalPostComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPostComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPostComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPostComposeMorphism[110X.  Optionally,  a  weight  (default:  100) can be
  specified which should roughly correspond to the computational complexity of
  the  function (lower weight = less complex = faster execution). [23XF: ( a, b, c
  ) \mapsto \mathtt{MonoidalPostComposeMorphism}(a, b, c)[123X.[133X
  
  [1X1.14-46 AddMonoidalPostComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPostComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPostComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPostComposeMorphismWithGivenObjects[110X.  Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:       (       s,       a,       b,       c,       r       )       \mapsto
  \mathtt{MonoidalPostComposeMorphismWithGivenObjects}(s, a, b, c, r)[123X.[133X
  
  [1X1.14-47 AddMonoidalPreComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPreComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPreComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPreComposeMorphism[110X.  Optionally,  a  weight  (default:  100)  can be
  specified which should roughly correspond to the computational complexity of
  the  function (lower weight = less complex = faster execution). [23XF: ( a, b, c
  ) \mapsto \mathtt{MonoidalPreComposeMorphism}(a, b, c)[123X.[133X
  
  [1X1.14-48 AddMonoidalPreComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPreComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPreComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPreComposeMorphismWithGivenObjects[110X.  Optionally,  a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:       (       s,       a,       b,       c,       r       )       \mapsto
  \mathtt{MonoidalPreComposeMorphismWithGivenObjects}(s, a, b, c, r)[123X.[133X
  
  [1X1.14-49 AddMorphismFromTensorProductToInternalHom[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromTensorProductToInternalHom[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{MorphismFromTensorProductToInternalHom}(a, b)[123X.[133X
  
  [1X1.14-50 AddMorphismFromTensorProductToInternalHomWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalHomWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalHomWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromTensorProductToInternalHomWithGivenObjects[110X. Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{MorphismFromTensorProductToInternalHomWithGivenObjects}(s, a, b, r)[123X.[133X
  
  [1X1.14-51 AddMorphismToBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismToBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismToBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X to the category for the basic operation [10XMorphismToBidual[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{MorphismToBidual}(a)[123X.[133X
  
  [1X1.14-52 AddMorphismToBidualWithGivenBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismToBidualWithGivenBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismToBidualWithGivenBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismToBidualWithGivenBidual[110X.  Optionally, a weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( a, r )
  \mapsto \mathtt{MorphismToBidualWithGivenBidual}(a, r)[123X.[133X
  
  [1X1.14-53 AddTensorProductDualityCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductDualityCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductDualityCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductDualityCompatibilityMorphism[110X.  Optionally,  a  weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  (  a,  b ) \mapsto \mathtt{TensorProductDualityCompatibilityMorphism}(a,
  b)[123X.[133X
  
  [1X1.14-54 AddTensorProductDualityCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductDualityCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductDualityCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductDualityCompatibilityMorphismWithGivenObjects[110X.   Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{TensorProductDualityCompatibilityMorphismWithGivenObjects}(s,  a, b,
  r)[123X.[133X
  
  [1X1.14-55 AddTensorProductInternalHomCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductInternalHomCompatibilityMorphism[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:       (       list       )       \mapsto
  \mathtt{TensorProductInternalHomCompatibilityMorphism}(list)[123X.[133X
  
  [1X1.14-56 AddTensorProductInternalHomCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductInternalHomCompatibilityMorphismWithGivenObjects[110X. Optionally, a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster    execution).    [23XF:    (    source,    list,    range    )   \mapsto
  \mathtt{TensorProductInternalHomCompatibilityMorphismWithGivenObjects}(source,
  list, range)[123X.[133X
  
  [1X1.14-57 AddTensorProductToInternalHomLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomLeftAdjunctMorphism[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     f     )     \mapsto
  \mathtt{TensorProductToInternalHomLeftAdjunctMorphism}(a, b, f)[123X.[133X
  
  [1X1.14-58 AddTensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  b,  f,  i  )  \mapsto
  \mathtt{TensorProductToInternalHomLeftAdjunctMorphismWithGivenInternalHom}(a,
  b, f, i)[123X.[133X
  
  [1X1.14-59 AddTensorProductToInternalHomLeftAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomLeftAdjunctionIsomorphism[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     c     )     \mapsto
  \mathtt{TensorProductToInternalHomLeftAdjunctionIsomorphism}(a, b, c)[123X.[133X
  
  [1X1.14-60 AddTensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex  =  faster  execution).  [23XF:  (  s,  a,  b,  c,  r  )  \mapsto
  \mathtt{TensorProductToInternalHomLeftAdjunctionIsomorphismWithGivenObjects}(s,
  a, b, c, r)[123X.[133X
  
  [1X1.14-61 AddTensorProductToInternalHomRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomRightAdjunctMorphism[110X.    Optionally,    a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     f     )     \mapsto
  \mathtt{TensorProductToInternalHomRightAdjunctMorphism}(a, b, f)[123X.[133X
  
  [1X1.14-62 AddTensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  b,  f,  i  )  \mapsto
  \mathtt{TensorProductToInternalHomRightAdjunctMorphismWithGivenInternalHom}(a,
  b, f, i)[123X.[133X
  
  [1X1.14-63 AddTensorProductToInternalHomRightAdjunctionIsomorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctionIsomorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomRightAdjunctionIsomorphism[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     c     )     \mapsto
  \mathtt{TensorProductToInternalHomRightAdjunctionIsomorphism}(a, b, c)[123X.[133X
  
  [1X1.14-64 AddTensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex  =  faster  execution).  [23XF:  (  s,  a,  b,  c,  r  )  \mapsto
  \mathtt{TensorProductToInternalHomRightAdjunctionIsomorphismWithGivenObjects}(s,
  a, b, c, r)[123X.[133X
  
  [1X1.14-65 AddUniversalPropertyOfDual[101X
  
  [33X[1;0Y[29X[2XAddUniversalPropertyOfDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddUniversalPropertyOfDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XUniversalPropertyOfDual[110X.   Optionally,   a  weight  (default:  100)  can  be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight = less complex = faster execution). [23XF: ( t, a,
  alpha ) \mapsto \mathtt{UniversalPropertyOfDual}(t, a, alpha)[123X.[133X
  
  [1X1.14-66 AddCoDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddCoDualOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoDualOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function [23XF[123X to the category for the basic operation [10XCoDualOnMorphisms[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).   [23XF:   (   alpha   )   \mapsto
  \mathtt{CoDualOnMorphisms}(alpha)[123X.[133X
  
  [1X1.14-67 AddCoDualOnMorphismsWithGivenCoDuals[101X
  
  [33X[1;0Y[29X[2XAddCoDualOnMorphismsWithGivenCoDuals[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoDualOnMorphismsWithGivenCoDuals[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoDualOnMorphismsWithGivenCoDuals[110X.  Optionally,  a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of  the  function  (lower weight = less complex = faster execution). [23XF: ( s,
  alpha, r ) \mapsto \mathtt{CoDualOnMorphismsWithGivenCoDuals}(s, alpha, r)[123X.[133X
  
  [1X1.14-68 AddCoDualOnObjects[101X
  
  [33X[1;0Y[29X[2XAddCoDualOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoDualOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to the category for the basic operation [10XCoDualOnObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{CoDualOnObjects}(a)[123X.[133X
  
  [1X1.14-69 AddCoDualityTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddCoDualityTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoDualityTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoDualityTensorProductCompatibilityMorphism[110X.  Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  ( a, b ) \mapsto \mathtt{CoDualityTensorProductCompatibilityMorphism}(a,
  b)[123X.[133X
  
  [1X1.14-70 AddCoDualityTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddCoDualityTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoDualityTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoDualityTensorProductCompatibilityMorphismWithGivenObjects[110X.  Optionally,  a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{CoDualityTensorProductCompatibilityMorphismWithGivenObjects}(s,   a,
  b, r)[123X.[133X
  
  [1X1.14-71 AddCoLambdaElimination[101X
  
  [33X[1;0Y[29X[2XAddCoLambdaElimination[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoLambdaElimination[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoLambdaElimination[110X.  Optionally,  a  weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower weight = less complex = faster execution). [23XF: ( a, b, alpha
  ) \mapsto \mathtt{CoLambdaElimination}(a, b, alpha)[123X.[133X
  
  [1X1.14-72 AddCoLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XAddCoLambdaIntroduction[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoLambdaIntroduction[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoLambdaIntroduction[110X.  Optionally,  a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  =  less  complex = faster execution). [23XF: ( alpha )
  \mapsto \mathtt{CoLambdaIntroduction}(alpha)[123X.[133X
  
  [1X1.14-73 AddCoclosedEvaluationForCoDual[101X
  
  [33X[1;0Y[29X[2XAddCoclosedEvaluationForCoDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedEvaluationForCoDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedEvaluationForCoDual[110X.  Optionally,  a  weight  (default:  100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight  =  less complex = faster execution). [23XF: ( a )
  \mapsto \mathtt{CoclosedEvaluationForCoDual}(a)[123X.[133X
  
  [1X1.14-74 AddCoclosedEvaluationForCoDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddCoclosedEvaluationForCoDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedEvaluationForCoDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedEvaluationForCoDualWithGivenTensorProduct[110X.   Optionally,   a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     s,     a,     r     )     \mapsto
  \mathtt{CoclosedEvaluationForCoDualWithGivenTensorProduct}(s, a, r)[123X.[133X
  
  [1X1.14-75 AddCoclosedMonoidalLeftCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftCoevaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftCoevaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalLeftCoevaluationMorphism[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{CoclosedMonoidalLeftCoevaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-76 AddCoclosedMonoidalLeftCoevaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftCoevaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftCoevaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalLeftCoevaluationMorphismWithGivenSource[110X.    Optionally,    a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     s     )     \mapsto
  \mathtt{CoclosedMonoidalLeftCoevaluationMorphismWithGivenSource}(a, b, s)[123X.[133X
  
  [1X1.14-77 AddCoclosedMonoidalLeftEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftEvaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftEvaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalLeftEvaluationMorphism[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{CoclosedMonoidalLeftEvaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-78 AddCoclosedMonoidalLeftEvaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftEvaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalLeftEvaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalLeftEvaluationMorphismWithGivenRange[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     r     )     \mapsto
  \mathtt{CoclosedMonoidalLeftEvaluationMorphismWithGivenRange}(a, b, r)[123X.[133X
  
  [1X1.14-79 AddCoclosedMonoidalRightCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightCoevaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightCoevaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalRightCoevaluationMorphism[110X.  Optionally,  a  weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  (  a,  b ) \mapsto \mathtt{CoclosedMonoidalRightCoevaluationMorphism}(a,
  b)[123X.[133X
  
  [1X1.14-80 AddCoclosedMonoidalRightCoevaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightCoevaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightCoevaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalRightCoevaluationMorphismWithGivenSource[110X.    Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     s     )     \mapsto
  \mathtt{CoclosedMonoidalRightCoevaluationMorphismWithGivenSource}(a, b, s)[123X.[133X
  
  [1X1.14-81 AddCoclosedMonoidalRightEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightEvaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightEvaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalRightEvaluationMorphism[110X. Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{CoclosedMonoidalRightEvaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-82 AddCoclosedMonoidalRightEvaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightEvaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedMonoidalRightEvaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedMonoidalRightEvaluationMorphismWithGivenRange[110X.  Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     r     )     \mapsto
  \mathtt{CoclosedMonoidalRightEvaluationMorphismWithGivenRange}(a, b, r)[123X.[133X
  
  [1X1.14-83 AddInternalCoHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomOnMorphisms[110X.   Optionally,  a  weight  (default:  100)  can  be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( alpha,
  beta ) \mapsto \mathtt{InternalCoHomOnMorphisms}(alpha, beta)[123X.[133X
  
  [1X1.14-84 AddInternalCoHomOnMorphismsWithGivenInternalCoHoms[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomOnMorphismsWithGivenInternalCoHoms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomOnMorphismsWithGivenInternalCoHoms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomOnMorphismsWithGivenInternalCoHoms[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    alpha,    beta,    r   )   \mapsto
  \mathtt{InternalCoHomOnMorphismsWithGivenInternalCoHoms}(s, alpha, beta, r)[123X.[133X
  
  [1X1.14-85 AddInternalCoHomOnObjects[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomOnObjects[110X. Optionally, a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  =  less  complex  = faster execution). [23XF: ( a, b )
  \mapsto \mathtt{InternalCoHomOnObjects}(a, b)[123X.[133X
  
  [1X1.14-86 AddInternalCoHomTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomTensorProductCompatibilityMorphism[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:       (       list       )       \mapsto
  \mathtt{InternalCoHomTensorProductCompatibilityMorphism}(list)[123X.[133X
  
  [1X1.14-87 AddInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[110X. Optionally,
  a  weight (default: 100) can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster    execution).    [23XF:    (    source,    list,    range    )   \mapsto
  \mathtt{InternalCoHomTensorProductCompatibilityMorphismWithGivenObjects}(source,
  list, range)[123X.[133X
  
  [1X1.14-88 AddInternalCoHomToTensorProductLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomToTensorProductLeftAdjunctMorphism[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     c,     f     )     \mapsto
  \mathtt{InternalCoHomToTensorProductLeftAdjunctMorphism}(a, c, f)[123X.[133X
  
  [1X1.14-89 AddInternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  c,  f,  t  )  \mapsto
  \mathtt{InternalCoHomToTensorProductLeftAdjunctMorphismWithGivenTensorProduct}(a,
  c, f, t)[123X.[133X
  
  [1X1.14-90 AddInternalCoHomToTensorProductRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomToTensorProductRightAdjunctMorphism[110X.   Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     f     )     \mapsto
  \mathtt{InternalCoHomToTensorProductRightAdjunctMorphism}(a, b, f)[123X.[133X
  
  [1X1.14-91 AddInternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  b,  f,  t  )  \mapsto
  \mathtt{InternalCoHomToTensorProductRightAdjunctMorphismWithGivenTensorProduct}(a,
  b, f, t)[123X.[133X
  
  [1X1.14-92 AddIsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit[110X.    Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster        execution).        [23XF:        (        a        )       \mapsto
  \mathtt{IsomorphismFromCoDualObjectToInternalCoHomFromTensorUnit}(a)[123X.[133X
  
  [1X1.14-93 AddIsomorphismFromInternalCoHomFromTensorUnitToCoDualObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomFromTensorUnitToCoDualObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomFromTensorUnitToCoDualObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalCoHomFromTensorUnitToCoDualObject[110X.    Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster        execution).        [23XF:        (        a        )       \mapsto
  \mathtt{IsomorphismFromInternalCoHomFromTensorUnitToCoDualObject}(a)[123X.[133X
  
  [1X1.14-94 AddIsomorphismFromInternalCoHomToObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomToObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomToObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalCoHomToObject[110X.  Optionally,  a  weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{IsomorphismFromInternalCoHomToObject}(a)[123X.[133X
  
  [1X1.14-95 AddIsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom[110X.   Optionally,  a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      s      )      \mapsto
  \mathtt{IsomorphismFromInternalCoHomToObjectWithGivenInternalCoHom}(a, s)[123X.[133X
  
  [1X1.14-96 AddIsomorphismFromObjectToInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToInternalCoHom[110X.  Optionally,  a  weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{IsomorphismFromObjectToInternalCoHom}(a)[123X.[133X
  
  [1X1.14-97 AddIsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom[110X.   Optionally,  a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      r      )      \mapsto
  \mathtt{IsomorphismFromObjectToInternalCoHomWithGivenInternalCoHom}(a, r)[123X.[133X
  
  [1X1.14-98 AddMonoidalPostCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPostCoComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPostCoComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPostCoComposeMorphism[110X.  Optionally,  a  weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function (lower weight = less complex = faster execution). [23XF: ( a, b, c
  ) \mapsto \mathtt{MonoidalPostCoComposeMorphism}(a, b, c)[123X.[133X
  
  [1X1.14-99 AddMonoidalPostCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPostCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPostCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPostCoComposeMorphismWithGivenObjects[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    a,    b,    c,    r    )   \mapsto
  \mathtt{MonoidalPostCoComposeMorphismWithGivenObjects}(s, a, b, c, r)[123X.[133X
  
  [1X1.14-100 AddMonoidalPreCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPreCoComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPreCoComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPreCoComposeMorphism[110X.  Optionally,  a  weight  (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function (lower weight = less complex = faster execution). [23XF: ( a, b, c
  ) \mapsto \mathtt{MonoidalPreCoComposeMorphism}(a, b, c)[123X.[133X
  
  [1X1.14-101 AddMonoidalPreCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMonoidalPreCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMonoidalPreCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMonoidalPreCoComposeMorphismWithGivenObjects[110X. Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:       (       s,       a,       b,       c,       r       )       \mapsto
  \mathtt{MonoidalPreCoComposeMorphismWithGivenObjects}(s, a, b, c, r)[123X.[133X
  
  [1X1.14-102 AddMorphismFromCoBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromCoBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromCoBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromCoBidual[110X.  Optionally,  a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower weight = less complex = faster execution). [23XF: ( a ) \mapsto
  \mathtt{MorphismFromCoBidual}(a)[123X.[133X
  
  [1X1.14-103 AddMorphismFromCoBidualWithGivenCoBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromCoBidualWithGivenCoBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromCoBidualWithGivenCoBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromCoBidualWithGivenCoBidual[110X.  Optionally,  a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, s ) \mapsto \mathtt{MorphismFromCoBidualWithGivenCoBidual}(a, s)[123X.[133X
  
  [1X1.14-104 AddMorphismFromInternalCoHomToTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromInternalCoHomToTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromInternalCoHomToTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromInternalCoHomToTensorProduct[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{MorphismFromInternalCoHomToTensorProduct}(a, b)[123X.[133X
  
  [1X1.14-105 AddMorphismFromInternalCoHomToTensorProductWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromInternalCoHomToTensorProductWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromInternalCoHomToTensorProductWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromInternalCoHomToTensorProductWithGivenObjects[110X.    Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{MorphismFromInternalCoHomToTensorProductWithGivenObjects}(s,  a,  b,
  r)[123X.[133X
  
  [1X1.14-106 AddTensorProductToInternalCoHomLeftAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomLeftAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalCoHomLeftAdjunctMorphism[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     b,     c,     g     )     \mapsto
  \mathtt{TensorProductToInternalCoHomLeftAdjunctMorphism}(b, c, g)[123X.[133X
  
  [1X1.14-107 AddTensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  b,  c,  g,  i  )  \mapsto
  \mathtt{TensorProductToInternalCoHomLeftAdjunctMorphismWithGivenInternalCoHom}(b,
  c, g, i)[123X.[133X
  
  [1X1.14-108 AddTensorProductToInternalCoHomRightAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomRightAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalCoHomRightAdjunctMorphism[110X.   Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     b,     c,     g     )     \mapsto
  \mathtt{TensorProductToInternalCoHomRightAdjunctMorphism}(b, c, g)[123X.[133X
  
  [1X1.14-109 AddTensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  b,  c,  g,  i  )  \mapsto
  \mathtt{TensorProductToInternalCoHomRightAdjunctMorphismWithGivenInternalCoHom}(b,
  c, g, i)[123X.[133X
  
  [1X1.14-110 AddUniversalPropertyOfCoDual[101X
  
  [33X[1;0Y[29X[2XAddUniversalPropertyOfCoDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddUniversalPropertyOfCoDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XUniversalPropertyOfCoDual[110X.  Optionally,  a  weight  (default:  100)  can  be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight = less complex = faster execution). [23XF: ( t, a,
  alpha ) \mapsto \mathtt{UniversalPropertyOfCoDual}(t, a, alpha)[123X.[133X
  
  [1X1.14-111 AddIsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit[110X.  Optionally, a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster        execution).        [23XF:        (        a        )       \mapsto
  \mathtt{IsomorphismFromLeftDualObjectToLeftInternalHomIntoTensorUnit}(a)[123X.[133X
  
  [1X1.14-112 AddIsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject[110X.  Optionally, a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster        execution).        [23XF:        (        a        )       \mapsto
  \mathtt{IsomorphismFromLeftInternalHomIntoTensorUnitToLeftDualObject}(a)[123X.[133X
  
  [1X1.14-113 AddIsomorphismFromLeftInternalHomToObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalHomToObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalHomToObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftInternalHomToObject[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{IsomorphismFromLeftInternalHomToObject}(a)[123X.[133X
  
  [1X1.14-114 AddIsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom[110X.  Optionally,
  a  weight (default: 100) can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      s      )      \mapsto
  \mathtt{IsomorphismFromLeftInternalHomToObjectWithGivenLeftInternalHom}(a,
  s)[123X.[133X
  
  [1X1.14-115 AddIsomorphismFromObjectToLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToLeftInternalHom[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{IsomorphismFromObjectToLeftInternalHom}(a)[123X.[133X
  
  [1X1.14-116 AddIsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom[110X.  Optionally,
  a  weight (default: 100) can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      r      )      \mapsto
  \mathtt{IsomorphismFromObjectToLeftInternalHomWithGivenLeftInternalHom}(a,
  r)[123X.[133X
  
  [1X1.14-117 AddLeftClosedMonoidalCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalCoevaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalCoevaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalCoevaluationMorphism[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{LeftClosedMonoidalCoevaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-118 AddLeftClosedMonoidalCoevaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalCoevaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalCoevaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalCoevaluationMorphismWithGivenRange[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     r     )     \mapsto
  \mathtt{LeftClosedMonoidalCoevaluationMorphismWithGivenRange}(a, b, r)[123X.[133X
  
  [1X1.14-119 AddLeftClosedMonoidalEvaluationForLeftDual[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationForLeftDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationForLeftDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalEvaluationForLeftDual[110X. Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{LeftClosedMonoidalEvaluationForLeftDual}(a)[123X.[133X
  
  [1X1.14-120 AddLeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct[110X. Optionally, a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster      execution).      [23XF:      (     s,     a,     r     )     \mapsto
  \mathtt{LeftClosedMonoidalEvaluationForLeftDualWithGivenTensorProduct}(s, a,
  r)[123X.[133X
  
  [1X1.14-121 AddLeftClosedMonoidalEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalEvaluationMorphism[110X.  Optionally,  a  weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{LeftClosedMonoidalEvaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-122 AddLeftClosedMonoidalEvaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalEvaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalEvaluationMorphismWithGivenSource[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     s     )     \mapsto
  \mathtt{LeftClosedMonoidalEvaluationMorphismWithGivenSource}(a, b, s)[123X.[133X
  
  [1X1.14-123 AddLeftClosedMonoidalLambdaElimination[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalLambdaElimination[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalLambdaElimination[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalLambdaElimination[110X. Optionally, a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of the function (lower weight = less complex = faster execution). [23XF: ( a, b,
  alpha ) \mapsto \mathtt{LeftClosedMonoidalLambdaElimination}(a, b, alpha)[123X.[133X
  
  [1X1.14-124 AddLeftClosedMonoidalLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalLambdaIntroduction[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalLambdaIntroduction[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalLambdaIntroduction[110X.  Optionally,  a  weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( alpha ) \mapsto \mathtt{LeftClosedMonoidalLambdaIntroduction}(alpha)[123X.[133X
  
  [1X1.14-125 AddLeftClosedMonoidalPostComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPostComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPostComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalPostComposeMorphism[110X.  Optionally,  a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  ( a, b, c ) \mapsto \mathtt{LeftClosedMonoidalPostComposeMorphism}(a, b,
  c)[123X.[133X
  
  [1X1.14-126 AddLeftClosedMonoidalPostComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPostComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPostComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalPostComposeMorphismWithGivenObjects[110X.  Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    a,    b,    c,    r    )   \mapsto
  \mathtt{LeftClosedMonoidalPostComposeMorphismWithGivenObjects}(s,  a,  b, c,
  r)[123X.[133X
  
  [1X1.14-127 AddLeftClosedMonoidalPreComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPreComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPreComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalPreComposeMorphism[110X.  Optionally,  a  weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  (  a, b, c ) \mapsto \mathtt{LeftClosedMonoidalPreComposeMorphism}(a, b,
  c)[123X.[133X
  
  [1X1.14-128 AddLeftClosedMonoidalPreComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPreComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftClosedMonoidalPreComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftClosedMonoidalPreComposeMorphismWithGivenObjects[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    a,    b,    c,    r    )   \mapsto
  \mathtt{LeftClosedMonoidalPreComposeMorphismWithGivenObjects}(s,  a,  b,  c,
  r)[123X.[133X
  
  [1X1.14-129 AddLeftDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddLeftDualOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDualOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftDualOnMorphisms[110X.  Optionally,  a  weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  =  less  complex = faster execution). [23XF: ( alpha )
  \mapsto \mathtt{LeftDualOnMorphisms}(alpha)[123X.[133X
  
  [1X1.14-130 AddLeftDualOnMorphismsWithGivenLeftDuals[101X
  
  [33X[1;0Y[29X[2XAddLeftDualOnMorphismsWithGivenLeftDuals[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDualOnMorphismsWithGivenLeftDuals[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftDualOnMorphismsWithGivenLeftDuals[110X.  Optionally,  a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( s, alpha, r ) \mapsto \mathtt{LeftDualOnMorphismsWithGivenLeftDuals}(s,
  alpha, r)[123X.[133X
  
  [1X1.14-131 AddLeftDualOnObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftDualOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftDualOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function [23XF[123X to the category for the basic operation [10XLeftDualOnObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{LeftDualOnObjects}(a)[123X.[133X
  
  [1X1.14-132 AddLeftInternalHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalHomOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalHomOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalHomOnMorphisms[110X.  Optionally,  a  weight  (default:  100)  can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( alpha,
  beta ) \mapsto \mathtt{LeftInternalHomOnMorphisms}(alpha, beta)[123X.[133X
  
  [1X1.14-133 AddLeftInternalHomOnMorphismsWithGivenLeftInternalHoms[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalHomOnMorphismsWithGivenLeftInternalHoms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalHomOnMorphismsWithGivenLeftInternalHoms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalHomOnMorphismsWithGivenLeftInternalHoms[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    alpha,    beta,    r   )   \mapsto
  \mathtt{LeftInternalHomOnMorphismsWithGivenLeftInternalHoms}(s, alpha, beta,
  r)[123X.[133X
  
  [1X1.14-134 AddLeftInternalHomOnObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalHomOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalHomOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalHomOnObjects[110X.   Optionally,  a  weight  (default:  100)  can  be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( a, b )
  \mapsto \mathtt{LeftInternalHomOnObjects}(a, b)[123X.[133X
  
  [1X1.14-135 AddLeftInternalHomToTensorProductAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalHomToTensorProductAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalHomToTensorProductAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalHomToTensorProductAdjunctMorphism[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     b,     c,     g     )     \mapsto
  \mathtt{LeftInternalHomToTensorProductAdjunctMorphism}(b, c, g)[123X.[133X
  
  [1X1.14-136 AddLeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  b,  c,  g,  t  )  \mapsto
  \mathtt{LeftInternalHomToTensorProductAdjunctMorphismWithGivenTensorProduct}(b,
  c, g, t)[123X.[133X
  
  [1X1.14-137 AddMorphismFromTensorProductToLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToLeftInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToLeftInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromTensorProductToLeftInternalHom[110X.  Optionally,  a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  (  a, b ) \mapsto \mathtt{MorphismFromTensorProductToLeftInternalHom}(a,
  b)[123X.[133X
  
  [1X1.14-138 AddMorphismFromTensorProductToLeftInternalHomWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToLeftInternalHomWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToLeftInternalHomWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromTensorProductToLeftInternalHomWithGivenObjects[110X.   Optionally,  a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{MorphismFromTensorProductToLeftInternalHomWithGivenObjects}(s, a, b,
  r)[123X.[133X
  
  [1X1.14-139 AddMorphismToLeftBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismToLeftBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismToLeftBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismToLeftBidual[110X.  Optionally,  a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower weight = less complex = faster execution). [23XF: ( a ) \mapsto
  \mathtt{MorphismToLeftBidual}(a)[123X.[133X
  
  [1X1.14-140 AddMorphismToLeftBidualWithGivenLeftBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismToLeftBidualWithGivenLeftBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismToLeftBidualWithGivenLeftBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismToLeftBidualWithGivenLeftBidual[110X. Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, r ) \mapsto \mathtt{MorphismToLeftBidualWithGivenLeftBidual}(a, r)[123X.[133X
  
  [1X1.14-141 AddTensorProductLeftDualityCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductLeftDualityCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductLeftDualityCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductLeftDualityCompatibilityMorphism[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      b      )      \mapsto
  \mathtt{TensorProductLeftDualityCompatibilityMorphism}(a, b)[123X.[133X
  
  [1X1.14-142 AddTensorProductLeftDualityCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductLeftDualityCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductLeftDualityCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductLeftDualityCompatibilityMorphismWithGivenObjects[110X. Optionally, a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{TensorProductLeftDualityCompatibilityMorphismWithGivenObjects}(s, a,
  b, r)[123X.[133X
  
  [1X1.14-143 AddTensorProductLeftInternalHomCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductLeftInternalHomCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductLeftInternalHomCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductLeftInternalHomCompatibilityMorphism[110X.   Optionally,   a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:       (       list       )       \mapsto
  \mathtt{TensorProductLeftInternalHomCompatibilityMorphism}(list)[123X.[133X
  
  [1X1.14-144 AddTensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less  complex  =  faster  execution).  [23XF:  (  source,  list, range ) \mapsto
  \mathtt{TensorProductLeftInternalHomCompatibilityMorphismWithGivenObjects}(source,
  list, range)[123X.[133X
  
  [1X1.14-145 AddTensorProductToLeftInternalHomAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalHomAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalHomAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToLeftInternalHomAdjunctMorphism[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     f     )     \mapsto
  \mathtt{TensorProductToLeftInternalHomAdjunctMorphism}(a, b, f)[123X.[133X
  
  [1X1.14-146 AddTensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  b,  f,  i  )  \mapsto
  \mathtt{TensorProductToLeftInternalHomAdjunctMorphismWithGivenLeftInternalHom}(a,
  b, f, i)[123X.[133X
  
  [1X1.14-147 AddUniversalPropertyOfLeftDual[101X
  
  [33X[1;0Y[29X[2XAddUniversalPropertyOfLeftDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddUniversalPropertyOfLeftDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XUniversalPropertyOfLeftDual[110X.  Optionally,  a  weight  (default:  100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight = less complex = faster execution). [23XF: ( t, a,
  alpha ) \mapsto \mathtt{UniversalPropertyOfLeftDual}(t, a, alpha)[123X.[133X
  
  [1X1.14-148 AddIsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{IsomorphismFromLeftCoDualObjectToLeftInternalCoHomFromTensorUnit}(a)[123X.[133X
  
  [1X1.14-149 AddIsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{IsomorphismFromLeftInternalCoHomFromTensorUnitToLeftCoDualObject}(a)[123X.[133X
  
  [1X1.14-150 AddIsomorphismFromLeftInternalCoHomToObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalCoHomToObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalCoHomToObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftInternalCoHomToObject[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{IsomorphismFromLeftInternalCoHomToObject}(a)[123X.[133X
  
  [1X1.14-151 AddIsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster   execution).   [23XF:   (   a,   s   )   \mapsto
  \mathtt{IsomorphismFromLeftInternalCoHomToObjectWithGivenLeftInternalCoHom}(a,
  s)[123X.[133X
  
  [1X1.14-152 AddIsomorphismFromObjectToLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToLeftInternalCoHom[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{IsomorphismFromObjectToLeftInternalCoHom}(a)[123X.[133X
  
  [1X1.14-153 AddIsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster   execution).   [23XF:   (   a,   r   )   \mapsto
  \mathtt{IsomorphismFromObjectToLeftInternalCoHomWithGivenLeftInternalCoHom}(a,
  r)[123X.[133X
  
  [1X1.14-154 AddLeftCoDualOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddLeftCoDualOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoDualOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoDualOnMorphisms[110X.  Optionally, a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  =  less  complex = faster execution). [23XF: ( alpha )
  \mapsto \mathtt{LeftCoDualOnMorphisms}(alpha)[123X.[133X
  
  [1X1.14-155 AddLeftCoDualOnMorphismsWithGivenLeftCoDuals[101X
  
  [33X[1;0Y[29X[2XAddLeftCoDualOnMorphismsWithGivenLeftCoDuals[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoDualOnMorphismsWithGivenLeftCoDuals[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoDualOnMorphismsWithGivenLeftCoDuals[110X.  Optionally,  a  weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:          (          s,         alpha,         r         )         \mapsto
  \mathtt{LeftCoDualOnMorphismsWithGivenLeftCoDuals}(s, alpha, r)[123X.[133X
  
  [1X1.14-156 AddLeftCoDualOnObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftCoDualOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoDualOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoDualOnObjects[110X.  Optionally,  a  weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower weight = less complex = faster execution). [23XF: ( a ) \mapsto
  \mathtt{LeftCoDualOnObjects}(a)[123X.[133X
  
  [1X1.14-157 AddLeftCoDualityTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftCoDualityTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoDualityTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoDualityTensorProductCompatibilityMorphism[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      b      )      \mapsto
  \mathtt{LeftCoDualityTensorProductCompatibilityMorphism}(a, b)[123X.[133X
  
  [1X1.14-158 AddLeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects[110X. Optionally,
  a  weight (default: 100) can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{LeftCoDualityTensorProductCompatibilityMorphismWithGivenObjects}(s,
  a, b, r)[123X.[133X
  
  [1X1.14-159 AddLeftCoclosedMonoidalCoevaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalCoevaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalCoevaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalCoevaluationMorphism[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{LeftCoclosedMonoidalCoevaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-160 AddLeftCoclosedMonoidalCoevaluationMorphismWithGivenSource[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalCoevaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalCoevaluationMorphismWithGivenSource[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalCoevaluationMorphismWithGivenSource[110X.    Optionally,    a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     s     )     \mapsto
  \mathtt{LeftCoclosedMonoidalCoevaluationMorphismWithGivenSource}(a, b, s)[123X.[133X
  
  [1X1.14-161 AddLeftCoclosedMonoidalEvaluationForLeftCoDual[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationForLeftCoDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationForLeftCoDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalEvaluationForLeftCoDual[110X.  Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a ) \mapsto \mathtt{LeftCoclosedMonoidalEvaluationForLeftCoDual}(a)[123X.[133X
  
  [1X1.14-162 AddLeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:   (   s,   a,   r  )  \mapsto
  \mathtt{LeftCoclosedMonoidalEvaluationForLeftCoDualWithGivenTensorProduct}(s,
  a, r)[123X.[133X
  
  [1X1.14-163 AddLeftCoclosedMonoidalEvaluationMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalEvaluationMorphism[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{LeftCoclosedMonoidalEvaluationMorphism}(a, b)[123X.[133X
  
  [1X1.14-164 AddLeftCoclosedMonoidalEvaluationMorphismWithGivenRange[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalEvaluationMorphismWithGivenRange[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalEvaluationMorphismWithGivenRange[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     b,     r     )     \mapsto
  \mathtt{LeftCoclosedMonoidalEvaluationMorphismWithGivenRange}(a, b, r)[123X.[133X
  
  [1X1.14-165 AddLeftCoclosedMonoidalLambdaElimination[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalLambdaElimination[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalLambdaElimination[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalLambdaElimination[110X.  Optionally,  a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b, alpha ) \mapsto \mathtt{LeftCoclosedMonoidalLambdaElimination}(a,
  b, alpha)[123X.[133X
  
  [1X1.14-166 AddLeftCoclosedMonoidalLambdaIntroduction[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalLambdaIntroduction[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalLambdaIntroduction[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalLambdaIntroduction[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( alpha ) \mapsto \mathtt{LeftCoclosedMonoidalLambdaIntroduction}(alpha)[123X.[133X
  
  [1X1.14-167 AddLeftCoclosedMonoidalPostCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPostCoComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPostCoComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalPostCoComposeMorphism[110X.  Optionally,  a  weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b, c ) \mapsto \mathtt{LeftCoclosedMonoidalPostCoComposeMorphism}(a,
  b, c)[123X.[133X
  
  [1X1.14-168 AddLeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects[110X.   Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    a,    b,    c,    r    )   \mapsto
  \mathtt{LeftCoclosedMonoidalPostCoComposeMorphismWithGivenObjects}(s,  a, b,
  c, r)[123X.[133X
  
  [1X1.14-169 AddLeftCoclosedMonoidalPreCoComposeMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPreCoComposeMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPreCoComposeMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalPreCoComposeMorphism[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:  ( a, b, c ) \mapsto \mathtt{LeftCoclosedMonoidalPreCoComposeMorphism}(a,
  b, c)[123X.[133X
  
  [1X1.14-170 AddLeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects[110X.    Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    a,    b,    c,    r    )   \mapsto
  \mathtt{LeftCoclosedMonoidalPreCoComposeMorphismWithGivenObjects}(s,  a,  b,
  c, r)[123X.[133X
  
  [1X1.14-171 AddLeftInternalCoHomOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomOnMorphisms[110X.  Optionally,  a  weight  (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( alpha,
  beta ) \mapsto \mathtt{LeftInternalCoHomOnMorphisms}(alpha, beta)[123X.[133X
  
  [1X1.14-172 AddLeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms[110X.    Optionally,    a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    alpha,    beta,    r   )   \mapsto
  \mathtt{LeftInternalCoHomOnMorphismsWithGivenLeftInternalCoHoms}(s,   alpha,
  beta, r)[123X.[133X
  
  [1X1.14-173 AddLeftInternalCoHomOnObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomOnObjects[110X.  Optionally,  a  weight  (default:  100)  can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( a, b )
  \mapsto \mathtt{LeftInternalCoHomOnObjects}(a, b)[123X.[133X
  
  [1X1.14-174 AddLeftInternalCoHomTensorProductCompatibilityMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomTensorProductCompatibilityMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomTensorProductCompatibilityMorphism[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:       (       list       )       \mapsto
  \mathtt{LeftInternalCoHomTensorProductCompatibilityMorphism}(list)[123X.[133X
  
  [1X1.14-175 AddLeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less  complex  =  faster  execution).  [23XF:  (  source,  list, range ) \mapsto
  \mathtt{LeftInternalCoHomTensorProductCompatibilityMorphismWithGivenObjects}(source,
  list, range)[123X.[133X
  
  [1X1.14-176 AddLeftInternalCoHomToTensorProductAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomToTensorProductAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomToTensorProductAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomToTensorProductAdjunctMorphism[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     a,     c,     f     )     \mapsto
  \mathtt{LeftInternalCoHomToTensorProductAdjunctMorphism}(a, c, f)[123X.[133X
  
  [1X1.14-177 AddLeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddLeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  a,  c,  f,  t  )  \mapsto
  \mathtt{LeftInternalCoHomToTensorProductAdjunctMorphismWithGivenTensorProduct}(a,
  c, f, t)[123X.[133X
  
  [1X1.14-178 AddMorphismFromLeftCoBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromLeftCoBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromLeftCoBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromLeftCoBidual[110X.   Optionally,  a  weight  (default:  100)  can  be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight  =  less complex = faster execution). [23XF: ( a )
  \mapsto \mathtt{MorphismFromLeftCoBidual}(a)[123X.[133X
  
  [1X1.14-179 AddMorphismFromLeftCoBidualWithGivenLeftCoBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromLeftCoBidualWithGivenLeftCoBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromLeftCoBidualWithGivenLeftCoBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromLeftCoBidualWithGivenLeftCoBidual[110X.    Optionally,    a    weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      s      )      \mapsto
  \mathtt{MorphismFromLeftCoBidualWithGivenLeftCoBidual}(a, s)[123X.[133X
  
  [1X1.14-180 AddMorphismFromLeftInternalCoHomToTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromLeftInternalCoHomToTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromLeftInternalCoHomToTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromLeftInternalCoHomToTensorProduct[110X. Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{MorphismFromLeftInternalCoHomToTensorProduct}(a,
  b)[123X.[133X
  
  [1X1.14-181 AddMorphismFromLeftInternalCoHomToTensorProductWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromLeftInternalCoHomToTensorProductWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromLeftInternalCoHomToTensorProductWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromLeftInternalCoHomToTensorProductWithGivenObjects[110X.  Optionally, a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{MorphismFromLeftInternalCoHomToTensorProductWithGivenObjects}(s,  a,
  b, r)[123X.[133X
  
  [1X1.14-182 AddTensorProductToLeftInternalCoHomAdjunctMorphism[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalCoHomAdjunctMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalCoHomAdjunctMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToLeftInternalCoHomAdjunctMorphism[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     b,     c,     g     )     \mapsto
  \mathtt{TensorProductToLeftInternalCoHomAdjunctMorphism}(b, c, g)[123X.[133X
  
  [1X1.14-183 AddTensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less   complex   =   faster   execution).   [23XF:  (  b,  c,  g,  i  )  \mapsto
  \mathtt{TensorProductToLeftInternalCoHomAdjunctMorphismWithGivenLeftInternalCoHom}(b,
  c, g, i)[123X.[133X
  
  [1X1.14-184 AddUniversalPropertyOfLeftCoDual[101X
  
  [33X[1;0Y[29X[2XAddUniversalPropertyOfLeftCoDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddUniversalPropertyOfLeftCoDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XUniversalPropertyOfLeftCoDual[110X.  Optionally,  a  weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight = less complex = faster execution). [23XF: ( t, a,
  alpha ) \mapsto \mathtt{UniversalPropertyOfLeftCoDual}(t, a, alpha)[123X.[133X
  
  [1X1.14-185 AddAssociatorLeftToRight[101X
  
  [33X[1;0Y[29X[2XAddAssociatorLeftToRight[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddAssociatorLeftToRight[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XAssociatorLeftToRight[110X.  Optionally, a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  = less complex = faster execution). [23XF: ( a, b, c )
  \mapsto \mathtt{AssociatorLeftToRight}(a, b, c)[123X.[133X
  
  [1X1.14-186 AddAssociatorLeftToRightWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAddAssociatorLeftToRightWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddAssociatorLeftToRightWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XAssociatorLeftToRightWithGivenTensorProducts[110X. Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:       (       s,       a,       b,       c,       r       )       \mapsto
  \mathtt{AssociatorLeftToRightWithGivenTensorProducts}(s, a, b, c, r)[123X.[133X
  
  [1X1.14-187 AddAssociatorRightToLeft[101X
  
  [33X[1;0Y[29X[2XAddAssociatorRightToLeft[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddAssociatorRightToLeft[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XAssociatorRightToLeft[110X.  Optionally, a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower  weight  = less complex = faster execution). [23XF: ( a, b, c )
  \mapsto \mathtt{AssociatorRightToLeft}(a, b, c)[123X.[133X
  
  [1X1.14-188 AddAssociatorRightToLeftWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAddAssociatorRightToLeftWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddAssociatorRightToLeftWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XAssociatorRightToLeftWithGivenTensorProducts[110X. Optionally, a weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF:       (       s,       a,       b,       c,       r       )       \mapsto
  \mathtt{AssociatorRightToLeftWithGivenTensorProducts}(s, a, b, c, r)[123X.[133X
  
  [1X1.14-189 AddLeftUnitor[101X
  
  [33X[1;0Y[29X[2XAddLeftUnitor[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftUnitor[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for  the  basic operation [10XLeftUnitor[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less complex = faster execution). [23XF: ( a ) \mapsto \mathtt{LeftUnitor}(a)[123X.[133X
  
  [1X1.14-190 AddLeftUnitorInverse[101X
  
  [33X[1;0Y[29X[2XAddLeftUnitorInverse[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftUnitorInverse[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function [23XF[123X to the category for the basic operation [10XLeftUnitorInverse[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{LeftUnitorInverse}(a)[123X.[133X
  
  [1X1.14-191 AddLeftUnitorInverseWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddLeftUnitorInverseWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftUnitorInverseWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftUnitorInverseWithGivenTensorProduct[110X. Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, r ) \mapsto \mathtt{LeftUnitorInverseWithGivenTensorProduct}(a, r)[123X.[133X
  
  [1X1.14-192 AddLeftUnitorWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddLeftUnitorWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddLeftUnitorWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XLeftUnitorWithGivenTensorProduct[110X. Optionally, a weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( a, s )
  \mapsto \mathtt{LeftUnitorWithGivenTensorProduct}(a, s)[123X.[133X
  
  [1X1.14-193 AddRightUnitor[101X
  
  [33X[1;0Y[29X[2XAddRightUnitor[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightUnitor[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for  the basic operation [10XRightUnitor[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less complex = faster execution). [23XF: ( a ) \mapsto \mathtt{RightUnitor}(a)[123X.[133X
  
  [1X1.14-194 AddRightUnitorInverse[101X
  
  [33X[1;0Y[29X[2XAddRightUnitorInverse[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightUnitorInverse[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given function [23XF[123X to the category for the basic operation [10XRightUnitorInverse[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{RightUnitorInverse}(a)[123X.[133X
  
  [1X1.14-195 AddRightUnitorInverseWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddRightUnitorInverseWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightUnitorInverseWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XRightUnitorInverseWithGivenTensorProduct[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, r ) \mapsto \mathtt{RightUnitorInverseWithGivenTensorProduct}(a, r)[123X.[133X
  
  [1X1.14-196 AddRightUnitorWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddRightUnitorWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRightUnitorWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XRightUnitorWithGivenTensorProduct[110X.  Optionally,  a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of  the function (lower weight = less complex = faster execution). [23XF: ( a, s
  ) \mapsto \mathtt{RightUnitorWithGivenTensorProduct}(a, s)[123X.[133X
  
  [1X1.14-197 AddTensorProductOnMorphisms[101X
  
  [33X[1;0Y[29X[2XAddTensorProductOnMorphisms[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductOnMorphisms[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductOnMorphisms[110X.   Optionally,  a  weight  (default:  100)  can  be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower weight = less complex = faster execution). [23XF: ( alpha,
  beta ) \mapsto \mathtt{TensorProductOnMorphisms}(alpha, beta)[123X.[133X
  
  [1X1.14-198 AddTensorProductOnMorphismsWithGivenTensorProducts[101X
  
  [33X[1;0Y[29X[2XAddTensorProductOnMorphismsWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductOnMorphismsWithGivenTensorProducts[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductOnMorphismsWithGivenTensorProducts[110X.    Optionally,   a   weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster    execution).    [23XF:    (    s,    alpha,    beta,    r   )   \mapsto
  \mathtt{TensorProductOnMorphismsWithGivenTensorProducts}(s, alpha, beta, r)[123X.[133X
  
  [1X1.14-199 AddTensorProductOnObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductOnObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductOnObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductOnObjects[110X. Optionally, a weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function (lower weight = less complex = faster execution). [23XF: ( arg2, arg3 )
  \mapsto \mathtt{TensorProductOnObjects}(arg2, arg3)[123X.[133X
  
  [1X1.14-200 AddTensorUnit[101X
  
  [33X[1;0Y[29X[2XAddTensorUnit[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorUnit[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for  the  basic operation [10XTensorUnit[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less complex = faster execution). [23XF: ( ) \mapsto \mathtt{TensorUnit}()[123X.[133X
  
  [1X1.14-201 AddCoevaluationForDual[101X
  
  [33X[1;0Y[29X[2XAddCoevaluationForDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoevaluationForDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoevaluationForDual[110X.  Optionally,  a  weight (default: 100) can be specified
  which  should  roughly  correspond  to  the  computational complexity of the
  function  (lower weight = less complex = faster execution). [23XF: ( a ) \mapsto
  \mathtt{CoevaluationForDual}(a)[123X.[133X
  
  [1X1.14-202 AddCoevaluationForDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddCoevaluationForDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoevaluationForDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoevaluationForDualWithGivenTensorProduct[110X.  Optionally,  a  weight (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( s, a, r ) \mapsto \mathtt{CoevaluationForDualWithGivenTensorProduct}(s,
  a, r)[123X.[133X
  
  [1X1.14-203 AddIsomorphismFromInternalHomToTensorProductWithDualObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomToTensorProductWithDualObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalHomToTensorProductWithDualObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalHomToTensorProductWithDualObject[110X.    Optionally,    a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      b      )      \mapsto
  \mathtt{IsomorphismFromInternalHomToTensorProductWithDualObject}(a, b)[123X.[133X
  
  [1X1.14-204 AddIsomorphismFromTensorProductWithDualObjectToInternalHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromTensorProductWithDualObjectToInternalHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromTensorProductWithDualObjectToInternalHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromTensorProductWithDualObjectToInternalHom[110X.    Optionally,    a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      b      )      \mapsto
  \mathtt{IsomorphismFromTensorProductWithDualObjectToInternalHom}(a, b)[123X.[133X
  
  [1X1.14-205 AddMorphismFromBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given function [23XF[123X to the category for the basic operation [10XMorphismFromBidual[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{MorphismFromBidual}(a)[123X.[133X
  
  [1X1.14-206 AddMorphismFromBidualWithGivenBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromBidualWithGivenBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromBidualWithGivenBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromBidualWithGivenBidual[110X.  Optionally,  a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of  the function (lower weight = less complex = faster execution). [23XF: ( a, s
  ) \mapsto \mathtt{MorphismFromBidualWithGivenBidual}(a, s)[123X.[133X
  
  [1X1.14-207 AddMorphismFromInternalHomToTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromInternalHomToTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromInternalHomToTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromInternalHomToTensorProduct[110X.  Optionally, a weight (default: 100)
  can  be  specified  which  should  roughly  correspond  to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{MorphismFromInternalHomToTensorProduct}(a, b)[123X.[133X
  
  [1X1.14-208 AddMorphismFromInternalHomToTensorProductWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromInternalHomToTensorProductWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromInternalHomToTensorProductWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromInternalHomToTensorProductWithGivenObjects[110X. Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{MorphismFromInternalHomToTensorProductWithGivenObjects}(s, a, b, r)[123X.[133X
  
  [1X1.14-209 AddRankMorphism[101X
  
  [33X[1;0Y[29X[2XAddRankMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddRankMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for the basic operation [10XRankMorphism[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less complex = faster execution). [23XF: ( a ) \mapsto \mathtt{RankMorphism}(a)[123X.[133X
  
  [1X1.14-210 AddTensorProductInternalHomCompatibilityMorphismInverse[101X
  
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphismInverse[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphismInverse[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductInternalHomCompatibilityMorphismInverse[110X.  Optionally,  a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:       (       list       )       \mapsto
  \mathtt{TensorProductInternalHomCompatibilityMorphismInverse}(list)[123X.[133X
  
  [1X1.14-211 AddTensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XTensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less  complex  =  faster  execution).  [23XF:  (  source,  list, range ) \mapsto
  \mathtt{TensorProductInternalHomCompatibilityMorphismInverseWithGivenObjects}(source,
  list, range)[123X.[133X
  
  [1X1.14-212 AddTraceMap[101X
  
  [33X[1;0Y[29X[2XAddTraceMap[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddTraceMap[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for  the  basic  operation  [10XTraceMap[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).   [23XF:   (   alpha   )   \mapsto
  \mathtt{TraceMap}(alpha)[123X.[133X
  
  [1X1.14-213 AddCoRankMorphism[101X
  
  [33X[1;0Y[29X[2XAddCoRankMorphism[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoRankMorphism[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the category for the basic operation [10XCoRankMorphism[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{CoRankMorphism}(a)[123X.[133X
  
  [1X1.14-214 AddCoTraceMap[101X
  
  [33X[1;0Y[29X[2XAddCoTraceMap[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoTraceMap[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given  function  [23XF[123X  to  the  category  for  the  basic operation [10XCoTraceMap[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).   [23XF:   (   alpha   )   \mapsto
  \mathtt{CoTraceMap}(alpha)[123X.[133X
  
  [1X1.14-215 AddCoclosedCoevaluationForCoDual[101X
  
  [33X[1;0Y[29X[2XAddCoclosedCoevaluationForCoDual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedCoevaluationForCoDual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedCoevaluationForCoDual[110X.  Optionally,  a  weight (default: 100) can be
  specified which should roughly correspond to the computational complexity of
  the  function  (lower  weight  =  less complex = faster execution). [23XF: ( a )
  \mapsto \mathtt{CoclosedCoevaluationForCoDual}(a)[123X.[133X
  
  [1X1.14-216 AddCoclosedCoevaluationForCoDualWithGivenTensorProduct[101X
  
  [33X[1;0Y[29X[2XAddCoclosedCoevaluationForCoDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddCoclosedCoevaluationForCoDualWithGivenTensorProduct[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XCoclosedCoevaluationForCoDualWithGivenTensorProduct[110X.  Optionally,  a  weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster      execution).      [23XF:      (     s,     a,     r     )     \mapsto
  \mathtt{CoclosedCoevaluationForCoDualWithGivenTensorProduct}(s, a, r)[123X.[133X
  
  [1X1.14-217 AddInternalCoHomTensorProductCompatibilityMorphismInverse[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphismInverse[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphismInverse[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomTensorProductCompatibilityMorphismInverse[110X. Optionally, a weight
  (default:  100)  can  be  specified  which  should roughly correspond to the
  computational  complexity  of  the  function  (lower weight = less complex =
  faster        execution).        [23XF:       (       list       )       \mapsto
  \mathtt{InternalCoHomTensorProductCompatibilityMorphismInverse}(list)[123X.[133X
  
  [1X1.14-218 AddInternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddInternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XInternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less  complex  =  faster  execution).  [23XF:  (  source,  list, range ) \mapsto
  \mathtt{InternalCoHomTensorProductCompatibilityMorphismInverseWithGivenObjects}(source,
  list, range)[123X.[133X
  
  [1X1.14-219 AddIsomorphismFromInternalCoHomToTensorProductWithCoDualObject[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomToTensorProductWithCoDualObject[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromInternalCoHomToTensorProductWithCoDualObject[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromInternalCoHomToTensorProductWithCoDualObject[110X.  Optionally,  a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      b      )      \mapsto
  \mathtt{IsomorphismFromInternalCoHomToTensorProductWithCoDualObject}(a, b)[123X.[133X
  
  [1X1.14-220 AddIsomorphismFromTensorProductWithCoDualObjectToInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddIsomorphismFromTensorProductWithCoDualObjectToInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddIsomorphismFromTensorProductWithCoDualObjectToInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XIsomorphismFromTensorProductWithCoDualObjectToInternalCoHom[110X.  Optionally,  a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster       execution).       [23XF:       (      a,      b      )      \mapsto
  \mathtt{IsomorphismFromTensorProductWithCoDualObjectToInternalCoHom}(a, b)[123X.[133X
  
  [1X1.14-221 AddMorphismFromTensorProductToInternalCoHom[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalCoHom[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalCoHom[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromTensorProductToInternalCoHom[110X.  Optionally,  a  weight  (default:
  100)  can  be specified which should roughly correspond to the computational
  complexity of the function (lower weight = less complex = faster execution).
  [23XF: ( a, b ) \mapsto \mathtt{MorphismFromTensorProductToInternalCoHom}(a, b)[123X.[133X
  
  [1X1.14-222 AddMorphismFromTensorProductToInternalCoHomWithGivenObjects[101X
  
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalCoHomWithGivenObjects[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismFromTensorProductToInternalCoHomWithGivenObjects[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismFromTensorProductToInternalCoHomWithGivenObjects[110X.    Optionally,   a
  weight  (default:  100)  can be specified which should roughly correspond to
  the  computational complexity of the function (lower weight = less complex =
  faster     execution).     [23XF:     (     s,     a,    b,    r    )    \mapsto
  \mathtt{MorphismFromTensorProductToInternalCoHomWithGivenObjects}(s,  a,  b,
  r)[123X.[133X
  
  [1X1.14-223 AddMorphismToCoBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismToCoBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismToCoBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given function [23XF[123X to the category for the basic operation [10XMorphismToCoBidual[110X.
  Optionally,  a  weight  (default: 100) can be specified which should roughly
  correspond  to  the computational complexity of the function (lower weight =
  less    complex    =    faster    execution).    [23XF:    (    a    )   \mapsto
  \mathtt{MorphismToCoBidual}(a)[123X.[133X
  
  [1X1.14-224 AddMorphismToCoBidualWithGivenCoBidual[101X
  
  [33X[1;0Y[29X[2XAddMorphismToCoBidualWithGivenCoBidual[102X( [3XC[103X, [3XF[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XAddMorphismToCoBidualWithGivenCoBidual[102X( [3XC[103X, [3XF[103X, [3Xweight[103X ) [32X operation[133X
  [6XReturns:[106X  [33X[0;10Ynothing[133X
  
  [33X[0;0YThe  arguments  are  a  category [23XC[123X and a function [23XF[123X. This operation adds the
  given    function    [23XF[123X   to   the   category   for   the   basic   operation
  [10XMorphismToCoBidualWithGivenCoBidual[110X. Optionally, a weight (default: 100) can
  be specified which should roughly correspond to the computational complexity
  of  the function (lower weight = less complex = faster execution). [23XF: ( a, r
  ) \mapsto \mathtt{MorphismToCoBidualWithGivenCoBidual}(a, r)[123X.[133X
  
