Como posso calcular uma base para uma álgebra de Lie de matriz, considerando um conjunto finito de geradores?

11

Dado um conjunto arbitrário de matrizes complexas quadradas (numéricas) , estou interessado em calcular a álgebra de Lie de matriz real gerada por , chame-a . Ou seja, eu gostaria de uma base para onde é definido recursivamente como e para .A G A G A = s p uma N R { B : B k = 1 C k } C K C 1 = A C k + 1 = { [ X , Y ] : X , Y A={A1,A2,,Am}ALA

LA=spanR{B:Bk=1Ck}
CkC1=Ak1Ck+1={[X,Y]:X,Yj=1kCj}k1

Esse cálculo surge na teoria de controle (quântico).

No momento, estou usando um método encontrado aqui, que pesquisa somente entre colchetes repetidos de Lie (ou seja, no formato )) e é garantido que será encerrado. No entanto, estou interessado em saber se existem outros métodos (mais rápidos). Talvez usando bases de P. Hall? Talvez um algoritmo recursivo? Meu idioma padrão no momento é Matlab.[Aj1,[Aj2,[Aj3,[Ajn1,Ajn]]]]

Ian Hincks
fonte
Eu estou supondo que seus geradores originais são hermitianos. Isso é verdade? Nesse caso, eu imaginaria que o primeiro passo seria comparar os espaços próprios dos geradores, já que os comutadores são diferentes de zero quando os espaços próprios diferem.
Jack Poulson
@JackPoulson Sim, os A são de Hamiltonianos, e assim também são hermitianos (não Hermitianos porque são multiplicados pelo i na equação de Schroedinger). Não sei ao certo por que esse seria um bom primeiro passo. Calcular os comutadores e verificar se eles são diferentes de zero seria mais rápido do que mexer com espaços próprios?
Ian Hincks
1
Para um único nível de comutadores, provavelmente sim. Mas há uma explosão combinatória quando você começa a considerar vários níveis de comutadores. Não conheço um algoritmo, mas geralmente é uma boa idéia explorar o máximo possível de estrutura. Eu pensaria cuidadosamente se você conhecia outras propriedades que também relacionam seus geradores.
Jack Poulson

Respostas:

3

Este link descreve como fazer isso usando bases de P. Hall.

Em uma nota apenas um pouco relacionada, se eu estivesse implementando isso, me preocuparia com a instabilidade numérica de testar a dependência linear. Certifique-se de usar um método para testar a independência de novas matrizes que permita imprecisão numérica - talvez comparando a norma de com a norma de , onde é a projeção no espaço das matrizes que você encontrou antes .A pAp(A)Ap

Erik P.
fonte
@ EricP Obrigado pelo link, muito útil. Eu só tinha visto as bases de P. Hall no contexto de álgebras de Lie livres, das quais não tenho uma compreensão firme, e fico feliz em saber que minha intuição de me livrar das comutações linearmente dependentes estava correta. Precisão numérica é algo com o qual estou muito preocupado. Você quer dizer que eu deveria comparar a norma de p (A) à norma de A? E que isso seria mais estável do que comparar a norma de Ap (A) a 0?
Ian Hincks
@IanHincks: O que eu quis dizer foi comparar com , mas isso não foi baseado em pensamentos particularmente profundos. Você precisará experimentar. O critério numericamente melhor pode ser exibir todas as matrizes como vetores e fazer um SVD esparso da matriz retangular obtida colocando-as próximas umas das outras e descartando-as o "vetor" adicionado por último se o menor valor singular for muito pequeno. Mas isso será muito caro computacionalmente. Primeiro, veja se você realmente precisa - e se sim, talvez faça um teste barato primeiro. Um R n 2 n 2 × kAp(A)ARn2n2×k
Erik P.