L'isomorfismo grafico può essere deciso con il non determinismo limitato dalla radice quadrata?


30

Nondeterminismo Delimitata associa una funzione g(n) con una classe C di lingue accettate da macchine di Turing deterministiche risorse delimitata, per formare una nuova classe g - C . Questa classe è composta da quei linguaggi che sono accettati da una macchina di Turing non deterministica M obbedendo agli stessi limiti di risorse usati per definire C , ma dove M è autorizzato a fare al massimo g(n) mosse non deterministiche. (Sto usando la notazione di Goldsmith, Levy e Mundhenk, invece dell'originale di Kintala e Fischer, e n è la dimensione dell'input.)

La mia domanda:

Esiste una costante tale che l'ISOMORFISMO DEL GRAFICO è in c c0 -PTIME?cnPTIME

( Modifica: Joshua Grochow ha sottolineato che una risposta positiva a questa domanda implicherebbe un algoritmo per IG con limiti di runtime asintotici migliori di quelli attualmente conosciuti. Sarei quindi felice di rilassare il limite, consentendo mosse non deterministiche.)o(nlogn)


sfondo

Per ogni costante fissa , P T I M E = c log n - P T I M E , poiché c log n movimenti non deterministici creano al massimo un numero polinomiale di configurazioni da esplorare in modo deterministico. Inoltre N P = c n c - P T I M E , e mediante imbottitura si possono esibire linguaggi NP-completi in n ε - P per ogni >c0PTIME=clognPTIMEclognNP=cnc-PTIMEnεPε>0 .

Kintala e Fischer hanno osservato che decidendo se un grafico di input con vertici ha un ( | V | / 3 )V(|V|/3) -clique è -completo, ma è in O ( NP-PTIME. Per vedere questo, scarta i vertici che hanno al massimo| V| /3-2vicini. Se ci sono troppo pochi vertici rimanenti, quindi rifiutare. Altrimenti i vertici rimanenti formano un grafico di dimensioniΩ(|V | 2). Quindi indovina un| V| /3-subset di vertici usandoO(n)PTIME|V|/32Ω(|V|2)|V|/3passaggi non deterministici e verifica che formino una cricca in tempo polinomiale.|V|=O(n)

Alcune altre lingue di grafi densi in N P sono anche in O ( LNP-PTIME. Questo è il caso di qualsiasi problema in cui un sottoinsieme dei vertici funge da certificato e la dimensione del grafico di input èΩ(|V | 2). Esempi sono le versioni promettenti di Induced Path o 3-Coloring per il caso di grafici densi. Altri problemi sembrano richiedere certificati più grandi, ad esempio un elenco di vertici che definiscono un circuito hamiltoniano sembra richiedereΩ(|V|log|V|)O(n)PTIMEΩ(|V|2)Ω(|V|log|V|)bit. Non mi è chiaro se si possa usare una quantità di non determinismo che è troppo piccola per indovinare il certificato per decidere tali problemi.

Dato che - P può contenere linguaggi NP-completi, allora sembra interessante chiedersi dove nella gerarchia del non determinismo limitato cadano le lingue potenzialmente più facili. Ci si potrebbe aspettare GI, come un linguaggio che non sembra essere NP-completo, per essere nella gerarchia più vicino al log n - P rispetto a n - P . Tuttavia, l'ovvio certificato per IG specifica la mappa usando | V | log | V | bit, che è ω ( nεPlognPnP|V|log|V|ω(n) .

Un altro modo di pensare a questa domanda: specificare una mappa tra le serie di vertici è un certificato il più breve possibile per IG?

Modifica: Seguono alcune ulteriori osservazioni (corrette) per rispondere ai commenti di Joshua Grochow.

Se un certificato utilizza i bit e può essere verificato in un tempo polinomiale, la forza bruta fornisce un algoritmo per GI prendendo p o l y ( n ) 2 O ( f ( n ) ) = 2 O ( f ( n ) ) tempo. Con un certificato di dimensione O ( f(n)=Ω(logn)poly(n)2O(f(n))=2O(f(n)), la forza bruta fornisce un algoritmo che prende2 O ( O(n)tempo, mentre un certificato di dimensioneO(2O(n)produce un approccio a forza bruta prendendo2 O ( O(nlogn)tempo. Il limite superiore di lunga data di Luks è2O(2O(nlogn)tempo, che è tra questi due limiti fino a esponenti costanti.2O(nlogn)

Queste considerazioni suggeriscono che potrebbe esserci un approccio alternativo alle IG. L'approccio di Luks sembra basarsi essenzialmente sull'identificazione di un sottoinsieme di generatori di un gruppo associato. Una macchina non deterministica potrebbe quindi indovinare un sottoinsieme del gruppo. Questi sottoinsiemi potrebbero quindi essere controllati esaurientemente per produrre un algoritmo deterministico. Se l'elenco di elementi può essere specificato in modo succinto, sia perché il gruppo associato non è mai molto più grande della dimensione del grafico, sia perché il numero di generatori richiesti è sempre piccolo, e il controllo di ciascun sottoinsieme candidato non richiede troppo tempo, quindi questo potrebbe fornire un approccio alternativo alle IG.

  • Chandra MR Kintala e Patrick C. Fischer, Raffinamento del non determinismo nel calcolo legato al tempo polinomiale relativizzato , SIAM Journal on Computing 9 (1), 46–53, 1980. doi: 10.1137 / 0209003
  • Judy Goldsmith, Matthew A. Levy, Martin Mundhenk, Non determinismo limitato , SIGACT News 27 (2), 20–29, 1996. doi: 10.1145 / 235767.235769
  • László Babai ed Eugene M. Luks, Canonical Labelling of Graphs , STOC 1983, 171–183. doi: 10.1145 / 800061.808746

Quindi, se il grafico è dato come matrice di adiacenza di dimensione , ciò significa che posso fare un numero lineare di mosse non deterministiche rispetto al set di vertici dimensione n ? n2n
John D.

@ user17410: Sì, la rappresentazione non dovrebbe avere troppa importanza, purché la dimensione di qualsiasi istanza sia . (Se sono irragionevolmente imbottiti per avere dimensioni Ω ( ( | | V | log | V | ) 2 ), ovviamente il limite della radice quadrata è sufficiente.)O(|V|2)Ω((|V|log|V|)2)
András Salamon

4
Penso che potresti chiedere un algoritmo migliore del più noto ... Se ho capito, una algoritmoPTIMEprodurrebbe un2 O ( O(n)PTIMEalgoritmo deterministico. L'attuale algoritmo deterministico più noto richiede tempo2O(2O(n). 2O(nlog2n)
Joshua Grochow,

@ AndrásSalamon: forza bruta = NOT 2 O ( n!poly(n)2O(nlogn)... Inoltre, non vedo perché un certificato di dimensioni2O(nlog2n) porta ad un algoritmo a forza bruta del tempo2nanziché2O(2nlogn- puoi elaborare? Forse mi manca qualcosa nella definizione della notazione "PTIME"? 2O(n)
Joshua Grochow,

1
@ MohammadAl-Turkistany: forse, ma dovrò pensarci un po '. Nell'algoritmo di Babai ci sono punti in cui, una volta che il grado di colore è inferiore al polilogo, applica il test GI di grado limitato, come nel precedente algoritmo migliore, e non è chiaro se si può trasformare il test GI di poligono in poligono non determinismo, o se si può continuare ulteriormente la ricorsione di Babai per abbassare il grado, diciamo, a un grado di colore costante. Se e quando lo scoprirò aggiornerò la mia risposta - se hai pensieri su questo sono felice di chattare, ma questo probabilmente non è il posto giusto per lavorarci sopra.
Joshua Grochow,

Risposte:


8

O(n)PTIME algorithm yields a 2O(n)-time deterministic algorithm, but the current best known for GI is only 2O(nlogn)

Second, it is not even immediately clear to me whether or not the current best algorithm is in fact a O(nlogn)PTIME algorithm, although the first part of it clearly is, in some sense. The algorithm first guesses a set of vertices of size n/logn to individualize (Zemlyachenko's trick - see here for an exposition in English), which can be done by guessing nlogn bits nondeterministically. However, after guessing those and individualizing (in deterministic poly time), it applies the best-known bounded-degree isomorphism test, which takes time nO(d/logd) (Theorem 9.1 of this paper), and applies it in the case of d=O(nlogn). I'd have to think carefully about whether the latter algorithm could be turned into a O(nlogn)PTIME algorithm (seems like an interesting question...)


Do you have links to versions not behind a paywall? I have never seen an actual implementation of Zemlyachenko's trick or the bounded degree isomorphism test. Partitioning vertices by degree like NAUTY speeds things up, but those with the same degree you still have to check all prime cycle permutations on them AFIK.
Chad Brewbaker

@Chad: I'm unfortunately not aware of non-paywalled versions of those articles. However, Zemlyachenko's trick is quite simple to implement in practice and essentially reduces the degree. For practical implementation of Zemlyachenko's trick, i think the only question is the trade-off between enumerating sets of vertices to individualize (exponential in the size of the set) and any potential gains made by effectively reducing the degree. I do not know if it is actually implemented in NAUTY or other practical isomorphism algorithms.
Joshua Grochow

@Chad: By the way, testing prime cycle permutations only suffices for detecting a nontrivial automorphism; it does not suffice for testing isomorphism. For example, if G is a graph without nontrivial automorphisms, let π be any permutation - not necessarily a prime cycle. Then π(G) is isomorphic to G, and π is the only isomorphism between G and π(G). But this isomorphism would not be detected by only considering prime cycles.
Joshua Grochow

At the cost of doubling n, ISO can be computed with AUT by putting both graphs in an adjacency matrix.
Chad Brewbaker

@Chad: If you do that, then there are already n! prime-cycle permutations of order 2, so you've lost any potential savings. This is related to the fact that the reduction you describe is from ISO to computing a generating set for the automorphism group. There is no known poly-time reduction from ISO to the problem of merely deciding whether a graph has a nontrivial automorphism.
Joshua Grochow
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.