Applicazioni di complessità di Kolmogorov nella complessità computazionale


44

Informalmente parlando, la complessità di Kolmogorov di una stringa è la lunghezza di un programma più breve che genera . Possiamo definire una nozione di 'stringa casuale' usandola ( è casuale se ) È facile vedere che la maggior parte delle stringhe sono casuali (non ci sono così tanti programmi brevi).xxxK(x)0.99|x|

La teoria della complessità di Kolmogorov e la teoria dell'informazione algoritmica sono abbastanza sviluppate al giorno d'oggi. E ci sono molti esempi divertenti dell'uso della complessità di Kolmogorov nelle dimostrazioni di diversi teoremi che non contengono nulla sulla complessità di Kolmogorov nelle loro dichiarazioni ( LLL costruttiva , disuguaglianza di Loomis-Whitney e così via).

Esistono belle applicazioni della complessità di Kolmogorov e della teoria dell'informazione algoritmica nella complessità computazionale e nei campi correlati ? Sento che dovrebbero esserci risultati che usano la complessità di Kolmogorov come semplice sostituzione di semplici argomenti di conteggio. Questo, ovviamente, non è così interessante.


2
Stai solo cercando esempi di problemi che all'inizio sembrano non avere nulla a che fare con la complessità di Kolmogorov? Ci sono molti risultati sulla complessità computazionale di vari insiemi definiti in termini di complessità di Kolmogorov (in particolare l'insieme di stringhe casuali di Kolmogorov), e anche molti risultati relativi alla complessità di Kolmogorov legata alle risorse a cose di complessità standard (come P vs NP , factoring, ecc.). Ma non sono sicuro che questi ultimi siano ciò che stai cercando o meno.
Joshua Grochow,

1
> Cerchi solo esempi di problemi che all'inizio sembrano non avere nulla a che fare con la complessità di Kolmogorov? Esattamente così.
ilyaraz,

Risposte:


16

Lance Fortnow ha scritto un articolo su questo argomento: complessità Kolmogorov e complessità computazionale

Dovresti anche dare un'occhiata a Introduzione alla complessità di Kolmogorov e alle sue applicazioni di Li e Vitanyi, il libro definitivo sull'argomento. In particolare, il capitolo 6 "Il metodo dell'incomprimibilità" discute una serie di applicazioni in complessità come una dimostrazione della complessità di Kolmogorov del lemma di commutazione di Hastad (dal circuito Lower Bounds à la Kolmogorov di Fortnow e Laplante).

E ci sono applicazioni nella complessità della comunicazione (ad es. Complessità Kolmogorov e metodi combinatori nella complessità della comunicazione di Kaplan e Laplante).


1
Grazie. Questo articolo è molto utile e utile, ma quello che voglio sono le applicazioni senza menzionare la complessità K nelle dichiarazioni.
ilyaraz,

1
ilyaraz, sebbene la maggior parte dei risultati citati in questo articolo siano implicazioni piuttosto che applicazioni, potresti considerare le caratterizzazioni delle classi di complessità della complessità di Kolmogorov come una forma debole di "applicazione".
Joshua Grochow,

Ho aggiornato il post con alcuni riferimenti che potrebbero essere più in linea con ciò che stai cercando.
Ian,

14

Solo pochi giorni fa Scott Aaronson ha usato un argomento basato sulla complessità di Kolmogorov per mostrare l' equivalenza del campionamento e della ricerca . Inoltre sostiene che nel suo argomento la complessità di Kolmogorov è usata in modo essenziale, che non è solo una scorciatoia per un argomento di conteggio.


11

Questo risultato di Alon et al. può essere ottenuto per mezzo della complessità di Kolmogorov.

"L'insieme dei bordi E di ogni grafico bipartito finito può essere suddiviso in sottoinsiemi modo che tutti i grafici bipartiti risultanti siano quasi regolari".poly(log|E|)


sembra controintuitivo. qualcuno è a conoscenza di altri risultati relativi a grafici bipartiti e grafici regolari?
vzn

11

Un eccellente documento che conosco (oltre a quegli altri eccellenti articoli citati in altre risposte):

Juris Hartmanis, complessità generalizzata di Kolmogorov e struttura dei calcoli fattibili , FOCS 1983.

La cosa principale che ricordo da quel documento è una costruzione basata sulla complessità di Kolmogorov di un oracolo che separa P da NP.

Un altro documento che viene in mente è

Allender et al., Power from Random Strings , FOCS 2002 ( versione ECCC ) e SICOMP 2006 .

Se ricordo, l'ultimo documento separa la completezza di Turing nel tempo polinomiale dalla completezza dello spazio di registro in PSPACE, usando argomenti di complessità di Kolmogorov. Certamente, fa molte altre cose, ma ricordo che la separazione è un'applicazione che è di interesse indipendente al di fuori della teoria dell'informazione algoritmica.



9

(Primo, uno scherzo.) Di fronte a un problema difficile nella complessità computazionale, c'è sempre la gioia della complessità applicata di Kolmogorov per sollevare il morale. Questo è anche noto come codice golf . Per una serie di piccoli problemi corrispondenti alle stringhe , si può esplorare la complessità intrinseca competitivamente a http://codegolf.com/ o solo per divertimento al http://golf.shinh.org/ (con 80 diversi lingue in quest'ultimo sito per le quali è necessario stimare le costanti del teorema di invarianza ). Come per tutte le funzioni indecidibili, avvicinati con cautela.K ( s )sK(s)

(Adesso per la parte seria.) Daniil Musatov ha recentemente dimostrato che la derandomizzazione ingenua può fornire costruzioni ragionevoli per gli oggetti che di solito si dimostrano non costruttivi attraverso il metodo probabilistico. Penso che questo probabilmente fornirà significative applicazioni future della complessità di Kolmogorov limitata alle risorse alla complessità computazionale.

  • Daniil Musatov, Migliorare la versione limitata dallo spazio del teorema della complessità condizionale di Muchnik tramite la derandomizzazione `` ingenua '' , CSR 2011, LNCS 6651, 64–76. doi: 10.1007 / 978-3-642-20712-9_6 ( prestampa )

Vedi anche articoli che citano questo .

(Modifica: collegamento alla versione successiva pubblicata).


1
Direi che quest'ultimo documento applica la complessità computazionale (vale a dire il generatore pseudocasuale di Nisan) alla complessità di Kolmogorov limitata dalle risorse, non viceversa.
ilyaraz,

1
@ilyaraz: questo è un riassunto accurato. Sto affermando che dati i collegamenti in una direzione, dovrebbe essere possibile far funzionare anche queste applicazioni nell'altra direzione.
András Salamon,

8

H. Buhrman, L. Fortnow e S. Laplante. Rivisitazione della complessità di Kolmogorov limitata dalle risorse. SIAM Journal on Computing, 31 (3): 887-905, 2002. ( journal , pagina web di Lance ).

Include applicazioni della complessità di Kolmogorov come:

  • Una prova di Valiant-Vazirani
  • Le assegnazioni soddisfacenti delle formule booleane possono essere enumerate nel tempo polinomiale nella dimensione di output se è possibile trovare rapidamente un'assegnazione univoca
  • Una nuova prova che BPP è in Sigma_2 P
  • Diverse costruzioni oracolari

Alcuni dei precedenti sono stati provati per la prima volta in questo documento, mentre altri sono semplicemente nuove prove di vecchi teoremi, usando la complessità di Kolmogorov.


Le applicazioni della complessità di Kolmogorov, limitata nel tempo, nella teoria della complessità è una bella indagine di Eric Allender su altre applicazioni. Sebbene molti dei risultati qui siano implicazioni, alcuni sono vere applicazioni, come le seguenti:

  • Cor 13: Relativo a un oracolo generico, non esiste un generatore pseudocasuale sicuro contro avversari P / poli.
  • Thm 16 [Allender and Gore, 1991]: esiste un oracolo rispetto al quale tutti i predicati NE sono risolvibili in tempo esponenziale ed E = Union_k \ Sigma_k-TIME (n).

Entrambe le prove usano significativamente la complessità di Kolmogorov.


Immagino che la prova originale di Sipser "BPP è in Sigma_2" usasse la complessità di Kolmogorov.
ilyaraz,

6

Un esempio è il seguente risultato descritto nel sondaggio di Bogdanov e Trevisan : esiste una distribuzione tale che il linguaggio è mediamente facile rispetto a se è nel caso peggiore.DDD


A proposito, in questa versione del sondaggio c'è un difetto. Tuttavia, può essere risolto :)
Grigory Yaroslavtsev il

Ti interessa elaborare?
ilyaraz,

A proposito, ho la strana sensazione di poter affinare questa prova: si potrebbe sbarazzarsi di e mettere lì qualsiasi probabilità incostante. Sono curioso di sapere dove sia un errore. 1/n3
ilyaraz,

Sì. Ho trovato un errore, ma sento di avere prove più intuitive (con , però). 1/n1+ϵ
ilyaraz,

5

La lunghezza minima della descrizione usa la complessità di Kolmogorov (o approssimazioni e generalizzazioni della stessa, dovuta a indecidibilità) nell'apprendimento teorico dell'informazione e nella teoria dell'inferenza. In particolare, MDL viene utilizzato per trovare spiegazioni dei dati che evitano naturalmente un eccesso di adattamento.

Jorma Rissanen fornisce una buona introduzione al suo concetto: http://www.mdl-research.org/jorma.rissanen/pub/Intro.pdf


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.