Lie Algebras Given By Structure Coefficients¶
AUTHORS:
- Travis Scrimshaw (2013-05-03): Initial version
-
sage.algebras.lie_algebras.structure_coefficients.
LieAlgebraWithStructureCoefficients
¶ A Lie algebra with a set of specified structure coefficients.
The structure coefficients are specified as a dictionary \(d\) whose keys are pairs of basis indices, and whose values are dictionaries which in turn are indexed by basis indices. The value of \(d\) at a pair \((u, v)\) of basis indices is the dictionary whose \(w\)-th entry (for \(w\) a basis index) is the coefficient of \(b_w\) in the Lie bracket \([b_u, b_v]\) (where \(b_x\) means the basis element with index \(x\)).
INPUT:
R
– a ring, to be used as the base rings_coeff
– a dictionary, indexed by pairs of basis indices (see below), and whose values are dictionaries which are indexed by (single) basis indices and whose values are elements of \(R\)names
– list or tuple of stringsindex_set
– (default:names
) list or tuple of hashable and comparable elements
OUTPUT:
A Lie algebra over
R
which (as an \(R\)-module) is free with a basis indexed by the elements ofindex_set
. The \(i\)-th basis element is displayed using the namenames[i]
. If we let \(b_i\) denote this \(i\)-th basis element, then the Lie bracket is given by the requirement that the \(b_k\)-coefficient of \([b_i, b_j]\) iss_coeff[(i, j)][k]
ifs_coeff[(i, j)]
exists, otherwise-s_coeff[(j, i)][k]
ifs_coeff[(j, i)]
exists, otherwise \(0\).EXAMPLES:
We create the Lie algebra of \(\QQ^3\) under the Lie bracket defined by \(\times\) (cross-product):
sage: L = LieAlgebra(QQ, 'x,y,z', {('x','y'): {'z':1}, ('y','z'): {'x':1}, ('z','x'): {'y':1}}) sage: (x,y,z) = L.gens() sage: L.bracket(x, y) z sage: L.bracket(y, x) -z