Durezza delle funzioni booleane rumorose


13

Sia una funzione booleana di n variabili booleane. Sia g ( x ) = T ϵ ( f ) ( x ) il valore atteso di f ( y ) quando y è ottenuto da x lanciando ciascuna coordinata con probabilità ϵ / 2 .fng(x)=Tϵ(f)(x)f(y)yxϵ/2

Sono interessato ai casi in cui è difficile dal punto di vista computazionale . Permettetemi di fissare una nozione di "approssimazione" (ma potrebbero essercene altre): una funzione booleana h approssima g se h ( x ) = 1 quando g ( x ) 0.9 e h ( x ) = 0 quando g ( x ) 0.1ghgh(x)=1g(x)0.9h(x)=0g(x)0.1Un argomento di conteggio (basato sull'esistenza di codici di correzione di errori di frequenza positivi) sembra dare per scontato che ci sono funzioni booleane per le quali tale approssimazione richiede un circuito dimensionale esponenziale. Ma la domanda è cosa succede quando per iniziare è in NP o nel suo quartiere.f

D1: Esiste un esempio di descritto dal circuito NP (o spazio P) in modo che ogni h sia NP difficile, o difficile in qualche senso più debole.fh

Per vedere che potrebbe non essere sempre facile (ringrazio Johan Håstad per la discussione utile a questo proposito) possiamo considerare di proprietà dei grafici di avere una cricca di dimensione n 1 / 4 , per l'ingresso a caso, è ipotizzabile che è difficile rilevare se esiste una cricca di grandi dimensioni, ma ciò si manifesta con una cricca n più grande del log delle dimensioni nel grafico rumoroso. In questo caso qualsiasi h sarà probabilmente difficile (ma non dimostrabile, e non terribilmente difficile come diranno i circuiti quasi polinomiali).hn1/4h

Q2: Qual è la situazione se per iniziare è di bassa complessità. ( A C 0 , monotono T C 0 , A C C ecc.)fAC0TC0ACC

Q3: Qual è la situazione per alcuni esempi di base delle funzioni booleane. (La domanda può essere estesa anche alla funzione di valore reale.)

D4: È possibile formalmente porre la domanda sopra per il modello di calcolo uniforme (macchina di Turing)?

Aggiornamento: in vista della risposta di Andy (Ciao a tutti, Andy) penso che la domanda più interessante sia capire la situazione per varie funzioni specifiche.

Aggiorna un'altra domanda Q5 [Q1 per funzioni monotone] (anche in vista della risposta di Andy). Qual è la situazione se è monotono? Possiamo ancora codificare in modo efficace una domanda NP completa>f


Imho questa domanda sull'approssimazione del circuito è correlata. la tua domanda sembra essere simile alla domanda P / poly vs NP.
vzn,

Risposte:


14

per la domanda 1, la risposta è Sì e può essere mostrata come segue. (Inoltre, traccerò implicitamente una risposta affermativa a Q4, poiché l'argomento è uniforme e tratterà tutte le lunghezze di input contemporaneamente).

Correggi qualsiasi linguaggio completo di NP e una famiglia di buoni codici binari di correzione degli errori (con frequenza 1/4 e correzione da una frazione di .1 di errori, diciamo). Sia E n c n : { 0 , 1 } n{ 0 , 1 } 4 n sia la funzione di codifica per la lunghezza n ; usiamo un codice del genere in cui E n c = { E n c n } è calcolabile da un algoritmo di tempo polinomiale uniforme.LEncn:{0,1}n{0,1}4nnEnc={Encn}

Definisci come l'insieme di stringhe z che si trovano a una distanza massima di 0,05 | z | da una parola di codice y E n c ( L ) che codifica qualche elemento di L . Si noti che l ' è in NP, come si può intuire e verificare la parola di codice nelle vicinanze, la parola decodificato, e il certificato NP per l'adesione della parola decodificata in L . Lz.05|z|yEnc(L)LLL

Quindi l'affermazione è che qualsiasi "approssimazione" di nel tuo senso è NP-difficile per ε = .01 . Perché se consideriamo una parola in codice valida y = E n c ( x ) di una certa lunghezza 4 n , quindi con probabilità 1 - o ( 1 ) su una versione casuale ε- disturbata y di y , non sarà d'accordo con y al massimo una frazione di 0,05 di coordinate, e pertanto non sarà d'accordo con qualsiasi altra parola in codice di E n cLε=.01y=Enc(x)4n1o(1)εyyy in più di .05 frazione di coords. Per tale y ' abbiamo y 'L ' sse x L . Quindi se h è un'approssimazione dellaversione liscia di ε di L nel tuo senso, allora dobbiamo avere h ( y ) = L ( x ) . Poiché E n c è calcolabile in modo efficiente, questo ci dà un modo per ridurre in modo efficiente le domande di appartenenza per L a quelle per h . CosìEncn.05yyLxLhεLh(y)=L(x)EncLh è NP-difficile.h

Due note:

(1) codifiche per la correzione di errori di istanze NP sono state utilizzate in precedenza in numerosi articoli, in particolare
D. Sivakumar: su set comparabili di appartenenza. J. Comput. Syst. Sci. 59 (2): 270-280 (1999).

(2) l'argomento sopra ovviamente non dice nulla sulla complessità del caso medio di qualsiasi problema NP, poiché la correzione dell'errore viene applicata istanza per istanza.


8
Il software non mi permetterà di iniziare la mia risposta con "Ciao Gil" e sono un po 'spaventato da questo livello di microgestione.
Andy Drucker,

2
Questo perché la tua risposta non dovrebbe iniziare con "Ciao Gil". Non è un'e-mail personale, è un post su un sito Web pubblico. Certo, a te come te non piacciono queste cose; sono piuttosto i nuovi utenti che non sono a conoscenza di queste convenzioni che il software mira a controllare.
Yuval Filmus,

1
La mia opinione è che va bene riconoscere quando si sta scrivendo in risposta al contributo di qualcun altro. Questo è normale e positivo in molte impostazioni online. Ho provato a farlo nel modo più breve possibile, per indirizzo personale; non vedo nulla di male in questo.
Andy Drucker,

2
Bella costruzione! Ho una domanda: f sia la funzione indicatore di L ', e h sia come nella domanda di Gil. Ora, la tua argomentazione mostra che h è d'accordo con f su y che sono parole in codice legali. Ma che dire di y che non sono parole in codice legali?
O Meir,

2
Puoi implementare una cosa del genere con la monotona ? f
Gil Kalai,
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.