Abbiamo circuiti uniformi non banali?


13

Dato un algoritmo che gira nel tempo , possiamo convertirlo in una famiglia di circuiti uniforme "banale" per lo stesso problema di dimensioni al massimo .t(n)t(n)logt(n)

D'altra parte, potrebbe essere che abbiamo circuiti uniformi molto più piccoli per quel problema, anche se è un tempo di funzionamento ottimale. La generazione dei circuiti potrebbe richiedere più tempo di , ma sono piccoli.t ( n )t(n)t(n)

Ma sappiamo davvero come costruire queste cose? Penso che la domanda iniziale da porre sia

(1) Esistono esempi costruttivi di circuiti uniformi non banali, ovvero circuiti uniformi le cui dimensioni sono inferiori al tempo di esecuzione più noto di qualsiasi algoritmo per lo stesso problema?

Ora, credo che se un problema si trova in DTioME(t(n)) , allora abbiamo un algoritmo a tempo esponenziale per trovare circuiti ottimali usando una ricerca esaustiva: dato n , scriviamo le risposte su tutti 2n ingressi (tempo di presa (2n)t(n) ); quindi enumeriamo tutti i circuiti su n ingressi di dimensioni crescenti fino a quando non ne viene trovato uno che fornisce tutte le risposte corrette. La ricerca termina alla dimensione della banale conversione, , o la tabella di verità della funzione, 2 n se le uscite sono { 0 , 1 } . (Modifica: Thomas sottolinea che il limite è O ( 2 n / n ) a causa di Shannon / Lupanov.)t(n)logt(n)2n{0,1}O(2n/n)

Quindi abbiamo un "sì" insoddisfacente alla domanda (1): prendere una lingua che è difficile per qualsiasi tempo al di sopra di , ma ancora decidibile; la procedura sopra riportata genera una tabella di verità di dimensione 2 n .2n2n

Quindi dovremmo affinare la domanda (1). Penso che i due casi più interessanti siano

(2) Abbiamo esempi costruttivi di circuiti uniformi non banali di dimensioni polinomiali ? (Anche se sono generati da algoritmi molto lenti.)

(3) Abbiamo esempi costruttivi di circuiti uniformi non banali generabili in tempo polinomiale, generabili in tempo polinomiale?

Questo potrebbe essere troppo da chiedere. Che ne dici di una domanda più semplice: sappiamo addirittura che una cosa del genere è possibile? Forse non esistono circuiti uniformi non banali?

(4) La seguente affermazione è nota per essere falsa per qualsiasi ? (Modifica: o ( 2 n / n ) , grazie Thomas.) "Se una lingua L ha circuiti uniformi di dimensione O ( s ( n ) ) , allora ha anche algoritmi che corrono nel tempo ˜ O ( s ( n ) ) . " (In tal caso, che dire di quando "uniforme" viene sostituita con "uniforme polinomiale-temporale", "uniforme dello spazio per i tronchi", ecc.)s(n)=o(2n)o(2n/n)LO(s(n))O~(S(n))

Infine, se le domande precedenti sono troppo difficili,

(5) Abbiamo delle costruzioni di famiglie di circuiti uniformi che non sono semplicemente conversioni di algoritmi in circuiti (o che scrivono la tabella della verità)?

PostScript. Un esperto che ho chiesto a proposito di questo accennato "Su limiti di media uniformità e di circuito inferiori" ( pdf ), Santhanam e Williams 2013, che forse è il lavoro più strettamente correlato, ma dimostra limiti inferiori (che i circuiti poligenerabili non sono troppo potente). Sarei interessato a qualsiasi altro lavoro correlato!


1,2,3,4: funzione identità. 5. Non mi è chiaro cosa intendi per "essendo una conversione di algoritmi in circuiti", possiamo sempre convertire un circuito uniforme in una macchina di Turing (con un piccolo overhead).
Kaveh,

@Kaveh, re # 5: buon punto, ma credo che quello che ho in mente sia qualcuno che sta scrivendo una costruzione esplicita di circuiti uniformi, che non sembra "convertire questa TM in un circuito". Inoltre, penso che la conversione menzionata potrebbe non significare che il circuito "assomigli" a un algoritmo. Ad esempio, supponiamo di avere un circuito di dimensioni che richiede n 3 tempo per essere generato. Possiamo trasformarlo in un time- n 3 TM, ok, ma non assomiglia molto al circuito, e l'ingenua conversione di quel TM di nuovo in un circuito è ora delle dimensioni ~ n 3 . Spero che questo dimostri perché la domanda mi interessa. nn3n3n3
usul

1
@Kaveh: come risponde la funzione identità 1-4?
Joshua Grochow,

@Joshua, possiamo descrivere direttamente un circuito uniforme di dimensioni (filo) O (n), che è meglio della conversione della macchina di Turing per l'identità in un circuito.
Kaveh,

Il mio punto è che ci sono piccoli dettagli importanti di cui dobbiamo preoccuparci per rendere la domanda responsabile. Un altro esempio: BPP è in P / poly e la conversione è calcolabile. Se la generazione del circuito viene eseguita da un algoritmo efficiente che la combina con il valore del circuito darà una TM efficiente. Concettualmente il circuito e la TM calcolano lo stesso algoritmo. Il fatto che dimensione e tempo possano non corrispondere esattamente è normale, sono definiti per diversi modelli di calcolo e sappiamo che non corrispondono. Probabilmente il tempo corrisponde più alla profondità che alla dimensione.
Kaveh,

Risposte:


8

Ecco le risposte alle tue ultime due domande.

(5) Le reti di smistamento sono circuiti uniformi che si ordinano più velocemente dei migliori algoritmi RAM, ma sicuramente non sono solo conversioni di algoritmi RAM (ad esempio quicksort). [ AKS83 , G14 ]

s(n)=(1+ε)2n/nε>0(1+o(1))2n/nfΩ(3n)O(n3n)fO(2n/n)2poly(n)O~(2n/n)s(n)=o(2n/n)

Questa è una domanda interessante; Spero che qualcuno possa rispondere (1) - (3).


Grazie, hai ragione, volevo intuitivamente escludere questo caso "limite superiore" ma non conoscevo il giusto asintotico. Ho modificato la domanda per includere quel caso.
usul
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.