Oceniając multilinearyzację obwodu arytmetycznego?

13

Niech p(x1,,xn) jest wielomianem wielu zmiennych współczynnikach nad polem F . Multilinearization z p , oznaczony przez P , jest wynikiem zastąpienia wielokrotnie każdy x d I o d > 1 o x i . Wynikiem jest oczywiście wielomianowy wielomian.p^xidd>1xi

Rozważmy następujący problem: podany arytmetyczna obwód przez F i biorąc pod uwagę pole elementów 1 , ... , n , obliczyć C ( 1 , ... , n ) .C(x1,,xn)Fa1,,anC^(a1,,an)

Pytanie: Zakładając, że arytmetykę pola można wykonać w jednostce czasu, czy istnieje do tego algorytm wielomianowy? Dodane później: Byłbym również zainteresowany szczególnym przypadkiem, w którym jest tak naprawdę formułą (obwód fan-out 1 ).C1

slimton
źródło
1
Dlaczego miałoby to być równoważne z obliczeniem mocy wyjściowej obwodu zamkniętego? Problem m przeciwległych jest to, że układ może mieć rozłączne ścieżki wejścia kilka wewnętrznych węzłów mnożenie i oceny każdego z tych wewnętrznych węzłów mnożenia wymaga zastąpienia x I o w I w jednej ścieżce i 1 w drugim . W obwodzie z wykładniczą liczbą ścieżek wygląda na to, że istnieje wykładnicza liczba przypadków do załatwienia. xixiai1
slimton,
2
@Kaveh: Nie rozumiem. Spójrz na obwód . Jeśli po prostu zastąpić węzeł wejściowy x przez węzeł z wartością A i ocenić w sposób standardowy skończyć się powrotem do 2 zamiast . Model obliczeniowy: po prostu normalny czas wielomianowy na maszynach Turinga. Pomyśl o polu jako o Z / 3 Z dla konkretności, jeśli chcesz. (xx)xaa2aZ/3Z
slimton,
2
@Kaveh: Nie rozumiem, w jaki sposób taki algorytm implikuje to, co mówisz, ale w rzeczywistości jest to sprzeczne z powszechną hipotezą złożoności obwodu arytmetycznego: że Permanent nie ma obwodów arytmetycznych o wielkiej wielkości (ponad polami innymi niż F_2). Rozważmy wielomian . Część wieloliniowa q tego wielomianu ma właściwość polegającą na tym, że jej najwyższy stopień ( = 2 n ) to po prostu r = y 1 y 2y n P e r ( xp=i(jxijyj)q=2n. Jeśli istnieje mały obwód arytmetyczny obliczającyq, wówczas można pokazać, że istnieje mały obwód arytmetyczny obliczającyr. r=y1y2ynPer(x11,,xnn)qr
Srikanth,
1
@ Srikanth: Nie widziałem twojego komentarza przed opublikowaniem mojej odpowiedzi (która okazała się być tą samą konstrukcją, którą podałeś w komentarzu). Od tego czasu usunąłem moją odpowiedź i powinieneś opublikować swój komentarz jako odpowiedź.
Joshua Grochow
2
@Joshua: Nie dodałem swojego komentarza jako odpowiedzi, ponieważ nie rozumiem, dlaczego konstrukcja Kaveha działa. Widzę, że obwód arytmetyczny oblicza wielomian, który zgadza się z wieloliniowością na wszystkich wejściach, ale nie jestem pewien, czy formalnie oblicza wieloliniowość danego wielomianu (patrz moje komentarze po odpowiedzi Kaveha). Moja konstrukcja (i twoja) zakłada, że ​​multilinearyzacja jest obliczana formalnie.
Srikanth,

Odpowiedzi:

12

W przypadku, gdy pole ma rozmiar co najmniej 2 n , myślę, że ten problem jest trudny. Mówiąc dokładniej, myślę, że jeśli powyższe można skutecznie rozwiązać dla tak dużego F , to CNF-SAT ma wydajne algorytmy losowe. Powiedzmy, że otrzymaliśmy wzór CNF φ . Można łatwo wymyślić arytmetyczna obwodem C , który oblicza się `arithmetization„” p o cp , gdzie wielomian P zgadza się ze wzoru cp na 0 - 1 wejściach. Rozważmy multilinearization q z p . Zauważ, że qF2nFφCpφpφ01qpqzgadza się z a zatem φ w dniu { 0 , 1 } n .pφ{0,1}n

Twierdzę, że jest niezerowe, iff φ jest zadowalające. Oczywiście, jeśli q = 0 , to φ nie może być spełnione. Z drugiej strony można pokazać, że żaden niezerowy wielomian wielomianowy nie może zniknąć na wszystkich { 0 , 1 } n . To implikuje, że niezerowe q (i stąd odpowiadające φ ) nie znika przy niektórych danych wejściowych w { 0 , 1 } n .qφq=0φ{0,1}nqφ{0,1}n

Dlatego sprawdzenie zgodności jest równoważne sprawdzeniu, czy q jest niezerowe. Powiedz teraz, że możemy ocenić q na dużym polu F . Następnie, korzystając z Schwartz-Zippel Lemma, moglibyśmy przetestować tożsamość q przy użyciu wydajnego algorytmu losowego i sprawdzić, czy jest to zerowy wielomian (wielkość F jest używana do górnej granicy błędu w Schwartz-Zippel Lemma).φqqFqF

Srikanth
źródło
Wydaje mi się, że F jest polem stałym, ponieważ w danych wejściowych nie ma niczego, co określa F. Należy również zauważyć, że pytanie zakłada, że ​​operacje w polu zajmują czas jednostkowy.
Kaveh
Dzięki Srikanth. Jak zgadł Kaveh, rzeczywiście interesowałem się ustalonym przypadkiem pola skończonego, ale ta odpowiedź, którą dałeś, pomaga mi lepiej zrozumieć pytanie.
slimton,
3

C(x)F(x)aCabpbikbi,k

PP/polyM

CMC

Fpxp110p1fgf.gfgf+gf.g¬f1f

Fpbi0kp1kbi,k

Fp2 x ( x + 1 ) 2 x ( x + 2 ) x F 3mod32x(x+1)2x(x+2)xF3

Łączenie to mamy arytmetyczną obwodu nad obliczeniowej wielofunkcyjnego linearyzację o rozmiarze polynomail w rozmiarze . C CFpCC

Kaveh
źródło
2
Nie jest dla mnie jasne, dlaczego opisany obwód arytmetyczny oblicza wieloliniową , a nawet wielomianową wielomianową. Jestem tylko w stanie zobaczyć, że obwód arytmetyczną oblicza jakiś wielomian, że zgadza się z multilinearization z na - wejść. C 0 1CC01
Srikanth,
@ Srikanth: arytmetyczna wersja obwodu logicznego (z pewnymi ustalonymi wejściami) oblicza wieloliniową wersję , nie musi to być wieloliniowa. Wtedy jedynym problemem jest to, że wejścia / wyjścia są w wartościach binarnych, a nie w , więc po prostu muszę naprawić kodowanie wejścia / wyjścia z binarnych na oryginalne wartości wejściowe i wyjściowe. Powstały obwód jest układem arytmetycznym, który pobiera wartości dla zmiennych , koduje je binarnie, oblicza wartość multilinaryzacji na tych wejściach i wysyła odpowiedź w formacie binarnym, a następnie tłumaczy je z powrotem na . C F p C C F pMCFpCCFp
Kaveh,
[nadal] Wynikiem jest arytmetyczną z obwodu tych samych czynników, które ma, oraz z tych samych wyjść i jest obliczenie multilinearization z . C.CC
Kaveh
2
@Kaveh: Czy założyłeś, że wejście do obwodu logicznego ma taką samą postać jak wyjście ? W każdym razie nadal nie jestem przekonany. Jest całkowicie możliwe, aby obwód arytmetyczny obliczył wielomian który zgadza się z wielomianem na wszystkich wejściach z pola, a jednak . Na przykład wielomian zgadza się z na wszystkich wejściach, a jednak nie są one równe wielomianom. Skąd wiesz, że obwód nie oblicza po prostu wielomianu nieliniowego, który zgadza się z multilinaryzacją na wszystkich wejściach? M f g f g x p x M C.MMfgfgxpxMC
Srikanth
@ Srikanth: Opisałem formę danych wejściowych i wyjściowych w mojej odpowiedzi. Dane wejściowe do są binarne, dane wyjściowe mają postać podaną powyżej. Nie powiedziałem, że to multilinear, powiedziałem tylko, że oblicza multilinearization o . M C.MMC
Kaveh