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 comúnmente utilizada en las pruebas probabilísticas de identidad polinomial . 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 al evaluar un polinomio distinto de cero en entradas elegidas al azar de un conjunto suficientemente grande es probable que se encuentre una entrada que produzca una salida distinta de cero.

fue descubierto de forma independiente 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 probada por Øystein Ore en 1922. [4]

Declaración y prueba del lema.

Teorema 1 (Schwartz, Zippel). Dejar

sea ​​un polinomio distinto de cero de grado total d  ≥ 0 sobre un dominio integral  R. Sea S un subconjunto finito de R y deje que r 1r 2 , ...,  r n se seleccionen 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

Prueba. La prueba es por inducción matemática en n . Para n  = 1 , como se mencionó anteriormente, P puede tener como máximo d raíces. Esto nos da el caso base. Ahora, supongamos que el teorema se cumple para todos los polinomios en n  − 1 variables. Entonces podemos considerar que P es un polinomio en x 1 escribiéndolo como

Dado que P no es idénticamente 0, hay alguna i tal que no es idénticamente 0. Tome la i más grande . Entonces , dado 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 es idénticamente cero), entonces

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 polinómicas se deriva de los algoritmos que se obtienen para problemas que pueden reducirse al problema de la prueba de identidad polinómica .

Prueba cero

Por ejemplo, es

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

Comparación de dos polinomios

Dado un par de polinomios y , es

?

Este problema puede resolverse reduciéndolo al problema de la prueba de identidad polinómica. Equivale 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 binarios ). Un programa de ramificación de una sola lectura 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 sólo si el los polinomios correspondientes son iguales. Por lo tanto, la identidad de funciones booleanas calculadas por programas de ramificación de una sola lectura se puede reducir a pruebas de identidad polinómica.

La comparación de dos polinomios (y por lo tanto la prueba de identidades polinómicas) también tiene aplicaciones en 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 .

Pruebas 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 polinómica para hacerlo.

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

Esto es una consecuencia del endomorfismo de Frobenius .

Dejar

Entonces 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 pequeño grado.

Los números primos se utilizan en una serie de aplicaciones, como el tamaño de tablas hash, generadores de números pseudoaleatorios y en 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 una gráfica de n vértices donde n es par. ¿ G contiene una combinación perfecta ?

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

Un subconjunto D de E se llama coincidencia si cada vértice en V incide como máximo con una arista en D. Una coincidencia es perfecta si cada vértice en V tiene exactamente una arista incidente en D. Cree una matriz 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 asimétrica que coincide con el cuadrado del pfaffiano de la matriz A y es distinto de cero (como polinomio) si y sólo si a existe una combinación perfecta. Luego se pueden utilizar pruebas de identidad polinomial para encontrar si G contiene una coincidencia perfecta. Existe un algoritmo determinista de caja negra para gráficos con permanentes acotados polinomialmente (Grigoriev y Karpinski 1987). [5]

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

si las primeras m filas (respectivamente 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 X m × m (hasta el signo). Aquí X es la matriz de Edmonds .

Determinante de una matriz con entradas polinomiales

Dejar

ser el determinante de la matriz polinómica .

Actualmente, no se conoce ningún algoritmo de tiempo subexponencial que pueda resolver este problema de forma determinista. Sin embargo, existen algoritmos polinomiales 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 al azar.

Notas

  1. ^ Schwartz 1980.
  2. ^ Zippel 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