Teste de identidade randomizado para polinômios de alto grau?

9

Seja um polinômio variável, dado como um circuito aritmético de tamanho poli , e seja p = 2 ^ {\ Omega (n)} um primo.n ( n ) p = 2 Ω ( n )fn(n)p=2Ω(n)

Você pode testar se f é igual a zero acima de Zp , com time poly(n) e probabilidade de erro 11/poly(n) , mesmo que o grau não seja a priori delimitado? E se f for univariado?

Observe que você pode testar com eficiência se f é identicamente zero como expressão formal , aplicando Schwartz-Zippel sobre um campo de tamanho, digamos 2 ^ {2 | f |} , porque o grau máximo de f é 2 ^ {| f |} .22|f|f2|f|

user94741
fonte
se você não tem limites no grau, não há um polinômio que realize alguma função específica?
Peter Shor
@PeterShor: O OP não têm um limite no grau; não pode ser maior que 2 para [o número de portas no f ].
Penso que o ponto crucial desta questão é que o campo GF (p) não é grande o suficiente para usar o lema de Schwartz – Zippel para construir um algoritmo de tempo polinomial aleatório de maneira padrão, nem suficientemente pequeno (como GF (2) ) para usar a aritmetização para construir uma redução do SAT de maneira padrão.
Tsuyoshi Ito 22/10
11
No caso univariado, a pergunta pergunta se divide , que pode ser verificado em um campo maior, se isso ajudar. Não tenho certeza se isso generaliza para multivariada. fxp1f
Geoffrey Irving
11
@GeoffreyIrving Thanks! É fácil verificar com eficiência quando é dado como um circuito? f(xp1)|ff
user94741

Respostas:

8

Não está exatamente claro para mim qual é a entrada do problema e como você impõe a restrição , no entanto, sob qualquer formulação razoável, a resposta é não para polinômios multivariados, a menos que NP = RP, devido à redução abaixo.p=2Ω(n)

Dada uma potência principal no binário e no circuito booleano (wlog usando apenas portas e ), podemos construir em tempo polinomial um circuito aritmético modo que seja insatisfatório se um polinômio idêntico zero sobre da seguinte maneira: traduza com , com e uma variável com (que pode ser expressa por um circuito do tamanho usando o quadrado repetido )C ¬ C Q C C Q M q um b um b ¬ um 1 - um x i x q - 1 i O ( log q )qC¬CqCCqFqabab¬a1axixiq1O(logq)

Se é primo (o que eu acho que realmente não importa) e suficientemente grande, podemos até tornar a redução univariada: modifique a definição de para que seja traduzido com o polinômio Por um lado, para cada , portanto, se for insatisfatório, para cada . Por outro lado, suponha que seja satisfatório, diga , onde . Notar que C p x i f i ( x ) = ( ( x + i ) ( p - 1 ) / 2 + 1 ) p - 1 . , , B n ) = 1 b i{ 0 , 1 } f i ( a ) = { 1 se q=pCpxi

fi(x)=((x+i)(p1)/2+1)p1.
a F p C C p ( a ) = 0 a C C (fi(a){0,1}aFpCCp(a)=0aCC(b1,,bn)=1bi{0,1}Cp(a)=1aFpa+i é um resíduo quadrático 
fi(a)={1if a+i is a quadratic residue (including 0),0if a+i is a quadratic nonresidue.
Assim, temos se é tal que para cada . Corolário 5 em Peralta implica que tais sempre existe para .Cp(uma)=1 1umaFpi = 1 , , n a p ( 1 + o ( 1 ) ) 2 2 n n 2
uma+Eu is a quadratic residue bi=1
i=1,,nap(1+o(1))22nn2
Emil Jeřábek
fonte
A redução univariada também funciona para primário , desde que seja ímpar (e provavelmente é possível lidar com potências de de outra maneira). Em vez das constantes , pode-se pegar qualquer sequência fixa de elementos distintos do campo; o necessário existe novamente se , essencialmente pelo mesmo argumento do artigo de Peralta (o trabalho real está no Weil vinculado às somas de caracteres, o que vale para todos os campos finitos). 2 1 , , n n a q 2 2 n n 2q21,,nnaq22nn2
Emil Jerabek
Ah, sim: se , podemos corrigir linearmente independente e traduzir com , em que é o rastreio de . F 2 { uma i : i = 1 , ... , n } F q x i T ( um i x ) T ( x ) = Σ j < k x 2 j F Q / M 2q=2k2nF2{ai:i=1,,n}FqxiT(aix)T(x)=j<kx2jFq/F2
Emil Jerabek