stringtranslate.com

Lema de Schwartz-Zippel

En matemáticas, el lema de Schwartz-Zippel (también llamado lema de DeMillo-Lipton-Schwartz-Zippel ) es una herramienta que se utiliza habitualmente en las pruebas de identidad polinómica probabilísticas . La prueba de identidad es el problema de determinar si un polinomio multivariado dado es el polinomio 0, el polinomio que ignora todas sus variables y siempre devuelve cero. El lema establece que es probable que al evaluar un polinomio distinto de cero sobre entradas elegidas aleatoriamente de un conjunto lo suficientemente grande se encuentre una entrada que produzca una salida distinta de cero.

Fue descubierto independientemente por Jack Schwartz , [1] Richard Zippel, [2] y Richard DeMillo y Richard J. Lipton , aunque la versión de DeMillo y Lipton se mostró un año antes del resultado de Schwartz y Zippel. [3] La versión de campo finito de este límite fue demostrada por Øystein Ore en 1922. [4]

Enunciado y demostración del lema

Teorema 1 (Schwartz, Zippel). Sea

sea ​​un polinomio distinto de cero de grado total d  ≥ 0 sobre un dominio integral  R. Sea S un subconjunto finito de R y sean r 1r 2 , ...,  r n seleccionados al azar de forma independiente y uniforme de S. Entonces

De manera equivalente, el Lema establece que para cualquier subconjunto finito S de R, si Z(P) es el conjunto cero de P, entonces

Demostración. La demostración se realiza por inducción matemática sobre n . Para n  = 1 , P puede tener como máximo d raíces según el teorema fundamental del álgebra . Esto nos da el caso base. Ahora, supongamos que el teorema se cumple para todos los polinomios en n  − 1 variables. Podemos entonces considerar que P es un polinomio en x 1 escribiéndolo como

Como P no es idénticamente 0, existe algún i tal que no es idénticamente 0. Tómese el mayor tal que i . Entonces , ya que el grado de es como máximo d.

Ahora elegimos aleatoriamente de S. Por la hipótesis de inducción,

Si , entonces es de grado i (y por lo tanto no idénticamente cero) por lo que

Si denotamos el evento por A , el evento por B y el complemento de B por , tenemos

Aplicaciones

La importancia del teorema de Schwartz-Zippel y la prueba de identidades polinomiales se desprende de los algoritmos que se obtienen para problemas que pueden reducirse al problema de la prueba de identidad polinomial .

Pruebas cero

Por ejemplo, es

Para resolverlo, podemos multiplicarlo y comprobar que todos los coeficientes son 0. Sin embargo, esto lleva tiempo exponencial . En general, un polinomio se puede representar algebraicamente mediante una fórmula aritmética o un circuito .

Comparación de dos polinomios

Dado un par de polinomios y , es

?

Este problema se puede resolver reduciéndolo al problema de la prueba de identidad polinómica. Es equivalente a comprobar si

Por lo tanto, si podemos determinar que

dónde

Entonces podemos determinar si los dos polinomios son equivalentes.

La comparación de polinomios tiene aplicaciones para programas de ramificación (también llamados diagramas de decisión binaria ). Un programa de ramificación de lectura única se puede representar mediante un polinomio multilineal que calcula (sobre cualquier campo) en entradas {0,1} la misma función booleana que el programa de ramificación, y dos programas de ramificación calculan la misma función si y solo si los polinomios correspondientes son iguales. Por lo tanto, la identidad de las funciones booleanas calculadas por programas de ramificación de lectura única se puede reducir a la prueba de identidad polinómica.

La comparación de dos polinomios (y por lo tanto la prueba de identidades polinomiales) también tiene aplicaciones en la compresión 2D, donde el problema de encontrar la igualdad de dos textos 2D A y B se reduce al problema de comparar la igualdad de dos polinomios y .

Prueba de primalidad

Dado , ¿es un número primo ?

Un algoritmo aleatorio simple desarrollado por Manindra Agrawal y Somenath Biswas puede determinar probabilísticamente si es primo y utiliza pruebas de identidad polinomial para hacerlo.

Proponen que todos los números primos n (y sólo los números primos) satisfacen la siguiente identidad polinomial:

Esto es una consecuencia del endomorfismo de Frobenius .

Dejar

Entonces, si y solo si n es primo . La prueba se puede encontrar en [4]. Sin embargo, dado que este polinomio tiene grado , donde puede ser primo o no, el método de Schwartz-Zippel no funcionaría. Agrawal y Biswas utilizan una técnica más sofisticada, que divide por un polinomio mónico aleatorio de grado pequeño.

Los números primos se utilizan en diversas aplicaciones, como el dimensionamiento de tablas hash, los generadores de números pseudoaleatorios y la generación de claves para criptografía . Por lo tanto, encontrar números primos muy grandes (del orden de (al menos) ) se vuelve muy importante y se requieren algoritmos de prueba de primalidad eficientes.

Combinación perfecta

Sea un grafo de n vértices donde n es par. ¿ G contiene una correspondencia perfecta ?

Teorema 2 (Tutte 1947): Un determinante matricial de Tutte no es un polinomio 0 si y sólo si existe una correspondencia perfecta.

Un subconjunto D de E se denomina coincidente si cada vértice de V incide con, como máximo, una arista de D. Un emparejamiento es perfecto si cada vértice de V tiene exactamente una arista que le incide en D. Cree una matriz de Tutte A de la siguiente manera:

dónde

El determinante de la matriz de Tutte (en las variables x ij , ⁠ ⁠ ) se define entonces como el determinante de esta matriz antisimétrica que coincide con el cuadrado del pfaffiano de la matriz A y es distinto de cero (como polinomio) si y solo si existe una correspondencia perfecta. Se puede entonces utilizar la prueba de identidad polinómica para encontrar si G contiene una correspondencia perfecta. Existe un algoritmo de caja negra determinista para grafos con permanentes acotados polinómicamente (Grigoriev & Karpinski 1987). [5]

En el caso especial de un gráfico bipartito balanceado en vértices, esta matriz toma la forma de una matriz de bloques.

si las primeras m filas (o columnas) están indexadas con el primer subconjunto de la bipartición y las últimas m filas con el subconjunto complementario. En este caso, el pfaffiano coincide con el determinante habitual de la matriz m × m X (hasta el signo). Aquí X es la matriz de Edmonds .

Determinante de una matriz con entradas polinómicas

Dejar

sea ​​el determinante de la matriz polinómica .

Actualmente, no se conoce ningún algoritmo de tiempo subexponencial que pueda resolver este problema de manera determinista. Sin embargo, existen algoritmos polinómicos aleatorios cuyo análisis requiere un límite en la probabilidad de que un polinomio distinto de cero tenga raíces en puntos de prueba seleccionados aleatoriamente.

Notas

  1. ^ Schwartz 1980.
  2. ^ Zipper 1979.
  3. ^ DeMillo y Lipton 1978.
  4. ^ O. Ore, Über höhere Kongruenzen. Estera norsk. Forenings Skrifter Ser. Yo (1922), núm. 7, 15 páginas.
  5. ^ Grigoriev y Karpinski 1987.

Referencias

Enlaces externos