Questa domanda ha due parti: in primo luogo, il problema è in NP, e in secondo luogo, NP è difficile?
Per la prima parte, ho una risposta positiva con una prova non ovvia. (Grazie a Suresh per aver segnalato un errore precedente.)
Considera il seguente modo per formalizzare la domanda come un problema decisionale:
COMPLETAMENTO QUADRATO MAGICO SENZA RESTRI
Ingresso: numero intero positivo n dato in unario, elenco di numeri interi con le loro posizioni in una griglia per n Domanda: esistono numeri interi per le posizioni rimanenti nella griglia, in modo che la disposizione formi un quadrato magico ?nn
Se aggiungiamo la restrizione che ciascuno degli interi deve verificarsi esattamente una volta nel quadrato magico, allora il problema decisionale MAGIC SQUARE COMPLETION che ne risulta è ovviamente in NP. Ladefinizione di un quadrato magico nell'Encyclopædia Britannica del 1911, a seguito diEulero, ha questa restrizione; al contrario, l'articolo di Wikipedia attualmente utilizza la terminologia "quadrato magico normale" e riserva "quadrato magico" per la versione senza restrizioni.1,2,…,n2
Almeno con una griglia per nnndevono essere indicati n numeri, altrimenti la risposta è banalmente "SÌ" per la versione senza restrizioni. Si può quindi presumere che la dimensione dell'ingresso richieda più di n bit in questo caso. Per la versione normale, è possibile che ci siano input che richiedono pochi bit ma che non hanno soluzione; per evitare tali complicazioni ho specificato che n è dato in unario.nnn
L'argomento utilizza un limite alla possibile dimensione di numeri interi che compaiono nelle soluzioni. Nel caso normale questo limite è ovviamente , ma nel caso generale non è a priori ovvio che tale limite esiste. Si scopre che esiste un limite esponenziale.n2
Teorema ( Tyszka, Teorema 12 ): Qualsiasi sistema di equazioni di Dihanthant che coinvolgono equazioni della forma e x i = x j + x k , per i , j , k ∈ { 1 , 2 , … , n } , sia non ha una soluzione intera o una soluzione in cui ogni x i è un numero intero e al massimo √xi=1xi=xj+xki,j,k∈{1,2,…,n}xiin valore assoluto.5–√n−1
Questo è apparso anche come Teorema 4.7 in:
Cipu ha recentemente annunciato un limite asintoticamente migliore di . (Si noti che il limite più piccolo possibile è 2 n - 1. ) L'argomento si basa su un limite sul determinante di una matrice, dovuto a Waldi.2n2n−1
Teorema (Cipu, 2011): Qualsiasi sistema di equazioni di Dihanthant che coinvolge equazioni della forma e x i = x j + x k , per i , j , k ∈ { 1 , 2 , … , n } , ha nessuna soluzione intera o ha una soluzione in cui ogni x i è un numero intero e al massimo 2 n in valore assoluto.xi=1xi=xj+xki,j,k∈{1,2,…,n}xi2n
Ancora più recentemente, Freitas, Friedland e Porta hanno mostrato che il limite valido, come corollario del loro più generale Teorema 1.1.2n−1
Ciò produce quanto segue:
Corollario: se un'istanza di COMPLETAMENTO SQUARE MAGIC SENZA RISTRUTTURA della dimensione ha una soluzione, allora ha una soluzione che utilizza solo numeri fino a 2 O ( N 2 ) .N2O(N2)
Ciò significa che si può usare lo spazio per indovinare una soluzione fino al limite, e quindi verificare nel tempo O ( N 8 ) se si tratta di una soluzione. Il polinomio preciso dipende dal fatto che si usi il risultato di Tyszka o Cipu per il limite e da come si esprima il sistema di equazioni di Diophantine che rappresenta il quadrato magico. In entrambi i casi, il numero di variabili richieste in un sistema di Diophantine nella forma posta da Tyszka non è superiore a n 2 + 2 ( n + 1 ) ( n -O(N4)O(N8)variabili intermedie m 2 ) . . Ciò si ottiene con n - 2 variabili per somme parziali per ogni riga, colonna e diagonale e una variabile totale complessiva che le collega tra loro. Oltre al quadrato magico stesso, è necessario un ulteriore numero polinomiale di variabili per i numeri nel quadrato: un numero che richiede m bit può essere rappresentato usando O (n2+2(n+1)(n−2)+1=3n2−2n−3n−2mO(m2)
Per la seconda parte della domanda, per quanto ne so una delle versioni di MAGIC SQUARE COMPLETION dovrebbe essere NP-difficile, ma non ho riduzioni. Vale la pena notare che esistono procedure per costruire normali quadrati magici di dimensioni arbitrariamente grandi; inoltre, il numero di quadrati magici normali sembra crescere in modo superpolinomialen
Utilizzando Papadimitriou legato alle soluzioni di un'istanza di INTEGER LINEAR PROGRAMMING, si può anche dimostrare che la versione in cui i numeri devono essere tutti non negativi è anche in NP.
Ar×sbr{−a,−a+1,…,a−1,a}Ax=b{0,1,…,s(ra)2r+1}
a=1s=n2+1r=2n+2
- Christos H. Papadimitriou, Sulla complessità della programmazione di numeri interi , JACM 28 765–768, 1981. ( link )