Tensor product functorial construction

class sage.categories.tensor.CategoryWithTensorProduct(s=None)

Bases: sage.categories.category.Category

A category with tensor product is a category endowed with a tensor product functor (operation on its parents and on its elements).

Technically, let CClass be a class inheriting from CategoryWithTensorProduct. An instance C of CClass is a category.

CClass must implement a method tensor_product_category() which returns the category of tensor products of parents in C. With the default implementation of tensor_product_category(), it is sufficient to provide a class CClass.TensorProductCategory whose constructor takes as parameter the category C and returns the desired category.

If C is a subcategory of another category with tensor product D, C.tensor_product_category() is automatically considered as a subcategory of D.tensor_product_category()`.

See also CovariantFunctorialConstruction.

TESTS:

sage: TestSuite(CategoryWithTensorProduct()).run() # mostly to silence sage -coverage on this abstract class
class ElementMethods
tensor(*elements)

Returns the tensor product of its arguments, as an element of the tensor product of the parents of those elements.

EXAMPLES:

sage: C = AlgebrasWithBasis(QQ)
sage: A = C.example()
sage: (a,b,c) = A.algebra_generators()
sage: a.tensor(b, c)
B[word: a] # B[word: b] # B[word: c]

FIXME: is this a policy that we want to enforce on all parents?

class CategoryWithTensorProduct.ParentMethods
tensor(*parents)

Returns the tensor product of the parents

EXAMPLES:

sage: C = AlgebrasWithBasis(QQ)
sage: A = C.example(); A.rename("A")
sage: A.tensor(A,A)
A # A # A
CategoryWithTensorProduct.tensor_category(*args, **kwds)

The category of tensor products of parents in self

EXAMPLES:

sage: ModulesWithBasis(QQ).tensor_category()
Category of tensor products of modules with basis over Rational Field
class sage.categories.tensor.TensorCategory(category, name=None)

Bases: sage.categories.tensor.CategoryWithTensorProduct

An abstract base class for all TensorCategory’s defined in CategoryWithTensorProduct’s.

tensor_category()

Returns the category of tensor products of objects of self

By associativity of tensor products, this is self (a tensor product of tensor products of A’s is a tensor product of A’s)

EXAMPLES:

sage: ModulesWithBasis(QQ).tensor_category().tensor_category()
Category of tensor products of modules with basis over Rational Field
class sage.categories.tensor.TensorFunctor

Bases: sage.categories.category.CovariantFunctorialConstruction

A singleton class for the tensor functor

FunctorialCategory
alias of CategoryWithTensorProduct

Previous topic

Cartesian product functorial construction

Next topic

Dual functorial construction

This Page