Confusion over classical Lie algebras

51 views
Skip to first unread message

Linden Disney

unread,
Nov 28, 2025, 7:14:22 AM (5 days ago) Nov 28
to sage-devel
I am finding an inconsistency between the conventions for the Chevalley basis in https://doc.sagemath.org/html/en/reference/algebras/sage/algebras/lie_algebras/classical_lie_algebra.html#sage.algebras.lie_algebras.classical_lie_algebra.LieAlgebraChevalleyBasis and the (co)highest root. Namely consider the following code

ct = ['C', 2]
rank = ct[1]
g = LieAlgebra(QQ, cartan_type=ct, representation='matrix')

# We get the basis elements e_Theta, f_Theta, and calculate their commutator
e_Theta, f_Theta = [g.highest_root_basis_elt(pos=TF) for TF in [True, False]]
h_Theta = e_Theta.bracket(f_Theta)

# We calculate h_Theta alternatively by the definition in terms of coroots,
Theta_check = RootSystem(ct).root_lattice().cohighest_root()
h_Theta_def = sum(Theta_check[i]*g.h(i) for i in range(1, rank+1))

scale_dict = {'A':1, 'B':4, 'C':4^(rank-1), 'D':1, 'E':1, 'F':64, 'G':36}
h_Theta == scale_dict[ct[0]]*h_Theta_def

This shows an inconsistent scaling occuring for Lie algebras which aren't of type ADE. Have I misunderstood some part of the conventions (the classical lie algebra doc page does have some typsetting issues, which someone, perhaps me, should address in a small ticket) or is there an issue with the scale of the basis elements? 

Travis Scrimshaw

unread,
Nov 29, 2025, 3:21:35 PM (3 days ago) Nov 29
to sage-devel
You’re using the matrix representation, which is not the Chevalley basis (as linked). So I don’t see the inconsistency right now as the element constructed in g_{\theta} can be a scalar multiple I think. Or have I overly simplified something? Feel free to email me directly and/or cc me on any Lie algebra tickets. I’m always happy to improve the Lie algebras in Sage. (Any errors are almost certainly my fault anyways.)

Best,
Travis
Reply all
Reply to author
Forward
0 new messages