Fa ?


15

Cosa succede se definiamo tale che al posto di un circuito Polytime Turing-machine / polysize, un Turing-machine spazio log o un circuito codifica il problema?P P A DPPAD A C 0AC0

Recentemente fornire algoritmi più veloci per la soddisfazione dei circuiti per piccoli circuiti si è rivelato importante, quindi mi chiedo cosa succede alle versioni ridotte di .P P A DPPAD


Buss e Johnson, "Prove propositive e riduzioni tra i problemi di ricerca NP", dimostrano che PPAD è chiuso sotto le riduzioni di Turing e sono abbastanza sicuro che una piccola modifica dell'argomento dia l'equivalenza di PPAD con la sua (uniforme) versione AC ^ 0 .
Emil Jeřábek sostiene Monica il

@Emil: Grazie per il suggerimento, purtroppo le nozioni in questo documento sono al di là di me. Le sarei grato se qualcuno potesse dirmi le sue implicazioni. Inoltre, consentitemi di collegarmi alla sua prestampa qui: math.ucsd.edu/~sbuss/ResearchWeb/NPSearch/NPSearch.pdf
domotorp,

Risposte:


10

Sì, AC0PAD=PPADAC0PAD=PPAD . (Qui e sotto, suppongo che AC0AC0 sia definito come una classe uniforme. Naturalmente, con \ ununiform \ acAC0AC0 otterremmo semplicemente PPAD/polyPPAD/poly .)

L'idea di base è abbastanza semplice: AC0AC0 può fare un passo nel calcolo di una macchina di Turing, quindi possiamo simulare un fronte calcolabile in tempo polinomiale da una linea polinomialmente lunga di bordi calcolabili in AC0AC0 . Con un'ulteriore estensione dell'idea, si potrebbero simulare i bordi calcolabili in tempo poli con un oracolo PPAD, cioè il PPAD è chiuso sotto la riducibilità di Turing; questa argomentazione è data in Buss e Johnson .

Ci sono molte definizioni equivalenti di PPAD in letteratura che differiscono in vari dettagli, quindi permettetemi di risolverne una qui per definizione. Un problema di ricerca NP è in PPAD se esiste una funzione polinomiale e tempo polinomiale , e con le seguenti proprietà. Per ogni input di lunghezza , e rappresentano un grafico diretto senza auto-loop in cui e ogni nodo ha in- laurea e laurea magistrale al massimo . La rappresentazione è tale che ifSSp(n)p(n)f(x,u)f(x,u)g(x,u)g(x,u)h(x,u)h(x,u)xxnnffggGx=(Vx,Ex)Gx=(Vx,Ex)Vx={0,1}p(n)Vx={0,1}p(n)11(u,v)Ex(u,v)Ex, quindi e ; se ha un grado superiore a , ; e se ha un grado , .f(x,u)=vf(x,u)=vg(x,v)=ug(x,v)=uuu00f(x,u)=uf(x,u)=uuu00g(x,u)=ug(x,u)=u

Il nodo è una sorgente (cioè ha un grado e un grado ). Se è una sorgente o un sink (in- , out- ) diverso da , allora è una soluzione a .0p(n)Vx0p(n)Vx0011uVxuVx11000p(n)0p(n)h(x,u)h(x,u)S(x)S(x)

Possiamo definire modo simile, tranne per il fatto che richiediamo che sia in .AC0PADAC0PADf,g,hf,g,hFAC0FAC0

Ignorerò nella costruzione per semplicità. (Non è difficile dimostrare che si può ritenere che sia una proiezione, quindi calcolabile.)hhAC0AC0

Quindi, considera un problema PPAD definito da e e correggi le macchine di Turing che calcolano e nel tempo . Per ogni , definiamo un grafico diretto cui vertici sono sequenze della seguente forma:SSffggffggq(n)q(n)xxGx=(Vx,Ex)Gx=(Vx,Ex)

  • (0,u,c1,,ck)(0,u,c1,,ck) , dove , e sono le prime configurazioni nel calcolo di .uVxuVx0kq(n)0kq(n)c1,,ckc1,,ckkkf(x,u)f(x,u)

  • (0,u,c1,,cq(n),v,d1,,dk)(0,u,c1,,cq(n),v,d1,,dk) , dove , , , è il calcolo completo di e sono i primi passi nel calcolo di .u,vVxu,vVx0kq(n)0kq(n)f(x,u)=vf(x,u)=vc1,,cq(n)c1,,cq(n)f(x,u)f(x,u)d1,,dkd1,,dkkkg(x,v)g(x,v)

  • (1,v,d1,,dk)(1,v,d1,,dk) , dove , e sono i primi configurazioni nel calcolo di .0p(n)vVx0p(n)vVx0kq(n)0kq(n)d1,,dkd1,,dkkkg(x,v)g(x,v)

  • (1,v,d1,,dq(n),u,c1,,ck)(1,v,d1,,dq(n),u,c1,,ck) , dove , , , , è il calcolo di e sono i primi passi nel calcolo di .u,vVxu,vVxv0p(n)v0p(n)0kq(n)0kq(n)g(x,v)=ug(x,v)=ud1,,dq(n)d1,,dq(n)g(x,v)g(x,v)c1,,ckc1,,ckkkf(x,u)f(x,u)

ExEx costituito dai bordi in dei seguenti tipi:Vx×VxVx×Vx

  • (0,u,c1,,ck)(0,u,c1,,ck+1)(0,u,c1,,ck)(0,u,c1,,ck+1)

  • (0,u,c1,,cq(n))(0,u,c1,,cq(n),v)(0,u,c1,,cq(n))(0,u,c1,,cq(n),v)

  • (0,u,c1,,cq(n),v,d1,,dk)(0,u,c1,,cq(n),v,d1,,dk+1)(0,u,c1,,cq(n),v,d1,,dk)(0,u,c1,,cq(n),v,d1,,dk+1)

  • (0,u,c1,,cq(n),v,d1,,dq(n))(1,v,d1,,dq(n),u,c1,,cq(n))(0,u,c1,,cq(n),v,d1,,dq(n))(1,v,d1,,dq(n),u,c1,,cq(n)) se e (cioè, , oppure è un vertice isolato)f(u)=vf(u)=vg(v)=ug(v)=u(u,v)Ex(u,v)Exu=vu=v

  • (1,v,d1,,dq(n),u,c1,,ck+1)(1,v,d1,,dq(n),u,c1,,ck)(1,v,d1,,dq(n),u,c1,,ck+1)(1,v,d1,,dq(n),u,c1,,ck)

  • (1,v,d1,,dq(n),u)(1,v,d1,,dq(n))(1,v,d1,,dq(n),u)(1,v,d1,,dq(n))

  • (1,v,d1,,dk+1)(1,v,d1,,dk)(1,v,d1,,dk+1)(1,v,d1,,dk)

  • (1,u)(0,u)(1,u)(0,u)

Formalmente, sia un polinomio che limiti le lunghezze delle rappresentazioni binarie di tutte le sequenze sopra (in modo tale che possiamo estendere o accorciare le sequenze ed estrarre i loro elementi con funzioni ); mettiamo effettivamente e lasciamo isolati tutti i vertici tranne le sequenze sopra menzionate.r(n)r(n)AC0AC0Vx={0,1}r(n)Vx={0,1}r(n)

È facile vedere che le funzioni , rappresentano sono calcolabili: in particolare, possiamo testare in se è un calcolo parziale valido di , possiamo calcolare da e possiamo estrarre il valore di da .ffggGxGxAC0AC0AC0AC0c1,,ckc1,,ckf(x,u)f(x,u)ck+1ck+1ckckf(x,u)f(x,u)cq(n)cq(n)

I lavandini in sono nodi della forma , dove è un lavandino in . Allo stesso modo, le fonti sono dove è una sorgente in , tranne che nello speciale case , abbiamo eliminato la riga in anticipo e la sorgente corrispondente in è solo . Possiamo supporre che la codifica delle sequenze sia effettuata in modo tale che .GxGx(0,u,c1,,cq(n),u,d1,,dq(n))(0,u,c1,,cq(n),u,d1,,dq(n))uuGxGx(1,v,d1,,dq(n),v,c1,,cq(n))(1,v,d1,,dq(n),v,c1,,cq(n))vvGxGxv=0p(n)v=0p(n)GxGx(0,0p(n))(0,0p(n))(0,0p(n))=0r(n)(0,0p(n))=0r(n)

Così, e definire un problema , ed è possibile estrarre una soluzione di da una soluzione di da un -funzione che uscite il secondo componente di una sequenza.ffggAC0PADAC0PADSSS(x)S(x)S(x)S(x)AC0AC0h

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.