En los capítulos anteriores, estudiamos la Transformada de Teoría de Números (NTT), que evalúa un polinomio en sus -ésimas raíces de la unidad. Puede entenderse como la transformación de un polinomio de su forma de coeficientes a su forma de punto-valor.
La NTT se puede realizar multiplicando el vector de coeficientes de un polinomio de grado por una matriz de Vandermonde, con una complejidad temporal de . También es posible, y más interesante, usar una versión rápida y recursiva de la transformación, que reduce la complejidad temporal a .
En este capítulo, comenzamos el estudio de la transformación inversa de la NTT, llamada Transformada Inversa de Teoría de Números, o INTT. Se puede usar para convertir un polinomio de su forma de punto-valor de vuelta a su forma de coeficientes. Este proceso se llama interpolación.
En nuestro artículo sobre interpolación de Lagrange, ya hemos visto un método para realizar la interpolación. La diferencia entre usar la interpolación de Lagrange y la Transformada Inversa de Teoría de Números es doble: la interpolación de Lagrange se puede realizar a partir de cualquier conjunto de puntos, mientras que la INTT solo se puede realizar en el conjunto de las -ésimas raíces de la unidad. Por el contrario, la interpolación de Lagrange siempre tiene una complejidad temporal de , mientras que la INTT se puede realizar en una complejidad temporal de .
En este capítulo, vamos a:
- Recordar cómo se puede realizar la evaluación utilizando una matriz de Vandermonde;
- Proponer una transformación inversa que también se realiza utilizando una matriz de Vandermonde;
- Demostrar que esta transformación inversa deshace la transformación original. En otras palabras, mostraremos que la evaluación a través de NTT, seguida de la interpolación a través de INTT, devuelve el polinomio a su forma de coeficientes original.
Por ahora, trabajaremos con la INTT para un polinomio de grado de modo que el lector pueda seguir más fácilmente los cálculos.
En un capítulo posterior, demostraremos que la transformación inversa propuesta se aplica a polinomios de cualquier grado.
Consideremos el polinomio
Para convertir este polinomio de la forma de coeficientes a la forma de punto-valor, es necesario evaluarlo en al menos puntos.
Por ejemplo, si el conjunto representa los puntos de evaluación, donde es una ta raíz primitiva de la unidad, las evaluaciones en estos puntos están dadas por:
Esto se puede expresar mediante la siguiente multiplicación de matrices:
donde se llama matriz de Vandermonde, y es el vector columna que representa los coeficientes. Puedes consultar el artículo sobre matrices de Vandermonde para aprender sobre ellas en detalle. Una matriz de Vandermonde tiene la propiedad de que cada una de sus filas forma una progresión geométrica, que es una secuencia de números en la que cada término se obtiene multiplicando el anterior por una razón constante.
En la matriz anterior, podemos notar que:
- 1ra fila: primer término: , razón común:
- 2da fila: primer término: , razón común:
- 3ra fila: primer término: , razón común:
- 4ta fila: primer término: , razón común:
Recordemos cómo la multiplicación nos da las evaluaciones de :
Si llevamos a cabo la multiplicación de la matriz fila por fila, obtenemos:
Por lo tanto, obtenemos:
Por lo tanto, si nos dan la forma de coeficientes de un polinomio, representada por el vector , podemos obtener su forma de punto-valor, representada por el vector , multiplicando por la izquierda por la matriz de Vandermonde .
Pero, ¿qué pasa si en su lugar nos dan las evaluaciones, es decir, el vector , y se nos pide calcular los coeficientes, es decir, el vector ?
Esto se puede hacer utilizando la inversa de la matriz de Vandermonde , denotada por , a través de la siguiente operación:
Nuestra afirmación es que la matriz está dada por
Observa que también tiene la propiedad de que cada una de sus filas forma una progresión geométrica:
- 1ra fila: primer término: , razón común:
- 2da fila: primer término: , razón común:
- 3ra fila: primer término: , razón común:
- 4ta fila: primer término: , razón común:
Por lo tanto, la inversa de la matriz de Vandermonde en este caso es en sí misma otra matriz de Vandermonde.
En las siguientes secciones, demostraremos que nuestra afirmación es cierta en este ejemplo utilizando las -tas raíces de la unidad. En el capítulo posterior, lo demostraremos en general.
Demostraremos que, en el caso de las -ésimas raíces de la unidad, cuando la NTT se realiza utilizando la siguiente matriz de Vandermonde,
la matriz inversa se puede obtener reemplazando cada potencia de con y dividiendo por un factor de , de la siguiente manera
La matriz inversa de Vandermonde, cuando se multiplica por el vector de evaluaciones de un polinomio dado en las raíces de la unidad, devuelve el vector de coeficientes de ese polinomio.
Evaluando
Para demostrar que la multiplicación de la matriz entre e nos devuelve el vector de coeficientes , usemos nuestro ejemplo anterior, donde , y .
Recordemos que , el vector de evaluaciones de en los puntos en , está dado por:
Realicemos la multiplicación de matrices entre e :
Nuestro objetivo es demostrar que el vector obtenido de la multiplicación de matrices anterior es igual al vector de coeficientes de .
Sustituyendo las evaluaciones y del vector , podemos calcular los coeficientes como:
Ahora demostramos que los vectores y son iguales. En otras palabras, queremos mostrar que
Calculando los coeficientes y
Llevemos a cabo la multiplicación de matrices fila por fila en el lado derecho (RHS) para ver cómo se obtienen los coeficientes correspondientes en el lado izquierdo (LHS). Para el coeficiente , tomamos el producto punto de la primera fila de con el vector :
Recordemos del capítulo anterior que, dado que es una -ta raíz primitiva de la unidad, la suma
es igual a cero siempre que no sea un múltiplo de . Explícitamente,
Para un análisis detallado de este concepto, por favor consulta el artículo sobre Ortogonalidad de las Raíces de la Unidad.
Al sustituir valores de que no son múltiplos de , obtenemos las siguientes identidades:
Por lo tanto, todos los términos que multiplican a , y se anulan, dejando
De manera similar, para calcular
, tomamos el producto punto de la segunda fila de con :
Sustituyendo las expresiones para las evaluaciones y , obtenemos,
Agrupar los términos para obtener los factores de y da como resultado
Nuevamente, los términos dentro de los paréntesis asociados con los factores de se anulan, dejando
Intenta expandir la multiplicación para y por tu cuenta y observa cómo se simplifican de acuerdo con la misma lógica que hemos usado anteriormente. Encontrarás que y , como se esperaba.
Esto completa la demostración de que . Con esto, hemos demostrado que la inversa de la matriz de Vandermonde para el caso es también una matriz de Vandermonde. El caso para un valor general de se demostrará en el capítulo posterior.
Este artículo es parte de una serie sobre la Transformada de Teoría de Números en nuestro ZK Book