Test di identità randomizzati per polinomi di alto grado?


9

Sia un polinomio variato dato come un circuito aritmetico di dimensione poli , e sia un numero primo.n ( n )fn(n)p=2Ω(n)

Puoi verificare se è identicamente zero su , con time e probabilità di errore , anche se il grado non è a priori limitato? E se è univariato?Z p poli ( n ) 1 - 1fZppoly(n)f11/poly(n)f

Nota che puoi testare efficacemente se è identicamente zero come espressione formale , applicando Schwartz-Zippel su un campo di dimensioni dire , perché il grado massimo di è .f f 2 | f |22|f|f2|f|


se non hai limiti al grado, non esiste un polinomio che realizza una funzione specifica?
Peter Shor,

@PeterShor: L'OP non ha un rilegato sul grado; non può essere superiore a 2 al [numero di gate in ]. f

Penso che il punto cruciale di questa domanda sia che il campo GF (p) non è né abbastanza grande da usare il lemma di Schwartz-Zippel per costruire un algoritmo randomizzato di tempo polinomiale in modo standard, né abbastanza piccolo (come GF (2) ) per utilizzare l'aritmetizzazione per costruire una riduzione da SAT in modo standard.
Tsuyoshi Ito,

1
Nel caso univariato, la domanda chiede se divide , che può essere verificato in un campo più grande se ciò aiuta. Non sono sicuro se questo si generalizza a multivariato. fxp1f
Geoffrey Irving,

1
@GeoffreyIrving Grazie! È facile controllare in modo efficiente quando viene dato come un circuito? f(xp1)|ff
user94741

Risposte:


8

Non è esattamente chiaro per me quale sia l'input del problema e come si impone la restrizione , tuttavia, sotto qualsiasi formulazione ragionevole, la risposta è no per i polinomi multivariati a meno che NP = RP, a causa della riduzione di seguito.p=2Ω(n)

Data una potenza primaria in binario e un circuito booleano (wlog usando solo e gates), possiamo costruire in tempo polinomiale un circuito aritmetico tale che non è soddisfacente se calcola un polinomio identicamente zero su come segue: tradurre con , con e una variabile con (che può essere espressa da un circuito di dimensione usando la quadratura ripetuta ).C ¬ C q C C q F q a b a b ¬ a 1 - a x i x q - 1 i O ( log q )qC¬CqCCqFqabab¬a1axixiq1O(logq)

Se è primo (cosa che non credo in realtà conta) e sufficientemente grande, possiamo persino rendere univariata la riduzione: modificare la definizione di modo che sia tradotto con il polinomio Da un lato, per ogni , quindi se non è soddisfacente, allora per ogni . D'altra parte, supponiamo che sia soddisfacente, ad esempio , dove . Notare che C p x i f i ( x ) = ( ( x + i ) ( p - 1 ) / 2 + 1 ) p - 1 . f i ( a ) { 0 , 1 } a F p C C p ( a ) = 0 a C C ( bq=pCpxi

fi(x)=((x+i)(p1)/2+1)p1.
fi(a){0,1}aFpCCp(a)=0aCC(b1,,bn)=1bi{0,1}
fi(a)={1if a+i is a quadratic residue (including 0),0if a+i is a quadratic nonresidue.
Pertanto, abbiamo se è tale che per ogni . Corollario 5 in Peralta implica che tale esiste sempre per .Cp(a)=1aFp
a+i is a quadratic residue bi=1
i=1,,nap(1+o(1))22nn2

La riduzione univariata in realtà funziona anche per il nonprime , purché sia ​​dispari (e probabilmente si possono gestire poteri di in un altro modo). Invece delle costanti , si può prendere qualsiasi sequenza fissa di elementi distinti del campo; la richiesta esiste di nuovo se essenzialmente con lo stesso argomento del documento di Peralta (il vero lavoro è legato a Weil con somme di caratteri, che vale per tutti i campi finiti). q21,,nnaq22nn2
Emil Jeřábek,

Ah, sì: se , possiamo correggere -indipendentemente linearmente e tradurre con , dove è la traccia di . F 2 { a i : i = 1 , , n } F q x i T ( a i x ) T ( x ) = j < k x 2 j F q / F 2q=2k2nF2{ai:i=1,,n}FqxiT(aix)T(x)=j<kx2jFq/F2
Emil Jeřábek,
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.