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)f≤1−1/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. fxp−1f
— Geoffrey Irving,

1
@GeoffreyIrving Grazie! È facile controllare in modo efficiente quando viene dato come un circuito? f(xp−1)|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∧¬CqCCqFqa∧bab¬a1−axixiq−1O(log⁡q)

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)(p−1)/2+1)p−1.
fi(a)∈{0,1}a∈FpCCp(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)=1a∈Fp
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,…,nnaq≥22nn2
— 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=2k≥2nF2{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.