Finite-Dimensional Algebras

sage.algebras.finite_dimensional_algebras.finite_dimensional_algebra.FiniteDimensionalAlgebra

Create a finite-dimensional \(k\)-algebra from a multiplication table.

INPUT:

  • k – a field
  • table – a list of matrices
  • names – (default: 'e') string; names for the basis elements
  • assume_associative – (default: False) boolean; if True, then the category is set to category.Associative() and methods requiring associativity assume this
  • category – (default: MagmaticAlgebras(k).FiniteDimensional().WithBasis()) the category to which this algebra belongs

The list table must have the following form: there exists a finite-dimensional \(k\)-algebra of degree \(n\) with basis \((e_1, \ldots, e_n)\) such that the \(i\)-th element of table is the matrix of right multiplication by \(e_i\) with respect to the basis \((e_1, \ldots, e_n)\).

EXAMPLES:

sage: A = FiniteDimensionalAlgebra(GF(3), [Matrix([[1, 0], [0, 1]]), Matrix([[0, 1], [0, 0]])])
sage: A
Finite-dimensional algebra of degree 2 over Finite Field of size 3
sage: TestSuite(A).run()

sage: B = FiniteDimensionalAlgebra(QQ, [Matrix([[1,0,0], [0,1,0], [0,0,0]]), Matrix([[0,1,0], [0,0,0], [0,0,0]]), Matrix([[0,0,0], [0,0,0], [0,0,1]])])
sage: B
Finite-dimensional algebra of degree 3 over Rational Field