# Super Algebras#

class sage.categories.super_algebras.SuperAlgebras(base_category)[source]#

The category of super algebras.

An $$R$$-super algebra is an $$R$$-super module $$A$$ endowed with an $$R$$-algebra structure satisfying

$A_0 A_0 \subseteq A_0, \qquad A_0 A_1 \subseteq A_1, \qquad A_1 A_0 \subseteq A_1, \qquad A_1 A_1 \subseteq A_0$

and $$1 \in A_0$$.

EXAMPLES:

sage: Algebras(ZZ).Super()
Category of super algebras over Integer Ring

>>> from sage.all import *
>>> Algebras(ZZ).Super()
Category of super algebras over Integer Ring

class ParentMethods[source]#

Bases: object

Return the associated graded algebra to self.

Warning

Because a super module $$M$$ is naturally $$\ZZ / 2 \ZZ$$-graded, and graded modules have a natural filtration induced by the grading, if $$M$$ has a different filtration, then the associated graded module $$\operatorname{gr} M \neq M$$. This is most apparent with super algebras, such as the differential Weyl algebra, and the multiplication may not coincide.

tensor(*parents, **kwargs)[source]#

Return the tensor product of the parents.

EXAMPLES:

sage: # needs sage.combinat sage.modules
sage: A.<x,y,z> = ExteriorAlgebra(ZZ); A.rename("A")
sage: T = A.tensor(A,A); T
A # A # A
True
False
sage: A.rename(None)

>>> from sage.all import *
>>> # needs sage.combinat sage.modules
>>> A = ExteriorAlgebra(ZZ, names=('x', 'y', 'z',)); (x, y, z,) = A._first_ngens(3); A.rename("A")
>>> T = A.tensor(A,A); T
A # A # A
True
False
>>> A.rename(None)


This also works when the other elements do not have a signed tensor product (Issue #31266):

sage: # needs sage.combinat sage.modules
sage: a = SteenrodAlgebra(3).an_element()
sage: M = CombinatorialFreeModule(GF(3), ['s', 't', 'u'])
sage: s = M.basis()['s']
sage: tensor([a, s])                                                    # needs sage.rings.finite_rings
2*Q_1 Q_3 P(2,1) # B['s']

>>> from sage.all import *
>>> # needs sage.combinat sage.modules
>>> a = SteenrodAlgebra(Integer(3)).an_element()
>>> M = CombinatorialFreeModule(GF(Integer(3)), ['s', 't', 'u'])
>>> s = M.basis()['s']
>>> tensor([a, s])                                                    # needs sage.rings.finite_rings
2*Q_1 Q_3 P(2,1) # B['s']

class SignedTensorProducts(category, *args)[source]#
extra_super_categories()[source]#

EXAMPLES:

sage: Coalgebras(QQ).Graded().SignedTensorProducts().extra_super_categories()
[Category of graded coalgebras over Rational Field]
[Category of graded coalgebras over Rational Field]

>>> from sage.all import *
[Category of graded coalgebras over Rational Field]
[Category of graded coalgebras over Rational Field]


Meaning: a signed tensor product of coalgebras is a coalgebra

class SubcategoryMethods[source]#

Bases: object

Supercommutative()[source]#

Return the full subcategory of the supercommutative objects of self.

A super algebra $$M$$ is supercommutative if, for all homogeneous $$x,y\in M$$,

$x \cdot y = (-1)^{|x||y|} y \cdot x.$

REFERENCES:

Wikipedia article Supercommutative_algebra

EXAMPLES:

sage: Algebras(ZZ).Super().Supercommutative()
Category of supercommutative algebras over Integer Ring
sage: Algebras(ZZ).Super().WithBasis().Supercommutative()
Category of supercommutative algebras with basis over Integer Ring

>>> from sage.all import *
>>> Algebras(ZZ).Super().Supercommutative()
Category of supercommutative algebras over Integer Ring
>>> Algebras(ZZ).Super().WithBasis().Supercommutative()
Category of supercommutative algebras with basis over Integer Ring

Supercommutative[source]#
extra_super_categories()[source]#

EXAMPLES:

sage: Algebras(ZZ).Super().super_categories() # indirect doctest
[Category of graded algebras over Integer Ring,
Category of super modules over Integer Ring]

>>> from sage.all import *
>>> Algebras(ZZ).Super().super_categories() # indirect doctest
[Category of graded algebras over Integer Ring,
Category of super modules over Integer Ring]