Está decidindo se alterar uma entrada diminui a permanente de uma matriz na hierarquia polinomial?


11

Considere o seguinte problema: dada uma matriz , índices e um número inteiro . Substituir por e chamar nova matriz . É ?M∈{−m,…,0,…,m}n×ni,j∈{1,…,n}aM[i,j]aM^per(M)>per(M^)

Esse problema está na hierarquia polinomial?


4
Ele pode ser resolvido com duas chamadas para um oráculo #P ... Se estivesse no PH, isso implicaria que o PP também estivesse no PH ... No entanto, se o PP estiver no PH, o PH entraria em colapso. Então eu acho improvável que esteja no PH.
— Tayfun Pay

1
@TayfunPay Eu não acho que esse argumento esteja correto. O problema pode ser resolvido com 2 chamadas para #P, mas não pode ser descartado tão facilmente que existe um algoritmo mais simples que pode mostrar que ele está no PH. Você teria que mostrar que é difícil para o #P, por exemplo, reduzindo Permanente a ele.
— Jan Johannsen 15/02

8
Se você inserir a definição de permanente e simplificar a desigualdade resultante, seu problema se resume à questão de saber se a permanente de uma dada matriz (n-1) -por- (n-1) é estritamente positiva.
— Gamow

2
@ Gamow, e vice-versa, isto é, decidir se pode ser reduzido a esse problema. Dada uma matriz , construa adicionando uma linha no topo e uma coluna à esquerda com 1 no canto superior esquerdo e 0 no caso contrário. Agora seja a matriz onde a entrada superior esquerda foi substituída por . Então por multilinearidade e desenvolvendo a primeira coluna. Assim, se o problema de Turbo em , e retornar verdadeiro. PER(M)>0MM′M″M′−1PER(M″)=−PER(M′)=−PER(M)PER(M)>0M′(i,j)=(0,0)a=−1
— holf 15/02

@olf: Acho que você deve postar isso como resposta. Ela responde definitivamente à pergunta e, em seguida, a pergunta não aparecerá mais como "sem resposta".
— Joshua Grochow 30/09

Respostas:


10

Seu problema é equivalente ao teste, dado , seja .MPER(M)>0

Prova : Suponha que você receba e deseje decidir se . Construímos seguinte forma: É fácil ver que . Agora, defina como onde substituímos a entrada de por . Por multilinearidade, segue-se que . Assim, se e somente seMPER(M)>0M′

[10…00…M0]
PER(M)=PER(M′)M′^M′(0,0)M′−1PER(M)=PER(M′)=−PER(M′^)PER(M)>0PER(M′)>PER(M′^)

Agora vamos supor que você está dado , e e definir como na sua pergunta, ou seja, alterando para . Nós temos M(i,j)aM^M[i,j]a

PER(M)>PER(M^) iff∑σ∏k=1nM[k,σ(k)]>∑σ∏k=1nM^[k,σ(k)] iff∑σ,σ(i)=jM[i,j]∏k≠inM[k,σ(k)]>∑σ,σ(i)=ja∏k≠inM[k,σ(k)] iff(M[i,j]−a)⋅∑σ,σ(i)=j∏k≠inM[k,σ(k)]>0 iff(M[i,j]−a)⋅PER(M′)>0

onde é a matriz obtida de removendo a linha e a coluna . M′(n−1)×(n−1)Mij◻


Boa resposta, mas provavelmente vale a pena declarar explicitamente a resposta à pergunta do OP também.
— Stella Biderman
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.