Verificando se todos os produtos de um conjunto de matrizes acabam sendo iguais a zero


19

Estou interessado no seguinte problema: dadas as matrizes inteiras decidem se todo produto infinito dessas matrizes eventualmente é igual à matriz zero.A1,A2,,Ak

Isso significa exatamente o que você pensa: diremos que o conjunto de matrizes tem a propriedade de que todos os seus produtos acabam sendo iguais a zero se não existir uma sequência infinita , todos em , de modo que para todos os .i 1 , i 2 , i 3{ 1 , , k } A i 1 A i 2A i l0 l{A1,,Ak}i1,i2,i3{1,,k}

Ai1Ai2Ail0
l

O problema de decidir se todo produto eventualmente é igual a zero foi estudado antes? É decidível?

Parece que isso pode estar relacionado à mortalidade da matriz, que é indecidível, mas não vejo uma conexão clara.


Você precisa de algum tipo de propriedade de convergência no conjunto de matrizes para garantir que o produto infinito seja definido.
András Salamon

Você está operando em um campo finito ou números inteiros com crescimento ilimitado? O caso = 1 é interessante por si só. Usando números inteiros de -100 a 100 em uma matriz 5x5, qual é a maior potência que você pode obter antes de zerar? k
Chad Brewbaker

2
@YuvalFilmus - acredito que seja diferente da mortalidade. Deixe as dimensões das matrizes serem , para que apenas tenhamos números e suponha . Mortal? Sim porque . Todo produto é igual a zero? Não: não o produto . Por outro lado, se , você tem uma sequência que é mortal e todo produto é zero. A 0 = 0 , A 1 = 1 A 0 = 0 1 1 1 A 0 = 0 , A 1 = 01A0=0,A1=1A0=0111A0=0,A1=0
Robinson

1
@ChadBrewbaker - Eu estava pensando que as entradas das matrizes são apenas números inteiros. Suponho que seja interessante do ponto de vista de: quantas operações você precisa para verificar se a matriz é nilpotente? Observe que se é nilpotente, é fácil ver que onde é a dimensão de modo que provavelmente você poderia resolvê-lo ao quadrado da matriz vezes. Não faço ideia se é o melhor que você pode fazer. A A n = 0 n A log nk=1AAn=0nAlogn
Robinson

1
Curiosamente, isso é apenas em: arxiv.org/abs/1306.0729 . Em vez de perguntar se todos os produtos são eventualmente zero, eles perguntam se algum produto é eventualmente positivo. Eles mostram que o problema é difícil para o NP (ou pelo menos é o que eu entendo do resumo).
precisa saber é o seguinte

Respostas:


17

Sua pergunta é equivalente a gerar uma álgebra nilpotente , que por sua vez é equivalente a cada um dos nilpotentes . Portanto, não é apenas decidível, mas em tempo em que é o expoente da multiplicação de matrizes.A i ˜ O ( n 2 ω ) ωA1,,AkAiO~(n2ω)ω

Seja a álgebra associativa gerada pelo : ou seja, tome todas as combinações lineares do e todos os seus produtos finitos. é chamado nilpotent se houver algum tal que todo produto de elementos de seja zero.Um i A i A N N UmaAAiAiANNA

Primeiro, vamos ver por que sua condição implica que é nilpotente. Isto decorre de Konig Lema (compacidade): cada cadeia de comprimento n sobre o alfabeto { 1 , ... , k } corresponde a um produto de A 1 , ... , A k de comprimento n de uma forma óbvia. Considere a infinita árvore k- arraigada, cujos nós estão naturalmente em correspondência bijetiva com cadeias acima de { 1 , , k } . Considere a subárvore TAn{1,,k}A1,,Aknk{1,,k}Tque consiste naqueles nós em que o produto correspondente da é diferente de zero. O Lema de Konig diz que se T é infinito, então ele tem um caminho infinito (violando exatamente sua propriedade), portanto, T é finito. Podemos, então, tomar N ser o comprimento máximo de qualquer cadeia em T . Portanto, sua propriedade implica que A é nilpotente.AiTTNTA

O inverso também é verdadeiro, pois cada elemento de é uma combinação linear de produtos de A i .AAi

Em seguida, observe que é uma subalgebra de n × n matrizes e, portanto, é de dimensão finita.An×n

Finalmente: uma álgebra associativa de dimensão finita na característica zero tem uma base de elementos nilpotentes (pendulares ou não - esta é a parte que contradiz a resposta de Yuval) se for nilpotente (veja, por exemplo, aqui ).

Assim, para resolver o problema, encontrar uma base para a álgebra associativa gerado pelo (pela versão linear-álgebra de procura em largura) e verificar que cada matriz na base é nilpotent. O limite superior ˜ O ( n 2 ω ) vem da solução de um sistema de equações lineares em n 2 variáveis ​​na busca pela primeira vez. Como dim An 2, o BFS não pode durar muito, e como essas são n × n matrizes para verificar se uma matriz A é nilpotente, é necessário apenas verificar se A n =AiO~(n2ω)n2dimAn2n×nA .An=0


2
Você acha que existe uma maneira de mostrar isso sem usar nenhum princípio de escolha (mesmo um tão fraco quanto o lema de König, que é equivalente a )? ACω
András Salamon

2
@ Andras: Eu diria que é uma pergunta para Chris Conidis. Ele estudou questões como essa em matemática reversa (computável). Vou perguntar a ele e apontá-lo aqui.
Joshua Grochow

1
@robinson: 1) Sim, o problema é decidível, de fato, em tempo em que é o expoente da multiplicação de matrizes. Isso vem da solução de sistemas de equações lineares sobre ao fazer a primeira pesquisa de álgebra linear. 2) Sim, noção usual de base ao visualizar as matrizes como vetores em (ou acima de ou ). ω Q Q n 2 R CO(n2ω)ωQQn2RC
Joshua Grochow 23/05

1
Você começa com uma base de A . Agora você tentar encontrar matrizes A A e B B tal que A B ou B Um não é no espaço de B . Se tiver êxito, adicione o produto a B e continue. Caso contrário, multiplicando-se qualquer matriz no espaço de B por qualquer produto finito de matrizes em um sempre termina no espaço de B . Como a dimensão da álgebra é limitada, o processo termina (em no máximo n 2 etapas). BAAABBABBABBBABn2
Yuval Filmus

1
@robinson: Não. Se a álgebra é nilpotente, todos os elementos da álgebra são nilpotentes. Portanto, se você encontrar algum elemento não nulo-potente, a álgebra não é nilpotente (e então existem infinitos produtos de suas matrizes que nunca são zero).
Joshua Grochow

6

Eu obtive um algoritmo poli-tempo para esse problema (problema bastante trivial), ou seja, para verificar se o raio espectral da junta (JSR) é zero ou não, em 1995: http://en.wikipedia.org/wiki/Joint_spectral_radius

A história por trás do algoritmo é mais ou menos a seguinte: Blondel e Tsitsiklis afirmaram erroneamente que para matrizes booleanas verificando se JSR <1 é NP-HARD. Para qualquer conjunto de matrizes inteiras, o JSR é igual a zero ou maior ou igual a 1. Portanto, o exemplo de contador para a declaração deles foi o meu algoritmo (veja as erratas no artigo). A principal moral: consulte a Wikipedia primeiro!


5

A pergunta que você está fazendo é exatamente equivalente a decidir se o raio espectral da junta (JSR) do conjunto de matrizes é estritamente menor que um. A decidibilidade dessa questão permanece em aberto há algum tempo. (Na teoria do controle, isso é equivalente à decidibilidade da estabilidade de sistemas lineares comutados sob comutação arbitrária.)

Sabe-se que a seguinte variante de sua pergunta é indecidível: Dado um conjunto finito de matrizes quadradas, decida se todos os produtos permanecem delimitados; veja aqui .

A indecisão do acima exposto permanece válida mesmo se você tiver apenas 2 matrizes de tamanho 47x47: veja aqui .

Na linguagem JSR, a questão do teste "é JSR ?" é indecidível (consulte as referências acima), mas a decidibilidade do teste "é JSR < 1 ?" está aberto. A última pergunta está relacionada à chamada "conjectura racional da finitude": se a conjectura racional da finitude é verdadeira, então a pergunta que você está fazendo é decidível.1<1

Finalmente, a menos que P = NP, o JSR não seja aproximado em tempo polinomial (no sentido preciso definido neste artigo ).

Como resultado, uma das respostas acima, que afirma que um algoritmo eficiente deve ser falso.

No lado positivo, existem vários algoritmos (por exemplo, baseados em programação semidefinida) para aproximar o JSR. Os diferentes algoritmos vêm com diferentes garantias de desempenho. Veja, por exemplo, o seguinte (sem vergonha, por mim e pelos meus colegas - mas veja também as referências aqui ).

Em vários casos especiais, a pergunta que você está fazendo é um tempo polinomial decidível. Por exemplo, quando as matrizes são simétricas, ou classificam uma, ou se comutam.

Finalmente, um ótimo livro sobre o assunto é o seguinte .


Por favor, leia a declaração formal da pergunta que fiz - é não equivalente a decidir se a JSR é estritamente inferior a um. Você é, talvez, enganado pelo título da pergunta. Em resumo, estou perguntando sobre cada produto igual a zero em tempo finito , e não em um sentido assintótico.
Robinson

2
Então a pergunta que você está fazendo é muito mais simples. Os seguintes são equivalentes: (i) A condição que você define (ii) Todos os produtos finitos são nilpotentes (iii) JSR = 0 (iv) Todos os produtos de comprimento n são zero (n é a dimensão, isso é independente do número de matrizes k). A última condição obviamente implica decidibilidade e, se for verdade, você pode verificar a condição em tempo polinomial. Veja a Seção 2.3.1 do livro de Jungers, vinculada ao final do meu post. Minhas desculpas por pensar que você quis dizer a versão assintótica. (I foi enganado pela frase "todos os produtos, eventualmente, igual a zero".)
Amir Ali Ahmadi

Nesse caso, @AmirAliAhmadi não cobre a resposta de Joshua Grochow?
Suresh Venkat

2
Parece-me que sim, com um algoritmo diferente do que tenho em mente. (Mais uma vez, minhas desculpas por pensar que a pergunta era "todos os produtos convergem para zero" (ou seja, JSR <1?) Cuja capacidade de decisão está aberta.) Existem algumas diferenças com a resposta de Josué. (1) Na equivalência de (i) - (iv) no meu comentário anterior, não acho que o Lema de Konig precise ser usado. (2) Não entendo por que ele está usando combinações lineares das matrizes. (3) Copio abaixo um algoritmo alternativo simples da Seção 2.3.1 do livro de Jungers, atribuído ali a Leonid Gurvits.
Amir Ali Ahmadi

4
[continua de cima ...] Tudo o que precisamos verificar é se todos os produtos de comprimento são zero, mas existem k n tais matrizes. Para evitar isso, defina iterativamente as seguintes matrizes: X 0 = I , X j = k i = 1 A T i X j - 1 A i . Em seguida, um tem X n = Σ Um  produto de comprimento n A T A . Essa matriz pode ser calculada por k nnknX0=I, Xj=i=1kAiTXj1AiXn=A product of length nATAknmultiplicações de matrizes e é zero se e somente se todos os produtos de comprimento forem zero. n
Amir Ali Ahmadi

0

Editar: infelizmente esta resposta está incorreta. O erro é destacado abaixo. O argumento funciona se nos for permitido transpor as matrizes.

Começamos provando um lema.

Lema. Deixe ser um n × n matriz e deixar que N seja o n x n matriz com aqueles na diagonal secundário. Se A n t e N t A são nilpotentes para todos os t 0, então A = 0 . Conclusão correta: A é triangular superior com zeros na diagonal. (A conclusão original é recuperada se também nos é permitido multiplicar por potências de transposição de N. )An×nNn×nANtNtAt0A=0AN

Prova. Suponha, por exemplo, que e escreva A = ( a b c d e f g h i ) ,n=3 Começamos calculando A N 2 : A N 2 = ( 0 0 a 0 0 d 0 0 g ) . Essa matriz está na forma triangular e, portanto, se A N 2 é nilpotente, então g = 0 . Continue com A N 1 : A N 1 = ( 0

A=(abcdefghi),N=(010001000).
AN2
AN2=(00a00d00g).
AN2g=0AN1 Novamente, a matriz é na forma triangular, e por isso, seumaN1é então nilpotentesd=h=0. Continuando, AN0=( a b c 0 e f 0 0 i ). Como antes, concluímos quea=e
AN1=(0ab0de0gh)=(0ab0de00h).
AN1d=h=0
AN0=(abc0ef00i).
e, portanto, A é triangular superior com zeros na diagonal.a=e=i=0A

Se considerarmos agora , concluímos que A é triangular inferior com zeros na diagonal. Na verdade, nós não temos nada de novo a partir considerando N t A . Portanto A = 0 . N2A,N1A,N0AANtAA=0

A1,,Aki1,[k]Ai1Aim=0mAiA1A2A2A1A1V1VtViA1A2A2A1dimVi>10ViA1=NA20t0A2A1tA1tA2

Resumindo, a propriedade P mantém-se se todas as matrizes forem nilpotentes e todas elas comutarem.


4
N2Ag=0N1Ad=h=0N0Aa=e=i=0AA

De fato, esta resposta não está correta. Se ninguém mais o fizer, postarei um contra-exemplo no lema e na afirmação final quando chegar em casa hoje mais tarde.
22713 robinson

5
Como de costume, é quando algo é reivindicado, mas não provado, que a prova falha. Oh bem ...
Yuval Filmus

1
A0=(010001000),A1=(011000000)
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.