I'm interested in writing GAP code to compute the inner automorphism group of a finite Lie algebra. (I'd like to be able to group conjugate subalgebras together.) I've had trouble finding good references on the topic, and I'm getting an unexpectedly large group in testing.
Let me review what I know. I'm not an expert on Lie theory, so apologies if any of this is terribly naive.
For a complex Lie algebra, computing the inner automorphism group is well-established. The inner automorphism group is generated by the exponentials of the adjoints of the elements of the Lie algebra. Thus, $$\operatorname{Inn}\mathfrak{g} = \langle I + A + \frac{A^2}{2!} + \frac{A^3}{3!} + \cdots\rangle,$$ where $A = \operatorname{ad} x$, taken over all $x \in \mathfrak{g}$.
In passing to rational Lie algebras, one gives up convergent limits. The usual thing to do seems to be to restrict to nilpotent elements (those whose adjoints are nilpotent matrices), so that the exponential has only finitely many terms. See e.g. https://www.encyclopediaofmath.org/index.php/Inner_automorphism .
In passing to fields of prime order $p$, or more generally those of characteristic $p$, one gives up well-defined division by $p$. I understand that one gets around this by pulling the matrix entries back to $\mathbb{Z}$, computing the exponential over $\mathbb{Z}$ (again, restricting to nilpotent adjoints), then taking the result $\mod p$.
I implemented the latter exponentiation in GAP for fields of prime order. (Code omitted for the time being.) Since GAP wants Lie algebras to act on the left, but groups to act on the right, the correct matrix for basis $B$ is computed by:
LieInnerAutomorphismMatrix:=function(B, x)
Since GAP adjoint matrices act on the left, we transpose to act on right
return ExponentialMap(TransposedMat(-AdjointMatrix(B, x))); end;
An inefficient-but-working way to compute the group generated by exponentials of nilpotent adjoints is:
nilpotents:=Filtered(L, x->IsNilpotentElement(L,x)); B:=Basis(L);
generators:=List(nilpotents, x->LieInnerAutomorphismMatrix(B, x));
G:=Group(generators);
I tested my code on $sl(2,3)$, and got $PSL(2,3)$. So far so good.
Then I tested on $sl(3,3)$. I get a group of order 9285337152 (!!). The group in question is an extension of an elementary abelian 3-group by the exceptional Lie-type group $G(2,3)$. For comparison, $GL(3,3)$ has order 11232.
Incidentally, all nilpotent adjoints over $sl(3,3)$ have order at most 2, so the 'standard' matrix exponentiation formula (avoiding conversion to/from $\mathbb{Z}$) also works; it gives the same answer.
My questions are:
- Is there any possibility that this is right, and the group of inner automorphisms of $sl(3,3)$ really has order 9285337152? If so, the group seems like it must be too big to be interesting -- what should I be computing instead?
- Is there a good place to read about inner automorphisms and similar topics for finite Lie algebras? (Preferably something on the textbook level, or otherwise aimed at nonexperts.)
As far as Question 1 goes, I guess that if I restricted the situation further, I could compute the Chevallay group. I'd like to be able to deal with an arbitrary (finite) Lie algebra, however.