Twardość hałaśliwych funkcji boolowskich

13

Niech będzie funkcją boolowską zmiennych boolowskich. Niech będzie oczekiwaną wartością gdy jest uzyskane z poprzez odwrócenie każdej współrzędnej z prawdopodobieństwem .n g ( x ) = T ϵ ( f ) ( x ) f ( y ) y x ϵ / 2fng(x)=Tϵ(f)(x)f(y)yxϵ/2

Interesują mnie przypadki, w których przybliżenie jest trudne obliczeniowo . Pozwól, że ustalę pojęcie „przybliżenia” (ale mogą istnieć inne): Funkcja boolowska przybliża jeśli gdy i gdy . Argument liczenia (oparty na istnieniu kodów korygujących błąd dodatniej stopy) wydaje się wskazywać, że istnieją funkcje boolowskie, dla których takie przybliżenie wymaga obwodu wielkości wykładniczej. Ale pytanie brzmi, co się stanie, gdy na początek będzie w NP lub w jego sąsiedztwie.h g h ( x ) = 1 g ( x ) 0,9 h ( x ) = 0 g ( x ) 0,1 fghgh(x)=1g(x)0.9h(x)=0g(x)0.1f

P1: Czy istnieje przykład opisany przez obwód NP (lub przestrzeń P), tak że każda jest NP trudna lub trudna w nieco słabszym sensie?hfh

Aby zobaczyć, że może nie zawsze być łatwe (dziękuję Johanowi Hastadowi za przydatną dyskusję na ten temat), możemy rozważyć właściwość grafów posiadania kliki o rozmiarze , dla losowego wprowadzania można sobie wyobrazić, że trudno jest wykryć, czy istnieje duża klika, ale objawia się to tym, że na hałaśliwym wykresie ma więcej niż oczekiwano klików o rozmiarze log n. W takim przypadku każda będzie prawdopodobnie trudna (ale nie do udowodnienia i nie strasznie trudna, jak mówią obwody quasi-wielomianowe).n 1 / 4 godzhn1/4h

Q2: Jaka jest sytuacja, jeśli na początek ma niską złożoność. ( , monotoniczny , itp.)A C 0 T C 0 A C CfAC0TC0ACC

P3: Jaka jest sytuacja niektórych podstawowych przykładów funkcji boolowskich. (Pytanie można rozszerzyć również na funkcję o wartości rzeczywistej.)

P4: Czy powyższe pytanie można formalnie zadać dla jednolitego modelu obliczeniowego (maszyny Turinga)?

Aktualizacja: W świetle odpowiedzi Andy'ego (Cześć, Andy) Myślę, że najciekawszym pytaniem jest zrozumienie sytuacji dla różnych określonych funkcji.

Zaktualizuj Kolejne pytanie Q5 [Q1 dla funkcji monotonicznych] (również w świetle odpowiedzi Andy'ego). Jaka jest sytuacja, gdy jest monotoniczny? Czy nadal możemy solidnie zakodować NP pełne pytania>f

Gil Kalai
źródło
imho to pytanie dotyczące zbliżenia obwodu jest powiązane. twoje pytanie wydaje się być podobne do pytania P / poli vs NP.
vzn

Odpowiedzi:

14

w przypadku pytania 1 odpowiedź brzmi „tak” i można ją przedstawić w następujący sposób. (Będę również domyślnie naszkicować twierdzącą odpowiedź na pytanie 4, ponieważ argument jest jednolity i potraktuje wszystkie długości wejściowe naraz).

Napraw dowolny język kompletny dla NP i rodzinę dobrych binarnych kodów korygujących błędy (powiedzmy ze współczynnikiem 1/4 i poprawianiem z części .1 błędów, powiedzmy). Niech będzie funkcją kodowania dla długości ; używamy takiego kodu, w którym jest obliczalny przez jednolity algorytm czasu wielomianowego.E n c n : { 0 , 1 } n{ 0 , 1 } 4 n n E n c = { E n c n }LEncn:{0,1}n{0,1}4nnEnc={Encn}

Zdefiniuj jako zbiór ciągów które są w odległości co najwyżejod słowa kodu kodujący jakiś element . Należy pamiętać, że jest w NP, jak można się domyślać i sprawdzić pobliski słowa kodowego, zdekodowany słowo, a certyfikat NP do członkostwa dekodowany wyrazu w . z .05 | z | y E n c ( L ) L L LLz.05|z|yEnc(L)LLL

Zatem twierdzenie jest takie, że jakiekolwiek „przybliżenie” w twoim znaczeniu jest NP-trudne dla . Bo jeśli weźmiemy pod uwagę ważnego słowa kodowego pewnej długości , to z prawdopodobieństwem nad losowe wersji -perturbed z , to zgadzam się z w co najwyżej. 05 ułamka współrzędnych, a zatem nie zgadza się z żadnym innym słowem kodowym w więcej niż ułamku współrzędnych. Dla takiego mamy IFF . Więc jeśli ε = .01 y = E n c ( x ) 4 n 1 - o ( 1 ) ε y y y E n c n .05 y y L x L h ε L h ( y ) = L ( x ) E n c L h hLε=.01y=Enc(x)4n1o(1)εyyyEncn.05yyLxLhjest jakimkolwiek przybliżeniem do wygładzonej wersji w twoim znaczeniu, wtedy musimy mieć . Ponieważ jest wydajnie obliczalny, daje nam to sposób na efektywne zredukowanie pytań członkowskich dla do pytań na . Więc jest trudne NP.εLh(y)=L(x)EncLhh

Dwie notatki:

(1) kodowania korygujące błędy instancji NP były wcześniej używane w kilku artykułach, w szczególności
D. Sivakumar: On Membership Comparable Sets. J. Comput. Syst. Sci. 59 (2): 270–280 (1999).

(2) powyższy argument oczywiście nie mówi nic o średniej złożoności każdego problemu NP, ponieważ korekcja błędów jest stosowana dla poszczególnych instancji.

Andy Drucker
źródło
8
Oprogramowanie nie pozwala mi rozpocząć mojej odpowiedzi od „Cześć Gil” i jestem trochę przerażony tym poziomem mikrozarządzania.
Andy Drucker,
2
Jest tak, ponieważ twoja odpowiedź nie powinna zaczynać się od „Cześć Gil”. To nie jest osobisty e-mail, to post na publicznej stronie internetowej. Oczywiście, tacy jak ty nie są tymi, których to dotyczy; raczej nowi użytkownicy nie są świadomi tych konwencji, które oprogramowanie ma kontrolować.
Yuval Filmus,
1
Uważam, że dobrze jest potwierdzić, kiedy ktoś pisze w odpowiedzi na czyjś wkład. Jest to normalne i pozytywne w wielu ustawieniach online. Próbowałem to zrobić w możliwie najkrótszy sposób, na adres osobisty; nie widzę w tym nic złego.
Andy Drucker,
2
Niezła konstrukcja! Mam pytanie: niech f będzie funkcją wskaźnika L ', a h będzie jak w pytaniu Gila. Teraz twój argument pokazuje, że h zgadza się z f na y, które są legalnymi słowami kodowymi. Ale co powiesz na to, że nie są to legalne słowa kodowe?
Lub Meir
2
f