Perché l'analisi di Fourier delle funzioni booleane “funziona”?


60

Nel corso degli anni mi sono abituato a vedere molti teoremi di TCS dimostrati usando un'analisi discreta di Fourier. La trasformata di Walsh-Fourier (Hadamard) è utile praticamente in ogni sottocampo del TCS, inclusi test di proprietà, pseudo-casualità, complessità della comunicazione e calcolo quantistico.

Mentre mi sentivo a mio agio nell'utilizzare l'analisi di Fourier delle funzioni booleane come uno strumento molto utile quando sto affrontando un problema, e anche se ho una buona idea per quali casi l'uso dell'analisi di Fourier produrrebbe probabilmente dei buoni risultati; Devo ammettere che non sono davvero sicuro di ciò che rende questo cambio di base così utile.

Qualcuno ha un'intuizione sul perché l'analisi di Fourier è così fruttuosa nello studio del TCS? Perché così tanti problemi apparentemente difficili vengono risolti scrivendo l'espansione di Fourier ed eseguendo alcune manipolazioni?

Nota: la mia intuizione principale finora, per quanto modesta, è che abbiamo una buona comprensione di come si comportano i polinomi e che la trasformata di Fourier è un modo naturale di vedere una funzione come un polinomio multilineare. Ma perché proprio questa base? cosa c'è di così unico nella base delle parità?


8
Paging @ ryan-odonnell
Suresh Venkat,

3
Un'idea che fluttuava negli anni '90 è che forse funzioneranno anche altre basi di funzioni, forse compromettendo il successo delle wavelet nell'analisi armonica classica. Ma non ho visto perseguire questa idea.
Gil Kalai,

Risposte:


63

Ecco il mio punto di vista, che ho appreso da Guy Kindler, anche se qualcuno più esperto può probabilmente dare una risposta migliore: considera lo spazio lineare delle funzioni , e considera un operatore lineare della forma (per ), che mappa una funzione come sopra alla funzione . In molte delle domande di TCS, vi è la necessità di fondo di analizzare gli effetti che tali operatori hanno su determinate funzioni.f:{0,1}nRσww{0,1}nf(x)f(x+w)

Ora, il punto è che la base di Fourier è la base che diagonalizza tutti quegli operatori contemporaneamente, il che rende l'analisi di quegli operatori molto più semplice. Più in generale, la base di Fourier diagonale all'operatore di convoluzione, che è anche alla base di molte di queste domande. Pertanto, è probabile che l'analisi di Fourier sia efficace ogni volta che è necessario analizzare tali operatori.

A proposito, l'analisi di Fourier è solo un caso speciale della teoria della rappresentazione dei gruppi finiti. Questa teoria considera lo spazio più generale delle funzioni dove è un gruppo finito, e operatori della forma (per ) che mappano a , La teoria ti consente quindi di trovare una base che renda più semplice l'analisi di tali operatori, anche se per i gruppi generali non puoi effettivamente diagonalizzare gli operatori.f:GCGσhhGf(x)f(xh)


6
questa è una risposta eccellente
Suresh Venkat,

2
Bel modo di dirlo. Continuando nella stessa vena, se si desidera guardare le tuple , l'analisi standard di Fourier è spesso no abbastanza a lungo e può essere utile passare all'analisi di Fourier di ordine superiore . (f(x),f(x+w1),f(x+w2),f(x+w1+w2))
Arnab,

3
Cosa intendi con "diagonalizzazione di un operatore"?
John Moeller,

10
John: se si visualizzano le funzioni come vettori in un sottospazio, l'operatore è un'operazione lineare sui vettori e può essere visualizzato come una matrice. Diagonalizzare questo operatore significa diagonalizzare la matrice. f
O Meir,

1
è interessante che anche le applicazioni per l'apprendimento di juntas possano essere comprese in termini di operatori di convoluzione: una giunta è uguale alla sua immagine sotto l'operatore che fa una media su input che non sono d'accordo su coordinate irrilevanti. questo operatore è un operatore di convoluzione ed è scarso nel dominio di Fourier. questo è un tema generale: quando una funzione è "correlata a se stessa", richiede un approccio basato su Fourier
Sasho Nikolov,

6

Ecco un'altra interpretazione di questa domanda.

Supponendo che la pseudo funzione booleana sia delimitata da k, la rappresentazione polinomiale di Walsh della funzione può essere scomposta in k funzioni secondarie. Tutti i termini lineari sono raccolti in una sottofunzione, tutte le interazioni a coppie in una sottofunzione, quindi le interazioni a 3 vie, ecc.

Ognuna di queste sottofunzioni è un "paesaggio elementare" e quindi ciascuna delle sottofunzioni è un autovettore della matrice di adiacenza laplaciana (cioè il quartiere di Hamming a distanza 1). Ogni sottofunzione ha una corrispondente "Equazione d'onda" del tipo presente in tutti i paesaggi elementari. Tranne ora ci sono k equazioni d'onda che agiscono in combinazione.

Conoscere le equazioni delle onde consente di caratterizzare statisticamente lo spazio di ricerca corrispondente in modi piuttosto precisi. È possibile calcolare la media e la varianza e inclinare le sfere di Hamming arbitrarie (esponenzialmente grandi) e gli iperpiani arbitrari dello spazio di ricerca.

Guarda il lavoro di Peter Stadler su Elementary Landscapes.

Andrew Sutton e io (Darrell Whitley) abbiamo lavorato sull'utilizzo di questi metodi per comprendere e migliorare gli algoritmi di ricerca locale per l'ottimizzazione pseudo-booleana. È possibile utilizzare i polinomi di Walsh per identificare automaticamente le mosse migliorative per gli algoritmi di ricerca locale. Non è mai necessario elencare casualmente i quartieri dello spazio di ricerca. L'analisi di Walsh può dirti direttamente dove si trovano le mosse miglioranti.


4
Potresti fornire alcuni suggerimenti sul lavoro che citi?
András Salamon,

2

una grande risposta a questa domanda probabilmente non esiste ancora perché è un'area di ricerca relativamente giovane e molto attiva. per esempio il libro completo di Ingo Wegeners sulle funzioni booleane del 1987 non ha nulla in materia (tranne che per analizzare la complessità del circuito del DFT).

una semplice intuizione o congettura è che sembra che grandi coefficienti di Fourier di ordine superiore indicano la presenza di sottofunzioni che devono tener conto di molte variabili di input e quindi richiedono molte porte. cioè l'espansione di Fourier è apparentemente un modo naturale per misurare quantitativamente la durezza di una funzione booleana. non ho visto questo direttamente provato, ma penso che sia accennato in molti risultati. es. il limite inferiore di Khrapchenkos può essere correlato ai coefficienti di Fourier. [1]

un'altra analogia approssimativa può essere presa in prestito da EE o altri campi ingegneristici in una certa misura in cui l'analisi di Fourier è ampiamente utilizzata. è spesso usato per filtri EE / elaborazione del segnale . i coefficienti di Fourier rappresentano una particolare "banda" del filtro. la storia è anche che il "rumore" sembra manifestarsi in particolari intervalli di frequenze, ad esempio basso o alto. in CS un'analogia con il "rumore" è la "casualità", ma risulta anche da molte ricerche (che hanno raggiunto un traguardo, ad esempio [4]), che la casualità è sostanzialmente la stessa della complessità. (in alcuni casi "entropia" si manifesta anche nello stesso contesto.) L'analisi di Fourier sembra adatta allo studio del "rumore" anche in contesti CS. [2]

un'altra intuizione o immagine viene dalla teoria della votazione / scelta [2,3] è utile analizzare le funzioni booleane come se avessero dei sottocomponenti che "votano" e influenzano il risultato. cioè l'analisi del voto è una sorta di sistema di decomposizione per funzioni. questo fa leva anche su una teoria del voto che ha raggiunto livelli di analisi matematica e che apparentemente precede l'uso di molte analisi di Fourier delle funzioni booleane.

inoltre, il concetto di simmetria sembra essere fondamentale nell'analisi di Fourier. più "simmetrica" ​​è la funzione, più viene annullato il coefficiente di Fourier e più "semplice" è la funzione da calcolare. ma anche più "casuale" e quindi più complessa è la funzione, meno i coefficienti si annullano. in altre parole, simmetria e semplicità, e al contrario asimmetria e complessità nella funzione sembrano essere coordinate in un modo che l'analisi di Fourier può misurare.

[1] Sull'analisi di Fourier delle funzioni booleane di Bernasconi, Codenotti, Simon

[2] Una breve introduzione all'analisi di Fourier sul cubo booleano (2008) di De Wolf

[3] Alcuni argomenti sull'analisi delle funzioni booleane di O'Donnell

[4] Prove naturali di Razborov & Rudich


3
vedi anche libro online Analisi delle funzioni booleane di O'Donnell
vzn

la congettura sulla complessità della fn booleana riflessa nello "spettro di potenza" sui coefficienti di Fourier - un'estensione naturale dei famosi risultati nella carta di Linial Mansour Nisan, circuiti a profondità costante, trasformata di Fourier e apprendibilità . abstract: "il risultato principale è che un fn booleano AC ^ 0 ha la maggior parte del suo" spettro di potenza "sui coefficienti di basso ordine"
vzn

2
c'è un bel sondaggio sull'analisi di Fourier nel ch2 del libro di Jukna, complessità delle funzioni booleane, anticipazioni e frontiere , che sottolinea i coefficienti di Fourier correlati alle funzioni di parità calcolate su sottoinsiemi di variabili di input.
vzn

2
Perché questa risposta è così fortemente sottovalutata?
user834,
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.