Perché consideriamo lo spazio-log come un modello di calcolo efficiente (anziché poligono-spazio)?


49

Questa potrebbe essere una domanda soggettiva piuttosto che una con una risposta concreta, ma comunque.

Nella teoria della complessità studiamo la nozione di calcoli efficienti. Esistono classi come sta per tempo polinomiale e L sta per spazio di registro . Entrambi sono considerati rappresentati come una sorta di "efficienza" e colgono abbastanza bene le difficoltà di alcuni problemi.PL

Ma c'è una differenza tra e L : mentre il tempo polinomiale, P , è definito come l'unione di problemi che corre nel tempo O ( n k ) per qualsiasi costante k , cioè,PLPO(nk)k

,P=k0TIME[nk]

lo spazio del registro, , è definito come S P A C E [ registro n ] . Se imitiamo la definizione di P , diventaLSPACE[logn]P

,PolyL=k0SPACE[logkn]

dove è chiamata la classe di spazio polillogico . La mia domanda è:PolyL

Perché utilizziamo lo spazio del registro come nozione di calcolo efficiente, anziché spazio poligonale?

Un problema principale potrebbe riguardare i set di problemi completi. Sotto lo spazio dei registri molte riduzioni, sia che L hanno problemi completi. Al contrario, se P o l y L ha problemi complete in tali riduzioni, allora avremmo contraddizione al teorema gerarchia spazio. E se passassimo alle riduzioni dei poliloghi? Possiamo evitare tali problemi? In generale, se facciamo del nostro meglio per adattarsi P o l y L nella nozione di efficienza, e (se necessario) modificare alcune delle definizioni di ottenere ogni buone proprietà di una classe "bella" dovrebbe avere, quanto lontano possiamo andare?PLPolyLPolyL

Esistono motivi teorici e / o pratici per l'utilizzo dello spazio del registro anziché dello spazio pollogico?


Hsien-Chih, bella domanda.
Mohammad Al-Turkistany,

9
E 'noto che . Per quanto ne sono personalmente consapevole, l'esatta relazione tra P e p o l y L è chiaro. Come in, è possibile che alcuni problemi possono essere risolti in p o l y L che non sono risolvibili in P E viceversa. (Questo parla in realtà parzialmente tua domanda sul perché p o l y L è un candidato dispari per una nozione di computazione efficiente.) Per alcuni più p o l y LpolyLPPpolyLpolyLP polyLpolyL, puoi consultare il libro di testo sulla complessità di Papadimitriou , in particolare gli esercizi e la discussione alla fine del capitolo 16.
Daniel Apon,

In realtà, un altro breve commento di un pezzo minore della tua domanda complessiva: riduzione dello spazio Polylog non vi dirà molto su , per le stesse ragioni riduzioni in tempo polinomiale non vi dicono molto su P . polyLP
Daniel Apon,

@Daniel Apon: Grazie per aver menzionato il libro, ed è bello :) Per il secondo commento, con lo stesso argomento possiamo usare riduzioni lineari anziché polinomiali per ottenere maggiori informazioni su , giusto? P
Hsien-Chih Chang 張顯 之

Chih Chang: Beh, non so riduzioni lineari in tempo per dire, ma ci sono altri, interessanti nozioni di riduzioni che danno informazioni sulla complessità all'interno . P
Daniel Apon,

Risposte:


51

La classe più piccola contenente tempo lineare e chiusa sotto le subroutine è P. La classe più piccola contenente spazio di registro e chiusa sotto le subroutine è ancora spazio di registro. Quindi P e L sono le classi più piccole e robuste rispettivamente per tempo e spazio, motivo per cui si sentono giuste per modellare un calcolo efficiente.


4
Questa sembra la migliore risposta alla domanda reale posta.
Derrick Stolee,

1
Tra tutte queste buone risposte, penso che la risposta di Lance sia la più precisa, e la accetterò. Ma ancora molte grazie a tutte le risposte ponderate!
Hsien-Chih Chang 張顯 之

1
Inoltre, è un problema aperto se P = L.
Diego de Estrada,

25

SPACE[log2n]Plogk1(n)NSPACE[logkn]-complete

PLOSS=kTISP[nk,klog2n]DCFLPLOSSSC2SCk


2
QuasiP=k0TIME[2logkn]P

È un problema aperto noto? Potresti fornire un riferimento?
Mohammad Al-Turkistany,

SC2

5
Si noti che SC è stato nominato da Nick Pippenger, in un presunto accordo reciproco con Steve Cook per nominare NC dopo di lui :)
Suresh Venkat,

PPQuasiPpolyLLPSPACE[logkn]PkLk
Hsien-Chih Chang 張顯 之

20

2O(logn)=poly(n)

NSPACE[logkn]SPACE[log2kn]

SCk=TISP[poly(n),logkn]


polyLNLpolyL

{1}

Hai ragione, scusa per la domanda stupida :(
Hsien-Chih Chang 張顯 之

13

Penso che tutte le altre risposte siano molto buone; Proverò a dare una prospettiva diversa sulla questione.

Non so quanto P modellizzi il calcolo "efficiente" nel mondo reale, ma ci piace la classe per le sue belle proprietà di chiusura e altri motivi matematici. Allo stesso modo, L è anche una bella classe a causa di alcuni dei motivi di cui sopra.

Tuttavia, come hai commentato, se rilassiamo la nostra definizione di tempo "efficiente" a quasi polinomiale, anche PolyL è efficiente. Potremmo discutere la teoria della complessità in cui consentiamo alle classi definite con un limite logaritmico su alcune risorse di utilizzare invece risorse polillogiche. Di conseguenza, rilasseremmo anche le nostre definizioni di NC, NL, ecc. Per consentire invece circuiti di dimensioni quasi polinomiali. Se lo facciamo, NC 1 , L, NL e NC coincidono tutti con la classe PolyL. In questo senso, PolyL è una classe solida poiché molte classi naturali coincidono con essa. Per ulteriori informazioni sulla teoria della complessità con log -> polilomio e polinomio -> quasi polinomiale, vedere Classi di circuiti di dimensioni quasipolinomiali di Barrington.

Un altro motivo per studiare polyL o classi simili come quasi-AC 0 è che mentre una separazione dell'oracolo tra (diciamo) ParityP e PH implica che PARITY non è contenuta in AC 0 , l'implicazione inversa non è nota per essere vera. D'altra parte, PARITÀ non è contenuta in quasi-AC 0 se e solo se esiste una separazione dell'oracolo tra ParityP e PH. Allo stesso modo, le classi quasi-TC 0 e quasi-AC 0 sono diverse se e solo se esiste una separazione dell'oracolo tra CH e PH. Quindi le solite classi di complessità come PH, ModPH, CH, ecc. Quando ridimensionate da un esponenziale per dimostrare i risultati dell'oracolo si trasformano in versioni quasi polinomiali delle solite classi AC 0 , ACC 0 e TC0 rispettivamente. Allo stesso modo, l'argomento usato nel teorema di Toda (PH è contenuto in P PP ) può essere usato per mostrare che quasi-AC 0 è contenuto in quasi-TC quasi- 3 . (Non so se la stessa conclusione è nota per le solite versioni di queste classi. Ho visto questo elencato come un problema aperto in alcuni documenti.)


1
La tua risposta aiuta davvero, grazie per aver condiviso la tua opinione. Sono sorpreso che quasi-qualcosa sia stato studiato MOLTO !!
Hsien-Chih Chang 張顯 之
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.