Hopf algebras with basis#
- class sage.categories.hopf_algebras_with_basis.HopfAlgebrasWithBasis(base_category)#
Bases:
sage.categories.category_with_axiom.CategoryWithAxiom_over_base_ring
The category of Hopf algebras with a distinguished basis
EXAMPLES:
sage: C = HopfAlgebrasWithBasis(QQ) sage: C Category of hopf algebras with basis over Rational Field sage: C.super_categories() [Category of hopf algebras over Rational Field, Category of bialgebras with basis over Rational Field]
We now show how to use a simple Hopf algebra, namely the group algebra of the dihedral group (see also AlgebrasWithBasis):
sage: A = C.example(); A An example of Hopf algebra with basis: the group algebra of the Dihedral group of order 6 as a permutation group over Rational Field sage: A.__custom_name = "A" sage: A.category() Category of finite dimensional hopf algebras with basis over Rational Field sage: A.one_basis() () sage: A.one() B[()] sage: A.base_ring() Rational Field sage: A.basis().keys() Dihedral group of order 6 as a permutation group sage: [a,b] = A.algebra_generators() sage: a, b (B[(1,2,3)], B[(1,3)]) sage: a^3, b^2 (B[()], B[()]) sage: a*b B[(1,2)] sage: A.product # todo: not quite ... <bound method MagmaticAlgebras.WithBasis.ParentMethods._product_from_product_on_basis_multiply of A> sage: A.product(b,b) B[()] sage: A.zero().coproduct() 0 sage: A.zero().coproduct().parent() A # A sage: a.coproduct() B[(1,2,3)] # B[(1,2,3)] sage: TestSuite(A).run(verbose=True) running ._test_additive_associativity() . . . pass running ._test_an_element() . . . pass running ._test_antipode() . . . pass running ._test_associativity() . . . pass running ._test_cardinality() . . . pass running ._test_category() . . . pass running ._test_characteristic() . . . pass running ._test_construction() . . . pass running ._test_distributivity() . . . pass running ._test_elements() . . . Running the test suite of self.an_element() running ._test_category() . . . pass running ._test_eq() . . . pass running ._test_new() . . . pass running ._test_nonzero_equal() . . . pass running ._test_not_implemented_methods() . . . pass running ._test_pickling() . . . pass pass running ._test_elements_eq_reflexive() . . . pass running ._test_elements_eq_symmetric() . . . pass running ._test_elements_eq_transitive() . . . pass running ._test_elements_neq() . . . pass running ._test_eq() . . . pass running ._test_new() . . . pass running ._test_not_implemented_methods() . . . pass running ._test_one() . . . pass running ._test_pickling() . . . pass running ._test_prod() . . . pass running ._test_some_elements() . . . pass running ._test_zero() . . . pass sage: A.__class__ <class 'sage.categories.examples.hopf_algebras_with_basis.MyGroupAlgebra_with_category'> sage: A.element_class <class 'sage.categories.examples.hopf_algebras_with_basis.MyGroupAlgebra_with_category.element_class'>
Let us look at the code for implementing A:
sage: A?? # todo: not implemented
- class ElementMethods#
Bases:
object
- Filtered#
alias of
sage.categories.filtered_hopf_algebras_with_basis.FilteredHopfAlgebrasWithBasis
- FiniteDimensional#
alias of
sage.categories.finite_dimensional_hopf_algebras_with_basis.FiniteDimensionalHopfAlgebrasWithBasis
- class ParentMethods#
Bases:
object
- antipode()#
The antipode of this Hopf algebra.
If
antipode_basis()
is available, this constructs the antipode morphism fromself
toself
by extending it by linearity. Otherwise,self.antipode_by_coercion()
is used, if available.EXAMPLES:
sage: A = HopfAlgebrasWithBasis(ZZ).example(); A An example of Hopf algebra with basis: the group algebra of the Dihedral group of order 6 as a permutation group over Integer Ring sage: A = HopfAlgebrasWithBasis(QQ).example() sage: [a,b] = A.algebra_generators() sage: a, A.antipode(a) (B[(1,2,3)], B[(1,3,2)]) sage: b, A.antipode(b) (B[(1,3)], B[(1,3)])
- antipode_on_basis(x)#
The antipode of the Hopf algebra on the basis (optional)
INPUT:
x
– an index of an element of the basis ofself
Returns the antipode of the basis element indexed by
x
.If this method is implemented, then
antipode()
is defined from this by linearity.EXAMPLES:
sage: A = HopfAlgebrasWithBasis(QQ).example() sage: W = A.basis().keys(); W Dihedral group of order 6 as a permutation group sage: w = W.gen(0); w (1,2,3) sage: A.antipode_on_basis(w) B[(1,3,2)]
- class TensorProducts(category, *args)#
Bases:
sage.categories.tensor.TensorProductsCategory
The category of hopf algebras with basis constructed by tensor product of hopf algebras with basis
- class ElementMethods#
Bases:
object
- class ParentMethods#
Bases:
object
- extra_super_categories()#
EXAMPLES:
sage: C = HopfAlgebrasWithBasis(QQ).TensorProducts() sage: C.extra_super_categories() [Category of hopf algebras with basis over Rational Field] sage: sorted(C.super_categories(), key=str) [Category of hopf algebras with basis over Rational Field, Category of tensor products of algebras with basis over Rational Field, Category of tensor products of hopf algebras over Rational Field]
- example(G=None)#
Returns an example of algebra with basis:
sage: HopfAlgebrasWithBasis(QQ['x']).example() An example of Hopf algebra with basis: the group algebra of the Dihedral group of order 6 as a permutation group over Univariate Polynomial Ring in x over Rational Field
An other group can be specified as optional argument:
sage: HopfAlgebrasWithBasis(QQ).example(SymmetricGroup(4)) An example of Hopf algebra with basis: the group algebra of the Symmetric group of order 4! as a permutation group over Rational Field