new LieAlgebra from M
If M is a valid Cartan matrix, it will reorder if needed the rows/columns of M to a standard form and then output the corresponding Lie algebra g.
i1 : M = matrix {{2, 0, -3, 0}, {0, 2, 0, -1}, {-1, 0, 2, 0}, {0, -1, 0, 2}} o1 = | 2 0 -3 0 | | 0 2 0 -1 | | -1 0 2 0 | | 0 -1 0 2 | 4 4 o1 : Matrix ZZ <-- ZZ
i2 : h := new LieAlgebra from M o2 = 𝔤 ++ 𝔞 2 2 o2 : LieAlgebra
i3 : cartanMatrix h o3 = | 2 -1 0 0 | | -3 2 0 0 | | 0 0 2 -1 | | 0 0 -1 2 | 4 4 o3 : Matrix ZZ <-- ZZ