next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
TensorComplexes :: LabeledModule

LabeledModule -- the class of free modules with a labeled basis

Description

A labeled module F is a free module together with two additional pieces of data: a basisList which corresponds to the basis of F, and a list of underlyingModules which were used in the construction of F. The constructor labeledModule can be used to construct a labeled module from a free module. The call labeledModule E, where E is a free module, returns a labeled module with basisList {1,…, rank E} and underlyingModules {E}

For example if A,B are of type LabeledModule, then F=tensorProduct(A,B) constructs the LabeledModule F=A⊗B with basisList equal to the list of pairs {a,b} where a belongs to the basis list of A and b belongs to the basis list of b. The list of underlyingModules of F is {A,B}.

Certain functors which are the identity in the category of modules are non-trivial isomorphisms in the category of labeled modules. For example, if F is a labeled module with basis list {0,1} then tensorProduct F is a labeled free module with basis list {{0},{1}}. Similarly, one must be careful when applying the functors exteriorPower and symmetricPower. For a ring S, the multiplicative unit for tensor product is the rank 1 free S-module whose generator is labeled by {}. This is constructed by labeledModule S.

Functions and methods returning a free module with labeled basis :

Methods that use a free module with labeled basis :

For the programmer

The object LabeledModule is a type, with ancestor classes HashTable < Thing.