Il problema del quadrato magico mezzo pieno è NP-completo?


13

Ecco il problema:

Abbiamo un quadrato con alcuni numeri da 1..N in alcune celle. È necessario per determinare se può essere completato in un quadrato magico.

Esempi:

2 _ 6       2 7 6
_ 5 1  >>>  9 5 1
4 3 _       4 3 8

7 _ _ 
9 _ _  >>>  NO SOLUTION 
8 _ _

Questo problema è NP-completo? Se sì, come posso provarlo?

Crosspost su MS


2
No, chiedere aiuto non è una brutta cosa. Ma la tua domanda deve essere nell'ambito del sito che hai chiesto. Penso che Math SE sia adatto a questa domanda, e TCS SE no.
Hsien-Chih Chang 張顯 之

5
Accettiamo domande sulla prova della durezza NP, specialmente quando il problema è difficile. Ad esempio, considera i tre esempi elencati come risposte qui: meta.cstheory.stackexchange.com/questions/784/…
Suresh Venkat

6
Se si tratta di compiti a casa, non lo permettiamo, indipendentemente dal fatto che non sia etico.
Peter Shor,

13
@levanovd: questo non è stackoverflow. Questa comunità ha una politica esplicita che vieta le domande sui compiti. Il fatto che stackoverflow abbia una politica diversa non ha importanza qui.
Jeffε

3
Non conosco una soluzione e non penso che questo sia a livello di compiti a casa. Tuttavia, potrei mancare qualcosa di semplice. Pertanto, se qualcuno conosce una soluzione completa e pensa che questa domanda sia a livello di compiti a casa, per favore basta dirlo. Nel frattempo, assumerò che questa domanda non sia un compito a casa e che il tag [compiti a casa] usato su Math SE e il precedente commento di levanovd fossero semplicemente errori.
Tsuyoshi Ito,

Risposte:


18

Il riempimento di un quadrato latino parzialmente riempito è NP-Complete. "La complessità del completamento di quadrati latini parziali" Charles J. Colbourn. Matematica applicata discreta, Volume 8, Numero 1, aprile 1984, pagine 25-30 http://dx.doi.org/10.1016/0166-218X(84)90075-1

Un problema del quadrato latino può essere trasformato in un problema del quadrato magico tramite l'aritmetica modulare? La mia intuizione dice di sì, ma il resto del mio cervello dice "Torna alla valutazione!"


2
Sarebbe bello trasformarlo in un argomento rigoroso. Non mi è affatto chiaro come l'aritmetica modulare possa davvero aiutare a ridurre la COMPLETAZIONE SQUARE LATINA a COMPLETAMENTO SQUARE MAGICA, o viceversa. Sarebbe piuttosto carino se potesse essere fatto funzionare.
András Salamon,

9

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.5n1

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.2n2n1

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.2n1

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)(n2)+1=3n22n3n2mO(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,,a1,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 )

Immagino di essere confuso. se c'è un limite di poli sulla dimensione delle risposte, allora abbiamo la certezza di avere un'ipotesi che può essere letta e verificata in tempo polinomiale.
Suresh Venkat,

@Suresh: mi scuso per gli errori, questa risposta si è rivelata un po 'più difficile da scrivere di quanto mi aspettassi.
András Salamon,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.