Algebras

AUTHORS:

  • David Kohel & William Stein (2005): initial revision
  • Nicolas M. Thiery (2008-2011): rewrote for the category framework
class sage.categories.algebras.Algebras(base_category)

Bases: sage.categories.category_with_axiom.CategoryWithAxiom_over_base_ring

The category of associative and unital algebras over a given base ring.

An associative and unital algebra over a ring \(R\) is a module over \(R\) which is itself a ring.

Warning

Algebras will be eventually be replaced by magmatic_algebras.MagmaticAlgebras for consistency with e.g. Wikipedia article Algebras which assumes neither associativity nor the existence of a unit (see trac ticket #15043).

Todo

Should \(R\) be a commutative ring?

EXAMPLES:

sage: Algebras(ZZ)
Category of algebras over Integer Ring
sage: sorted(Algebras(ZZ).super_categories(), key=str)
[Category of associative algebras over Integer Ring,
 Category of rings,
 Category of unital algebras over Integer Ring]

TESTS:

sage: TestSuite(Algebras(ZZ)).run()
class CartesianProducts(category, *args)

Bases: sage.categories.cartesian_product.CartesianProductsCategory

The category of algebras constructed as cartesian products of algebras

This construction gives the direct product of algebras. See discussion on:

extra_super_categories()

A cartesian product of algebras is endowed with a natural algebra structure.

EXAMPLES:

sage: C = Algebras(QQ).CartesianProducts()
sage: C.extra_super_categories()
[Category of algebras over Rational Field]
sage: sorted(C.super_categories(), key=str)
[Category of Cartesian products of commutative additive groups,
 Category of Cartesian products of distributive magmas and additive magmas,
 Category of Cartesian products of monoids,
 Category of algebras over Rational Field]
Algebras.Commutative

alias of CommutativeAlgebras

class Algebras.DualObjects(category, *args)

Bases: sage.categories.dual.DualObjectsCategory

TESTS:

sage: from sage.categories.covariant_functorial_construction import CovariantConstructionCategory
sage: class FooBars(CovariantConstructionCategory):
...       _functor_category = "FooBars"
sage: Category.FooBars = lambda self: FooBars.category_of(self)
sage: C = FooBars(ModulesWithBasis(ZZ))
sage: C
Category of foo bars of modules with basis over Integer Ring
sage: C.base_category()
Category of modules with basis over Integer Ring
sage: latex(C)
\mathbf{FooBars}(\mathbf{ModulesWithBasis}_{\Bold{Z}})
sage: import __main__; __main__.FooBars = FooBars # Fake FooBars being defined in a python module
sage: TestSuite(C).run()
extra_super_categories()

Returns the dual category

EXAMPLES:

The category of algebras over the Rational Field is dual to the category of coalgebras over the same field:

sage: C = Algebras(QQ)
sage: C.dual()
Category of duals of algebras over Rational Field
sage: C.dual().extra_super_categories()
[Category of coalgebras over Rational Field]

Warning

This is only correct in certain cases (finite dimension, ...). See trac ticket #15647.

class Algebras.ElementMethods
Algebras.Graded

alias of GradedAlgebras

class Algebras.TensorProducts(category, *args)

Bases: sage.categories.tensor.TensorProductsCategory

TESTS:

sage: from sage.categories.covariant_functorial_construction import CovariantConstructionCategory
sage: class FooBars(CovariantConstructionCategory):
...       _functor_category = "FooBars"
sage: Category.FooBars = lambda self: FooBars.category_of(self)
sage: C = FooBars(ModulesWithBasis(ZZ))
sage: C
Category of foo bars of modules with basis over Integer Ring
sage: C.base_category()
Category of modules with basis over Integer Ring
sage: latex(C)
\mathbf{FooBars}(\mathbf{ModulesWithBasis}_{\Bold{Z}})
sage: import __main__; __main__.FooBars = FooBars # Fake FooBars being defined in a python module
sage: TestSuite(C).run()
class ElementMethods
class Algebras.TensorProducts.ParentMethods
Algebras.TensorProducts.extra_super_categories()

EXAMPLES:

sage: Algebras(QQ).TensorProducts().extra_super_categories()
[Category of algebras over Rational Field]
sage: Algebras(QQ).TensorProducts().super_categories()
[Category of algebras over Rational Field]

Meaning: a tensor product of algebras is an algebra

Algebras.WithBasis

alias of AlgebrasWithBasis

Previous topic

Algebra modules

Next topic

Algebras With Basis

This Page