Quali sono i motivi convincenti per credere a ? L è la classe di algoritmi spazio-log con puntatori all'input.
Supponiamo che L = P per il momento. Che aspetto avrebbe un algoritmo spazio log per un problema P-completo nei suoi contorni generali?
Quali sono i motivi convincenti per credere a ? L è la classe di algoritmi spazio-log con puntatori all'input.
Supponiamo che L = P per il momento. Che aspetto avrebbe un algoritmo spazio log per un problema P-completo nei suoi contorni generali?
Risposte:
Il risultato di Mulmuley (dalla pagina web di Mulmuley senza paywall) che, nel modello PRAM senza operazioni di bit, " ". (Nel solito modello booleano in cui L vive, L ⊆ N C. ) Questo modello è abbastanza forte che il risultato implica che qualsiasi algoritmo L per un problema P- completo dovrebbe apparire abbastanza diverso dagli algoritmi più noti per problemi P- completi.
Il modello PRAM senza operazioni a bit è un modello algebrico non uniforme su (simile agli alberi di calcolo algebrico o al modello RAM algebrico Blum - Shub - Smale) in cui il programma non uniforme può dipendere non solo dal numero di input interi, ma anche sulla loro lunghezza totale in bit. In questo modo non è un modello algebrico "puramente", ma vive da qualche parte tra algebrico e booleano. Questo modello include algoritmi poly-time per la programmazione lineare, maxflow, mincut, spanning tree ponderato, percorsi più brevi e altri problemi di ottimizzazione combinatoria, l'algoritmo dello spazio di log per l'isomorfismo dell'albero (vedi commenti sotto) e algoritmi per l'approssimazione delle radici complesse dei polinomi, ecco perché dico qualsiasi algoritmo L per una P-il problema completo (che, come indica la tua domanda, la maggior parte delle persone pensa che non esista) dovrebbe apparire alquanto diverso da uno di questi.
Esiste una serie di lavori di M. Hofmann e U. Schöpp che formalizza la nozione intuitiva di "tipici algoritmi dello spazio logaritmico", usando solo un numero costante di puntatori alla struttura dei dati di input, come linguaggio di programmazione VIOLA (programmi di puntatore puri con iterazione.)
Anche se i programmi VIOLA non catturano tutta la (è stato dimostrato che non sono in grado di decidere st-connectiviy non indirizzata), la loro estensione con conteggio mostra di catturare una grande frazione di L , ma non il problema P-completo Horn-SAT . Ciò è mostrato nell'ultimo documento della serie: M. Hofmann, R. Ramyaa e U. Schöpp: Pure Pointer Programs and Tree Isomorphism, FOSSACS 2013.
La conclusione sembra essere che gli algoritmi dello spazio logaritmico per i problemi completi devono essere molto atipici e andare oltre ciò che può essere implementato in VIOLA con il conteggio.
La complessità descrittiva ha tentato di fornire alcune risposte.
FO (logica del primo ordine), con ord (ordinamento del dominio) e TC (chiusura transitiva) .
FO + ord + LFP (punto minimo fisso) .
Quindi sorge la domanda: FO + ord + TC FO + ord + LFP?
D'altra parte, FO + LFP (senza ord) non può nemmeno contare! Ad esempio, non è in grado di esprimere il fatto che la cardinalità del dominio è pari. Questa logica non può certamente catturare - ma la domanda è: può catturare L o N L ?
Vedi ad esempio http://www.cs.umass.edu/%7Eimmerman/pub/EATCScolumn.pdf
E poi, la logica del secondo ordine (SO) + Horn cattura P, mentre SO + Krom acquisisce NL. Vedi Erich Gradel, Catturare classi di complessità con frammenti di logica di secondo ordine , Teoretical Computer Science, 1992.
Questo non è realmente una risposta, ma come descritto qui Credo che per il problema -complete G E N dovrebbe essere possibile definire alcuni "misura complessità" a istanze tali che risolvere un'istanza di complessità k richiederebbe Θ ( k log n ) spazio. Se vero ciò implicherebbe la separazione desiderata; se identifichiamo una tale misura, sembra a portata di mano limitare la complessità dello spazio monotono delle istanze, e questo darebbe prove tangibili che siamo sulla buona strada, anche se mostrare un limite non monotono è apparentemente molto più difficile.