Este artículo explica qué son las Raíces de la Unidad en un Campo Finito y cómo están entrelazadas con los subgrupos multiplicativos. Se espera que el lector esté familiarizado con el capítulo anterior sobre el Teorema Fundamental de los Grupos Cíclicos.
Ese teorema establece que, dado un grupo multiplicativo de orden , existe un subgrupo único de orden cuando divide a . De lo contrario, si no divide a , no existe ningún subgrupo de orden .
También establece que, si es un generador de , entonces genera el subgrupo de orden .
En este artículo, mostraremos que todos los elementos de este subgrupo son lo que se denomina raíces -ésimas de la unidad, y que el generador es lo que se llama una raíz primitiva -ésima de la unidad.
Motivación y objetivo de este capítulo
Las raíces cuadradas de en un campo finito son fáciles de calcular: son los números congruentes a y a (que son y respectivamente. Recuerda que, en un campo , el número es congruente con ). En otras palabras, . Este conjunto es el conjunto de soluciones de la ecuación , donde es un elemento del campo finito.
Pero, ¿qué pasa si queremos calcular las raíces cúbicas de , o más generalmente, las raíces -ésimas de 1, es decir, ? Por definición, las raíces -ésimas de la unidad son los elementos que satisfacen la ecuación . Pero, ¿cómo podemos encontrarlas?
Podríamos probar todos los elementos uno por uno —un enfoque de fuerza bruta— pero eso sería inviable cuando el campo contiene muchos elementos. Afortunadamente, existe una forma sencilla de encontrarlas todas. En el campo finito , las raíces -ésimas de la unidad son precisamente los elementos del subgrupo multiplicativo de orden . Esta definición asume que divide a
Para decirlo en los términos más contundentes posibles: Si un elemento en un campo finito es parte de un subgrupo multiplicativo de orden , entonces es una raíz -ésima de la unidad, y . Y si un elemento es una raíz -ésima de la unidad (lo que significa que , entonces es parte de un subgrupo multiplicativo de orden .
Equivalencia de terminología
Puede parecer que simplemente estamos agregando una nueva terminología para la misma entidad (un elemento en un grupo multiplicativo) y señalando que elevarlo a la -ésima potencia es igual a 1.
En cierto sentido, sí, estamos introduciendo un nuevo término para la misma entidad: una raíz -ésima de la unidad es un elemento en un subgrupo multiplicativo de orden y viceversa. Normalmente, darle dos nombres a la misma entidad genera confusión, por lo que debemos justificar la introducción del término “raíz de la unidad”.
Cuando hablamos de grupos cíclicos de orden en el sentido más general, no tenemos la garantía de que tomar un elemento de ese grupo y aplicar el operador binario a ese elemento y a sí mismo veces dé como resultado el elemento identidad, es decir, , o de forma más general para un operador binario :
Para los grupos cíclicos en general, no se garantiza que la propiedad anterior se cumpla, pero para las raíces de la unidad en un campo finito, sí está garantizada.
Por lo tanto, podemos decir que las raíces de la unidad tienen todas las propiedades que el Teorema Fundamental de los Grupos Cíclicos dice que deberían tener, y además tienen la propiedad de que
Así que, para tranquilidad del lector, ya sabes bastante sobre las raíces de la unidad en un grupo finito simplemente porque entiendes el Teorema Fundamental de los Grupos Cíclicos. Dado que las raíces de la unidad en un campo finito forman un subgrupo cíclico, el Teorema Fundamental de los Grupos Cíclicos se aplica a ellas.
Sin embargo, la garantía adicional de que desbloquea propiedades adicionales que los algoritmos eficientes de ZK aprovechan directamente. Estas propiedades nos permiten crear algoritmos eficientes como la Transformada Teórica de Números (Number Theoretic Transform) y otros algoritmos de Prueba de Conocimiento Cero (Zero-Knowledge Proof), tales como PLONK y ZK-STARKs.
Estudiaremos estas propiedades adicionales de las raíces de la unidad en capítulos posteriores. Este capítulo se centra en definiciones y ejemplos para desarrollar la comprensión de que un elemento en un campo finito tiene la propiedad de que si y solo si es parte de un subgrupo multiplicativo de orden
Calcular las raíces k-ésimas de la unidad es lo mismo que encontrar el subgrupo multiplicativo de orden k
En el artículo sobre el Teorema Fundamental de los Grupos Cíclicos, aprendimos cómo encontrar todos los elementos de un subgrupo multiplicativo de orden . Primero, obtenemos un generador de este subgrupo a partir del generador del grupo multiplicativo . Luego, utilizando este generador, podemos encontrar todos los elementos del subgrupo de orden .
Por lo tanto, encontrar las raíces -ésimas de la unidad de no es diferente de encontrar el subgrupo multiplicativo de orden , si divide a , algo que ya sabemos hacer.
Nuestro objetivo en este capítulo es demostrar esta equivalencia: entre el grupo de todas las raíces -ésimas de la unidad y el subgrupo multiplicativo de orden , si divide a .
Para hacer esto, necesitamos demostrar las siguientes dos afirmaciones:
- Todo elemento dentro del subgrupo multiplicativo de orden satisface .
- Supongamos que divide a . Entonces, todo elemento en que satisface pertenece al subgrupo único de orden .
Exploraremos estas dos afirmaciones a través de ejemplos para ilustrar que se cumplen. Dado que las demostraciones formales pueden ser un poco exigentes matemáticamente, pospondremos algunas de ellas al apéndice para el lector interesado, aunque hemos hecho el esfuerzo de hacerlas lo más comprensibles posible.
1. Todo elemento en el subgrupo de orden satisface
Esta primera afirmación demuestra que todos los elementos del subgrupo multiplicativo de orden son raíces -ésimas de la unidad.
Sin embargo, esto NO es suficiente para establecer la equivalencia entre el grupo de todas las raíces -ésimas de la unidad y el subgrupo multiplicativo de orden (cuando divide a ), ya que no garantiza que todas las raíces -ésimas de la unidad pertenezcan a este subgrupo, lo cual se discutirá en la Afirmación 2.
Comenzaremos esta sección con una demostración de esta afirmación y luego mostraremos a través de ejemplos que esta afirmación se cumple.
Demostración de la Afirmación 1
Recuerda del artículo sobre el Teorema Fundamental de los Grupos Cíclicos que un subgrupo único de orden es generado por , donde es un generador del grupo multiplicativo . Nos referimos a como los elementos generados tomando potencias sucesivas de módulo :
Sea un elemento arbitrario en para algún . El objetivo es demostrar que .
La demostración a continuación asume que el generador tiene la propiedad ; consulta el Apéndice A para la demostración de este hecho.
Calculemos de la siguiente manera:
Por lo tanto, cada elemento en el subgrupo de orden , cuando se eleva a la potencia , es igual a 1.
Ejemplo de la Afirmación 1 en
En este ejemplo, tenemos que . Además, el elemento es un generador del grupo multiplicativo .
Cómo encontrar el generador del grupo multiplicativo no se cubrirá en este artículo, pero la biblioteca galois proporciona una manera rápida de hacerlo. Dado el campo , una forma de encontrar el generador es usando la propiedad primitive_element, como se muestra a continuación.
import galois
GF = galois.GF(7) # define the field
GF.primitive_element # GF(3, order=7)
Subgrupo de orden 3
Dado que 3 divide a , el Teorema Fundamental de los Grupos Cíclicos garantiza la existencia de un subgrupo único de orden 3.
Este subgrupo es generado por . Por lo tanto,
Ahora, queremos verificar que todo elemento en satisface . Esto se hace a continuación:
Así, los elementos y satisfacen . Por lo tanto, la condición se cumple.
Subgrupo de orden 2
Dado que 2 divide a , el Teorema Fundamental de los Grupos Cíclicos garantiza la existencia de un subgrupo único de orden 2.
Este subgrupo es generado por . Por lo tanto,
Ahora, queremos verificar que todo elemento en satisface .
Así, los elementos y satisfacen . Por lo tanto, la condición se cumple.
Ejercicio. Verifica que todo elemento en satisface .
2. Si divide a , entonces todo elemento en con pertenece al subgrupo único de orden
Esta afirmación asegura que TODAS las raíces -ésimas de la unidad pertenecen al subgrupo multiplicativo de orden , siempre y cuando divida a .
En esta sección, ilustramos esta afirmación mediante algunos ejemplos. La demostración completa se proporciona en el Apéndice B para el lector interesado.
Antes de continuar, consideremos el caso en el que no divide a . En esta situación, el Teorema Fundamental de los Grupos Cíclicos nos dice que no hay ningún subgrupo de orden , y por lo tanto no puede existir equivalencia alguna.
Ejemplo en
En este ejemplo, tenemos que . Además, el elemento es un generador del grupo multiplicativo .
Subgrupo de orden
Dado que 3 divide a , existe un subgrupo único de orden 3. Este subgrupo es generado por . Por lo tanto,
Queremos verificar que todo elemento en que satisface pertenece a este subgrupo único de orden en . Encontremos todos esos elementos en , de la siguiente manera:
Los elementos y satisfacen . Estos tres elementos son exactamente los miembros del subgrupo de orden en . Por lo tanto, todo elemento en con pertenece al subgrupo único de orden .
Ejercicio. Verifica que todo elemento en que satisface pertenece al subgrupo único de orden .
Ejemplo en
En este ejemplo, tenemos que . Además, el elemento es un generador del grupo multiplicativo , lo cual puede verificarse utilizando la biblioteca galois:
GF = galois.GF(17) # define the field
GF.primitive_element # GF(3, order=17)
Subgrupo de orden
Dado que 4 divide a , existe un subgrupo único de orden 4. Este subgrupo es generado por . Por lo tanto,
Queremos verificar que todo elemento en que satisface pertenece a este subgrupo único de orden en . Encontremos todos esos elementos en , de la siguiente manera:
Los elementos y satisfacen . Estos cuatro elementos son exactamente los miembros del subgrupo de orden en . Por lo tanto, todo elemento en con pertenece al subgrupo único de orden .
Ejercicio. Verifica que todo elemento en que satisface pertenece al subgrupo único de orden .
Raíz primitiva -ésima de la unidad
Una raíz primitiva -ésima de la unidad es una raíz especial -ésima de la unidad: es una raíz -ésima de la unidad que genera todas las demás raíces -ésimas de la unidad.
Dado que el grupo de raíces -ésimas de la unidad en el que estamos interesados es el mismo que el subgrupo de orden , las raíces primitivas -ésimas de la unidad son exactamente los generadores de este subgrupo.
Nota: En el caso de que no divida a (considerando campos finitos ), aún puede haber raíces -ésimas de la unidad, pero en este caso NO hay raíces primitivas -ésimas de la unidad.
Por lo tanto, encontrar una raíz primitiva -ésima de la unidad es sencillo: es lo mismo que encontrar un generador del subgrupo de orden , y el Teorema Fundamental de los Grupos Cíclicos nos indica cómo hacerlo.
Una definición formal de una raíz primitiva -ésima de la unidad es que se trata de una raíz -ésima de la unidad de orden , donde el orden de un elemento es el entero positivo más pequeño mayor que cero tal que .
Por ejemplo, es una raíz sexta de la unidad en porque , pero no es una raíz sexta primitiva porque hay una potencia menor a 6 que la convierte en , específicamente 3, es decir, .
El número de raíces primitivas -ésimas de la unidad
Al igual que un subgrupo de orden puede tener más de un generador, puede haber más de una raíz primitiva -ésima de la unidad. El número de raíces primitivas -ésimas de la unidad es el mismo que el número de generadores del subgrupo de orden .
El número de raíces primitivas -ésimas de la unidad (y generadores) está dado por la función indicatriz de Euler . La demostración de este hecho está fuera del alcance de este artículo. Para la aplicación que estamos considerando (la Transformada Teórica de Números), solo necesitamos una raíz primitiva -ésima de la unidad, la cual se puede encontrar utilizando el Teorema Fundamental, asumiendo que conocemos un generador para .
En el resto de este capítulo, presentaremos ejemplos que muestran cómo utilizar el Teorema Fundamental para encontrar una raíz primitiva -ésima de la unidad, y luego todas las raíces -ésimas de la unidad para un dado.
Ejemplo de raíces cuartas de la unidad en
Un generador del grupo multiplicativo es el elemento , el cual se puede encontrar utilizando la biblioteca galois.
Un generador para el subgrupo de orden 4 es entonces .
Basado en nuestra discusión, este generador es una raíz cuarta primitiva de la unidad. Comprobémoslo usando la definición de una raíz primitiva -ésima de la unidad. Necesitamos demostrar que:
- El elemento es una raíz cuarta de la unidad. Esto se puede ver comprobando que .
- El orden del elemento es 4. Esto significa que 4 es el entero positivo más pequeño tal que . Comprobémoslo a continuación:
Por lo tanto, el elemento es una raíz cuarta primitiva de la unidad, y podemos usar el elemento para generar el subgrupo de todas las raíces cuartas de la unidad, de la siguiente manera:
Ejemplo de raíces octavas de la unidad en
Dado que es un generador del grupo multiplicativo , un generador para el subgrupo de orden es .
Comprobemos que también es una raíz octava primitiva de la unidad. Necesitamos verificar que:
- El elemento es una raíz octava de la unidad. Esto se puede ver comprobando que .
- El orden del elemento es 8. Esto significa que 8 es el entero positivo más pequeño tal que . Comprobémoslo a continuación:
Por lo tanto, el elemento es una raíz octava primitiva de la unidad, y podemos usar el elemento para generar el subgrupo de todas las raíces octavas de la unidad, de la siguiente manera:
Ejercicio. Encuentra una raíz cuadrada primitiva de la unidad en y el subgrupo de todas las raíces cuadradas de la unidad.
Conclusión y resumen
Se necesita un método eficiente para encontrar todas las raíces -ésimas de la unidad, que es lo que hemos estudiado en este artículo. En resumen, hemos establecido que:
- Un elemento de un campo finito es una raíz -ésima de la unidad si .
- Si divide a , entonces el subgrupo de que contiene todas las raíces -ésimas de la unidad es el subgrupo único de orden garantizado por el Teorema Fundamental de los Grupos Cíclicos.
- Una raíz primitiva -ésima de la unidad genera el subgrupo de todas las raíces -ésimas de la unidad. Si es un generador del grupo multiplicativo y divide a , entonces el elemento es una raíz primitiva -ésima de la unidad.
Apéndice A
El generador del subgrupo de orden satisface**: **
Sea un generador del grupo multiplicativo . Recuerda del Teorema Fundamental de los Grupos Cíclicos que el elemento genera el subgrupo único de orden . Nuestro objetivo es demostrar que .
Demostración. El Pequeño Teorema de Fermat establece que si es un número primo, entonces para cualquier entero :
Por ejemplo, si y , entonces .
Si no es divisible por , podemos dividir ambos lados de la ecuación anterior por . Esto demuestra que el Pequeño Teorema de Fermat es equivalente a la afirmación:
Ahora calculamos de la siguiente manera:
Apéndice B
Si y entonces es un miembro de un subgrupo cíclico único de orden .
Sea un generador de . Esto significa equivalentemente que es una raíz -ésima de la unidad.
Sea un generador para el subgrupo multiplicativo de orden ( proviene directamente del Teorema Fundamental de los Grupos Cíclicos).
Si y entonces debemos demostrar que existe un entero tal que . La existencia del entero en demuestra que puede ser generado por y por lo tanto es parte del subgrupo único de orden .
Para encontrar dicho , sustituiremos por y por para convertir en:
¿Podemos encontrar un que haga verdadera la ecuación? Si elegimos estratégicamente un tal que el exponente se cancele y deje tenemos:
Sustituyendo en el lado izquierdo de esta ecuación , obtenemos
Podemos ver que los términos y se cancelan, dejándonos con .
Podemos volver a sustituir las definiciones originales para , , y y ver que
Por lo tanto, si , de hecho existe un tal que . es simplemente
donde es la solución a , es el orden del subgrupo, y es el módulo de nuestro campo finito.
Sin embargo, aún debemos demostrar que es un entero, porque generar un valor elevando a una fracción no califica como ser miembro del subgrupo generado por .
Demostrando que es un entero
Para demostrar que es un entero, necesitamos demostrar que dividir entre no tiene residuo.
Cuando realizamos la división, deberíamos obtener un cociente y un residuo . Queremos demostrar que es necesariamente 0.
Un residuo no puede ser mayor que el divisor (p. ej., no puede tener un residuo de 5 o mayor), por lo que también tenemos la condición de que:
Podemos aislar en pasándolo de la forma dividendo / divisor = cociente + residuo a dividendo = cociente⋅divisor + residuo. (Para ilustrar esta reescritura, considera que 6/4=1 con residuo 2 se puede escribir como 6 = 4⋅1 + 2). En la forma reescrita, tenemos:
Para demostrar que , dejaremos a un lado por un momento y derivaremos otra propiedad de .
Hecho:
puede derivarse de los siguientes hechos:
Así que, por sustitución, y por la regla de la potencia de una potencia, .
Sustituir en
Ahora tenemos las herramientas suficientes para demostrar que el residuo en es cero. Recordamos al lector que ya que es una raíz -ésima primitiva de la unidad.
Ahora mostramos que utilizar las definiciones
es suficiente para demostrar que :
Como consecuencia de y , tenemos que
Dado que es una raíz -ésima primitiva de la unidad, solo hay dos soluciones para :
Recuerda que se define como la solución a
Sabemos que cualquier división válida de no puede dar como resultado un residuo de o mayor, específicamente, el residuo debe estar en el rango . Esa restricción de rango sobre el residuo implica que .
Así que, descartando la posibilidad de que , la única solución para es (es decir, ).
Dado que , el resultado de dividir entre es un entero.
Finalmente, dado que se define como
es un entero.