An algorithm to compare two representations of a simple Lie algebra? I have two representations of a simple (complex or real) finite-dimensional Lie algebra $S$, both given in terms of their structure constants on a given basis.


*

*the first one is the adjoint representation on $S$ itself, we write it: $s \in S\mapsto A(s) \in GL(S)$

*the second one is on a given vector space $V$, we write it: $s \in S \mapsto B(s) \in GL(V)$


Would you know an algorithm (or an automatic method) to:


*

*determine if the two representations of $S$ on $S$ and $V$ are isomorphic,

*and if they are, automatically compute an isomorphism of representations between them?


An isomorphism of $S$-representations $L \in GL$ is defined as: $\forall s \in S, L.A(s)=B(s).L$. Could we use the theory on similar matrices for example?
Many thanks in advance.
 A: Working over $\mathbb{C}$, the simplicity of $S$ implies that the adjoint representation is irreducible. Picking a Cartan subalgebra of $S$ and a collection of positive roots, it follows that the adjoint representation is determined up to isomorphism by its highest weight (ie. highest root).
So, perhaps you could begin by determining whether your second representation is irreducible. If it is reducible, then your representations cannot be isomorphic. If it is irreducible, then try to find its highest weight. If this agrees with the highest root, then your representations are isomorphic.
A: In general, we can write down the polynomial equations for two $S$-modules being isomorphic.  By considering characteristic polynomials of similar matrices one can sometimes get necessary conditions which simplify the equations. Also, the non-vanishing of the determinant is useful (the morphism is bijective).
If the dimension of $S$ is not too high, then the equations can just be solved by computing a Groebner basis. This works in the same way as testing Lie algebras for isomorphism. The book of Willem de Graaf has a discussion on this.
Of course, if one has additional information in form of invariants which are easy to compute, this will make the computations much easier. Also, the dimensions of the cohomology groups $H^n(L,M)$ are useful invariants. 
Sometimes however this does not help too much, e.g., the invariants could just be identical.
